Productions are in normal type, linked to their definitions.
Regular expressions are in italics
Literal characters in quoted in bold
void means an empty production.
[a-zA-Z][a-zA-Z0-9_]*
[a-zA-Z_][a-zA-Z0-9_]*
","
barename barename_csl
"."
"@base"
explicituri "."
"@keywords"
barename_csl
"@prefix"
qname explicituri "."
void
"@"
langcode
"^^"
symbol
void
"@forSome"
symbol_csl
void
<[^>].*>
void
[a-zA-Z0-9]+(-[a-zA-Z0-9]+)?
declaration_s universal_s existential_s statements_optional EOF
"("
itemlist ")"
"["
propertylist "]"
[-+]?[0-9]+(\.[0-9]+)?(e[-+]?[0-9]+)?
","
object objecttail
void
"!"
path
"^"
path
void
verb object objecttail propertylisttail
void
";"
propertylist
void
(([a-zA-Z_][a-zA-Z0-9_]*)?:)?([a-zA-Z_][a-zA-Z0-9_]*)?
"{"
formulacontent "}"
"=>"
"{"
formulacontent "}"
void
statement_or_rule "."
statements_optional
void
"."
statementlist
void
("""[^"\\]*(?:(?:\\.|"(?!""))[^"\\]*)*""")|("[^"\\]*(?:\\.[^"\\]*)*")
","
symbol symbol_csl
"."
"@forAll"
symbol_csl
void
\?[a-zA-Z_][a-zA-Z0-9_]*
"="
"@a"
"@has"
prop
"@is"
prop "@of"