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-Z_a-zÀ-ÖØ-öø-˿Ͱ-ͽͿ--⁰-Ⰰ-、-豈-﷏ﷰ-�𐀀-][\-0-9A-Z_a-z·À-ÖØ-öø-ͽͿ--‿-⁀⁰-Ⰰ-、-豈-﷏ﷰ-�𐀀-]*
void
","
barename barename_csl_tail
void
"@false"
"@true"
[0-9][0-9]-[0-9][0-9]-[0-9][0-9]Z?
[0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9](T[0-9][0-9]:[0-9][0-9](:[0-9][0-9](\.[0-9]*)?)?)?Z?
[-+]?[0-9]+\.[0-9]*
"@base"
explicituri
"@keywords"
barename_csl
"@prefix"
prefix explicituri
[-+]?[0-9]+(\.[0-9]+)?([eE][-+]?[0-9]+)
"@"
langcode
"^^"
symbol
void
"@forSome"
symbol_csl
<[^>]*>
[-+]?[0-9]+
[a-z]+(-[a-z0-9]+)*
","
object objecttail
void
"("
pathlist ")"
"["
propertylist "]"
"{"
formulacontent "}"
void
"!"
expression
"^"
expression
void
"<="
"="
"=>"
"@a"
"@has"
expression
"@is"
expression "@of"
([A-Z_a-zÀ-ÖØ-öø-˿Ͱ-ͽͿ--⁰-Ⰰ-、-豈-﷏ﷰ-�𐀀-][\-0-9A-Z_a-z·À-ÖØ-öø-ͽͿ--‿-⁀⁰-Ⰰ-、-豈-﷏ﷰ-�𐀀-]*)?:
predicate object objecttail propertylisttail
void
";"
propertylist
void
(([A-Z_a-zÀ-ÖØ-öø-˿Ͱ-ͽͿ--⁰-Ⰰ-、-豈-﷏ﷰ-�𐀀-][\-0-9A-Z_a-z·À-ÖØ-öø-ͽͿ--‿-⁀⁰-Ⰰ-、-豈-﷏ﷰ-�𐀀-]*)?:)?[A-Z_a-zÀ-ÖØ-öø-˿Ͱ-ͽͿ--⁰-Ⰰ-、-豈-﷏ﷰ-�𐀀-][\-0-9A-Z_a-z·À-ÖØ-öø-ͽͿ--‿-⁀⁰-Ⰰ-、-豈-﷏ﷰ-�𐀀-]*
\?[A-Z_a-zÀ-ÖØ-öø-˿Ͱ-ͽͿ--⁰-Ⰰ-、-豈-﷏ﷰ-�𐀀-][\-0-9A-Z_a-z·À-ÖØ-öø-ͽͿ--‿-⁀⁰-Ⰰ-、-豈-﷏ﷰ-�𐀀-]*
integer "/"
unsignedint
void
statement "."
statements_optional
void
"."
statementlist
void
("""[^"\\]*(?:(?:\\.|"(?!""))[^"\\]*)*""")|("[^"\\]*(?:\\.[^"\\]*)*")
void
void
"@forAll"
symbol_csl
[0-9]+