document
"document" (namespaceDeclarations)? (expression)* (bundle)* "endDocument"
expression
( entityExpression | activityExpression | generationExpression | usageExpression | startExpression | endExpression | invalidationExpression | communicationExpression | agentExpression | associationExpression | attributionExpression | delegationExpression | derivationExpression | influenceExpression | alternateExpression | specializationExpression | membershipExpression | extensibilityExpression )
entityExpression
"entity" "(" identifier optionalAttributeValuePairs ")"
optionalAttributeValuePairs
(( "," "[" attributeValuePairs "]" ))?
attributeValuePairs
( | attributeValuePair (( "," attributeValuePair ))* )
attributeValuePair
attribute "=" literal
activityExpression
"activity" "(" identifier (( "," timeOrMarker "," timeOrMarker ))? optionalAttributeValuePairs ")"
timeOrMarker
( timeZZ | "-" )
generationExpression
"wasGeneratedBy" "(" optionalIdentifier eIdentifier (( "," aIdentifierOrMarker "," timeOrMarker ))? optionalAttributeValuePairs ")"
optionalIdentifier
(( identifierOrMarker ";" ))?
identifierOrMarker
( identifier | "-" )
usageExpression
"used" "(" optionalIdentifier aIdentifier (( "," eIdentifierOrMarker "," timeOrMarker ))? optionalAttributeValuePairs ")"
communicationExpression
"wasInformedBy" "(" optionalIdentifier aIdentifier "," aIdentifier optionalAttributeValuePairs ")"
startExpression
"wasStartedBy" "(" optionalIdentifier aIdentifier (( "," eIdentifierOrMarker "," aIdentifierOrMarker "," timeOrMarker ))? optionalAttributeValuePairs ")"
endExpression
"wasEndedBy" "(" optionalIdentifier aIdentifier (( "," eIdentifierOrMarker "," aIdentifierOrMarker "," timeOrMarker ))? optionalAttributeValuePairs ")"
invalidationExpression
"wasInvalidatedBy" "(" optionalIdentifier eIdentifier (( "," aIdentifierOrMarker "," timeOrMarker ))? optionalAttributeValuePairs ")"
derivationExpression
"wasDerivedFrom" "(" optionalIdentifier eIdentifier "," eIdentifier (( "," aIdentifierOrMarker "," gIdentifierOrMarker "," uIdentifierOrMarker ))? optionalAttributeValuePairs ")"
agentExpression
"agent" "(" identifier optionalAttributeValuePairs ")"
attributionExpression
"wasAttributedTo" "(" optionalIdentifier eIdentifier "," agIdentifier optionalAttributeValuePairs ")"
associationExpression
"wasAssociatedWith" "(" optionalIdentifier aIdentifier (( "," agIdentifierOrMarker "," eIdentifierOrMarker ))? optionalAttributeValuePairs ")"
delegationExpression
"actedOnBehalfOf" "(" optionalIdentifier agIdentifier "," agIdentifier (( "," aIdentifierOrMarker ))? optionalAttributeValuePairs ")"
influenceExpression
"wasInfluencedBy" "(" optionalIdentifier eIdentifier "," eIdentifier optionalAttributeValuePairs ")"
bundle
"bundle" identifier (namespaceDeclarations)? (expression)* "endBundle"
alternateExpression
"alternateOf" "(" eIdentifier "," eIdentifier ")"
specializationExpression
"specializationOf" "(" eIdentifier "," eIdentifier ")"
membershipExpression
"hadMember" "(" cIdentifier "," eIdentifier ")"
eIdentifier
identifier
aIdentifier
identifier
agIdentifier
identifier
gIdentifier
identifier
uIdentifier
identifier
cIdentifier
identifier
eIdentifierOrMarker
( eIdentifier | "-" )
aIdentifierOrMarker
( aIdentifier | "-" )
agIdentifierOrMarker
( agIdentifier | "-" )
gIdentifierOrMarker
( gIdentifier | "-" )
uIdentifierOrMarker
( uIdentifier | "-" )
identifier
QUALIFIED_NAME
attribute
QUALIFIED_NAME
literal
typedLiteral
| convenienceNotation
typedLiteral
STRING_LITERAL "%%" datatype
datatype
QUALIFIED_NAME
convenienceNotation
STRING_LITERAL (LANGTAG)?
| INT_LITERAL
| QUALIFIED_NAME_LITERAL
timeZZ
DATETIME
namespaceDeclarations
( defaultNamespaceDeclaration | namespaceDeclaration ) (namespaceDeclaration)*
namespaceDeclaration
"prefix" PN_PREFIX namespace
defaultNamespaceDeclaration
"default" IRI_REF
namespace
IRI_REF
extensibilityExpression
QUALIFIED_NAME "(" optionalIdentifier extensibilityArgument (( "," extensibilityArgument ))* optionalAttributeValuePairs ")"
extensibilityArgument
( identifierOrMarker | literal | timeZZ | extensibilityExpression | extensibilityTuple )
extensibilityTuple
"{" extensibilityArgument (( "," extensibilityArgument ))* "}"
| "(" extensibilityArgument (( "," extensibilityArgument ))* ")"
QUALIFIED_NAME
>(( PN_PREFIX ":" ))? PN_LOCAL
| PN_PREFIX ":"
PN_LOCAL
>( PN_CHARS_U | [0-9] | PN_CHARS_OTHERS ) (( (( PN_CHARS | "." | PN_CHARS_OTHERS ))* ( PN_CHARS | PN_CHARS_OTHERS ) ))?
PN_CHARS_OTHERS
>"/"
| "@"
| "~"
| "&"
| "+"
| "*"
| "?"
| "#"
| "$"
| "!"
| PERCENT
| PN_CHARS_ESC
PN_CHARS_ESC
>"\\" ( "=" | "'" | "(" | ")" | "," | "-" | ":" | ";" | "[" | "]" | "." )
PERCENT
>"%" HEX HEX
HEX
>[0-9]
| [A-F]
| [a-f]
STRING_LITERAL
>STRING_LITERAL2
| STRING_LITERAL_LONG2
PREFX
>PN_PREFIX
INT_LITERAL
>("-")? (DIGIT)+
QUALIFIED_NAME_LITERAL
>"'" QUALIFIED_NAME "'"
DIGIT
>[0-9]
DATETIME
>DIGIT DIGIT DIGIT DIGIT "-" DIGIT DIGIT "-" DIGIT DIGIT "T" DIGIT DIGIT ":" DIGIT DIGIT ":" DIGIT DIGIT (( "." DIGIT (( DIGIT (DIGIT)? ))? ))? (( "Z" | TIMEZONEOFFSET ))?
TIMEZONEOFFSET
>( "+" | "-" ) DIGIT DIGIT ":" DIGIT DIGIT
IRI_REF
>"<" (( [^<>\"{}|^`\\] - [#0000- ] | UCHAR ))* ">"
STRING_LITERAL2
>'"' (( ( [^\"\\\n\r] ) | ECHAR | UCHAR ))* '"'
STRING_LITERAL_LONG2
>'"' (( ( [^\"\\\n\r] ) | ECHAR | UCHAR ))* '"'
LANGTAG
>"@" ([a-zA-Z])+ (( "-" ([a-zA-Z0-9])+ ))*
UCHAR
>( "\\u" HEX HEX HEX HEX )
| ( "\\U" HEX HEX HEX HEX HEX HEX HEX HEX )
ECHAR
>"\\" [tbnrf\\\"']
NIL
>"(" (( WS ))* ")"
WS
>" "
| "\t"
| "\r"
| "\n"
ANON
>"[" (( WS ))* "]"
PN_CHARS_BASE
>[A-Z]
| [a-z]
| [#00C0-#00D6]
| [#00D8-#00F6]
| [#00F8-#02FF]
| [#0370-#037D]
| [#037F-#1FFF]
| [#200C-#200D]
| [#2070-#218F]
| [#2C00-#2FEF]
| [#3001-#D7FF]
| [#F900-#FDCF]
| [#FDF0-#FFFD]
| [#10000-#EFFFF]
PN_CHARS_U
>PN_CHARS_BASE
| "_"
PN_CHARS
>PN_CHARS_U
| "-"
| [0-9]
|
| [#0300-#036F]
| [#203F-#2040]
PN_PREFIX
>PN_CHARS_BASE (( (( PN_CHARS | "." ))* PN_CHARS ))?
PASSED TOKENS
([ \t\r\n])+
| "#" ([^\r\n])*