turtleDoc
(statement)*
statement
directive "."
| triples "."
directive
prefixID
| base
prefixID
PREFIX PNAME_NS IRI_REF
base
BASE IRI_REF
triples
subject predicateObjectList
predicateObjectList
verb objectList ( ";" verb objectList )* (";")?
objectList
object ( "," object )*
verb
predicate
| "a"
subject
IRIref
| blank
predicate
IRIref
object
IRIref
| blank
| literal
literal
RDFLiteral
| NumericLiteral
| BooleanLiteral
blank
BlankNode
| blankNodePropertyList
| collection
blankNodePropertyList
"[" predicateObjectList "]"
collection
"(" object* ")"
RDFLiteral
String ( LANGTAG | ( "^^" IRIref ) )?
NumericLiteral
NumericLiteralUnsigned
| NumericLiteralPositive
| NumericLiteralNegative
NumericLiteralUnsigned
INTEGER
| DECIMAL
| DOUBLE
NumericLiteralPositive
INTEGER_POSITIVE
| DECIMAL_POSITIVE
| DOUBLE_POSITIVE
NumericLiteralNegative
INTEGER_NEGATIVE
| DECIMAL_NEGATIVE
| DOUBLE_NEGATIVE
BooleanLiteral
"true"
| "false"
String
STRING_LITERAL1
| STRING_LITERAL2
| STRING_LITERAL_LONG1
| STRING_LITERAL_LONG2
IRIref
IRI_REF
| PrefixedName
PrefixedName
PNAME_LN
| PNAME_NS
BlankNode
BLANK_NODE_LABEL
| ANON
BASE
"@base"
PREFIX
"@prefix"
IRI_REF
"<" ( [^<>\"{}|^`\\] - [#0000- ] | UCHAR )* ">"
PNAME_NS
(PN_PREFIX)? ":"
PNAME_LN
PNAME_NS PN_LOCAL
BLANK_NODE_LABEL
"_:" PN_LOCAL
LANGTAG
BASE
| PREFIX
| "@" [a-zA-Z]+ ( "-" [a-zA-Z0-9]+ )*
INTEGER
[0-9]+
DECIMAL
[0-9]+ "." [0-9]+
| "." [0-9]+
DOUBLE
[0-9]+ "." [0-9]+ EXPONENT
| "." ( [0-9] )+ EXPONENT
| ( [0-9] )+ EXPONENT
INTEGER_POSITIVE
"+" INTEGER
DECIMAL_POSITIVE
"+" DECIMAL
DOUBLE_POSITIVE
"+" DOUBLE
INTEGER_NEGATIVE
"-" INTEGER
DECIMAL_NEGATIVE
"-" DECIMAL
DOUBLE_NEGATIVE
"-" DOUBLE
EXPONENT
[eE] [+-]? [0-9]+
STRING_LITERAL1
"'" ( ( [^'\\\n\r] ) | ECHAR | UCHAR )* "'"
STRING_LITERAL2
'"' ( ( [^\"\\\n\r] ) | ECHAR | UCHAR )* '"'
STRING_LITERAL_LONG1
"'''" ( ( "'" | "''" )? ( [^'\\] | ECHAR | UCHAR ) )* "'''"
STRING_LITERAL_LONG2
'"""' ( ( '"' | '""' )? ( [^\"\\] | ECHAR | UCHAR ) )* '"""'
UCHAR
( "\\u" [0-9a-fA-F] [0-9a-fA-F] [0-9a-fA-F] [0-9a-fA-F] )
| ( "\\U" [0-9a-fA-F] [0-9a-fA-F] [0-9a-fA-F] [0-9a-fA-F] [0-9a-fA-F] [0-9a-fA-F] [0-9a-fA-F] [0-9a-fA-F] )
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]
| UCHAR
PN_CHARS_U
PN_CHARS_BASE
| "_"
PN_CHARS
PN_CHARS_U
| "-"
| [0-9]
| #00B7
| [#0300-#036F]
| [#203F-#2040]
PN_PREFIX
PN_CHARS_BASE ( ( PN_CHARS | "." )* PN_CHARS )?
PN_LOCAL
( PN_CHARS_U | [0-9] ) ( ( PN_CHARS | "." )* PN_CHARS )?
PASSED TOKENS
[ \t\r\n]+
| "#" [^\r\n]*