-
Notifications
You must be signed in to change notification settings - Fork 694
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
spec: describe components of EBNF grammar #695
Conversation
considerations.md
Outdated
``` | ||
|
||
The above expression defines a symbol, "literal", that matches the exact input of "matchthis". | ||
Character classes are dilineated by brackets (`[]`), describing either a set, range or multiple range of characters: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
dilineated -> delineated?
considerations.md
Outdated
``` | ||
|
||
Each expression must be matched once and only once. | ||
To allow for describing repitition and optional match criteria, the postfix operators "*" and "+" are defined. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
allow for -> allow?
8873bdb
to
b5b786c
Compare
Nothing jumps out at me as being wrong, and seems fine to include our own grammar. looks like |
ah. then rebase pls 😸 |
d69d2ee
to
cda46a1
Compare
algorithm ::= algorithm-component (algorithm-separator algorithm-component)* | ||
algorithm-component ::= [a-z0-9]+ | ||
algorithm-separator ::= [+._-] | ||
encoded ::= [a-zA-Z0-9=_-]+ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this line would seem to get broken into something like [a-z]* | [A-Z]* | [0-9]* | [=_-]+
...
|
||
The above symbol "set" would match one character of either "a", "b" or "c". | ||
The symbol "range" would match any character, "A" to "Z", inclusive. | ||
Currently, only matching for 7-bit ascii literals and character classes is defined, as that is all that is required by this specification. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Or should it be clarified that multiple ranges can be in the same brackets, along with a set?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
from @wking "multiple ranges and explicit characters should be allowed in a single range. The XML-spec wording for that is "Enumerations and ranges can be mixed in one set of brackets." https://www.w3.org/TR/REC-xml/#sec-notation"
To clarify the grammar definitions, we define the subset of EBNF used by this specification to specify various field formats. Signed-off-by: Stephen J Day <[email protected]>
Signed-off-by: Stephen J Day <[email protected]>
@vbatts Added the character range requests. |
@jonboulle your review would be nice 🥇 |
To clarify the grammar definitions, we define the subset of EBNF used by
this specification to specify various field formats.
Signed-off-by: Stephen J Day [email protected]
Closes #692