properties.ebnf 602 B

123456789101112131415161718
  1. (* https://bottlecaps.de/rr/ui *)
  2. Definition
  3. ::= PropertyName ( '=' Value )? ( ',' PropertyName ( '=' Value )? )*
  4. Query ::= PropertyQuery ( ',' PropertyQuery )*
  5. PropertyQuery ::= '-' PropertyName
  6. | '?'? ( PropertyName (( '=' | '!=' ) Value)?)
  7. Value ::= NumberLiteral
  8. | StringLiteral
  9. StringLiteral ::= QuotedString | UnquotedString
  10. QuotedString ::= '"' [^"]* '"'
  11. | "'" [^']* "'"
  12. UnquotedString ::= [^{space},]+
  13. NumberLiteral
  14. ::= '0' ( [0-7]* | 'x' [0-9A-Fa-f]+ )
  15. | '-'? [1-9] [0-9]+
  16. PropertyName
  17. ::= [A-Z] [A-Z0-9_]* ( '.' [A-Z] [A-Z0-9_]* )*