diff --git a/etc/shex.ebnf b/etc/shex.ebnf index 6b67b5b..2dc545a 100644 --- a/etc/shex.ebnf +++ b/etc/shex.ebnf @@ -92,6 +92,7 @@ | "NOT" (shapeAtomNoRef | shapeRef) shapeOr? | shapeRef shapeOr [11] inlineShapeExpression ::= inlineShapeOr +# [12] shapeOr ::= shapeAnd ("OR" shapeAnd)* [12] shapeOr ::= shapeOrA | shapeOrB shapeOrA? [12a] shapeOrA ::= ("OR" shapeAnd)+ [12b] shapeOrB ::= ("AND" shapeNot)+ @@ -156,97 +157,94 @@ [40] groupTripleExpr ::= unaryTripleExpr (';' unaryTripleExpr?)* [43] unaryTripleExpr ::= productionLabel? (tripleConstraint | bracketedTripleExpr) | include +[43a] productionLabel ::= '$' (iri | blankNode) # Use oneOfTripleExpr instead of innerTripleExpr #[44] bracketedTripleExpr ::= '(' innerTripleExpr ')' cardinality? annotation* semanticActions [44] bracketedTripleExpr ::= '(' oneOfTripleExpr ')' cardinality? annotation* semanticActions -[45] productionLabel ::= '$' (iri | blankNode) +[45] tripleConstraint ::= senseFlags? predicate inlineShapeExpression cardinality? annotation* semanticActions +[46] cardinality ::= '*' | '+' | '?' | REPEAT_RANGE +[47] senseFlags ::= '^' -[46] tripleConstraint ::= senseFlags? predicate inlineShapeExpression cardinality? annotation* semanticActions -[47] cardinality ::= '*' | '+' | '?' | REPEAT_RANGE -[48] senseFlags ::= '^' +[48] valueSet ::= '[' valueSetValue* ']' -[49] valueSet ::= '[' valueSetValue* ']' +[49] valueSetValue ::= iriRange | literalRange | languageRange | '.' exclusion+ -[50] valueSetValue ::= (iriRange | literalRange | languageRange) | '.' (exclusion)+ +[50] exclusion ::= '-' (iri | literal | LANGTAG) '~'? +[51] iriRange ::= iri ('~' iriExclusion*)? +[52] iriExclusion ::= '-' iri '~'? +[53] literalRange ::= literal ('~' literalExclusion*)? +[54] literalExclusion ::= '-' literal '~'? +[55] languageRange ::= LANGTAG ('~' languageExclusion*)? +[56] languageExclusion ::= '-' LANGTAG '~'? -[51] exclusion ::= '-' (iri | literal | LANGTAG) '~'? -[51i] iriRange ::= iri ('~' iriExclusion*)? -[52i] iriExclusion ::= '-' iri '~'? -[51l] literalRange ::= literal ('~' literalExclusion*)? -[52l] literalExclusion ::= '-' literal '~'? -[51g] languageRange ::= LANGTAG ('~' languageExclusion*)? -[52g] languageExclusion ::= '-' LANGTAG '~'? +[57] include ::= '&' shapeLabel -[53] include ::= '&' shapeLabel +[58] annotation ::= '//' predicate (iri | literal) +[59] semanticActions ::= codeDecl* +[60] codeDecl ::= '%' iri (CODE | "%") -[54] annotation ::= '//' predicate (iri | literal) -[55] semanticActions ::= codeDecl* -[56] codeDecl ::= '%' iri (CODE | "%") - -[57] literal ::= rdfLiteral | numericLiteral | booleanLiteral -[58] predicate ::= iri | RDF_TYPE -[59] datatype ::= iri -[60] shapeLabel ::= iri | blankNode -[61] numericLiteral ::= INTEGER | DECIMAL | DOUBLE -[62] rdfLiteral ::= langString | string ('^^' datatype)? -[63] booleanLiteral ::= 'true' | 'false' -[64] string ::= STRING_LITERAL1 | STRING_LITERAL_LONG1 +[13t] literal ::= rdfLiteral | numericLiteral | booleanLiteral +[61] predicate ::= iri | RDF_TYPE +[62] datatype ::= iri +[63] shapeLabel ::= iri | blankNode +[16t] numericLiteral ::= INTEGER | DECIMAL | DOUBLE +[129s] rdfLiteral ::= langString | string ('^^' datatype)? +[134s] booleanLiteral ::= 'true' | 'false' +[135s] string ::= STRING_LITERAL1 | STRING_LITERAL_LONG1 | STRING_LITERAL2 | STRING_LITERAL_LONG2 -[64l] langString ::= LANG_STRING_LITERAL1 | LANG_STRING_LITERAL_LONG1 +[66] langString ::= LANG_STRING_LITERAL1 | LANG_STRING_LITERAL_LONG1 | LANG_STRING_LITERAL2 | LANG_STRING_LITERAL_LONG2 -[65] iri ::= IRIREF | prefixedName -[66] prefixedName ::= PNAME_LN | PNAME_NS -[67] blankNode ::= BLANK_NODE_LABEL -[68] includeSet ::= "&" (shapeLabel)+ +[136s] iri ::= IRIREF | prefixedName +[137s] prefixedName ::= PNAME_LN | PNAME_NS +[138s] blankNode ::= BLANK_NODE_LABEL + +# Reserved for future use +#[65] includeSet ::= "&" (shapeLabel)+ @terminals -[69] CODE ::= '{' ([^%\\] | '\\' [%\\] | UCHAR)* '%' '}' -[70] REPEAT_RANGE ::= '{' INTEGER (',' (INTEGER | '*')?)? '}' -[71] RDF_TYPE ::= 'a' -[72] IRIREF ::= '<' ([^#x00-#x20<>\"{}|^`\\] | UCHAR)* '>' /* #x00=NULL #01-#x1F=control codes #x20=space */ -[73] PNAME_NS ::= PN_PREFIX? ':' -[74] PNAME_LN ::= PNAME_NS PN_LOCAL -[75] ATPNAME_NS ::= '@' PN_PREFIX? ':' -[76] ATPNAME_LN ::= '@' PNAME_NS PN_LOCAL - -[77] BLANK_NODE_LABEL ::= '_:' (PN_CHARS_U | [0-9]) ((PN_CHARS | '.')* PN_CHARS)? -[78] LANGTAG ::= '@' [a-zA-Z]+ ('-' [a-zA-Z0-9]+)* -[79] INTEGER ::= [+-]? [0-9]+ -[80] DECIMAL ::= [+-]? [0-9]* '.' [0-9]+ -[81] DOUBLE ::= [+-]? ([0-9]+ '.' [0-9]* EXPONENT | '.'? [0-9]+ EXPONENT) -[82] EXPONENT ::= [eE] [+-]? [0-9]+ -[83] STRING_LITERAL1 ::= "'" ([^#x27#x5C#xA#xD] | ECHAR | UCHAR)* "'" /* #x27=' #x5C=\ #xA=new line #xD=carriage return */ -[84] STRING_LITERAL2 ::= '"' ([^#x22#x5C#xA#xD] | ECHAR | UCHAR)* '"' /* #x22=" #x5C=\ #xA=new line #xD=carriage return */ -[85] STRING_LITERAL_LONG1 ::= "'''" (("'" | "''")? ([^\'\\] | ECHAR | UCHAR))* "'''" -[86] STRING_LITERAL_LONG2 ::= '"""' (('"' | '""')? ([^\"\\] | ECHAR | UCHAR))* '"""' -[83l] LANG_STRING_LITERAL1 ::= "'" ([^#x27#x5C#xA#xD] | ECHAR | UCHAR)* "'" LANGTAG -[84l] LANG_STRING_LITERAL2 ::= '"' ([^#x22#x5C#xA#xD] | ECHAR | UCHAR)* '"' LANGTAG -[85l] LANG_STRING_LITERAL_LONG1 ::= "'''" (("'" | "''")? ([^\'\\] | ECHAR | UCHAR))* "'''" LANGTAG -[86l] LANG_STRING_LITERAL_LONG2 ::= '"""' (('"' | '""')? ([^\"\\] | ECHAR | UCHAR))* '"""' LANGTAG -[XX] REGEXP ::= '/' ([^/\\\n\r] | '\\' [nrt\\|.?*+(){}$-\[\]^/] | UCHAR)+ '/' [smix]* -[87] UCHAR ::= '\\u' HEX HEX HEX HEX +[67] CODE ::= '{' ([^%\\] | '\\' [%\\] | UCHAR)* '%' '}' +[68] REPEAT_RANGE ::= '{' INTEGER (',' (INTEGER | '*')?)? '}' +[69] RDF_TYPE ::= 'a' +[18t] IRIREF ::= '<' ([^#x00-#x20<>\"{}|^`\\] | UCHAR)* '>' /* #x00=NULL #01-#x1F=control codes #x20=space */ +[140s] PNAME_NS ::= PN_PREFIX? ':' +[141s] PNAME_LN ::= PNAME_NS PN_LOCAL +[70] ATPNAME_NS ::= '@' PN_PREFIX? ':' +[71] ATPNAME_LN ::= '@' PNAME_NS PN_LOCAL +[72] REGEXP ::= '/' ([^/\\\n\r] | '\\' [nrt\\|.?*+(){}$-\[\]^/] | UCHAR)+ '/' [smix]* + +[142s] BLANK_NODE_LABEL ::= '_:' (PN_CHARS_U | [0-9]) ((PN_CHARS | '.')* PN_CHARS)? +[145s] LANGTAG ::= '@' [a-zA-Z]+ ('-' [a-zA-Z0-9]+)* +[19t] INTEGER ::= [+-]? [0-9]+ +[20t] DECIMAL ::= [+-]? [0-9]* '.' [0-9]+ +[21t] DOUBLE ::= [+-]? ([0-9]+ '.' [0-9]* EXPONENT | '.'? [0-9]+ EXPONENT) +[155s] EXPONENT ::= [eE] [+-]? [0-9]+ +[156s] STRING_LITERAL1 ::= "'" ([^#x27#x5C#xA#xD] | ECHAR | UCHAR)* "'" /* #x27=' #x5C=\ #xA=new line #xD=carriage return */ +[157s] STRING_LITERAL2 ::= '"' ([^#x22#x5C#xA#xD] | ECHAR | UCHAR)* '"' /* #x22=" #x5C=\ #xA=new line #xD=carriage return */ +[158s] STRING_LITERAL_LONG1 ::= "'''" (("'" | "''")? ([^\'\\] | ECHAR | UCHAR))* "'''" +[159s] STRING_LITERAL_LONG2 ::= '"""' (('"' | '""')? ([^\"\\] | ECHAR | UCHAR))* '"""' +[73] LANG_STRING_LITERAL1 ::= "'" ([^#x27#x5C#xA#xD] | ECHAR | UCHAR)* "'" LANGTAG +[74] LANG_STRING_LITERAL2 ::= '"' ([^#x22#x5C#xA#xD] | ECHAR | UCHAR)* '"' LANGTAG +[75] LANG_STRING_LITERAL_LONG1 ::= "'''" (("'" | "''")? ([^\'\\] | ECHAR | UCHAR))* "'''" LANGTAG +[76] LANG_STRING_LITERAL_LONG2 ::= '"""' (('"' | '""')? ([^\"\\] | ECHAR | UCHAR))* '"""' LANGTAG +[26t] UCHAR ::= '\\u' HEX HEX HEX HEX | '\\U' HEX HEX HEX HEX HEX HEX HEX HEX -[88] ECHAR ::= '\\' [tbnrf\\\"\'] -[89] PN_CHARS_BASE ::= [A-Z] | [a-z] +[160s] ECHAR ::= '\\' [tbnrf\\\"\'] +[164s] PN_CHARS_BASE ::= [A-Z] | [a-z] | [#x00C0-#x00D6] | [#x00D8-#x00F6] | [#x00F8-#x02FF] | [#x0370-#x037D] | [#x037F-#x1FFF] | [#x200C-#x200D] | [#x2070-#x218F] | [#x2C00-#x2FEF] | [#x3001-#xD7FF] | [#xF900-#xFDCF] | [#xFDF0-#xFFFD] | [#x10000-#xEFFFF] -[90] PN_CHARS_U ::= PN_CHARS_BASE | '_' -[91] PN_CHARS ::= PN_CHARS_U | '-' | [0-9] - | [#x00B7] | [#x0300-#x036F] | [#x203F-#x2040] -[92] PN_PREFIX ::= PN_CHARS_BASE ((PN_CHARS | '.')* PN_CHARS)? -[93] PN_LOCAL ::= (PN_CHARS_U | ':' | [0-9] | PLX) ((PN_CHARS | '.' | ':' | PLX)* (PN_CHARS | ':' | PLX))? -[94] PLX ::= PERCENT | PN_LOCAL_ESC -[95] PERCENT ::= '%' HEX HEX -[96] HEX ::= [0-9] | [A-F] | [a-f] -[97] PN_LOCAL_ESC ::= '\\' ('_' | '~' | '.' | '-' | '!' | '$' | '&' | "'" | '(' | ')' | '*' | '+' | ',' | ';' | '=' | '/' | '?' | '#' | '@' | '%') - -# @pass is not a rule, but a declaration -#@pass ::= [ \t\r\n]+ -# | "#" [^\r\n]* +[165s] PN_CHARS_U ::= PN_CHARS_BASE | '_' +[167s] PN_CHARS ::= PN_CHARS_U | '-' | [0-9] + | [#x00B7] | [#x0300-#x036F] | [#x203F-#x2040] +[168s] PN_PREFIX ::= PN_CHARS_BASE ((PN_CHARS | '.')* PN_CHARS)? +[169s] PN_LOCAL ::= (PN_CHARS_U | ':' | [0-9] | PLX) ((PN_CHARS | '.' | ':' | PLX)* (PN_CHARS | ':' | PLX))? +[170s] PLX ::= PERCENT | PN_LOCAL_ESC +[171s] PERCENT ::= '%' HEX HEX +[172s] HEX ::= [0-9] | [A-F] | [a-f] +[173s] PN_LOCAL_ESC ::= '\\' ('_' | '~' | '.' | '-' | '!' | '$' | '&' | "'" | '(' | ')' | '*' | '+' | ',' | ';' | '=' | '/' | '?' | '#' | '@' | '%') @pass [ \t\r\n]+ | "#" [^\r\n]* diff --git a/etc/shex.html b/etc/shex.html index c24dfc8..48b5a1b 100644 --- a/etc/shex.html +++ b/etc/shex.html @@ -391,6 +391,15 @@ | include + + [43a] + productionLabel + ::= + + "$" + ( iri | blankNode) + + [44] bracketedTripleExpr @@ -404,17 +413,8 @@ semanticActions - - [45] - productionLabel - ::= - - "$" - ( iri | blankNode) - - - [46] + [45] tripleConstraint ::= @@ -427,7 +427,7 @@ - [47] + [46] cardinality ::= @@ -438,7 +438,7 @@ - [48] + [47] senseFlags ::= @@ -446,7 +446,7 @@ - [49] + [48] valueSet ::= @@ -456,16 +456,18 @@ - [50] + [49] valueSetValue ::= - iriRange | literalRange | languageRange + iriRange + | literalRange + | languageRange | "." exclusion+ - [51] + [50] exclusion ::= @@ -475,7 +477,7 @@ - [51i] + [51] iriRange ::= @@ -484,7 +486,7 @@ - [52i] + [52] iriExclusion ::= @@ -494,7 +496,7 @@ - [51l] + [53] literalRange ::= @@ -503,7 +505,7 @@ - [52l] + [54] literalExclusion ::= @@ -513,7 +515,7 @@ - [51g] + [55] languageRange ::= @@ -522,7 +524,7 @@ - [52g] + [56] languageExclusion ::= @@ -532,7 +534,7 @@ - [53] + [57] include ::= @@ -541,7 +543,7 @@ - [54] + [58] annotation ::= @@ -551,7 +553,7 @@ - [55] + [59] semanticActions ::= @@ -559,7 +561,7 @@ - [56] + [60] codeDecl ::= @@ -569,7 +571,7 @@ - [57] + [13t] literal ::= @@ -579,7 +581,7 @@ - [58] + [61] predicate ::= @@ -588,7 +590,7 @@ - [59] + [62] datatype ::= @@ -596,7 +598,7 @@ - [60] + [63] shapeLabel ::= @@ -605,7 +607,7 @@ - [61] + [16t] numericLiteral ::= @@ -615,7 +617,7 @@ - [62] + [129s] rdfLiteral ::= @@ -624,7 +626,7 @@ - [63] + [134s] booleanLiteral ::= @@ -633,7 +635,7 @@ - [64] + [135s] string ::= @@ -644,7 +646,7 @@ - [64l] + [66] langString ::= @@ -655,7 +657,7 @@ - [65] + [136s] iri ::= @@ -664,7 +666,7 @@ - [66] + [137s] prefixedName ::= @@ -673,24 +675,15 @@ - [67] + [138s] blankNode ::= BLANK_NODE_LABEL - - [68] - includeSet - ::= - - "&" - shapeLabel+ - - - [69] + [67] CODE ::= @@ -699,7 +692,7 @@ - [70] + [68] REPEAT_RANGE ::= @@ -710,7 +703,7 @@ - [71] + [69] RDF_TYPE ::= @@ -718,7 +711,7 @@ - [72] + [18t] IRIREF ::= @@ -727,7 +720,7 @@ - [73] + [140s] PNAME_NS ::= @@ -736,7 +729,7 @@ - [74] + [141s] PNAME_LN ::= @@ -745,7 +738,7 @@ - [75] + [70] ATPNAME_NS ::= @@ -755,7 +748,7 @@ - [76] + [71] ATPNAME_LN ::= @@ -764,8 +757,19 @@ PN_LOCAL + + [72] + REGEXP + ::= + + "/" + ([ ^/\#x0A#x0D] | "\" [ nrt\|.?*+(){}$-[]^/] | UCHAR)+ + "/" + ([ smix] )* + + - [77] + [142s] BLANK_NODE_LABEL ::= @@ -775,7 +779,7 @@ - [78] + [145s] LANGTAG ::= @@ -785,7 +789,7 @@ - [79] + [19t] INTEGER ::= @@ -794,7 +798,7 @@ - [80] + [20t] DECIMAL ::= @@ -805,7 +809,7 @@ - [81] + [21t] DOUBLE ::= @@ -814,7 +818,7 @@ - [82] + [155s] EXPONENT ::= @@ -824,7 +828,7 @@ - [83] + [156s] STRING_LITERAL1 ::= @@ -834,7 +838,7 @@ - [84] + [157s] STRING_LITERAL2 ::= @@ -844,7 +848,7 @@ - [85] + [158s] STRING_LITERAL_LONG1 ::= @@ -853,7 +857,7 @@ - [86] + [159s] STRING_LITERAL_LONG2 ::= @@ -862,7 +866,7 @@ - [83l] + [73] LANG_STRING_LITERAL1 ::= @@ -873,7 +877,7 @@ - [84l] + [74] LANG_STRING_LITERAL2 ::= @@ -884,7 +888,7 @@ - [85l] + [75] LANG_STRING_LITERAL_LONG1 ::= @@ -893,7 +897,7 @@ - [86l] + [76] LANG_STRING_LITERAL_LONG2 ::= @@ -901,19 +905,8 @@ ( ('"' | '""')? [ ^"\]#x20|#x20ECHAR#x20|#x20UCHAR))*#x20'"""'#x20LANGTAG] ) - - [XX] - REGEXP - ::= - - "/" - ([ ^/\#x0A#x0D] | "\" [ nrt\|.?*+(){}$-[]^/] | UCHAR)+ - "/" - ([ smix] )* - - - [87] + [26t] UCHAR ::= @@ -922,7 +915,7 @@ - [88] + [160s] ECHAR ::= @@ -931,7 +924,7 @@ - [89] + [164s] PN_CHARS_BASE ::= @@ -952,7 +945,7 @@ - [90] + [165s] PN_CHARS_U ::= @@ -961,7 +954,7 @@ - [91] + [167s] PN_CHARS ::= @@ -974,7 +967,7 @@ - [92] + [168s] PN_PREFIX ::= @@ -983,7 +976,7 @@ - [93] + [169s] PN_LOCAL ::= @@ -992,7 +985,7 @@ - [94] + [170s] PLX ::= @@ -1001,7 +994,7 @@ - [95] + [171s] PERCENT ::= @@ -1011,7 +1004,7 @@ - [96] + [172s] HEX ::= @@ -1021,7 +1014,7 @@ - [97] + [173s] PN_LOCAL_ESC ::= diff --git a/etc/shex.ll1.sxp b/etc/shex.ll1.sxp index 0411d3c..62a9af0 100644 --- a/etc/shex.ll1.sxp +++ b/etc/shex.ll1.sxp @@ -1,25 +1,20 @@ ( (pass (alt (plus (range " \t\r\n")) (seq "#" (star (range "^\r\n"))))) - (terminal REGEXP "XX" - (seq "/" - (plus (alt (range "^/\\\n\r") (seq "\\" (range "nrt\\|.?*+(){}$-[]^/")) UCHAR)) - "/" - (star (range "smix"))) ) (rule _empty "0" (first _eps) (seq)) (rule shexDoc "1" (start #t) (first "%" "BASE" BLANK_NODE_LABEL IRIREF PNAME_LN PNAME_NS "PREFIX" "START" _eps) (follow _eof) (seq _shexDoc_1 _shexDoc_2)) - (rule _shexDoc_10 "1.10" - (first "BASE" BLANK_NODE_LABEL IRIREF PNAME_LN PNAME_NS "PREFIX" "START" _eps) - (follow _eof) - (seq _shexDoc_6)) (rule _shexDoc_1 "1.1" (first "BASE" "PREFIX" _eps) (follow "%" BLANK_NODE_LABEL IRIREF PNAME_LN PNAME_NS "START" _eof) (cleanup star) (alt _empty _shexDoc_3)) + (rule _shexDoc_10 "1.10" + (first "BASE" BLANK_NODE_LABEL IRIREF PNAME_LN PNAME_NS "PREFIX" "START" _eps) + (follow _eof) + (seq _shexDoc_6)) (rule _shexDoc_11 "1.11" (first "BASE" BLANK_NODE_LABEL IRIREF PNAME_LN PNAME_NS "PREFIX" "START" _eps) (follow _eof) @@ -95,14 +90,14 @@ (seq "START" "=" _start_1 _start_2 _start_3)) (rule _start_1 "6.1" (first "NOT" _eps) - (follow "&" "(" "." "@" ATPNAME_LN ATPNAME_NS "BNODE" "CLOSED" "EXTRA" + (follow "(" "." "@" ATPNAME_LN ATPNAME_NS "BNODE" "CLOSED" "EXTRA" "FRACTIONDIGITS" "IRI" IRIREF "LENGTH" "LITERAL" "MAXEXCLUSIVE" "MAXINCLUSIVE" "MAXLENGTH" "MINEXCLUSIVE" "MININCLUSIVE" "MINLENGTH" "NONLITERAL" PNAME_LN PNAME_NS REGEXP "TOTALDIGITS" "[" "{" ) (cleanup opt) (alt _empty "NOT")) (rule _start_2 "6.2" - (first "&" "(" "." "@" ATPNAME_LN ATPNAME_NS "BNODE" "CLOSED" "EXTRA" + (first "(" "." "@" ATPNAME_LN ATPNAME_NS "BNODE" "CLOSED" "EXTRA" "FRACTIONDIGITS" "IRI" IRIREF "LENGTH" "LITERAL" "MAXEXCLUSIVE" "MAXINCLUSIVE" "MAXLENGTH" "MINEXCLUSIVE" "MININCLUSIVE" "MINLENGTH" "NONLITERAL" PNAME_LN PNAME_NS REGEXP "TOTALDIGITS" "[" "{" ) @@ -119,14 +114,14 @@ (follow "BASE" BLANK_NODE_LABEL IRIREF PNAME_LN PNAME_NS "PREFIX" "START" _eof) (seq "=" _start_1 _start_2 _start_3)) (rule _start_5 "6.5" - (first "&" "(" "." "@" ATPNAME_LN ATPNAME_NS "BNODE" "CLOSED" "EXTRA" + (first "(" "." "@" ATPNAME_LN ATPNAME_NS "BNODE" "CLOSED" "EXTRA" "FRACTIONDIGITS" "IRI" IRIREF "LENGTH" "LITERAL" "MAXEXCLUSIVE" "MAXINCLUSIVE" "MAXLENGTH" "MINEXCLUSIVE" "MININCLUSIVE" "MINLENGTH" "NONLITERAL" "NOT" PNAME_LN PNAME_NS REGEXP "TOTALDIGITS" "[" "{" ) (follow "BASE" BLANK_NODE_LABEL IRIREF PNAME_LN PNAME_NS "PREFIX" "START" _eof) (seq _start_1 _start_2 _start_3)) (rule _start_6 "6.6" - (first "&" "(" "." "@" ATPNAME_LN ATPNAME_NS "BNODE" "CLOSED" "EXTRA" + (first "(" "." "@" ATPNAME_LN ATPNAME_NS "BNODE" "CLOSED" "EXTRA" "FRACTIONDIGITS" "IRI" IRIREF "LENGTH" "LITERAL" "MAXEXCLUSIVE" "MAXINCLUSIVE" "MAXLENGTH" "MINEXCLUSIVE" "MININCLUSIVE" "MINLENGTH" "NONLITERAL" PNAME_LN PNAME_NS REGEXP "TOTALDIGITS" "[" "{" ) @@ -168,21 +163,21 @@ (follow "BASE" BLANK_NODE_LABEL IRIREF PNAME_LN PNAME_NS "PREFIX" "START" _eof) (seq shapeLabel _shapeExprDecl_1)) (rule _shapeExprDecl_1 "9.1" - (first "&" "(" "." "@" ATPNAME_LN ATPNAME_NS "BNODE" "CLOSED" "EXTERNAL" - "EXTRA" "FRACTIONDIGITS" "IRI" IRIREF "LENGTH" "LITERAL" "MAXEXCLUSIVE" + (first "(" "." "@" ATPNAME_LN ATPNAME_NS "BNODE" "CLOSED" "EXTERNAL" "EXTRA" + "FRACTIONDIGITS" "IRI" IRIREF "LENGTH" "LITERAL" "MAXEXCLUSIVE" "MAXINCLUSIVE" "MAXLENGTH" "MINEXCLUSIVE" "MININCLUSIVE" "MINLENGTH" "NONLITERAL" "NOT" PNAME_LN PNAME_NS REGEXP "TOTALDIGITS" "[" "{" ) (follow "BASE" BLANK_NODE_LABEL IRIREF PNAME_LN PNAME_NS "PREFIX" "START" _eof) (alt shapeExpression "EXTERNAL")) (rule _shapeExprDecl_2 "9.2" - (first "&" "(" "." "@" ATPNAME_LN ATPNAME_NS "BNODE" "CLOSED" "EXTERNAL" - "EXTRA" "FRACTIONDIGITS" "IRI" IRIREF "LENGTH" "LITERAL" "MAXEXCLUSIVE" + (first "(" "." "@" ATPNAME_LN ATPNAME_NS "BNODE" "CLOSED" "EXTERNAL" "EXTRA" + "FRACTIONDIGITS" "IRI" IRIREF "LENGTH" "LITERAL" "MAXEXCLUSIVE" "MAXINCLUSIVE" "MAXLENGTH" "MINEXCLUSIVE" "MININCLUSIVE" "MINLENGTH" "NONLITERAL" "NOT" PNAME_LN PNAME_NS REGEXP "TOTALDIGITS" "[" "{" ) (follow "BASE" BLANK_NODE_LABEL IRIREF PNAME_LN PNAME_NS "PREFIX" "START" _eof) (seq _shapeExprDecl_1)) (rule shapeExpression "10" - (first "&" "(" "." "@" ATPNAME_LN ATPNAME_NS "BNODE" "CLOSED" "EXTRA" + (first "(" "." "@" ATPNAME_LN ATPNAME_NS "BNODE" "CLOSED" "EXTRA" "FRACTIONDIGITS" "IRI" IRIREF "LENGTH" "LITERAL" "MAXEXCLUSIVE" "MAXINCLUSIVE" "MAXLENGTH" "MINEXCLUSIVE" "MININCLUSIVE" "MINLENGTH" "NONLITERAL" "NOT" PNAME_LN PNAME_NS REGEXP "TOTALDIGITS" "[" "{" ) @@ -190,7 +185,7 @@ _eof ) (alt _shapeExpression_1 _shapeExpression_2 _shapeExpression_3)) (rule _shapeExpression_1 "10.1" - (first "&" "(" "." "BNODE" "CLOSED" "EXTRA" "FRACTIONDIGITS" "IRI" IRIREF + (first "(" "." "BNODE" "CLOSED" "EXTRA" "FRACTIONDIGITS" "IRI" IRIREF "LENGTH" "LITERAL" "MAXEXCLUSIVE" "MAXINCLUSIVE" "MAXLENGTH" "MINEXCLUSIVE" "MININCLUSIVE" "MINLENGTH" "NONLITERAL" PNAME_LN PNAME_NS REGEXP "TOTALDIGITS" "[" "{" ) @@ -219,7 +214,7 @@ (cleanup opt) (alt _empty shapeOr)) (rule _shapeExpression_5 "10.5" - (first "&" "(" "." "@" ATPNAME_LN ATPNAME_NS "BNODE" "CLOSED" "EXTRA" + (first "(" "." "@" ATPNAME_LN ATPNAME_NS "BNODE" "CLOSED" "EXTRA" "FRACTIONDIGITS" "IRI" IRIREF "LENGTH" "LITERAL" "MAXEXCLUSIVE" "MAXINCLUSIVE" "MAXLENGTH" "MINEXCLUSIVE" "MININCLUSIVE" "MINLENGTH" "NONLITERAL" PNAME_LN PNAME_NS REGEXP "TOTALDIGITS" "[" "{" ) @@ -238,7 +233,7 @@ _eof ) (seq _shapeExpression_4)) (rule _shapeExpression_8 "10.8" - (first "&" "(" "." "@" ATPNAME_LN ATPNAME_NS "BNODE" "CLOSED" "EXTRA" + (first "(" "." "@" ATPNAME_LN ATPNAME_NS "BNODE" "CLOSED" "EXTRA" "FRACTIONDIGITS" "IRI" IRIREF "LENGTH" "LITERAL" "MAXEXCLUSIVE" "MAXINCLUSIVE" "MAXLENGTH" "MINEXCLUSIVE" "MININCLUSIVE" "MINLENGTH" "NONLITERAL" PNAME_LN PNAME_NS REGEXP "TOTALDIGITS" "[" "{" ) @@ -251,35 +246,53 @@ _eof ) (seq shapeOr)) (rule inlineShapeExpression "11" - (first "&" "(" "." "@" ATPNAME_LN ATPNAME_NS "BNODE" "CLOSED" "EXTRA" + (first "(" "." "@" ATPNAME_LN ATPNAME_NS "BNODE" "CLOSED" "EXTRA" "FRACTIONDIGITS" "IRI" IRIREF "LENGTH" "LITERAL" "MAXEXCLUSIVE" "MAXINCLUSIVE" "MAXLENGTH" "MINEXCLUSIVE" "MININCLUSIVE" "MINLENGTH" "NONLITERAL" "NOT" PNAME_LN PNAME_NS REGEXP "TOTALDIGITS" "[" "{" ) (follow "%" ")" "*" "+" "//" ";" "?" REPEAT_RANGE "|" "}") (seq inlineShapeOr)) + (rule _shapeOrB_6 "12b.6" + (first "(" "." "@" ATPNAME_LN ATPNAME_NS "BNODE" "CLOSED" "EXTRA" + "FRACTIONDIGITS" "IRI" IRIREF "LENGTH" "LITERAL" "MAXEXCLUSIVE" + "MAXINCLUSIVE" "MAXLENGTH" "MINEXCLUSIVE" "MININCLUSIVE" "MINLENGTH" + "NONLITERAL" "NOT" PNAME_LN PNAME_NS REGEXP "TOTALDIGITS" "[" "{" ) + (follow ")" "AND" "BASE" BLANK_NODE_LABEL IRIREF "OR" PNAME_LN PNAME_NS + "PREFIX" "START" _eof ) + (seq shapeNot)) (rule shapeOr "12" (first "AND" "OR") (follow ")" "BASE" BLANK_NODE_LABEL IRIREF PNAME_LN PNAME_NS "PREFIX" "START" _eof ) (alt shapeOrA _shapeOr_1)) - (rule _shapeOrA_5 "12a.5" + (rule shapeOrA "12a" + (first "OR") + (follow ")" "BASE" BLANK_NODE_LABEL IRIREF PNAME_LN PNAME_NS "PREFIX" "START" + _eof ) + (cleanup plus) + (seq _shapeOrA_1 _shapeOrA_2)) + (rule _shapeOrA_2 "12a.2" (first "OR" _eps) (follow ")" "BASE" BLANK_NODE_LABEL IRIREF PNAME_LN PNAME_NS "PREFIX" "START" _eof ) - (seq _shapeOrA_2)) - (rule _shapeOrB_6 "12b.6" - (first "&" "(" "." "@" ATPNAME_LN ATPNAME_NS "BNODE" "CLOSED" "EXTRA" - "FRACTIONDIGITS" "IRI" IRIREF "LENGTH" "LITERAL" "MAXEXCLUSIVE" - "MAXINCLUSIVE" "MAXLENGTH" "MINEXCLUSIVE" "MININCLUSIVE" "MINLENGTH" - "NONLITERAL" "NOT" PNAME_LN PNAME_NS REGEXP "TOTALDIGITS" "[" "{" ) - (follow ")" "AND" "BASE" BLANK_NODE_LABEL IRIREF "OR" PNAME_LN PNAME_NS - "PREFIX" "START" _eof ) - (seq shapeNot)) - (rule _shapeOrB_3 "12b.3" + (cleanup star) + (alt _empty _shapeOrA_3)) + (rule _shapeOrA_3 "12a.3" + (first "OR") + (follow ")" "BASE" BLANK_NODE_LABEL IRIREF PNAME_LN PNAME_NS "PREFIX" "START" + _eof ) + (cleanup merge) + (seq _shapeOrA_1 _shapeOrA_2)) + (rule _shapeOrA_1 "12a.1" + (first "OR") + (follow ")" "BASE" BLANK_NODE_LABEL IRIREF "OR" PNAME_LN PNAME_NS "PREFIX" + "START" _eof ) + (seq "OR" shapeAnd)) + (rule shapeOrB "12b" (first "AND") (follow ")" "BASE" BLANK_NODE_LABEL IRIREF "OR" PNAME_LN PNAME_NS "PREFIX" "START" _eof ) - (cleanup merge) + (cleanup plus) (seq _shapeOrB_1 _shapeOrB_2)) (rule _shapeOrB_2 "12b.2" (first "AND" _eps) @@ -287,63 +300,45 @@ "START" _eof ) (cleanup star) (alt _empty _shapeOrB_3)) - (rule shapeOrB "12b" + (rule _shapeOrB_3 "12b.3" (first "AND") (follow ")" "BASE" BLANK_NODE_LABEL IRIREF "OR" PNAME_LN PNAME_NS "PREFIX" "START" _eof ) - (cleanup plus) - (seq _shapeOrB_1 _shapeOrB_2)) - (rule _shapeOrA_1 "12a.1" - (first "OR") - (follow ")" "BASE" BLANK_NODE_LABEL IRIREF "OR" PNAME_LN PNAME_NS "PREFIX" - "START" _eof ) - (seq "OR" shapeAnd)) - (rule _shapeOrA_3 "12a.3" - (first "OR") - (follow ")" "BASE" BLANK_NODE_LABEL IRIREF PNAME_LN PNAME_NS "PREFIX" "START" - _eof ) (cleanup merge) - (seq _shapeOrA_1 _shapeOrA_2)) - (rule _shapeOrA_2 "12a.2" - (first "OR" _eps) - (follow ")" "BASE" BLANK_NODE_LABEL IRIREF PNAME_LN PNAME_NS "PREFIX" "START" - _eof ) - (cleanup star) - (alt _empty _shapeOrA_3)) + (seq _shapeOrB_1 _shapeOrB_2)) + (rule _shapeOrB_1 "12b.1" + (first "AND") + (follow ")" "AND" "BASE" BLANK_NODE_LABEL IRIREF "OR" PNAME_LN PNAME_NS + "PREFIX" "START" _eof ) + (seq "AND" shapeNot)) (rule _shapeOrA_4 "12a.4" (first "OR" _eps) (follow ")" "BASE" BLANK_NODE_LABEL IRIREF PNAME_LN PNAME_NS "PREFIX" "START" _eof ) (seq _shapeOrA_2)) - (rule shapeOrA "12a" - (first "OR") + (rule _shapeOrA_5 "12a.5" + (first "OR" _eps) (follow ")" "BASE" BLANK_NODE_LABEL IRIREF PNAME_LN PNAME_NS "PREFIX" "START" _eof ) - (cleanup plus) - (seq _shapeOrA_1 _shapeOrA_2)) - (rule _shapeOrB_5 "12b.5" - (first "AND" _eps) + (seq _shapeOrA_2)) + (rule _shapeOrA_6 "12a.6" + (first "(" "." "@" ATPNAME_LN ATPNAME_NS "BNODE" "CLOSED" "EXTRA" + "FRACTIONDIGITS" "IRI" IRIREF "LENGTH" "LITERAL" "MAXEXCLUSIVE" + "MAXINCLUSIVE" "MAXLENGTH" "MINEXCLUSIVE" "MININCLUSIVE" "MINLENGTH" + "NONLITERAL" "NOT" PNAME_LN PNAME_NS REGEXP "TOTALDIGITS" "[" "{" ) (follow ")" "BASE" BLANK_NODE_LABEL IRIREF "OR" PNAME_LN PNAME_NS "PREFIX" "START" _eof ) - (seq _shapeOrB_2)) + (seq shapeAnd)) (rule _shapeOrB_4 "12b.4" (first "AND" _eps) (follow ")" "BASE" BLANK_NODE_LABEL IRIREF "OR" PNAME_LN PNAME_NS "PREFIX" "START" _eof ) (seq _shapeOrB_2)) - (rule _shapeOrA_6 "12a.6" - (first "&" "(" "." "@" ATPNAME_LN ATPNAME_NS "BNODE" "CLOSED" "EXTRA" - "FRACTIONDIGITS" "IRI" IRIREF "LENGTH" "LITERAL" "MAXEXCLUSIVE" - "MAXINCLUSIVE" "MAXLENGTH" "MINEXCLUSIVE" "MININCLUSIVE" "MINLENGTH" - "NONLITERAL" "NOT" PNAME_LN PNAME_NS REGEXP "TOTALDIGITS" "[" "{" ) + (rule _shapeOrB_5 "12b.5" + (first "AND" _eps) (follow ")" "BASE" BLANK_NODE_LABEL IRIREF "OR" PNAME_LN PNAME_NS "PREFIX" "START" _eof ) - (seq shapeAnd)) - (rule _shapeOrB_1 "12b.1" - (first "AND") - (follow ")" "AND" "BASE" BLANK_NODE_LABEL IRIREF "OR" PNAME_LN PNAME_NS - "PREFIX" "START" _eof ) - (seq "AND" shapeNot)) + (seq _shapeOrB_2)) (rule _shapeOr_1 "12.1" (first "AND") (follow ")" "BASE" BLANK_NODE_LABEL IRIREF PNAME_LN PNAME_NS "PREFIX" "START" @@ -361,12 +356,23 @@ _eof ) (seq _shapeOr_2)) (rule inlineShapeOr "13" - (first "&" "(" "." "@" ATPNAME_LN ATPNAME_NS "BNODE" "CLOSED" "EXTRA" + (first "(" "." "@" ATPNAME_LN ATPNAME_NS "BNODE" "CLOSED" "EXTRA" "FRACTIONDIGITS" "IRI" IRIREF "LENGTH" "LITERAL" "MAXEXCLUSIVE" "MAXINCLUSIVE" "MAXLENGTH" "MINEXCLUSIVE" "MININCLUSIVE" "MINLENGTH" "NONLITERAL" "NOT" PNAME_LN PNAME_NS REGEXP "TOTALDIGITS" "[" "{" ) (follow "%" ")" "*" "+" "//" ";" "?" REPEAT_RANGE "|" "}") (seq inlineShapeAnd _inlineShapeOr_1)) + (rule literal "13t" + (first DECIMAL DOUBLE INTEGER LANG_STRING_LITERAL1 LANG_STRING_LITERAL2 + LANG_STRING_LITERAL_LONG1 LANG_STRING_LITERAL_LONG2 STRING_LITERAL1 + STRING_LITERAL2 STRING_LITERAL_LONG1 STRING_LITERAL_LONG2 "false" "true" ) + (follow "%" ")" "-" "." "//" ";" "AND" "BASE" BLANK_NODE_LABEL "BNODE" + DECIMAL DOUBLE INTEGER "IRI" IRIREF LANGTAG LANG_STRING_LITERAL1 + LANG_STRING_LITERAL2 LANG_STRING_LITERAL_LONG1 LANG_STRING_LITERAL_LONG2 + "LENGTH" "MAXLENGTH" "MINLENGTH" "NONLITERAL" "OR" PNAME_LN PNAME_NS + "PREFIX" REGEXP "START" STRING_LITERAL1 STRING_LITERAL2 STRING_LITERAL_LONG1 + STRING_LITERAL_LONG2 "]" _eof "false" "true" "|" "}" "~" ) + (alt rdfLiteral numericLiteral booleanLiteral)) (rule _inlineShapeOr_1 "13.1" (first "OR" _eps) (follow "%" ")" "*" "+" "//" ";" "?" REPEAT_RANGE "|" "}") @@ -390,14 +396,14 @@ (follow "%" ")" "*" "+" "//" ";" "?" REPEAT_RANGE "|" "}") (seq _inlineShapeOr_1)) (rule _inlineShapeOr_6 "13.6" - (first "&" "(" "." "@" ATPNAME_LN ATPNAME_NS "BNODE" "CLOSED" "EXTRA" + (first "(" "." "@" ATPNAME_LN ATPNAME_NS "BNODE" "CLOSED" "EXTRA" "FRACTIONDIGITS" "IRI" IRIREF "LENGTH" "LITERAL" "MAXEXCLUSIVE" "MAXINCLUSIVE" "MAXLENGTH" "MINEXCLUSIVE" "MININCLUSIVE" "MINLENGTH" "NONLITERAL" "NOT" PNAME_LN PNAME_NS REGEXP "TOTALDIGITS" "[" "{" ) (follow "%" ")" "*" "+" "//" ";" "?" "OR" REPEAT_RANGE "|" "}") (seq inlineShapeAnd)) (rule shapeAnd "14" - (first "&" "(" "." "@" ATPNAME_LN ATPNAME_NS "BNODE" "CLOSED" "EXTRA" + (first "(" "." "@" ATPNAME_LN ATPNAME_NS "BNODE" "CLOSED" "EXTRA" "FRACTIONDIGITS" "IRI" IRIREF "LENGTH" "LITERAL" "MAXEXCLUSIVE" "MAXINCLUSIVE" "MAXLENGTH" "MINEXCLUSIVE" "MININCLUSIVE" "MINLENGTH" "NONLITERAL" "NOT" PNAME_LN PNAME_NS REGEXP "TOTALDIGITS" "[" "{" ) @@ -432,7 +438,7 @@ "START" _eof ) (seq _shapeAnd_1)) (rule _shapeAnd_6 "14.6" - (first "&" "(" "." "@" ATPNAME_LN ATPNAME_NS "BNODE" "CLOSED" "EXTRA" + (first "(" "." "@" ATPNAME_LN ATPNAME_NS "BNODE" "CLOSED" "EXTRA" "FRACTIONDIGITS" "IRI" IRIREF "LENGTH" "LITERAL" "MAXEXCLUSIVE" "MAXINCLUSIVE" "MAXLENGTH" "MINEXCLUSIVE" "MININCLUSIVE" "MINLENGTH" "NONLITERAL" "NOT" PNAME_LN PNAME_NS REGEXP "TOTALDIGITS" "[" "{" ) @@ -440,7 +446,7 @@ "PREFIX" "START" _eof ) (seq shapeNot)) (rule inlineShapeAnd "15" - (first "&" "(" "." "@" ATPNAME_LN ATPNAME_NS "BNODE" "CLOSED" "EXTRA" + (first "(" "." "@" ATPNAME_LN ATPNAME_NS "BNODE" "CLOSED" "EXTRA" "FRACTIONDIGITS" "IRI" IRIREF "LENGTH" "LITERAL" "MAXEXCLUSIVE" "MAXINCLUSIVE" "MAXLENGTH" "MINEXCLUSIVE" "MININCLUSIVE" "MINLENGTH" "NONLITERAL" "NOT" PNAME_LN PNAME_NS REGEXP "TOTALDIGITS" "[" "{" ) @@ -469,30 +475,41 @@ (follow "%" ")" "*" "+" "//" ";" "?" "OR" REPEAT_RANGE "|" "}") (seq _inlineShapeAnd_1)) (rule _inlineShapeAnd_6 "15.6" - (first "&" "(" "." "@" ATPNAME_LN ATPNAME_NS "BNODE" "CLOSED" "EXTRA" + (first "(" "." "@" ATPNAME_LN ATPNAME_NS "BNODE" "CLOSED" "EXTRA" "FRACTIONDIGITS" "IRI" IRIREF "LENGTH" "LITERAL" "MAXEXCLUSIVE" "MAXINCLUSIVE" "MAXLENGTH" "MINEXCLUSIVE" "MININCLUSIVE" "MINLENGTH" "NONLITERAL" "NOT" PNAME_LN PNAME_NS REGEXP "TOTALDIGITS" "[" "{" ) (follow "%" ")" "*" "+" "//" ";" "?" "AND" "OR" REPEAT_RANGE "|" "}") (seq inlineShapeNot)) (rule shapeNot "16" - (first "&" "(" "." "@" ATPNAME_LN ATPNAME_NS "BNODE" "CLOSED" "EXTRA" + (first "(" "." "@" ATPNAME_LN ATPNAME_NS "BNODE" "CLOSED" "EXTRA" "FRACTIONDIGITS" "IRI" IRIREF "LENGTH" "LITERAL" "MAXEXCLUSIVE" "MAXINCLUSIVE" "MAXLENGTH" "MINEXCLUSIVE" "MININCLUSIVE" "MINLENGTH" "NONLITERAL" "NOT" PNAME_LN PNAME_NS REGEXP "TOTALDIGITS" "[" "{" ) (follow ")" "AND" "BASE" BLANK_NODE_LABEL IRIREF "OR" PNAME_LN PNAME_NS "PREFIX" "START" _eof ) (seq _shapeNot_1 shapeAtom)) + (rule numericLiteral "16t" + (first DECIMAL DOUBLE INTEGER) + (follow "%" ")" "*" "+" "-" "." "//" ";" "?" "AND" "BASE" BLANK_NODE_LABEL + "BNODE" DECIMAL DOUBLE "FRACTIONDIGITS" INTEGER "IRI" IRIREF LANGTAG + LANG_STRING_LITERAL1 LANG_STRING_LITERAL2 LANG_STRING_LITERAL_LONG1 + LANG_STRING_LITERAL_LONG2 "LENGTH" "MAXEXCLUSIVE" "MAXINCLUSIVE" "MAXLENGTH" + "MINEXCLUSIVE" "MININCLUSIVE" "MINLENGTH" "NONLITERAL" "OR" PNAME_LN + PNAME_NS "PREFIX" REGEXP REPEAT_RANGE "START" STRING_LITERAL1 + STRING_LITERAL2 STRING_LITERAL_LONG1 STRING_LITERAL_LONG2 "TOTALDIGITS" "]" + _eof "false" "true" "|" "}" "~" ) + (alt INTEGER DECIMAL DOUBLE)) (rule _shapeNot_1 "16.1" (first "NOT" _eps) - (follow "&" "(" "." "@" ATPNAME_LN ATPNAME_NS "BNODE" "CLOSED" "EXTRA" + (follow "(" "." "@" ATPNAME_LN ATPNAME_NS "BNODE" "CLOSED" "EXTRA" "FRACTIONDIGITS" "IRI" IRIREF "LENGTH" "LITERAL" "MAXEXCLUSIVE" "MAXINCLUSIVE" "MAXLENGTH" "MINEXCLUSIVE" "MININCLUSIVE" "MINLENGTH" "NONLITERAL" PNAME_LN PNAME_NS REGEXP "TOTALDIGITS" "[" "{" ) (cleanup opt) (alt _empty "NOT")) (rule _shapeNot_2 "16.2" - (first "&" "(" "." "@" ATPNAME_LN ATPNAME_NS "BNODE" "CLOSED" "EXTRA" + (first "(" "." "@" ATPNAME_LN ATPNAME_NS "BNODE" "CLOSED" "EXTRA" "FRACTIONDIGITS" "IRI" IRIREF "LENGTH" "LITERAL" "MAXEXCLUSIVE" "MAXINCLUSIVE" "MAXLENGTH" "MINEXCLUSIVE" "MININCLUSIVE" "MINLENGTH" "NONLITERAL" PNAME_LN PNAME_NS REGEXP "TOTALDIGITS" "[" "{" ) @@ -500,7 +517,7 @@ "PREFIX" "START" _eof ) (seq shapeAtom)) (rule inlineShapeNot "17" - (first "&" "(" "." "@" ATPNAME_LN ATPNAME_NS "BNODE" "CLOSED" "EXTRA" + (first "(" "." "@" ATPNAME_LN ATPNAME_NS "BNODE" "CLOSED" "EXTRA" "FRACTIONDIGITS" "IRI" IRIREF "LENGTH" "LITERAL" "MAXEXCLUSIVE" "MAXINCLUSIVE" "MAXLENGTH" "MINEXCLUSIVE" "MININCLUSIVE" "MINLENGTH" "NONLITERAL" "NOT" PNAME_LN PNAME_NS REGEXP "TOTALDIGITS" "[" "{" ) @@ -508,21 +525,26 @@ (seq _inlineShapeNot_1 inlineShapeAtom)) (rule _inlineShapeNot_1 "17.1" (first "NOT" _eps) - (follow "&" "(" "." "@" ATPNAME_LN ATPNAME_NS "BNODE" "CLOSED" "EXTRA" + (follow "(" "." "@" ATPNAME_LN ATPNAME_NS "BNODE" "CLOSED" "EXTRA" "FRACTIONDIGITS" "IRI" IRIREF "LENGTH" "LITERAL" "MAXEXCLUSIVE" "MAXINCLUSIVE" "MAXLENGTH" "MINEXCLUSIVE" "MININCLUSIVE" "MINLENGTH" "NONLITERAL" PNAME_LN PNAME_NS REGEXP "TOTALDIGITS" "[" "{" ) (cleanup opt) (alt _empty "NOT")) (rule _inlineShapeNot_2 "17.2" - (first "&" "(" "." "@" ATPNAME_LN ATPNAME_NS "BNODE" "CLOSED" "EXTRA" + (first "(" "." "@" ATPNAME_LN ATPNAME_NS "BNODE" "CLOSED" "EXTRA" "FRACTIONDIGITS" "IRI" IRIREF "LENGTH" "LITERAL" "MAXEXCLUSIVE" "MAXINCLUSIVE" "MAXLENGTH" "MINEXCLUSIVE" "MININCLUSIVE" "MINLENGTH" "NONLITERAL" PNAME_LN PNAME_NS REGEXP "TOTALDIGITS" "[" "{" ) (follow "%" ")" "*" "+" "//" ";" "?" "AND" "OR" REPEAT_RANGE "|" "}") (seq inlineShapeAtom)) + (terminal IRIREF "18t" + (seq "<" + (range + "^#x00-#x20<>\"{}|^`\\] | UCHAR)* '>' /* #x00=NULL #01-#x1F=control codes #x20=space */" + )) ) (rule shapeAtom "18" - (first "&" "(" "." "@" ATPNAME_LN ATPNAME_NS "BNODE" "CLOSED" "EXTRA" + (first "(" "." "@" ATPNAME_LN ATPNAME_NS "BNODE" "CLOSED" "EXTRA" "FRACTIONDIGITS" "IRI" IRIREF "LENGTH" "LITERAL" "MAXEXCLUSIVE" "MAXINCLUSIVE" "MAXLENGTH" "MINEXCLUSIVE" "MININCLUSIVE" "MINLENGTH" "NONLITERAL" PNAME_LN PNAME_NS REGEXP "TOTALDIGITS" "[" "{" ) @@ -535,7 +557,7 @@ "PREFIX" "START" _eof ) (seq nonLitNodeConstraint _shapeAtom_4)) (rule _shapeAtom_2 "18.2" - (first "&" "@" ATPNAME_LN ATPNAME_NS "CLOSED" "EXTRA" "{") + (first "@" ATPNAME_LN ATPNAME_NS "CLOSED" "EXTRA" "{") (follow ")" "AND" "BASE" BLANK_NODE_LABEL IRIREF "OR" PNAME_LN PNAME_NS "PREFIX" "START" _eof ) (seq shapeOrRef _shapeAtom_5)) @@ -545,7 +567,7 @@ "PREFIX" "START" _eof ) (seq "(" shapeExpression ")")) (rule _shapeAtom_4 "18.4" - (first "&" "@" ATPNAME_LN ATPNAME_NS "CLOSED" "EXTRA" _eps "{") + (first "@" ATPNAME_LN ATPNAME_NS "CLOSED" "EXTRA" _eps "{") (follow ")" "AND" "BASE" BLANK_NODE_LABEL IRIREF "OR" PNAME_LN PNAME_NS "PREFIX" "START" _eof ) (cleanup opt) @@ -557,7 +579,7 @@ (cleanup opt) (alt _empty nonLitNodeConstraint)) (rule _shapeAtom_6 "18.6" - (first "&" "@" ATPNAME_LN ATPNAME_NS "CLOSED" "EXTRA" _eps "{") + (first "@" ATPNAME_LN ATPNAME_NS "CLOSED" "EXTRA" _eps "{") (follow ")" "AND" "BASE" BLANK_NODE_LABEL IRIREF "OR" PNAME_LN PNAME_NS "PREFIX" "START" _eof ) (seq _shapeAtom_4)) @@ -567,7 +589,7 @@ "PREFIX" "START" _eof ) (seq _shapeAtom_5)) (rule _shapeAtom_8 "18.8" - (first "&" "(" "." "@" ATPNAME_LN ATPNAME_NS "BNODE" "CLOSED" "EXTRA" + (first "(" "." "@" ATPNAME_LN ATPNAME_NS "BNODE" "CLOSED" "EXTRA" "FRACTIONDIGITS" "IRI" IRIREF "LENGTH" "LITERAL" "MAXEXCLUSIVE" "MAXINCLUSIVE" "MAXLENGTH" "MINEXCLUSIVE" "MININCLUSIVE" "MINLENGTH" "NONLITERAL" "NOT" PNAME_LN PNAME_NS REGEXP "TOTALDIGITS" "[" "{" ) @@ -580,20 +602,21 @@ "PREFIX" "START" _eof ) (seq ")")) (rule shapeAtomNoRef "19" - (first "&" "(" "." "BNODE" "CLOSED" "EXTRA" "FRACTIONDIGITS" "IRI" IRIREF + (first "(" "." "BNODE" "CLOSED" "EXTRA" "FRACTIONDIGITS" "IRI" IRIREF "LENGTH" "LITERAL" "MAXEXCLUSIVE" "MAXINCLUSIVE" "MAXLENGTH" "MINEXCLUSIVE" "MININCLUSIVE" "MINLENGTH" "NONLITERAL" PNAME_LN PNAME_NS REGEXP "TOTALDIGITS" "[" "{" ) (follow ")" "AND" "BASE" BLANK_NODE_LABEL IRIREF "OR" PNAME_LN PNAME_NS "PREFIX" "START" _eof ) (alt _shapeAtomNoRef_1 litNodeConstraint _shapeAtomNoRef_2 _shapeAtomNoRef_3 ".")) + (terminal INTEGER "19t" (seq (opt (range "+-")) (plus (range "0-9")))) (rule _shapeAtomNoRef_1 "19.1" (first "BNODE" "IRI" "LENGTH" "MAXLENGTH" "MINLENGTH" "NONLITERAL" REGEXP) (follow ")" "AND" "BASE" BLANK_NODE_LABEL IRIREF "OR" PNAME_LN PNAME_NS "PREFIX" "START" _eof ) (seq nonLitNodeConstraint _shapeAtomNoRef_4)) (rule _shapeAtomNoRef_2 "19.2" - (first "&" "CLOSED" "EXTRA" "{") + (first "CLOSED" "EXTRA" "{") (follow ")" "AND" "BASE" BLANK_NODE_LABEL IRIREF "OR" PNAME_LN PNAME_NS "PREFIX" "START" _eof ) (seq shapeDefinition _shapeAtomNoRef_5)) @@ -603,7 +626,7 @@ "PREFIX" "START" _eof ) (seq "(" shapeExpression ")")) (rule _shapeAtomNoRef_4 "19.4" - (first "&" "@" ATPNAME_LN ATPNAME_NS "CLOSED" "EXTRA" _eps "{") + (first "@" ATPNAME_LN ATPNAME_NS "CLOSED" "EXTRA" _eps "{") (follow ")" "AND" "BASE" BLANK_NODE_LABEL IRIREF "OR" PNAME_LN PNAME_NS "PREFIX" "START" _eof ) (cleanup opt) @@ -615,7 +638,7 @@ (cleanup opt) (alt _empty nonLitNodeConstraint)) (rule _shapeAtomNoRef_6 "19.6" - (first "&" "@" ATPNAME_LN ATPNAME_NS "CLOSED" "EXTRA" _eps "{") + (first "@" ATPNAME_LN ATPNAME_NS "CLOSED" "EXTRA" _eps "{") (follow ")" "AND" "BASE" BLANK_NODE_LABEL IRIREF "OR" PNAME_LN PNAME_NS "PREFIX" "START" _eof ) (seq _shapeAtomNoRef_4)) @@ -625,7 +648,7 @@ "PREFIX" "START" _eof ) (seq _shapeAtomNoRef_5)) (rule _shapeAtomNoRef_8 "19.8" - (first "&" "(" "." "@" ATPNAME_LN ATPNAME_NS "BNODE" "CLOSED" "EXTRA" + (first "(" "." "@" ATPNAME_LN ATPNAME_NS "BNODE" "CLOSED" "EXTRA" "FRACTIONDIGITS" "IRI" IRIREF "LENGTH" "LITERAL" "MAXEXCLUSIVE" "MAXINCLUSIVE" "MAXLENGTH" "MINEXCLUSIVE" "MININCLUSIVE" "MINLENGTH" "NONLITERAL" "NOT" PNAME_LN PNAME_NS REGEXP "TOTALDIGITS" "[" "{" ) @@ -638,19 +661,20 @@ "PREFIX" "START" _eof ) (seq ")")) (rule inlineShapeAtom "20" - (first "&" "(" "." "@" ATPNAME_LN ATPNAME_NS "BNODE" "CLOSED" "EXTRA" + (first "(" "." "@" ATPNAME_LN ATPNAME_NS "BNODE" "CLOSED" "EXTRA" "FRACTIONDIGITS" "IRI" IRIREF "LENGTH" "LITERAL" "MAXEXCLUSIVE" "MAXINCLUSIVE" "MAXLENGTH" "MINEXCLUSIVE" "MININCLUSIVE" "MINLENGTH" "NONLITERAL" PNAME_LN PNAME_NS REGEXP "TOTALDIGITS" "[" "{" ) (follow "%" ")" "*" "+" "//" ";" "?" "AND" "OR" REPEAT_RANGE "|" "}") (alt _inlineShapeAtom_1 litNodeConstraint _inlineShapeAtom_2 _inlineShapeAtom_3 "." )) + (terminal DECIMAL "20t" (seq (opt (range "+-")) (star (range "0-9")) "." (plus (range "0-9")))) (rule _inlineShapeAtom_1 "20.1" (first "BNODE" "IRI" "LENGTH" "MAXLENGTH" "MINLENGTH" "NONLITERAL" REGEXP) (follow "%" ")" "*" "+" "//" ";" "?" "AND" "OR" REPEAT_RANGE "|" "}") (seq nonLitNodeConstraint _inlineShapeAtom_4)) (rule _inlineShapeAtom_2 "20.2" - (first "&" "@" ATPNAME_LN ATPNAME_NS "CLOSED" "EXTRA" "{") + (first "@" ATPNAME_LN ATPNAME_NS "CLOSED" "EXTRA" "{") (follow "%" ")" "*" "+" "//" ";" "?" "AND" "OR" REPEAT_RANGE "|" "}") (seq inlineShapeOrRef _inlineShapeAtom_5)) (rule _inlineShapeAtom_3 "20.3" @@ -658,7 +682,7 @@ (follow "%" ")" "*" "+" "//" ";" "?" "AND" "OR" REPEAT_RANGE "|" "}") (seq "(" shapeExpression ")")) (rule _inlineShapeAtom_4 "20.4" - (first "&" "@" ATPNAME_LN ATPNAME_NS "CLOSED" "EXTRA" _eps "{") + (first "@" ATPNAME_LN ATPNAME_NS "CLOSED" "EXTRA" _eps "{") (follow "%" ")" "*" "+" "//" ";" "?" "AND" "OR" REPEAT_RANGE "|" "}") (cleanup opt) (alt _empty inlineShapeOrRef)) @@ -668,7 +692,7 @@ (cleanup opt) (alt _empty nonLitNodeConstraint)) (rule _inlineShapeAtom_6 "20.6" - (first "&" "@" ATPNAME_LN ATPNAME_NS "CLOSED" "EXTRA" _eps "{") + (first "@" ATPNAME_LN ATPNAME_NS "CLOSED" "EXTRA" _eps "{") (follow "%" ")" "*" "+" "//" ";" "?" "AND" "OR" REPEAT_RANGE "|" "}") (seq _inlineShapeAtom_4)) (rule _inlineShapeAtom_7 "20.7" @@ -676,7 +700,7 @@ (follow "%" ")" "*" "+" "//" ";" "?" "AND" "OR" REPEAT_RANGE "|" "}") (seq _inlineShapeAtom_5)) (rule _inlineShapeAtom_8 "20.8" - (first "&" "(" "." "@" ATPNAME_LN ATPNAME_NS "BNODE" "CLOSED" "EXTRA" + (first "(" "." "@" ATPNAME_LN ATPNAME_NS "BNODE" "CLOSED" "EXTRA" "FRACTIONDIGITS" "IRI" IRIREF "LENGTH" "LITERAL" "MAXEXCLUSIVE" "MAXINCLUSIVE" "MAXLENGTH" "MINEXCLUSIVE" "MININCLUSIVE" "MINLENGTH" "NONLITERAL" "NOT" PNAME_LN PNAME_NS REGEXP "TOTALDIGITS" "[" "{" ) @@ -686,14 +710,20 @@ (first ")") (follow "%" ")" "*" "+" "//" ";" "?" "AND" "OR" REPEAT_RANGE "|" "}") (seq ")")) + (terminal DOUBLE "21t" + (seq + (opt (range "+-")) + (alt + (seq (plus (range "0-9")) "." (star (range "0-9")) EXPONENT) + (seq (opt ".") (plus (range "0-9")) EXPONENT)) )) (rule shapeOrRef "21" - (first "&" "@" ATPNAME_LN ATPNAME_NS "CLOSED" "EXTRA" "{") + (first "@" ATPNAME_LN ATPNAME_NS "CLOSED" "EXTRA" "{") (follow ")" "AND" "BASE" BLANK_NODE_LABEL "BNODE" "IRI" IRIREF "LENGTH" "MAXLENGTH" "MINLENGTH" "NONLITERAL" "OR" PNAME_LN PNAME_NS "PREFIX" REGEXP "START" _eof ) (alt shapeDefinition shapeRef)) (rule inlineShapeOrRef "22" - (first "&" "@" ATPNAME_LN ATPNAME_NS "CLOSED" "EXTRA" "{") + (first "@" ATPNAME_LN ATPNAME_NS "CLOSED" "EXTRA" "{") (follow "%" ")" "*" "+" "//" ";" "?" "AND" "BNODE" "IRI" "LENGTH" "MAXLENGTH" "MINLENGTH" "NONLITERAL" "OR" REGEXP REPEAT_RANGE "|" "}" ) (alt inlineShapeDefinition shapeRef)) @@ -722,11 +752,6 @@ "OR" PNAME_LN PNAME_NS "PREFIX" REPEAT_RANGE "START" _eof "|" "}" ) (alt _litNodeConstraint_1 _litNodeConstraint_2 _litNodeConstraint_3 _litNodeConstraint_4 )) - (rule _litNodeConstraint_1 "24.1" - (first "LITERAL") - (follow "%" ")" "*" "+" "//" ";" "?" "AND" "BASE" BLANK_NODE_LABEL IRIREF - "OR" PNAME_LN PNAME_NS "PREFIX" REPEAT_RANGE "START" _eof "|" "}" ) - (seq "LITERAL" _litNodeConstraint_5)) (rule _litNodeConstraint_10 "24.10" (first "FRACTIONDIGITS" "LENGTH" "MAXEXCLUSIVE" "MAXINCLUSIVE" "MAXLENGTH" "MINEXCLUSIVE" "MININCLUSIVE" "MINLENGTH" REGEXP "TOTALDIGITS" ) @@ -734,6 +759,11 @@ "OR" PNAME_LN PNAME_NS "PREFIX" REPEAT_RANGE "START" _eof "|" "}" ) (cleanup merge) (seq xsFacet _litNodeConstraint_9)) + (rule _litNodeConstraint_1 "24.1" + (first "LITERAL") + (follow "%" ")" "*" "+" "//" ";" "?" "AND" "BASE" BLANK_NODE_LABEL IRIREF + "OR" PNAME_LN PNAME_NS "PREFIX" REPEAT_RANGE "START" _eof "|" "}" ) + (seq "LITERAL" _litNodeConstraint_5)) (rule _litNodeConstraint_11 "24.11" (first "FRACTIONDIGITS" "MAXEXCLUSIVE" "MAXINCLUSIVE" "MINEXCLUSIVE" "MININCLUSIVE" "TOTALDIGITS" _eps ) @@ -790,17 +820,17 @@ (follow "%" ")" "*" "+" "//" ";" "?" "AND" "BASE" BLANK_NODE_LABEL IRIREF "OR" PNAME_LN PNAME_NS "PREFIX" REPEAT_RANGE "START" _eof "|" "}" ) (seq _litNodeConstraint_11)) - (rule _litNodeConstraint_2 "24.2" - (first IRIREF PNAME_LN PNAME_NS) - (follow "%" ")" "*" "+" "//" ";" "?" "AND" "BASE" BLANK_NODE_LABEL IRIREF - "OR" PNAME_LN PNAME_NS "PREFIX" REPEAT_RANGE "START" _eof "|" "}" ) - (seq datatype _litNodeConstraint_7)) (rule _litNodeConstraint_20 "24.20" (first "FRACTIONDIGITS" "MAXEXCLUSIVE" "MAXINCLUSIVE" "MINEXCLUSIVE" "MININCLUSIVE" "TOTALDIGITS" _eps ) (follow "%" ")" "*" "+" "//" ";" "?" "AND" "BASE" BLANK_NODE_LABEL IRIREF "OR" PNAME_LN PNAME_NS "PREFIX" REPEAT_RANGE "START" _eof "|" "}" ) (seq _litNodeConstraint_11)) + (rule _litNodeConstraint_2 "24.2" + (first IRIREF PNAME_LN PNAME_NS) + (follow "%" ")" "*" "+" "//" ";" "?" "AND" "BASE" BLANK_NODE_LABEL IRIREF + "OR" PNAME_LN PNAME_NS "PREFIX" REPEAT_RANGE "START" _eof "|" "}" ) + (seq datatype _litNodeConstraint_7)) (rule _litNodeConstraint_3 "24.3" (first "[") (follow "%" ")" "*" "+" "//" ";" "?" "AND" "BASE" BLANK_NODE_LABEL IRIREF @@ -850,82 +880,84 @@ (alt _empty _litNodeConstraint_10)) (rule nonLitNodeConstraint "25" (first "BNODE" "IRI" "LENGTH" "MAXLENGTH" "MINLENGTH" "NONLITERAL" REGEXP) - (follow "%" "&" ")" "*" "+" "//" ";" "?" "@" "AND" ATPNAME_LN ATPNAME_NS - "BASE" BLANK_NODE_LABEL "CLOSED" "EXTRA" IRIREF "OR" PNAME_LN PNAME_NS - "PREFIX" REPEAT_RANGE "START" _eof "{" "|" "}" ) + (follow "%" ")" "*" "+" "//" ";" "?" "@" "AND" ATPNAME_LN ATPNAME_NS "BASE" + BLANK_NODE_LABEL "CLOSED" "EXTRA" IRIREF "OR" PNAME_LN PNAME_NS "PREFIX" + REPEAT_RANGE "START" _eof "{" "|" "}" ) (alt _nonLitNodeConstraint_1 _nonLitNodeConstraint_2)) (rule _nonLitNodeConstraint_1 "25.1" (first "BNODE" "IRI" "NONLITERAL") - (follow "%" "&" ")" "*" "+" "//" ";" "?" "@" "AND" ATPNAME_LN ATPNAME_NS - "BASE" BLANK_NODE_LABEL "CLOSED" "EXTRA" IRIREF "OR" PNAME_LN PNAME_NS - "PREFIX" REPEAT_RANGE "START" _eof "{" "|" "}" ) + (follow "%" ")" "*" "+" "//" ";" "?" "@" "AND" ATPNAME_LN ATPNAME_NS "BASE" + BLANK_NODE_LABEL "CLOSED" "EXTRA" IRIREF "OR" PNAME_LN PNAME_NS "PREFIX" + REPEAT_RANGE "START" _eof "{" "|" "}" ) (seq nonLiteralKind _nonLitNodeConstraint_3)) (rule _nonLitNodeConstraint_10 "25.10" (first "LENGTH" "MAXLENGTH" "MINLENGTH" REGEXP _eps) - (follow "%" "&" ")" "*" "+" "//" ";" "?" "@" "AND" ATPNAME_LN ATPNAME_NS - "BASE" BLANK_NODE_LABEL "CLOSED" "EXTRA" IRIREF "OR" PNAME_LN PNAME_NS - "PREFIX" REPEAT_RANGE "START" _eof "{" "|" "}" ) + (follow "%" ")" "*" "+" "//" ";" "?" "@" "AND" ATPNAME_LN ATPNAME_NS "BASE" + BLANK_NODE_LABEL "CLOSED" "EXTRA" IRIREF "OR" PNAME_LN PNAME_NS "PREFIX" + REPEAT_RANGE "START" _eof "{" "|" "}" ) (seq _nonLitNodeConstraint_5)) (rule _nonLitNodeConstraint_2 "25.2" (first "LENGTH" "MAXLENGTH" "MINLENGTH" REGEXP) - (follow "%" "&" ")" "*" "+" "//" ";" "?" "@" "AND" ATPNAME_LN ATPNAME_NS - "BASE" BLANK_NODE_LABEL "CLOSED" "EXTRA" IRIREF "OR" PNAME_LN PNAME_NS - "PREFIX" REPEAT_RANGE "START" _eof "{" "|" "}" ) + (follow "%" ")" "*" "+" "//" ";" "?" "@" "AND" ATPNAME_LN ATPNAME_NS "BASE" + BLANK_NODE_LABEL "CLOSED" "EXTRA" IRIREF "OR" PNAME_LN PNAME_NS "PREFIX" + REPEAT_RANGE "START" _eof "{" "|" "}" ) (cleanup plus) (seq stringFacet _nonLitNodeConstraint_5)) (rule _nonLitNodeConstraint_3 "25.3" (first "LENGTH" "MAXLENGTH" "MINLENGTH" REGEXP _eps) - (follow "%" "&" ")" "*" "+" "//" ";" "?" "@" "AND" ATPNAME_LN ATPNAME_NS - "BASE" BLANK_NODE_LABEL "CLOSED" "EXTRA" IRIREF "OR" PNAME_LN PNAME_NS - "PREFIX" REPEAT_RANGE "START" _eof "{" "|" "}" ) + (follow "%" ")" "*" "+" "//" ";" "?" "@" "AND" ATPNAME_LN ATPNAME_NS "BASE" + BLANK_NODE_LABEL "CLOSED" "EXTRA" IRIREF "OR" PNAME_LN PNAME_NS "PREFIX" + REPEAT_RANGE "START" _eof "{" "|" "}" ) (cleanup star) (alt _empty _nonLitNodeConstraint_4)) (rule _nonLitNodeConstraint_4 "25.4" (first "LENGTH" "MAXLENGTH" "MINLENGTH" REGEXP) - (follow "%" "&" ")" "*" "+" "//" ";" "?" "@" "AND" ATPNAME_LN ATPNAME_NS - "BASE" BLANK_NODE_LABEL "CLOSED" "EXTRA" IRIREF "OR" PNAME_LN PNAME_NS - "PREFIX" REPEAT_RANGE "START" _eof "{" "|" "}" ) + (follow "%" ")" "*" "+" "//" ";" "?" "@" "AND" ATPNAME_LN ATPNAME_NS "BASE" + BLANK_NODE_LABEL "CLOSED" "EXTRA" IRIREF "OR" PNAME_LN PNAME_NS "PREFIX" + REPEAT_RANGE "START" _eof "{" "|" "}" ) (cleanup merge) (seq stringFacet _nonLitNodeConstraint_3)) (rule _nonLitNodeConstraint_5 "25.5" (first "LENGTH" "MAXLENGTH" "MINLENGTH" REGEXP _eps) - (follow "%" "&" ")" "*" "+" "//" ";" "?" "@" "AND" ATPNAME_LN ATPNAME_NS - "BASE" BLANK_NODE_LABEL "CLOSED" "EXTRA" IRIREF "OR" PNAME_LN PNAME_NS - "PREFIX" REPEAT_RANGE "START" _eof "{" "|" "}" ) + (follow "%" ")" "*" "+" "//" ";" "?" "@" "AND" ATPNAME_LN ATPNAME_NS "BASE" + BLANK_NODE_LABEL "CLOSED" "EXTRA" IRIREF "OR" PNAME_LN PNAME_NS "PREFIX" + REPEAT_RANGE "START" _eof "{" "|" "}" ) (cleanup star) (alt _empty _nonLitNodeConstraint_6)) (rule _nonLitNodeConstraint_6 "25.6" (first "LENGTH" "MAXLENGTH" "MINLENGTH" REGEXP) - (follow "%" "&" ")" "*" "+" "//" ";" "?" "@" "AND" ATPNAME_LN ATPNAME_NS - "BASE" BLANK_NODE_LABEL "CLOSED" "EXTRA" IRIREF "OR" PNAME_LN PNAME_NS - "PREFIX" REPEAT_RANGE "START" _eof "{" "|" "}" ) + (follow "%" ")" "*" "+" "//" ";" "?" "@" "AND" ATPNAME_LN ATPNAME_NS "BASE" + BLANK_NODE_LABEL "CLOSED" "EXTRA" IRIREF "OR" PNAME_LN PNAME_NS "PREFIX" + REPEAT_RANGE "START" _eof "{" "|" "}" ) (cleanup merge) (seq stringFacet _nonLitNodeConstraint_5)) (rule _nonLitNodeConstraint_7 "25.7" (first "LENGTH" "MAXLENGTH" "MINLENGTH" REGEXP _eps) - (follow "%" "&" ")" "*" "+" "//" ";" "?" "@" "AND" ATPNAME_LN ATPNAME_NS - "BASE" BLANK_NODE_LABEL "CLOSED" "EXTRA" IRIREF "OR" PNAME_LN PNAME_NS - "PREFIX" REPEAT_RANGE "START" _eof "{" "|" "}" ) + (follow "%" ")" "*" "+" "//" ";" "?" "@" "AND" ATPNAME_LN ATPNAME_NS "BASE" + BLANK_NODE_LABEL "CLOSED" "EXTRA" IRIREF "OR" PNAME_LN PNAME_NS "PREFIX" + REPEAT_RANGE "START" _eof "{" "|" "}" ) (seq _nonLitNodeConstraint_3)) (rule _nonLitNodeConstraint_8 "25.8" (first "LENGTH" "MAXLENGTH" "MINLENGTH" REGEXP _eps) - (follow "%" "&" ")" "*" "+" "//" ";" "?" "@" "AND" ATPNAME_LN ATPNAME_NS - "BASE" BLANK_NODE_LABEL "CLOSED" "EXTRA" IRIREF "OR" PNAME_LN PNAME_NS - "PREFIX" REPEAT_RANGE "START" _eof "{" "|" "}" ) + (follow "%" ")" "*" "+" "//" ";" "?" "@" "AND" ATPNAME_LN ATPNAME_NS "BASE" + BLANK_NODE_LABEL "CLOSED" "EXTRA" IRIREF "OR" PNAME_LN PNAME_NS "PREFIX" + REPEAT_RANGE "START" _eof "{" "|" "}" ) (seq _nonLitNodeConstraint_3)) (rule _nonLitNodeConstraint_9 "25.9" (first "LENGTH" "MAXLENGTH" "MINLENGTH" REGEXP _eps) - (follow "%" "&" ")" "*" "+" "//" ";" "?" "@" "AND" ATPNAME_LN ATPNAME_NS - "BASE" BLANK_NODE_LABEL "CLOSED" "EXTRA" IRIREF "OR" PNAME_LN PNAME_NS - "PREFIX" REPEAT_RANGE "START" _eof "{" "|" "}" ) + (follow "%" ")" "*" "+" "//" ";" "?" "@" "AND" ATPNAME_LN ATPNAME_NS "BASE" + BLANK_NODE_LABEL "CLOSED" "EXTRA" IRIREF "OR" PNAME_LN PNAME_NS "PREFIX" + REPEAT_RANGE "START" _eof "{" "|" "}" ) (seq _nonLitNodeConstraint_5)) (rule nonLiteralKind "26" (first "BNODE" "IRI" "NONLITERAL") - (follow "%" "&" ")" "*" "+" "//" ";" "?" "@" "AND" ATPNAME_LN ATPNAME_NS - "BASE" BLANK_NODE_LABEL "CLOSED" "EXTRA" IRIREF "LENGTH" "MAXLENGTH" - "MINLENGTH" "OR" PNAME_LN PNAME_NS "PREFIX" REGEXP REPEAT_RANGE "START" _eof - "{" "|" "}" ) + (follow "%" ")" "*" "+" "//" ";" "?" "@" "AND" ATPNAME_LN ATPNAME_NS "BASE" + BLANK_NODE_LABEL "CLOSED" "EXTRA" IRIREF "LENGTH" "MAXLENGTH" "MINLENGTH" + "OR" PNAME_LN PNAME_NS "PREFIX" REGEXP REPEAT_RANGE "START" _eof "{" "|" "}" + ) (alt "IRI" "BNODE" "NONLITERAL")) + (terminal UCHAR "26t" + (alt (seq "\\u" HEX HEX HEX HEX) (seq "\\U" HEX HEX HEX HEX HEX HEX HEX HEX))) (rule xsFacet "27" (first "FRACTIONDIGITS" "LENGTH" "MAXEXCLUSIVE" "MAXINCLUSIVE" "MAXLENGTH" "MINEXCLUSIVE" "MININCLUSIVE" "MINLENGTH" REGEXP "TOTALDIGITS" ) @@ -936,24 +968,24 @@ (alt stringFacet numericFacet)) (rule stringFacet "28" (first "LENGTH" "MAXLENGTH" "MINLENGTH" REGEXP) - (follow "%" "&" ")" "*" "+" "//" ";" "?" "@" "AND" ATPNAME_LN ATPNAME_NS - "BASE" BLANK_NODE_LABEL "CLOSED" "EXTRA" "FRACTIONDIGITS" IRIREF "LENGTH" + (follow "%" ")" "*" "+" "//" ";" "?" "@" "AND" ATPNAME_LN ATPNAME_NS "BASE" + BLANK_NODE_LABEL "CLOSED" "EXTRA" "FRACTIONDIGITS" IRIREF "LENGTH" "MAXEXCLUSIVE" "MAXINCLUSIVE" "MAXLENGTH" "MINEXCLUSIVE" "MININCLUSIVE" "MINLENGTH" "OR" PNAME_LN PNAME_NS "PREFIX" REGEXP REPEAT_RANGE "START" "TOTALDIGITS" _eof "{" "|" "}" ) (alt _stringFacet_1 REGEXP)) (rule _stringFacet_1 "28.1" (first "LENGTH" "MAXLENGTH" "MINLENGTH") - (follow "%" "&" ")" "*" "+" "//" ";" "?" "@" "AND" ATPNAME_LN ATPNAME_NS - "BASE" BLANK_NODE_LABEL "CLOSED" "EXTRA" "FRACTIONDIGITS" IRIREF "LENGTH" + (follow "%" ")" "*" "+" "//" ";" "?" "@" "AND" ATPNAME_LN ATPNAME_NS "BASE" + BLANK_NODE_LABEL "CLOSED" "EXTRA" "FRACTIONDIGITS" IRIREF "LENGTH" "MAXEXCLUSIVE" "MAXINCLUSIVE" "MAXLENGTH" "MINEXCLUSIVE" "MININCLUSIVE" "MINLENGTH" "OR" PNAME_LN PNAME_NS "PREFIX" REGEXP REPEAT_RANGE "START" "TOTALDIGITS" _eof "{" "|" "}" ) (seq stringLength INTEGER)) (rule _stringFacet_2 "28.2" (first INTEGER) - (follow "%" "&" ")" "*" "+" "//" ";" "?" "@" "AND" ATPNAME_LN ATPNAME_NS - "BASE" BLANK_NODE_LABEL "CLOSED" "EXTRA" "FRACTIONDIGITS" IRIREF "LENGTH" + (follow "%" ")" "*" "+" "//" ";" "?" "@" "AND" ATPNAME_LN ATPNAME_NS "BASE" + BLANK_NODE_LABEL "CLOSED" "EXTRA" "FRACTIONDIGITS" IRIREF "LENGTH" "MAXEXCLUSIVE" "MAXINCLUSIVE" "MAXLENGTH" "MINEXCLUSIVE" "MININCLUSIVE" "MINLENGTH" "OR" PNAME_LN PNAME_NS "PREFIX" REGEXP REPEAT_RANGE "START" "TOTALDIGITS" _eof "{" "|" "}" ) @@ -1007,23 +1039,23 @@ (follow INTEGER) (alt "TOTALDIGITS" "FRACTIONDIGITS")) (rule shapeDefinition "33" - (first "&" "CLOSED" "EXTRA" "{") + (first "CLOSED" "EXTRA" "{") (follow ")" "AND" "BASE" BLANK_NODE_LABEL "BNODE" "IRI" IRIREF "LENGTH" "MAXLENGTH" "MINLENGTH" "NONLITERAL" "OR" PNAME_LN PNAME_NS "PREFIX" REGEXP "START" _eof ) (seq _shapeDefinition_1 "{" _shapeDefinition_2 "}" _shapeDefinition_3 semanticActions )) - (rule _shapeDefinition_1 "33.1" - (first "&" "CLOSED" "EXTRA" _eps) - (follow "{") - (cleanup star) - (alt _empty _shapeDefinition_5)) (rule _shapeDefinition_10 "33.10" (first "$" "&" "(" IRIREF PNAME_LN PNAME_NS RDF_TYPE "^" "}") (follow ")" "AND" "BASE" BLANK_NODE_LABEL "BNODE" "IRI" IRIREF "LENGTH" "MAXLENGTH" "MINLENGTH" "NONLITERAL" "OR" PNAME_LN PNAME_NS "PREFIX" REGEXP "START" _eof ) (seq _shapeDefinition_2 "}" _shapeDefinition_3 semanticActions)) + (rule _shapeDefinition_1 "33.1" + (first "CLOSED" "EXTRA" _eps) + (follow "{") + (cleanup star) + (alt _empty _shapeDefinition_5)) (rule _shapeDefinition_11 "33.11" (first "}") (follow ")" "AND" "BASE" BLANK_NODE_LABEL "BNODE" "IRI" IRIREF "LENGTH" @@ -1049,11 +1081,11 @@ (cleanup star) (alt _empty _shapeDefinition_6)) (rule _shapeDefinition_4 "33.4" - (first "&" "CLOSED" "EXTRA") - (follow "&" "CLOSED" "EXTRA" "{") + (first "CLOSED" "EXTRA") + (follow "CLOSED" "EXTRA" "{") (alt includeSet extraPropertySet "CLOSED")) (rule _shapeDefinition_5 "33.5" - (first "&" "CLOSED" "EXTRA") + (first "CLOSED" "EXTRA") (follow "{") (cleanup merge) (seq _shapeDefinition_4 _shapeDefinition_1)) @@ -1071,7 +1103,7 @@ "START" _eof ) (seq "{" _shapeDefinition_2 "}" _shapeDefinition_3 semanticActions)) (rule _shapeDefinition_8 "33.8" - (first "&" "CLOSED" "EXTRA" _eps) + (first "CLOSED" "EXTRA" _eps) (follow "{") (seq _shapeDefinition_1)) (rule _shapeDefinition_9 "33.9" @@ -1081,12 +1113,12 @@ "START" _eof ) (seq _shapeDefinition_3)) (rule inlineShapeDefinition "34" - (first "&" "CLOSED" "EXTRA" "{") + (first "CLOSED" "EXTRA" "{") (follow "%" ")" "*" "+" "//" ";" "?" "AND" "BNODE" "IRI" "LENGTH" "MAXLENGTH" "MINLENGTH" "NONLITERAL" "OR" REGEXP REPEAT_RANGE "|" "}" ) (seq _inlineShapeDefinition_1 "{" _inlineShapeDefinition_2 "}")) (rule _inlineShapeDefinition_1 "34.1" - (first "&" "CLOSED" "EXTRA" _eps) + (first "CLOSED" "EXTRA" _eps) (follow "{") (cleanup star) (alt _empty _inlineShapeDefinition_4)) @@ -1096,11 +1128,11 @@ (cleanup opt) (alt _empty tripleExpression)) (rule _inlineShapeDefinition_3 "34.3" - (first "&" "CLOSED" "EXTRA") - (follow "&" "CLOSED" "EXTRA" "{") + (first "CLOSED" "EXTRA") + (follow "CLOSED" "EXTRA" "{") (alt includeSet extraPropertySet "CLOSED")) (rule _inlineShapeDefinition_4 "34.4" - (first "&" "CLOSED" "EXTRA") + (first "CLOSED" "EXTRA") (follow "{") (cleanup merge) (seq _inlineShapeDefinition_3 _inlineShapeDefinition_1)) @@ -1110,7 +1142,7 @@ "MINLENGTH" "NONLITERAL" "OR" REGEXP REPEAT_RANGE "|" "}" ) (seq "{" _inlineShapeDefinition_2 "}")) (rule _inlineShapeDefinition_6 "34.6" - (first "&" "CLOSED" "EXTRA" _eps) + (first "CLOSED" "EXTRA" _eps) (follow "{") (seq _inlineShapeDefinition_1)) (rule _inlineShapeDefinition_7 "34.7" @@ -1125,34 +1157,34 @@ (seq "}")) (rule extraPropertySet "35" (first "EXTRA") - (follow "&" "CLOSED" "EXTRA" "{") + (follow "CLOSED" "EXTRA" "{") (seq "EXTRA" _extraPropertySet_1)) (rule _extraPropertySet_1 "35.1" (first IRIREF PNAME_LN PNAME_NS RDF_TYPE) - (follow "&" "CLOSED" "EXTRA" "{") + (follow "CLOSED" "EXTRA" "{") (cleanup plus) (seq predicate _extraPropertySet_2)) (rule _extraPropertySet_2 "35.2" (first IRIREF PNAME_LN PNAME_NS RDF_TYPE _eps) - (follow "&" "CLOSED" "EXTRA" "{") + (follow "CLOSED" "EXTRA" "{") (cleanup star) (alt _empty _extraPropertySet_3)) (rule _extraPropertySet_3 "35.3" (first IRIREF PNAME_LN PNAME_NS RDF_TYPE) - (follow "&" "CLOSED" "EXTRA" "{") + (follow "CLOSED" "EXTRA" "{") (cleanup merge) (seq predicate _extraPropertySet_2)) (rule _extraPropertySet_4 "35.4" (first IRIREF PNAME_LN PNAME_NS RDF_TYPE) - (follow "&" "CLOSED" "EXTRA" "{") + (follow "CLOSED" "EXTRA" "{") (seq _extraPropertySet_1)) (rule _extraPropertySet_5 "35.5" (first IRIREF PNAME_LN PNAME_NS RDF_TYPE _eps) - (follow "&" "CLOSED" "EXTRA" "{") + (follow "CLOSED" "EXTRA" "{") (seq _extraPropertySet_2)) (rule _extraPropertySet_6 "35.6" (first IRIREF PNAME_LN PNAME_NS RDF_TYPE _eps) - (follow "&" "CLOSED" "EXTRA" "{") + (follow "CLOSED" "EXTRA" "{") (seq _extraPropertySet_2)) (rule tripleExpression "36" (first "$" "&" "(" IRIREF PNAME_LN PNAME_NS RDF_TYPE "^") @@ -1227,6 +1259,18 @@ (first "$" "&" "(" IRIREF PNAME_LN PNAME_NS RDF_TYPE "^") (follow ")" ";" "|" "}") (alt _unaryTripleExpr_1 include)) + (rule productionLabel "43a" + (first "$") + (follow "(" IRIREF PNAME_LN PNAME_NS RDF_TYPE "^") + (seq "$" _productionLabel_1)) + (rule _productionLabel_1 "43a.1" + (first BLANK_NODE_LABEL IRIREF PNAME_LN PNAME_NS) + (follow "(" IRIREF PNAME_LN PNAME_NS RDF_TYPE "^") + (alt iri blankNode)) + (rule _productionLabel_2 "43a.2" + (first BLANK_NODE_LABEL IRIREF PNAME_LN PNAME_NS) + (follow "(" IRIREF PNAME_LN PNAME_NS RDF_TYPE "^") + (seq _productionLabel_1)) (rule _unaryTripleExpr_1 "43.1" (first "$" "(" IRIREF PNAME_LN PNAME_NS RDF_TYPE "^") (follow ")" ";" "|" "}") @@ -1285,81 +1329,69 @@ (first "%" "//" _eps) (follow ")" ";" "|" "}") (seq _bracketedTripleExpr_2 semanticActions)) - (rule productionLabel "45" - (first "$") - (follow "(" IRIREF PNAME_LN PNAME_NS RDF_TYPE "^") - (seq "$" _productionLabel_1)) - (rule _productionLabel_1 "45.1" - (first BLANK_NODE_LABEL IRIREF PNAME_LN PNAME_NS) - (follow "(" IRIREF PNAME_LN PNAME_NS RDF_TYPE "^") - (alt iri blankNode)) - (rule _productionLabel_2 "45.2" - (first BLANK_NODE_LABEL IRIREF PNAME_LN PNAME_NS) - (follow "(" IRIREF PNAME_LN PNAME_NS RDF_TYPE "^") - (seq _productionLabel_1)) - (rule tripleConstraint "46" + (rule tripleConstraint "45" (first IRIREF PNAME_LN PNAME_NS RDF_TYPE "^") (follow ")" ";" "|" "}") (seq _tripleConstraint_1 predicate inlineShapeExpression _tripleConstraint_2 _tripleConstraint_3 semanticActions )) - (rule _tripleConstraint_1 "46.1" + (rule _tripleConstraint_1 "45.1" (first "^" _eps) (follow IRIREF PNAME_LN PNAME_NS RDF_TYPE) (cleanup opt) (alt _empty senseFlags)) - (rule _tripleConstraint_2 "46.2" + (rule _tripleConstraint_2 "45.2" (first "*" "+" "?" REPEAT_RANGE _eps) (follow "%" ")" "//" ";" "|" "}") (cleanup opt) (alt _empty cardinality)) - (rule _tripleConstraint_3 "46.3" + (rule _tripleConstraint_3 "45.3" (first "//" _eps) (follow "%" ")" ";" "|" "}") (cleanup star) (alt _empty _tripleConstraint_4)) - (rule _tripleConstraint_4 "46.4" + (rule _tripleConstraint_4 "45.4" (first "//") (follow "%" ")" ";" "|" "}") (cleanup merge) (seq annotation _tripleConstraint_3)) - (rule _tripleConstraint_5 "46.5" + (rule _tripleConstraint_5 "45.5" (first IRIREF PNAME_LN PNAME_NS RDF_TYPE) (follow ")" ";" "|" "}") (seq predicate inlineShapeExpression _tripleConstraint_2 _tripleConstraint_3 semanticActions )) - (rule _tripleConstraint_6 "46.6" + (rule _tripleConstraint_6 "45.6" (first "//" _eps) (follow "%" ")" ";" "|" "}") (seq _tripleConstraint_3)) - (rule _tripleConstraint_7 "46.7" - (first "&" "(" "." "@" ATPNAME_LN ATPNAME_NS "BNODE" "CLOSED" "EXTRA" + (rule _tripleConstraint_7 "45.7" + (first "(" "." "@" ATPNAME_LN ATPNAME_NS "BNODE" "CLOSED" "EXTRA" "FRACTIONDIGITS" "IRI" IRIREF "LENGTH" "LITERAL" "MAXEXCLUSIVE" "MAXINCLUSIVE" "MAXLENGTH" "MINEXCLUSIVE" "MININCLUSIVE" "MINLENGTH" "NONLITERAL" "NOT" PNAME_LN PNAME_NS REGEXP "TOTALDIGITS" "[" "{" ) (follow ")" ";" "|" "}") (seq inlineShapeExpression _tripleConstraint_2 _tripleConstraint_3 semanticActions )) - (rule _tripleConstraint_8 "46.8" + (rule _tripleConstraint_8 "45.8" (first "%" "*" "+" "//" "?" REPEAT_RANGE _eps) (follow ")" ";" "|" "}") (seq _tripleConstraint_2 _tripleConstraint_3 semanticActions)) - (rule _tripleConstraint_9 "46.9" + (rule _tripleConstraint_9 "45.9" (first "%" "//" _eps) (follow ")" ";" "|" "}") (seq _tripleConstraint_3 semanticActions)) - (rule cardinality "47" + (rule cardinality "46" (first "*" "+" "?" REPEAT_RANGE) (follow "%" ")" "//" ";" "|" "}") (alt "*" "+" "?" REPEAT_RANGE)) - (rule senseFlags "48" (first "^") (follow IRIREF PNAME_LN PNAME_NS RDF_TYPE) (seq "^")) - (rule valueSet "49" + (rule senseFlags "47" (first "^") (follow IRIREF PNAME_LN PNAME_NS RDF_TYPE) (seq "^")) + (rule valueSet "48" (first "[") (follow "%" ")" "*" "+" "//" ";" "?" "AND" "BASE" BLANK_NODE_LABEL "FRACTIONDIGITS" IRIREF "LENGTH" "MAXEXCLUSIVE" "MAXINCLUSIVE" "MAXLENGTH" "MINEXCLUSIVE" "MININCLUSIVE" "MINLENGTH" "OR" PNAME_LN PNAME_NS "PREFIX" REGEXP REPEAT_RANGE "START" "TOTALDIGITS" _eof "|" "}" ) (seq "[" _valueSet_1 "]")) - (rule _valueSet_1 "49.1" + (rule _valueSet_1 "48.1" (first "." DECIMAL DOUBLE INTEGER IRIREF LANGTAG LANG_STRING_LITERAL1 LANG_STRING_LITERAL2 LANG_STRING_LITERAL_LONG1 LANG_STRING_LITERAL_LONG2 PNAME_LN PNAME_NS STRING_LITERAL1 STRING_LITERAL2 STRING_LITERAL_LONG1 @@ -1367,7 +1399,7 @@ (follow "]") (cleanup star) (alt _empty _valueSet_2)) - (rule _valueSet_2 "49.2" + (rule _valueSet_2 "48.2" (first "." DECIMAL DOUBLE INTEGER IRIREF LANGTAG LANG_STRING_LITERAL1 LANG_STRING_LITERAL2 LANG_STRING_LITERAL_LONG1 LANG_STRING_LITERAL_LONG2 PNAME_LN PNAME_NS STRING_LITERAL1 STRING_LITERAL2 STRING_LITERAL_LONG1 @@ -1375,7 +1407,7 @@ (follow "]") (cleanup merge) (seq valueSetValue _valueSet_1)) - (rule _valueSet_3 "49.3" + (rule _valueSet_3 "48.3" (first "." DECIMAL DOUBLE INTEGER IRIREF LANGTAG LANG_STRING_LITERAL1 LANG_STRING_LITERAL2 LANG_STRING_LITERAL_LONG1 LANG_STRING_LITERAL_LONG2 PNAME_LN PNAME_NS STRING_LITERAL1 STRING_LITERAL2 STRING_LITERAL_LONG1 @@ -1385,21 +1417,21 @@ "MINEXCLUSIVE" "MININCLUSIVE" "MINLENGTH" "OR" PNAME_LN PNAME_NS "PREFIX" REGEXP REPEAT_RANGE "START" "TOTALDIGITS" _eof "|" "}" ) (seq _valueSet_1 "]")) - (rule _valueSet_4 "49.4" + (rule _valueSet_4 "48.4" (first "." DECIMAL DOUBLE INTEGER IRIREF LANGTAG LANG_STRING_LITERAL1 LANG_STRING_LITERAL2 LANG_STRING_LITERAL_LONG1 LANG_STRING_LITERAL_LONG2 PNAME_LN PNAME_NS STRING_LITERAL1 STRING_LITERAL2 STRING_LITERAL_LONG1 STRING_LITERAL_LONG2 _eps "false" "true" ) (follow "]") (seq _valueSet_1)) - (rule _valueSet_5 "49.5" + (rule _valueSet_5 "48.5" (first "]") (follow "%" ")" "*" "+" "//" ";" "?" "AND" "BASE" BLANK_NODE_LABEL "FRACTIONDIGITS" IRIREF "LENGTH" "MAXEXCLUSIVE" "MAXINCLUSIVE" "MAXLENGTH" "MINEXCLUSIVE" "MININCLUSIVE" "MINLENGTH" "OR" PNAME_LN PNAME_NS "PREFIX" REGEXP REPEAT_RANGE "START" "TOTALDIGITS" _eof "|" "}" ) (seq "]")) - (rule valueSetValue "50" + (rule valueSetValue "49" (first "." DECIMAL DOUBLE INTEGER IRIREF LANGTAG LANG_STRING_LITERAL1 LANG_STRING_LITERAL2 LANG_STRING_LITERAL_LONG1 LANG_STRING_LITERAL_LONG2 PNAME_LN PNAME_NS STRING_LITERAL1 STRING_LITERAL2 STRING_LITERAL_LONG1 @@ -1408,148 +1440,132 @@ LANG_STRING_LITERAL2 LANG_STRING_LITERAL_LONG1 LANG_STRING_LITERAL_LONG2 PNAME_LN PNAME_NS STRING_LITERAL1 STRING_LITERAL2 STRING_LITERAL_LONG1 STRING_LITERAL_LONG2 "]" "false" "true" ) - (alt _valueSetValue_1 _valueSetValue_2)) - (rule _valueSetValue_1 "50.1" - (first DECIMAL DOUBLE INTEGER IRIREF LANGTAG LANG_STRING_LITERAL1 - LANG_STRING_LITERAL2 LANG_STRING_LITERAL_LONG1 LANG_STRING_LITERAL_LONG2 - PNAME_LN PNAME_NS STRING_LITERAL1 STRING_LITERAL2 STRING_LITERAL_LONG1 - STRING_LITERAL_LONG2 "false" "true" ) - (follow "." DECIMAL DOUBLE INTEGER IRIREF LANGTAG LANG_STRING_LITERAL1 - LANG_STRING_LITERAL2 LANG_STRING_LITERAL_LONG1 LANG_STRING_LITERAL_LONG2 - PNAME_LN PNAME_NS STRING_LITERAL1 STRING_LITERAL2 STRING_LITERAL_LONG1 - STRING_LITERAL_LONG2 "]" "false" "true" ) - (alt iriRange literalRange languageRange)) - (rule _valueSetValue_2 "50.2" + (alt iriRange literalRange languageRange _valueSetValue_1)) + (rule _valueSetValue_1 "49.1" (first ".") (follow "." DECIMAL DOUBLE INTEGER IRIREF LANGTAG LANG_STRING_LITERAL1 LANG_STRING_LITERAL2 LANG_STRING_LITERAL_LONG1 LANG_STRING_LITERAL_LONG2 PNAME_LN PNAME_NS STRING_LITERAL1 STRING_LITERAL2 STRING_LITERAL_LONG1 STRING_LITERAL_LONG2 "]" "false" "true" ) - (seq "." _valueSetValue_3)) - (rule _valueSetValue_3 "50.3" + (seq "." _valueSetValue_2)) + (rule _valueSetValue_2 "49.2" (first "-") (follow "." DECIMAL DOUBLE INTEGER IRIREF LANGTAG LANG_STRING_LITERAL1 LANG_STRING_LITERAL2 LANG_STRING_LITERAL_LONG1 LANG_STRING_LITERAL_LONG2 PNAME_LN PNAME_NS STRING_LITERAL1 STRING_LITERAL2 STRING_LITERAL_LONG1 STRING_LITERAL_LONG2 "]" "false" "true" ) (cleanup plus) - (seq exclusion _valueSetValue_4)) - (rule _valueSetValue_4 "50.4" + (seq exclusion _valueSetValue_3)) + (rule _valueSetValue_3 "49.3" (first "-" _eps) (follow "." DECIMAL DOUBLE INTEGER IRIREF LANGTAG LANG_STRING_LITERAL1 LANG_STRING_LITERAL2 LANG_STRING_LITERAL_LONG1 LANG_STRING_LITERAL_LONG2 PNAME_LN PNAME_NS STRING_LITERAL1 STRING_LITERAL2 STRING_LITERAL_LONG1 STRING_LITERAL_LONG2 "]" "false" "true" ) (cleanup star) - (alt _empty _valueSetValue_5)) - (rule _valueSetValue_5 "50.5" + (alt _empty _valueSetValue_4)) + (rule _valueSetValue_4 "49.4" (first "-") (follow "." DECIMAL DOUBLE INTEGER IRIREF LANGTAG LANG_STRING_LITERAL1 LANG_STRING_LITERAL2 LANG_STRING_LITERAL_LONG1 LANG_STRING_LITERAL_LONG2 PNAME_LN PNAME_NS STRING_LITERAL1 STRING_LITERAL2 STRING_LITERAL_LONG1 STRING_LITERAL_LONG2 "]" "false" "true" ) (cleanup merge) - (seq exclusion _valueSetValue_4)) - (rule _valueSetValue_6 "50.6" + (seq exclusion _valueSetValue_3)) + (rule _valueSetValue_5 "49.5" (first "-") (follow "." DECIMAL DOUBLE INTEGER IRIREF LANGTAG LANG_STRING_LITERAL1 LANG_STRING_LITERAL2 LANG_STRING_LITERAL_LONG1 LANG_STRING_LITERAL_LONG2 PNAME_LN PNAME_NS STRING_LITERAL1 STRING_LITERAL2 STRING_LITERAL_LONG1 STRING_LITERAL_LONG2 "]" "false" "true" ) - (seq _valueSetValue_3)) - (rule _valueSetValue_7 "50.7" + (seq _valueSetValue_2)) + (rule _valueSetValue_6 "49.6" (first "-" _eps) (follow "." DECIMAL DOUBLE INTEGER IRIREF LANGTAG LANG_STRING_LITERAL1 LANG_STRING_LITERAL2 LANG_STRING_LITERAL_LONG1 LANG_STRING_LITERAL_LONG2 PNAME_LN PNAME_NS STRING_LITERAL1 STRING_LITERAL2 STRING_LITERAL_LONG1 STRING_LITERAL_LONG2 "]" "false" "true" ) - (seq _valueSetValue_4)) - (rule _valueSetValue_8 "50.8" + (seq _valueSetValue_3)) + (rule _valueSetValue_7 "49.7" (first "-" _eps) (follow "." DECIMAL DOUBLE INTEGER IRIREF LANGTAG LANG_STRING_LITERAL1 LANG_STRING_LITERAL2 LANG_STRING_LITERAL_LONG1 LANG_STRING_LITERAL_LONG2 PNAME_LN PNAME_NS STRING_LITERAL1 STRING_LITERAL2 STRING_LITERAL_LONG1 STRING_LITERAL_LONG2 "]" "false" "true" ) - (seq _valueSetValue_4)) - (rule _languageRange_1 "51g.1" - (first _eps "~") - (follow "." DECIMAL DOUBLE INTEGER IRIREF LANGTAG LANG_STRING_LITERAL1 + (seq _valueSetValue_3)) + (rule exclusion "50" + (first "-") + (follow "-" "." DECIMAL DOUBLE INTEGER IRIREF LANGTAG LANG_STRING_LITERAL1 LANG_STRING_LITERAL2 LANG_STRING_LITERAL_LONG1 LANG_STRING_LITERAL_LONG2 PNAME_LN PNAME_NS STRING_LITERAL1 STRING_LITERAL2 STRING_LITERAL_LONG1 STRING_LITERAL_LONG2 "]" "false" "true" ) - (cleanup opt) - (alt _empty _languageRange_2)) - (rule _languageRange_4 "51g.4" - (first "-") - (follow "." DECIMAL DOUBLE INTEGER IRIREF LANGTAG LANG_STRING_LITERAL1 + (seq "-" _exclusion_1 _exclusion_2)) + (rule _exclusion_1 "50.1" + (first DECIMAL DOUBLE INTEGER IRIREF LANGTAG LANG_STRING_LITERAL1 LANG_STRING_LITERAL2 LANG_STRING_LITERAL_LONG1 LANG_STRING_LITERAL_LONG2 PNAME_LN PNAME_NS STRING_LITERAL1 STRING_LITERAL2 STRING_LITERAL_LONG1 - STRING_LITERAL_LONG2 "]" "false" "true" ) - (cleanup merge) - (seq languageExclusion _languageRange_3)) - (rule _languageRange_3 "51g.3" - (first "-" _eps) - (follow "." DECIMAL DOUBLE INTEGER IRIREF LANGTAG LANG_STRING_LITERAL1 + STRING_LITERAL_LONG2 "false" "true" ) + (follow "-" "." DECIMAL DOUBLE INTEGER IRIREF LANGTAG LANG_STRING_LITERAL1 LANG_STRING_LITERAL2 LANG_STRING_LITERAL_LONG1 LANG_STRING_LITERAL_LONG2 PNAME_LN PNAME_NS STRING_LITERAL1 STRING_LITERAL2 STRING_LITERAL_LONG1 - STRING_LITERAL_LONG2 "]" "false" "true" ) - (cleanup star) - (alt _empty _languageRange_4)) - (rule _languageRange_2 "51g.2" - (first "~") - (follow "." DECIMAL DOUBLE INTEGER IRIREF LANGTAG LANG_STRING_LITERAL1 + STRING_LITERAL_LONG2 "]" "false" "true" "~" ) + (alt iri literal LANGTAG)) + (rule _exclusion_2 "50.2" + (first _eps "~") + (follow "-" "." DECIMAL DOUBLE INTEGER IRIREF LANGTAG LANG_STRING_LITERAL1 LANG_STRING_LITERAL2 LANG_STRING_LITERAL_LONG1 LANG_STRING_LITERAL_LONG2 PNAME_LN PNAME_NS STRING_LITERAL1 STRING_LITERAL2 STRING_LITERAL_LONG1 STRING_LITERAL_LONG2 "]" "false" "true" ) - (seq "~" _languageRange_3)) - (rule languageRange "51g" - (first LANGTAG) - (follow "." DECIMAL DOUBLE INTEGER IRIREF LANGTAG LANG_STRING_LITERAL1 + (cleanup opt) + (alt _empty "~")) + (rule _exclusion_3 "50.3" + (first DECIMAL DOUBLE INTEGER IRIREF LANGTAG LANG_STRING_LITERAL1 LANG_STRING_LITERAL2 LANG_STRING_LITERAL_LONG1 LANG_STRING_LITERAL_LONG2 PNAME_LN PNAME_NS STRING_LITERAL1 STRING_LITERAL2 STRING_LITERAL_LONG1 - STRING_LITERAL_LONG2 "]" "false" "true" ) - (seq LANGTAG _languageRange_1)) - (rule _literalRange_4 "51l.4" - (first "-") - (follow "." DECIMAL DOUBLE INTEGER IRIREF LANGTAG LANG_STRING_LITERAL1 + STRING_LITERAL_LONG2 "false" "true" ) + (follow "-" "." DECIMAL DOUBLE INTEGER IRIREF LANGTAG LANG_STRING_LITERAL1 LANG_STRING_LITERAL2 LANG_STRING_LITERAL_LONG1 LANG_STRING_LITERAL_LONG2 PNAME_LN PNAME_NS STRING_LITERAL1 STRING_LITERAL2 STRING_LITERAL_LONG1 STRING_LITERAL_LONG2 "]" "false" "true" ) - (cleanup merge) - (seq literalExclusion _literalRange_3)) - (rule _literalRange_3 "51l.3" - (first "-" _eps) - (follow "." DECIMAL DOUBLE INTEGER IRIREF LANGTAG LANG_STRING_LITERAL1 + (seq _exclusion_1 _exclusion_2)) + (rule _exclusion_4 "50.4" + (first _eps "~") + (follow "-" "." DECIMAL DOUBLE INTEGER IRIREF LANGTAG LANG_STRING_LITERAL1 LANG_STRING_LITERAL2 LANG_STRING_LITERAL_LONG1 LANG_STRING_LITERAL_LONG2 PNAME_LN PNAME_NS STRING_LITERAL1 STRING_LITERAL2 STRING_LITERAL_LONG1 STRING_LITERAL_LONG2 "]" "false" "true" ) - (cleanup star) - (alt _empty _literalRange_4)) - (rule _literalRange_2 "51l.2" - (first "~") + (seq _exclusion_2)) + (rule iriRange "51" + (first IRIREF PNAME_LN PNAME_NS) (follow "." DECIMAL DOUBLE INTEGER IRIREF LANGTAG LANG_STRING_LITERAL1 LANG_STRING_LITERAL2 LANG_STRING_LITERAL_LONG1 LANG_STRING_LITERAL_LONG2 PNAME_LN PNAME_NS STRING_LITERAL1 STRING_LITERAL2 STRING_LITERAL_LONG1 STRING_LITERAL_LONG2 "]" "false" "true" ) - (seq "~" _literalRange_3)) - (rule _literalRange_1 "51l.1" + (seq iri _iriRange_1)) + (rule _iriRange_1 "51.1" (first _eps "~") (follow "." DECIMAL DOUBLE INTEGER IRIREF LANGTAG LANG_STRING_LITERAL1 LANG_STRING_LITERAL2 LANG_STRING_LITERAL_LONG1 LANG_STRING_LITERAL_LONG2 PNAME_LN PNAME_NS STRING_LITERAL1 STRING_LITERAL2 STRING_LITERAL_LONG1 STRING_LITERAL_LONG2 "]" "false" "true" ) (cleanup opt) - (alt _empty _literalRange_2)) - (rule literalRange "51l" - (first DECIMAL DOUBLE INTEGER LANG_STRING_LITERAL1 LANG_STRING_LITERAL2 - LANG_STRING_LITERAL_LONG1 LANG_STRING_LITERAL_LONG2 STRING_LITERAL1 - STRING_LITERAL2 STRING_LITERAL_LONG1 STRING_LITERAL_LONG2 "false" "true" ) + (alt _empty _iriRange_2)) + (rule _iriRange_2 "51.2" + (first "~") (follow "." DECIMAL DOUBLE INTEGER IRIREF LANGTAG LANG_STRING_LITERAL1 LANG_STRING_LITERAL2 LANG_STRING_LITERAL_LONG1 LANG_STRING_LITERAL_LONG2 PNAME_LN PNAME_NS STRING_LITERAL1 STRING_LITERAL2 STRING_LITERAL_LONG1 STRING_LITERAL_LONG2 "]" "false" "true" ) - (seq literal _literalRange_1)) - (rule _iriRange_4 "51i.4" + (seq "~" _iriRange_3)) + (rule _iriRange_3 "51.3" + (first "-" _eps) + (follow "." DECIMAL DOUBLE INTEGER IRIREF LANGTAG LANG_STRING_LITERAL1 + LANG_STRING_LITERAL2 LANG_STRING_LITERAL_LONG1 LANG_STRING_LITERAL_LONG2 + PNAME_LN PNAME_NS STRING_LITERAL1 STRING_LITERAL2 STRING_LITERAL_LONG1 + STRING_LITERAL_LONG2 "]" "false" "true" ) + (cleanup star) + (alt _empty _iriRange_4)) + (rule _iriRange_4 "51.4" (first "-") (follow "." DECIMAL DOUBLE INTEGER IRIREF LANGTAG LANG_STRING_LITERAL1 LANG_STRING_LITERAL2 LANG_STRING_LITERAL_LONG1 LANG_STRING_LITERAL_LONG2 @@ -1557,117 +1573,125 @@ STRING_LITERAL_LONG2 "]" "false" "true" ) (cleanup merge) (seq iriExclusion _iriRange_3)) - (rule _iriRange_5 "51i.5" + (rule _iriRange_5 "51.5" (first _eps "~") (follow "." DECIMAL DOUBLE INTEGER IRIREF LANGTAG LANG_STRING_LITERAL1 LANG_STRING_LITERAL2 LANG_STRING_LITERAL_LONG1 LANG_STRING_LITERAL_LONG2 PNAME_LN PNAME_NS STRING_LITERAL1 STRING_LITERAL2 STRING_LITERAL_LONG1 STRING_LITERAL_LONG2 "]" "false" "true" ) (seq _iriRange_1)) - (rule _iriRange_6 "51i.6" + (rule _iriRange_6 "51.6" (first "-" _eps) (follow "." DECIMAL DOUBLE INTEGER IRIREF LANGTAG LANG_STRING_LITERAL1 LANG_STRING_LITERAL2 LANG_STRING_LITERAL_LONG1 LANG_STRING_LITERAL_LONG2 PNAME_LN PNAME_NS STRING_LITERAL1 STRING_LITERAL2 STRING_LITERAL_LONG1 STRING_LITERAL_LONG2 "]" "false" "true" ) (seq _iriRange_3)) - (rule _iriRange_7 "51i.7" + (rule _iriRange_7 "51.7" (first "-" _eps) (follow "." DECIMAL DOUBLE INTEGER IRIREF LANGTAG LANG_STRING_LITERAL1 LANG_STRING_LITERAL2 LANG_STRING_LITERAL_LONG1 LANG_STRING_LITERAL_LONG2 PNAME_LN PNAME_NS STRING_LITERAL1 STRING_LITERAL2 STRING_LITERAL_LONG1 STRING_LITERAL_LONG2 "]" "false" "true" ) (seq _iriRange_3)) - (rule _literalRange_5 "51l.5" - (first _eps "~") - (follow "." DECIMAL DOUBLE INTEGER IRIREF LANGTAG LANG_STRING_LITERAL1 + (rule iriExclusion "52" + (first "-") + (follow "-" "." DECIMAL DOUBLE INTEGER IRIREF LANGTAG LANG_STRING_LITERAL1 LANG_STRING_LITERAL2 LANG_STRING_LITERAL_LONG1 LANG_STRING_LITERAL_LONG2 PNAME_LN PNAME_NS STRING_LITERAL1 STRING_LITERAL2 STRING_LITERAL_LONG1 STRING_LITERAL_LONG2 "]" "false" "true" ) - (seq _literalRange_1)) - (rule _literalRange_6 "51l.6" - (first "-" _eps) - (follow "." DECIMAL DOUBLE INTEGER IRIREF LANGTAG LANG_STRING_LITERAL1 + (seq "-" iri _iriExclusion_1)) + (rule _iriExclusion_1 "52.1" + (first _eps "~") + (follow "-" "." DECIMAL DOUBLE INTEGER IRIREF LANGTAG LANG_STRING_LITERAL1 LANG_STRING_LITERAL2 LANG_STRING_LITERAL_LONG1 LANG_STRING_LITERAL_LONG2 PNAME_LN PNAME_NS STRING_LITERAL1 STRING_LITERAL2 STRING_LITERAL_LONG1 STRING_LITERAL_LONG2 "]" "false" "true" ) - (seq _literalRange_3)) - (rule _literalRange_7 "51l.7" - (first "-" _eps) - (follow "." DECIMAL DOUBLE INTEGER IRIREF LANGTAG LANG_STRING_LITERAL1 + (cleanup opt) + (alt _empty "~")) + (rule _iriExclusion_2 "52.2" + (first IRIREF PNAME_LN PNAME_NS) + (follow "-" "." DECIMAL DOUBLE INTEGER IRIREF LANGTAG LANG_STRING_LITERAL1 LANG_STRING_LITERAL2 LANG_STRING_LITERAL_LONG1 LANG_STRING_LITERAL_LONG2 PNAME_LN PNAME_NS STRING_LITERAL1 STRING_LITERAL2 STRING_LITERAL_LONG1 STRING_LITERAL_LONG2 "]" "false" "true" ) - (seq _literalRange_3)) - (rule _languageRange_5 "51g.5" + (seq iri _iriExclusion_1)) + (rule _iriExclusion_3 "52.3" (first _eps "~") + (follow "-" "." DECIMAL DOUBLE INTEGER IRIREF LANGTAG LANG_STRING_LITERAL1 + LANG_STRING_LITERAL2 LANG_STRING_LITERAL_LONG1 LANG_STRING_LITERAL_LONG2 + PNAME_LN PNAME_NS STRING_LITERAL1 STRING_LITERAL2 STRING_LITERAL_LONG1 + STRING_LITERAL_LONG2 "]" "false" "true" ) + (seq _iriExclusion_1)) + (rule literalRange "53" + (first DECIMAL DOUBLE INTEGER LANG_STRING_LITERAL1 LANG_STRING_LITERAL2 + LANG_STRING_LITERAL_LONG1 LANG_STRING_LITERAL_LONG2 STRING_LITERAL1 + STRING_LITERAL2 STRING_LITERAL_LONG1 STRING_LITERAL_LONG2 "false" "true" ) (follow "." DECIMAL DOUBLE INTEGER IRIREF LANGTAG LANG_STRING_LITERAL1 LANG_STRING_LITERAL2 LANG_STRING_LITERAL_LONG1 LANG_STRING_LITERAL_LONG2 PNAME_LN PNAME_NS STRING_LITERAL1 STRING_LITERAL2 STRING_LITERAL_LONG1 STRING_LITERAL_LONG2 "]" "false" "true" ) - (seq _languageRange_1)) - (rule _languageRange_6 "51g.6" - (first "-" _eps) + (seq literal _literalRange_1)) + (rule _literalRange_1 "53.1" + (first _eps "~") (follow "." DECIMAL DOUBLE INTEGER IRIREF LANGTAG LANG_STRING_LITERAL1 LANG_STRING_LITERAL2 LANG_STRING_LITERAL_LONG1 LANG_STRING_LITERAL_LONG2 PNAME_LN PNAME_NS STRING_LITERAL1 STRING_LITERAL2 STRING_LITERAL_LONG1 STRING_LITERAL_LONG2 "]" "false" "true" ) - (seq _languageRange_3)) - (rule _languageRange_7 "51g.7" - (first "-" _eps) + (cleanup opt) + (alt _empty _literalRange_2)) + (rule _literalRange_2 "53.2" + (first "~") (follow "." DECIMAL DOUBLE INTEGER IRIREF LANGTAG LANG_STRING_LITERAL1 LANG_STRING_LITERAL2 LANG_STRING_LITERAL_LONG1 LANG_STRING_LITERAL_LONG2 PNAME_LN PNAME_NS STRING_LITERAL1 STRING_LITERAL2 STRING_LITERAL_LONG1 STRING_LITERAL_LONG2 "]" "false" "true" ) - (seq _languageRange_3)) - (rule _iriRange_3 "51i.3" + (seq "~" _literalRange_3)) + (rule _literalRange_3 "53.3" (first "-" _eps) (follow "." DECIMAL DOUBLE INTEGER IRIREF LANGTAG LANG_STRING_LITERAL1 LANG_STRING_LITERAL2 LANG_STRING_LITERAL_LONG1 LANG_STRING_LITERAL_LONG2 PNAME_LN PNAME_NS STRING_LITERAL1 STRING_LITERAL2 STRING_LITERAL_LONG1 STRING_LITERAL_LONG2 "]" "false" "true" ) (cleanup star) - (alt _empty _iriRange_4)) - (rule _iriRange_2 "51i.2" - (first "~") + (alt _empty _literalRange_4)) + (rule _literalRange_4 "53.4" + (first "-") (follow "." DECIMAL DOUBLE INTEGER IRIREF LANGTAG LANG_STRING_LITERAL1 LANG_STRING_LITERAL2 LANG_STRING_LITERAL_LONG1 LANG_STRING_LITERAL_LONG2 PNAME_LN PNAME_NS STRING_LITERAL1 STRING_LITERAL2 STRING_LITERAL_LONG1 STRING_LITERAL_LONG2 "]" "false" "true" ) - (seq "~" _iriRange_3)) - (rule _iriRange_1 "51i.1" + (cleanup merge) + (seq literalExclusion _literalRange_3)) + (rule _literalRange_5 "53.5" (first _eps "~") (follow "." DECIMAL DOUBLE INTEGER IRIREF LANGTAG LANG_STRING_LITERAL1 LANG_STRING_LITERAL2 LANG_STRING_LITERAL_LONG1 LANG_STRING_LITERAL_LONG2 PNAME_LN PNAME_NS STRING_LITERAL1 STRING_LITERAL2 STRING_LITERAL_LONG1 STRING_LITERAL_LONG2 "]" "false" "true" ) - (cleanup opt) - (alt _empty _iriRange_2)) - (rule iriRange "51i" - (first IRIREF PNAME_LN PNAME_NS) + (seq _literalRange_1)) + (rule _literalRange_6 "53.6" + (first "-" _eps) (follow "." DECIMAL DOUBLE INTEGER IRIREF LANGTAG LANG_STRING_LITERAL1 LANG_STRING_LITERAL2 LANG_STRING_LITERAL_LONG1 LANG_STRING_LITERAL_LONG2 PNAME_LN PNAME_NS STRING_LITERAL1 STRING_LITERAL2 STRING_LITERAL_LONG1 STRING_LITERAL_LONG2 "]" "false" "true" ) - (seq iri _iriRange_1)) - (rule exclusion "51" - (first "-") - (follow "-" "." DECIMAL DOUBLE INTEGER IRIREF LANGTAG LANG_STRING_LITERAL1 + (seq _literalRange_3)) + (rule _literalRange_7 "53.7" + (first "-" _eps) + (follow "." DECIMAL DOUBLE INTEGER IRIREF LANGTAG LANG_STRING_LITERAL1 LANG_STRING_LITERAL2 LANG_STRING_LITERAL_LONG1 LANG_STRING_LITERAL_LONG2 PNAME_LN PNAME_NS STRING_LITERAL1 STRING_LITERAL2 STRING_LITERAL_LONG1 STRING_LITERAL_LONG2 "]" "false" "true" ) - (seq "-" _exclusion_1 _exclusion_2)) - (rule _exclusion_1 "51.1" - (first DECIMAL DOUBLE INTEGER IRIREF LANGTAG LANG_STRING_LITERAL1 - LANG_STRING_LITERAL2 LANG_STRING_LITERAL_LONG1 LANG_STRING_LITERAL_LONG2 - PNAME_LN PNAME_NS STRING_LITERAL1 STRING_LITERAL2 STRING_LITERAL_LONG1 - STRING_LITERAL_LONG2 "false" "true" ) + (seq _literalRange_3)) + (rule literalExclusion "54" + (first "-") (follow "-" "." DECIMAL DOUBLE INTEGER IRIREF LANGTAG LANG_STRING_LITERAL1 LANG_STRING_LITERAL2 LANG_STRING_LITERAL_LONG1 LANG_STRING_LITERAL_LONG2 PNAME_LN PNAME_NS STRING_LITERAL1 STRING_LITERAL2 STRING_LITERAL_LONG1 - STRING_LITERAL_LONG2 "]" "false" "true" "~" ) - (alt iri literal LANGTAG)) - (rule _exclusion_2 "51.2" + STRING_LITERAL_LONG2 "]" "false" "true" ) + (seq "-" literal _literalExclusion_1)) + (rule _literalExclusion_1 "54.1" (first _eps "~") (follow "-" "." DECIMAL DOUBLE INTEGER IRIREF LANGTAG LANG_STRING_LITERAL1 LANG_STRING_LITERAL2 LANG_STRING_LITERAL_LONG1 LANG_STRING_LITERAL_LONG2 @@ -1675,124 +1699,122 @@ STRING_LITERAL_LONG2 "]" "false" "true" ) (cleanup opt) (alt _empty "~")) - (rule _exclusion_3 "51.3" - (first DECIMAL DOUBLE INTEGER IRIREF LANGTAG LANG_STRING_LITERAL1 - LANG_STRING_LITERAL2 LANG_STRING_LITERAL_LONG1 LANG_STRING_LITERAL_LONG2 - PNAME_LN PNAME_NS STRING_LITERAL1 STRING_LITERAL2 STRING_LITERAL_LONG1 - STRING_LITERAL_LONG2 "false" "true" ) + (rule _literalExclusion_2 "54.2" + (first DECIMAL DOUBLE INTEGER LANG_STRING_LITERAL1 LANG_STRING_LITERAL2 + LANG_STRING_LITERAL_LONG1 LANG_STRING_LITERAL_LONG2 STRING_LITERAL1 + STRING_LITERAL2 STRING_LITERAL_LONG1 STRING_LITERAL_LONG2 "false" "true" ) (follow "-" "." DECIMAL DOUBLE INTEGER IRIREF LANGTAG LANG_STRING_LITERAL1 LANG_STRING_LITERAL2 LANG_STRING_LITERAL_LONG1 LANG_STRING_LITERAL_LONG2 PNAME_LN PNAME_NS STRING_LITERAL1 STRING_LITERAL2 STRING_LITERAL_LONG1 STRING_LITERAL_LONG2 "]" "false" "true" ) - (seq _exclusion_1 _exclusion_2)) - (rule _exclusion_4 "51.4" + (seq literal _literalExclusion_1)) + (rule _literalExclusion_3 "54.3" (first _eps "~") (follow "-" "." DECIMAL DOUBLE INTEGER IRIREF LANGTAG LANG_STRING_LITERAL1 LANG_STRING_LITERAL2 LANG_STRING_LITERAL_LONG1 LANG_STRING_LITERAL_LONG2 PNAME_LN PNAME_NS STRING_LITERAL1 STRING_LITERAL2 STRING_LITERAL_LONG1 STRING_LITERAL_LONG2 "]" "false" "true" ) - (seq _exclusion_2)) - (rule _iriExclusion_3 "52i.3" - (first _eps "~") - (follow "-" "." DECIMAL DOUBLE INTEGER IRIREF LANGTAG LANG_STRING_LITERAL1 + (seq _literalExclusion_1)) + (rule languageRange "55" + (first LANGTAG) + (follow "." DECIMAL DOUBLE INTEGER IRIREF LANGTAG LANG_STRING_LITERAL1 LANG_STRING_LITERAL2 LANG_STRING_LITERAL_LONG1 LANG_STRING_LITERAL_LONG2 PNAME_LN PNAME_NS STRING_LITERAL1 STRING_LITERAL2 STRING_LITERAL_LONG1 STRING_LITERAL_LONG2 "]" "false" "true" ) - (seq _iriExclusion_1)) - (rule _languageExclusion_1 "52g.1" + (seq LANGTAG _languageRange_1)) + (rule _languageRange_1 "55.1" (first _eps "~") - (follow "-" "." DECIMAL DOUBLE INTEGER IRIREF LANGTAG LANG_STRING_LITERAL1 + (follow "." DECIMAL DOUBLE INTEGER IRIREF LANGTAG LANG_STRING_LITERAL1 LANG_STRING_LITERAL2 LANG_STRING_LITERAL_LONG1 LANG_STRING_LITERAL_LONG2 PNAME_LN PNAME_NS STRING_LITERAL1 STRING_LITERAL2 STRING_LITERAL_LONG1 STRING_LITERAL_LONG2 "]" "false" "true" ) (cleanup opt) - (alt _empty "~")) - (rule languageExclusion "52g" - (first "-") - (follow "-" "." DECIMAL DOUBLE INTEGER IRIREF LANGTAG LANG_STRING_LITERAL1 + (alt _empty _languageRange_2)) + (rule _languageRange_2 "55.2" + (first "~") + (follow "." DECIMAL DOUBLE INTEGER IRIREF LANGTAG LANG_STRING_LITERAL1 LANG_STRING_LITERAL2 LANG_STRING_LITERAL_LONG1 LANG_STRING_LITERAL_LONG2 PNAME_LN PNAME_NS STRING_LITERAL1 STRING_LITERAL2 STRING_LITERAL_LONG1 STRING_LITERAL_LONG2 "]" "false" "true" ) - (seq "-" LANGTAG _languageExclusion_1)) - (rule _literalExclusion_1 "52l.1" - (first _eps "~") - (follow "-" "." DECIMAL DOUBLE INTEGER IRIREF LANGTAG LANG_STRING_LITERAL1 + (seq "~" _languageRange_3)) + (rule _languageRange_3 "55.3" + (first "-" _eps) + (follow "." DECIMAL DOUBLE INTEGER IRIREF LANGTAG LANG_STRING_LITERAL1 LANG_STRING_LITERAL2 LANG_STRING_LITERAL_LONG1 LANG_STRING_LITERAL_LONG2 PNAME_LN PNAME_NS STRING_LITERAL1 STRING_LITERAL2 STRING_LITERAL_LONG1 STRING_LITERAL_LONG2 "]" "false" "true" ) - (cleanup opt) - (alt _empty "~")) - (rule literalExclusion "52l" + (cleanup star) + (alt _empty _languageRange_4)) + (rule _languageRange_4 "55.4" (first "-") - (follow "-" "." DECIMAL DOUBLE INTEGER IRIREF LANGTAG LANG_STRING_LITERAL1 + (follow "." DECIMAL DOUBLE INTEGER IRIREF LANGTAG LANG_STRING_LITERAL1 LANG_STRING_LITERAL2 LANG_STRING_LITERAL_LONG1 LANG_STRING_LITERAL_LONG2 PNAME_LN PNAME_NS STRING_LITERAL1 STRING_LITERAL2 STRING_LITERAL_LONG1 STRING_LITERAL_LONG2 "]" "false" "true" ) - (seq "-" literal _literalExclusion_1)) - (rule _languageExclusion_2 "52g.2" - (first LANGTAG) - (follow "-" "." DECIMAL DOUBLE INTEGER IRIREF LANGTAG LANG_STRING_LITERAL1 + (cleanup merge) + (seq languageExclusion _languageRange_3)) + (rule _languageRange_5 "55.5" + (first _eps "~") + (follow "." DECIMAL DOUBLE INTEGER IRIREF LANGTAG LANG_STRING_LITERAL1 LANG_STRING_LITERAL2 LANG_STRING_LITERAL_LONG1 LANG_STRING_LITERAL_LONG2 PNAME_LN PNAME_NS STRING_LITERAL1 STRING_LITERAL2 STRING_LITERAL_LONG1 STRING_LITERAL_LONG2 "]" "false" "true" ) - (seq LANGTAG _languageExclusion_1)) - (rule _literalExclusion_2 "52l.2" - (first DECIMAL DOUBLE INTEGER LANG_STRING_LITERAL1 LANG_STRING_LITERAL2 - LANG_STRING_LITERAL_LONG1 LANG_STRING_LITERAL_LONG2 STRING_LITERAL1 - STRING_LITERAL2 STRING_LITERAL_LONG1 STRING_LITERAL_LONG2 "false" "true" ) - (follow "-" "." DECIMAL DOUBLE INTEGER IRIREF LANGTAG LANG_STRING_LITERAL1 + (seq _languageRange_1)) + (rule _languageRange_6 "55.6" + (first "-" _eps) + (follow "." DECIMAL DOUBLE INTEGER IRIREF LANGTAG LANG_STRING_LITERAL1 LANG_STRING_LITERAL2 LANG_STRING_LITERAL_LONG1 LANG_STRING_LITERAL_LONG2 PNAME_LN PNAME_NS STRING_LITERAL1 STRING_LITERAL2 STRING_LITERAL_LONG1 STRING_LITERAL_LONG2 "]" "false" "true" ) - (seq literal _literalExclusion_1)) - (rule _iriExclusion_1 "52i.1" - (first _eps "~") - (follow "-" "." DECIMAL DOUBLE INTEGER IRIREF LANGTAG LANG_STRING_LITERAL1 + (seq _languageRange_3)) + (rule _languageRange_7 "55.7" + (first "-" _eps) + (follow "." DECIMAL DOUBLE INTEGER IRIREF LANGTAG LANG_STRING_LITERAL1 LANG_STRING_LITERAL2 LANG_STRING_LITERAL_LONG1 LANG_STRING_LITERAL_LONG2 PNAME_LN PNAME_NS STRING_LITERAL1 STRING_LITERAL2 STRING_LITERAL_LONG1 STRING_LITERAL_LONG2 "]" "false" "true" ) - (cleanup opt) - (alt _empty "~")) - (rule iriExclusion "52i" + (seq _languageRange_3)) + (rule languageExclusion "56" (first "-") (follow "-" "." DECIMAL DOUBLE INTEGER IRIREF LANGTAG LANG_STRING_LITERAL1 LANG_STRING_LITERAL2 LANG_STRING_LITERAL_LONG1 LANG_STRING_LITERAL_LONG2 PNAME_LN PNAME_NS STRING_LITERAL1 STRING_LITERAL2 STRING_LITERAL_LONG1 STRING_LITERAL_LONG2 "]" "false" "true" ) - (seq "-" iri _iriExclusion_1)) - (rule _iriExclusion_2 "52i.2" - (first IRIREF PNAME_LN PNAME_NS) + (seq "-" LANGTAG _languageExclusion_1)) + (rule _languageExclusion_1 "56.1" + (first _eps "~") (follow "-" "." DECIMAL DOUBLE INTEGER IRIREF LANGTAG LANG_STRING_LITERAL1 LANG_STRING_LITERAL2 LANG_STRING_LITERAL_LONG1 LANG_STRING_LITERAL_LONG2 PNAME_LN PNAME_NS STRING_LITERAL1 STRING_LITERAL2 STRING_LITERAL_LONG1 STRING_LITERAL_LONG2 "]" "false" "true" ) - (seq iri _iriExclusion_1)) - (rule _languageExclusion_3 "52g.3" - (first _eps "~") + (cleanup opt) + (alt _empty "~")) + (rule _languageExclusion_2 "56.2" + (first LANGTAG) (follow "-" "." DECIMAL DOUBLE INTEGER IRIREF LANGTAG LANG_STRING_LITERAL1 LANG_STRING_LITERAL2 LANG_STRING_LITERAL_LONG1 LANG_STRING_LITERAL_LONG2 PNAME_LN PNAME_NS STRING_LITERAL1 STRING_LITERAL2 STRING_LITERAL_LONG1 STRING_LITERAL_LONG2 "]" "false" "true" ) - (seq _languageExclusion_1)) - (rule _literalExclusion_3 "52l.3" + (seq LANGTAG _languageExclusion_1)) + (rule _languageExclusion_3 "56.3" (first _eps "~") (follow "-" "." DECIMAL DOUBLE INTEGER IRIREF LANGTAG LANG_STRING_LITERAL1 LANG_STRING_LITERAL2 LANG_STRING_LITERAL_LONG1 LANG_STRING_LITERAL_LONG2 PNAME_LN PNAME_NS STRING_LITERAL1 STRING_LITERAL2 STRING_LITERAL_LONG1 STRING_LITERAL_LONG2 "]" "false" "true" ) - (seq _literalExclusion_1)) - (rule include "53" (first "&") (follow ")" ";" "|" "}") (seq "&" shapeLabel)) - (rule _include_1 "53.1" + (seq _languageExclusion_1)) + (rule include "57" (first "&") (follow ")" ";" "|" "}") (seq "&" shapeLabel)) + (rule _include_1 "57.1" (first BLANK_NODE_LABEL IRIREF PNAME_LN PNAME_NS) (follow ")" ";" "|" "}") (seq shapeLabel)) - (rule annotation "54" + (rule annotation "58" (first "//") (follow "%" ")" "//" ";" "AND" "BASE" BLANK_NODE_LABEL "BNODE" "IRI" IRIREF "LENGTH" "MAXLENGTH" "MINLENGTH" "NONLITERAL" "OR" PNAME_LN PNAME_NS "PREFIX" REGEXP "START" _eof "|" "}" ) (seq "//" predicate _annotation_1)) - (rule _annotation_1 "54.1" + (rule _annotation_1 "58.1" (first DECIMAL DOUBLE INTEGER IRIREF LANG_STRING_LITERAL1 LANG_STRING_LITERAL2 LANG_STRING_LITERAL_LONG1 LANG_STRING_LITERAL_LONG2 PNAME_LN PNAME_NS STRING_LITERAL1 STRING_LITERAL2 STRING_LITERAL_LONG1 @@ -1801,13 +1823,13 @@ "LENGTH" "MAXLENGTH" "MINLENGTH" "NONLITERAL" "OR" PNAME_LN PNAME_NS "PREFIX" REGEXP "START" _eof "|" "}" ) (alt iri literal)) - (rule _annotation_2 "54.2" + (rule _annotation_2 "58.2" (first IRIREF PNAME_LN PNAME_NS RDF_TYPE) (follow "%" ")" "//" ";" "AND" "BASE" BLANK_NODE_LABEL "BNODE" "IRI" IRIREF "LENGTH" "MAXLENGTH" "MINLENGTH" "NONLITERAL" "OR" PNAME_LN PNAME_NS "PREFIX" REGEXP "START" _eof "|" "}" ) (seq predicate _annotation_1)) - (rule _annotation_3 "54.3" + (rule _annotation_3 "58.3" (first DECIMAL DOUBLE INTEGER IRIREF LANG_STRING_LITERAL1 LANG_STRING_LITERAL2 LANG_STRING_LITERAL_LONG1 LANG_STRING_LITERAL_LONG2 PNAME_LN PNAME_NS STRING_LITERAL1 STRING_LITERAL2 STRING_LITERAL_LONG1 @@ -1816,64 +1838,53 @@ "LENGTH" "MAXLENGTH" "MINLENGTH" "NONLITERAL" "OR" PNAME_LN PNAME_NS "PREFIX" REGEXP "START" _eof "|" "}" ) (seq _annotation_1)) - (rule semanticActions "55" + (rule semanticActions "59" (first "%" _eps) (follow ")" ";" "AND" "BASE" BLANK_NODE_LABEL "BNODE" "IRI" IRIREF "LENGTH" "MAXLENGTH" "MINLENGTH" "NONLITERAL" "OR" PNAME_LN PNAME_NS "PREFIX" REGEXP "START" _eof "|" "}" ) (cleanup star) (alt _empty _semanticActions_1)) - (rule _semanticActions_1 "55.1" + (rule _semanticActions_1 "59.1" (first "%") (follow ")" ";" "AND" "BASE" BLANK_NODE_LABEL "BNODE" "IRI" IRIREF "LENGTH" "MAXLENGTH" "MINLENGTH" "NONLITERAL" "OR" PNAME_LN PNAME_NS "PREFIX" REGEXP "START" _eof "|" "}" ) (cleanup merge) (seq codeDecl semanticActions)) - (rule _semanticActions_2 "55.2" + (rule _semanticActions_2 "59.2" (first "%" _eps) (follow ")" ";" "AND" "BASE" BLANK_NODE_LABEL "BNODE" "IRI" IRIREF "LENGTH" "MAXLENGTH" "MINLENGTH" "NONLITERAL" "OR" PNAME_LN PNAME_NS "PREFIX" REGEXP "START" _eof "|" "}" ) (seq semanticActions)) - (rule codeDecl "56" + (rule codeDecl "60" (first "%") (follow "%" ")" ";" "AND" "BASE" BLANK_NODE_LABEL "BNODE" "IRI" IRIREF "LENGTH" "MAXLENGTH" "MINLENGTH" "NONLITERAL" "OR" PNAME_LN PNAME_NS "PREFIX" REGEXP "START" _eof "|" "}" ) (seq "%" iri _codeDecl_1)) - (rule _codeDecl_1 "56.1" + (rule _codeDecl_1 "60.1" (first "%" CODE) (follow "%" ")" ";" "AND" "BASE" BLANK_NODE_LABEL "BNODE" "IRI" IRIREF "LENGTH" "MAXLENGTH" "MINLENGTH" "NONLITERAL" "OR" PNAME_LN PNAME_NS "PREFIX" REGEXP "START" _eof "|" "}" ) (alt CODE "%")) - (rule _codeDecl_2 "56.2" + (rule _codeDecl_2 "60.2" (first IRIREF PNAME_LN PNAME_NS) (follow "%" ")" ";" "AND" "BASE" BLANK_NODE_LABEL "BNODE" "IRI" IRIREF "LENGTH" "MAXLENGTH" "MINLENGTH" "NONLITERAL" "OR" PNAME_LN PNAME_NS "PREFIX" REGEXP "START" _eof "|" "}" ) (seq iri _codeDecl_1)) - (rule _codeDecl_3 "56.3" + (rule _codeDecl_3 "60.3" (first "%" CODE) (follow "%" ")" ";" "AND" "BASE" BLANK_NODE_LABEL "BNODE" "IRI" IRIREF "LENGTH" "MAXLENGTH" "MINLENGTH" "NONLITERAL" "OR" PNAME_LN PNAME_NS "PREFIX" REGEXP "START" _eof "|" "}" ) (seq _codeDecl_1)) - (rule literal "57" - (first DECIMAL DOUBLE INTEGER LANG_STRING_LITERAL1 LANG_STRING_LITERAL2 - LANG_STRING_LITERAL_LONG1 LANG_STRING_LITERAL_LONG2 STRING_LITERAL1 - STRING_LITERAL2 STRING_LITERAL_LONG1 STRING_LITERAL_LONG2 "false" "true" ) - (follow "%" ")" "-" "." "//" ";" "AND" "BASE" BLANK_NODE_LABEL "BNODE" - DECIMAL DOUBLE INTEGER "IRI" IRIREF LANGTAG LANG_STRING_LITERAL1 - LANG_STRING_LITERAL2 LANG_STRING_LITERAL_LONG1 LANG_STRING_LITERAL_LONG2 - "LENGTH" "MAXLENGTH" "MINLENGTH" "NONLITERAL" "OR" PNAME_LN PNAME_NS - "PREFIX" REGEXP "START" STRING_LITERAL1 STRING_LITERAL2 STRING_LITERAL_LONG1 - STRING_LITERAL_LONG2 "]" _eof "false" "true" "|" "}" "~" ) - (alt rdfLiteral numericLiteral booleanLiteral)) - (rule predicate "58" + (rule predicate "61" (first IRIREF PNAME_LN PNAME_NS RDF_TYPE) - (follow "&" "(" "." "@" ATPNAME_LN ATPNAME_NS "BNODE" "CLOSED" DECIMAL DOUBLE + (follow "(" "." "@" ATPNAME_LN ATPNAME_NS "BNODE" "CLOSED" DECIMAL DOUBLE "EXTRA" "FRACTIONDIGITS" INTEGER "IRI" IRIREF LANG_STRING_LITERAL1 LANG_STRING_LITERAL2 LANG_STRING_LITERAL_LONG1 LANG_STRING_LITERAL_LONG2 "LENGTH" "LITERAL" "MAXEXCLUSIVE" "MAXINCLUSIVE" "MAXLENGTH" "MINEXCLUSIVE" @@ -1881,7 +1892,7 @@ REGEXP STRING_LITERAL1 STRING_LITERAL2 STRING_LITERAL_LONG1 STRING_LITERAL_LONG2 "TOTALDIGITS" "[" "false" "true" "{" ) (alt iri RDF_TYPE)) - (rule datatype "59" + (rule datatype "62" (first IRIREF PNAME_LN PNAME_NS) (follow "%" ")" "*" "+" "-" "." "//" ";" "?" "AND" "BASE" BLANK_NODE_LABEL "BNODE" DECIMAL DOUBLE "FRACTIONDIGITS" INTEGER "IRI" IRIREF LANGTAG @@ -1892,27 +1903,55 @@ STRING_LITERAL2 STRING_LITERAL_LONG1 STRING_LITERAL_LONG2 "TOTALDIGITS" "]" _eof "false" "true" "|" "}" "~" ) (seq iri)) - (rule shapeLabel "60" + (rule shapeLabel "63" (first BLANK_NODE_LABEL IRIREF PNAME_LN PNAME_NS) - (follow "%" "&" "(" ")" "*" "+" "." "//" ";" "?" "@" "AND" ATPNAME_LN - ATPNAME_NS "BASE" BLANK_NODE_LABEL "BNODE" "CLOSED" "EXTERNAL" "EXTRA" - "FRACTIONDIGITS" "IRI" IRIREF "LENGTH" "LITERAL" "MAXEXCLUSIVE" - "MAXINCLUSIVE" "MAXLENGTH" "MINEXCLUSIVE" "MININCLUSIVE" "MINLENGTH" - "NONLITERAL" "NOT" "OR" PNAME_LN PNAME_NS "PREFIX" REGEXP REPEAT_RANGE - "START" "TOTALDIGITS" "[" _eof "{" "|" "}" ) + (follow "%" "(" ")" "*" "+" "." "//" ";" "?" "@" "AND" ATPNAME_LN ATPNAME_NS + "BASE" BLANK_NODE_LABEL "BNODE" "CLOSED" "EXTERNAL" "EXTRA" "FRACTIONDIGITS" + "IRI" IRIREF "LENGTH" "LITERAL" "MAXEXCLUSIVE" "MAXINCLUSIVE" "MAXLENGTH" + "MINEXCLUSIVE" "MININCLUSIVE" "MINLENGTH" "NONLITERAL" "NOT" "OR" PNAME_LN + PNAME_NS "PREFIX" REGEXP REPEAT_RANGE "START" "TOTALDIGITS" "[" _eof "{" "|" + "}" ) (alt iri blankNode)) - (rule numericLiteral "61" - (first DECIMAL DOUBLE INTEGER) - (follow "%" ")" "*" "+" "-" "." "//" ";" "?" "AND" "BASE" BLANK_NODE_LABEL - "BNODE" DECIMAL DOUBLE "FRACTIONDIGITS" INTEGER "IRI" IRIREF LANGTAG - LANG_STRING_LITERAL1 LANG_STRING_LITERAL2 LANG_STRING_LITERAL_LONG1 - LANG_STRING_LITERAL_LONG2 "LENGTH" "MAXEXCLUSIVE" "MAXINCLUSIVE" "MAXLENGTH" - "MINEXCLUSIVE" "MININCLUSIVE" "MINLENGTH" "NONLITERAL" "OR" PNAME_LN - PNAME_NS "PREFIX" REGEXP REPEAT_RANGE "START" STRING_LITERAL1 - STRING_LITERAL2 STRING_LITERAL_LONG1 STRING_LITERAL_LONG2 "TOTALDIGITS" "]" - _eof "false" "true" "|" "}" "~" ) - (alt INTEGER DECIMAL DOUBLE)) - (rule rdfLiteral "62" + (rule langString "66" + (first LANG_STRING_LITERAL1 LANG_STRING_LITERAL2 LANG_STRING_LITERAL_LONG1 + LANG_STRING_LITERAL_LONG2 ) + (follow "%" ")" "-" "." "//" ";" "AND" "BASE" BLANK_NODE_LABEL "BNODE" + DECIMAL DOUBLE INTEGER "IRI" IRIREF LANGTAG LANG_STRING_LITERAL1 + LANG_STRING_LITERAL2 LANG_STRING_LITERAL_LONG1 LANG_STRING_LITERAL_LONG2 + "LENGTH" "MAXLENGTH" "MINLENGTH" "NONLITERAL" "OR" PNAME_LN PNAME_NS + "PREFIX" REGEXP "START" STRING_LITERAL1 STRING_LITERAL2 STRING_LITERAL_LONG1 + STRING_LITERAL_LONG2 "]" _eof "false" "true" "|" "}" "~" ) + (alt LANG_STRING_LITERAL1 LANG_STRING_LITERAL_LONG1 LANG_STRING_LITERAL2 + LANG_STRING_LITERAL_LONG2 )) + (terminal CODE "67" (seq "{" (range "^%\\] | '\\'[%\\] | UCHAR)* '%''}'"))) + (terminal REPEAT_RANGE "68" (seq "{" INTEGER (opt (seq "," (opt (alt INTEGER "*")))) "}")) + (terminal RDF_TYPE "69" (seq "a")) + (terminal ATPNAME_NS "70" (seq "@" (opt PN_PREFIX) ":")) + (terminal ATPNAME_LN "71" (seq "@" PNAME_NS PN_LOCAL)) + (terminal REGEXP "72" + (seq "/" + (plus (alt (range "^/\\\n\r") (seq "\\" (range "nrt\\|.?*+(){}$-[]^/")) UCHAR)) + "/" + (star (range "smix"))) ) + (terminal LANG_STRING_LITERAL1 "73" + (seq "'" (star (alt (range "^#x27#x5C#xA#xD") ECHAR UCHAR)) "'" LANGTAG)) + (terminal LANG_STRING_LITERAL2 "74" + (seq "\"" (star (alt (range "^#x22#x5C#xA#xD") ECHAR UCHAR)) "\"" LANGTAG)) + (terminal LANG_STRING_LITERAL_LONG1 "75" + (seq "'''" (seq (opt (alt "'" "''")) (range "^'\\] | ECHAR | UCHAR))* \"'''\" LANGTAG")))) + (terminal LANG_STRING_LITERAL_LONG2 "76" + (seq "\"\"\"" + (seq (opt (alt "\"" "\"\"")) (range "^\"\\] | ECHAR | UCHAR))* '\"\"\"' LANGTAG"))) ) + (rule _rdfLiteral_4 "129s.4" + (first "^^" _eps) + (follow "%" ")" "-" "." "//" ";" "AND" "BASE" BLANK_NODE_LABEL "BNODE" + DECIMAL DOUBLE INTEGER "IRI" IRIREF LANGTAG LANG_STRING_LITERAL1 + LANG_STRING_LITERAL2 LANG_STRING_LITERAL_LONG1 LANG_STRING_LITERAL_LONG2 + "LENGTH" "MAXLENGTH" "MINLENGTH" "NONLITERAL" "OR" PNAME_LN PNAME_NS + "PREFIX" REGEXP "START" STRING_LITERAL1 STRING_LITERAL2 STRING_LITERAL_LONG1 + STRING_LITERAL_LONG2 "]" _eof "false" "true" "|" "}" "~" ) + (seq _rdfLiteral_2)) + (rule rdfLiteral "129s" (first LANG_STRING_LITERAL1 LANG_STRING_LITERAL2 LANG_STRING_LITERAL_LONG1 LANG_STRING_LITERAL_LONG2 STRING_LITERAL1 STRING_LITERAL2 STRING_LITERAL_LONG1 STRING_LITERAL_LONG2 ) @@ -1923,7 +1962,7 @@ "PREFIX" REGEXP "START" STRING_LITERAL1 STRING_LITERAL2 STRING_LITERAL_LONG1 STRING_LITERAL_LONG2 "]" _eof "false" "true" "|" "}" "~" ) (alt langString _rdfLiteral_1)) - (rule _rdfLiteral_1 "62.1" + (rule _rdfLiteral_1 "129s.1" (first STRING_LITERAL1 STRING_LITERAL2 STRING_LITERAL_LONG1 STRING_LITERAL_LONG2) (follow "%" ")" "-" "." "//" ";" "AND" "BASE" BLANK_NODE_LABEL "BNODE" DECIMAL DOUBLE INTEGER "IRI" IRIREF LANGTAG LANG_STRING_LITERAL1 @@ -1932,7 +1971,7 @@ "PREFIX" REGEXP "START" STRING_LITERAL1 STRING_LITERAL2 STRING_LITERAL_LONG1 STRING_LITERAL_LONG2 "]" _eof "false" "true" "|" "}" "~" ) (seq string _rdfLiteral_2)) - (rule _rdfLiteral_2 "62.2" + (rule _rdfLiteral_2 "129s.2" (first "^^" _eps) (follow "%" ")" "-" "." "//" ";" "AND" "BASE" BLANK_NODE_LABEL "BNODE" DECIMAL DOUBLE INTEGER "IRI" IRIREF LANGTAG LANG_STRING_LITERAL1 @@ -1942,7 +1981,7 @@ STRING_LITERAL_LONG2 "]" _eof "false" "true" "|" "}" "~" ) (cleanup opt) (alt _empty _rdfLiteral_3)) - (rule _rdfLiteral_3 "62.3" + (rule _rdfLiteral_3 "129s.3" (first "^^") (follow "%" ")" "-" "." "//" ";" "AND" "BASE" BLANK_NODE_LABEL "BNODE" DECIMAL DOUBLE INTEGER "IRI" IRIREF LANGTAG LANG_STRING_LITERAL1 @@ -1951,16 +1990,7 @@ "PREFIX" REGEXP "START" STRING_LITERAL1 STRING_LITERAL2 STRING_LITERAL_LONG1 STRING_LITERAL_LONG2 "]" _eof "false" "true" "|" "}" "~" ) (seq "^^" datatype)) - (rule _rdfLiteral_4 "62.4" - (first "^^" _eps) - (follow "%" ")" "-" "." "//" ";" "AND" "BASE" BLANK_NODE_LABEL "BNODE" - DECIMAL DOUBLE INTEGER "IRI" IRIREF LANGTAG LANG_STRING_LITERAL1 - LANG_STRING_LITERAL2 LANG_STRING_LITERAL_LONG1 LANG_STRING_LITERAL_LONG2 - "LENGTH" "MAXLENGTH" "MINLENGTH" "NONLITERAL" "OR" PNAME_LN PNAME_NS - "PREFIX" REGEXP "START" STRING_LITERAL1 STRING_LITERAL2 STRING_LITERAL_LONG1 - STRING_LITERAL_LONG2 "]" _eof "false" "true" "|" "}" "~" ) - (seq _rdfLiteral_2)) - (rule _rdfLiteral_5 "62.5" + (rule _rdfLiteral_5 "129s.5" (first IRIREF PNAME_LN PNAME_NS) (follow "%" ")" "-" "." "//" ";" "AND" "BASE" BLANK_NODE_LABEL "BNODE" DECIMAL DOUBLE INTEGER "IRI" IRIREF LANGTAG LANG_STRING_LITERAL1 @@ -1969,7 +1999,7 @@ "PREFIX" REGEXP "START" STRING_LITERAL1 STRING_LITERAL2 STRING_LITERAL_LONG1 STRING_LITERAL_LONG2 "]" _eof "false" "true" "|" "}" "~" ) (seq datatype)) - (rule booleanLiteral "63" + (rule booleanLiteral "134s" (first "false" "true") (follow "%" ")" "-" "." "//" ";" "AND" "BASE" BLANK_NODE_LABEL "BNODE" DECIMAL DOUBLE INTEGER "IRI" IRIREF LANGTAG LANG_STRING_LITERAL1 @@ -1978,7 +2008,7 @@ "PREFIX" REGEXP "START" STRING_LITERAL1 STRING_LITERAL2 STRING_LITERAL_LONG1 STRING_LITERAL_LONG2 "]" _eof "false" "true" "|" "}" "~" ) (alt "true" "false")) - (rule string "64" + (rule string "135s" (first STRING_LITERAL1 STRING_LITERAL2 STRING_LITERAL_LONG1 STRING_LITERAL_LONG2) (follow "%" ")" "-" "." "//" ";" "AND" "BASE" BLANK_NODE_LABEL "BNODE" DECIMAL DOUBLE INTEGER "IRI" IRIREF LANGTAG LANG_STRING_LITERAL1 @@ -1987,20 +2017,9 @@ "PREFIX" REGEXP "START" STRING_LITERAL1 STRING_LITERAL2 STRING_LITERAL_LONG1 STRING_LITERAL_LONG2 "]" "^^" _eof "false" "true" "|" "}" "~" ) (alt STRING_LITERAL1 STRING_LITERAL_LONG1 STRING_LITERAL2 STRING_LITERAL_LONG2)) - (rule langString "64l" - (first LANG_STRING_LITERAL1 LANG_STRING_LITERAL2 LANG_STRING_LITERAL_LONG1 - LANG_STRING_LITERAL_LONG2 ) - (follow "%" ")" "-" "." "//" ";" "AND" "BASE" BLANK_NODE_LABEL "BNODE" - DECIMAL DOUBLE INTEGER "IRI" IRIREF LANGTAG LANG_STRING_LITERAL1 - LANG_STRING_LITERAL2 LANG_STRING_LITERAL_LONG1 LANG_STRING_LITERAL_LONG2 - "LENGTH" "MAXLENGTH" "MINLENGTH" "NONLITERAL" "OR" PNAME_LN PNAME_NS - "PREFIX" REGEXP "START" STRING_LITERAL1 STRING_LITERAL2 STRING_LITERAL_LONG1 - STRING_LITERAL_LONG2 "]" _eof "false" "true" "|" "}" "~" ) - (alt LANG_STRING_LITERAL1 LANG_STRING_LITERAL_LONG1 LANG_STRING_LITERAL2 - LANG_STRING_LITERAL_LONG2 )) - (rule iri "65" + (rule iri "136s" (first IRIREF PNAME_LN PNAME_NS) - (follow "%" "&" "(" ")" "*" "+" "-" "." "//" ";" "?" "@" "AND" ATPNAME_LN + (follow "%" "(" ")" "*" "+" "-" "." "//" ";" "?" "@" "AND" ATPNAME_LN ATPNAME_NS "BASE" BLANK_NODE_LABEL "BNODE" "CLOSED" CODE DECIMAL DOUBLE "EXTERNAL" "EXTRA" "FRACTIONDIGITS" INTEGER "IRI" IRIREF LANGTAG LANG_STRING_LITERAL1 LANG_STRING_LITERAL2 LANG_STRING_LITERAL_LONG1 @@ -2010,9 +2029,9 @@ STRING_LITERAL1 STRING_LITERAL2 STRING_LITERAL_LONG1 STRING_LITERAL_LONG2 "TOTALDIGITS" "[" "]" "^" _eof "false" "true" "{" "|" "}" "~" ) (alt IRIREF prefixedName)) - (rule prefixedName "66" + (rule prefixedName "137s" (first PNAME_LN PNAME_NS) - (follow "%" "&" "(" ")" "*" "+" "-" "." "//" ";" "?" "@" "AND" ATPNAME_LN + (follow "%" "(" ")" "*" "+" "-" "." "//" ";" "?" "@" "AND" ATPNAME_LN ATPNAME_NS "BASE" BLANK_NODE_LABEL "BNODE" "CLOSED" CODE DECIMAL DOUBLE "EXTERNAL" "EXTRA" "FRACTIONDIGITS" INTEGER "IRI" IRIREF LANGTAG LANG_STRING_LITERAL1 LANG_STRING_LITERAL2 LANG_STRING_LITERAL_LONG1 @@ -2022,92 +2041,32 @@ STRING_LITERAL1 STRING_LITERAL2 STRING_LITERAL_LONG1 STRING_LITERAL_LONG2 "TOTALDIGITS" "[" "]" "^" _eof "false" "true" "{" "|" "}" "~" ) (alt PNAME_LN PNAME_NS)) - (rule blankNode "67" + (rule blankNode "138s" (first BLANK_NODE_LABEL) - (follow "%" "&" "(" ")" "*" "+" "." "//" ";" "?" "@" "AND" ATPNAME_LN - ATPNAME_NS "BASE" BLANK_NODE_LABEL "BNODE" "CLOSED" "EXTERNAL" "EXTRA" - "FRACTIONDIGITS" "IRI" IRIREF "LENGTH" "LITERAL" "MAXEXCLUSIVE" - "MAXINCLUSIVE" "MAXLENGTH" "MINEXCLUSIVE" "MININCLUSIVE" "MINLENGTH" - "NONLITERAL" "NOT" "OR" PNAME_LN PNAME_NS "PREFIX" RDF_TYPE REGEXP - REPEAT_RANGE "START" "TOTALDIGITS" "[" "^" _eof "{" "|" "}" ) + (follow "%" "(" ")" "*" "+" "." "//" ";" "?" "@" "AND" ATPNAME_LN ATPNAME_NS + "BASE" BLANK_NODE_LABEL "BNODE" "CLOSED" "EXTERNAL" "EXTRA" "FRACTIONDIGITS" + "IRI" IRIREF "LENGTH" "LITERAL" "MAXEXCLUSIVE" "MAXINCLUSIVE" "MAXLENGTH" + "MINEXCLUSIVE" "MININCLUSIVE" "MINLENGTH" "NONLITERAL" "NOT" "OR" PNAME_LN + PNAME_NS "PREFIX" RDF_TYPE REGEXP REPEAT_RANGE "START" "TOTALDIGITS" "[" "^" + _eof "{" "|" "}" ) (seq BLANK_NODE_LABEL)) - (rule includeSet "68" - (first "&") - (follow "&" "CLOSED" "EXTRA" "{") - (seq "&" _includeSet_1)) - (rule _includeSet_1 "68.1" - (first BLANK_NODE_LABEL IRIREF PNAME_LN PNAME_NS) - (follow "&" "CLOSED" "EXTRA" "{") - (cleanup plus) - (seq shapeLabel _includeSet_2)) - (rule _includeSet_2 "68.2" - (first BLANK_NODE_LABEL IRIREF PNAME_LN PNAME_NS _eps) - (follow "&" "CLOSED" "EXTRA" "{") - (cleanup star) - (alt _empty _includeSet_3)) - (rule _includeSet_3 "68.3" - (first BLANK_NODE_LABEL IRIREF PNAME_LN PNAME_NS) - (follow "&" "CLOSED" "EXTRA" "{") - (cleanup merge) - (seq shapeLabel _includeSet_2)) - (rule _includeSet_4 "68.4" - (first BLANK_NODE_LABEL IRIREF PNAME_LN PNAME_NS) - (follow "&" "CLOSED" "EXTRA" "{") - (seq _includeSet_1)) - (rule _includeSet_5 "68.5" - (first BLANK_NODE_LABEL IRIREF PNAME_LN PNAME_NS _eps) - (follow "&" "CLOSED" "EXTRA" "{") - (seq _includeSet_2)) - (rule _includeSet_6 "68.6" - (first BLANK_NODE_LABEL IRIREF PNAME_LN PNAME_NS _eps) - (follow "&" "CLOSED" "EXTRA" "{") - (seq _includeSet_2)) - (terminal CODE "69" (seq "{" (range "^%\\] | '\\'[%\\] | UCHAR)* '%''}'"))) - (terminal REPEAT_RANGE "70" (seq "{" INTEGER (opt (seq "," (opt (alt INTEGER "*")))) "}")) - (terminal RDF_TYPE "71" (seq "a")) - (terminal IRIREF "72" - (seq "<" - (range - "^#x00-#x20<>\"{}|^`\\] | UCHAR)* '>' /* #x00=NULL #01-#x1F=control codes #x20=space */" - )) ) - (terminal PNAME_NS "73" (seq (opt PN_PREFIX) ":")) - (terminal PNAME_LN "74" (seq PNAME_NS PN_LOCAL)) - (terminal ATPNAME_NS "75" (seq "@" (opt PN_PREFIX) ":")) - (terminal ATPNAME_LN "76" (seq "@" PNAME_NS PN_LOCAL)) - (terminal BLANK_NODE_LABEL "77" + (terminal PNAME_NS "140s" (seq (opt PN_PREFIX) ":")) + (terminal PNAME_LN "141s" (seq PNAME_NS PN_LOCAL)) + (terminal BLANK_NODE_LABEL "142s" (seq "_:" (alt PN_CHARS_U (range "0-9")) (opt (seq (star (alt PN_CHARS ".")) PN_CHARS)))) - (terminal LANGTAG "78" + (terminal LANGTAG "145s" (seq "@" (plus (range "a-zA-Z")) (star (seq "-" (plus (range "a-zA-Z0-9")))))) - (terminal INTEGER "79" (seq (opt (range "+-")) (plus (range "0-9")))) - (terminal DECIMAL "80" (seq (opt (range "+-")) (star (range "0-9")) "." (plus (range "0-9")))) - (terminal DOUBLE "81" - (seq - (opt (range "+-")) - (alt - (seq (plus (range "0-9")) "." (star (range "0-9")) EXPONENT) - (seq (opt ".") (plus (range "0-9")) EXPONENT)) )) - (terminal EXPONENT "82" (seq (range "eE") (opt (range "+-")) (plus (range "0-9")))) - (terminal STRING_LITERAL1 "83" + (terminal EXPONENT "155s" (seq (range "eE") (opt (range "+-")) (plus (range "0-9")))) + (terminal STRING_LITERAL1 "156s" (seq "'" (star (alt (range "^#x27#x5C#xA#xD") ECHAR UCHAR)) "'")) - (terminal LANG_STRING_LITERAL1 "83l" - (seq "'" (star (alt (range "^#x27#x5C#xA#xD") ECHAR UCHAR)) "'" LANGTAG)) - (terminal LANG_STRING_LITERAL2 "84l" - (seq "\"" (star (alt (range "^#x22#x5C#xA#xD") ECHAR UCHAR)) "\"" LANGTAG)) - (terminal STRING_LITERAL2 "84" + (terminal STRING_LITERAL2 "157s" (seq "\"" (star (alt (range "^#x22#x5C#xA#xD") ECHAR UCHAR)) "\"")) - (terminal LANG_STRING_LITERAL_LONG1 "85l" - (seq "'''" (seq (opt (alt "'" "''")) (range "^'\\] | ECHAR | UCHAR))* \"'''\" LANGTAG")))) - (terminal STRING_LITERAL_LONG1 "85" + (terminal STRING_LITERAL_LONG1 "158s" (seq "'''" (seq (opt (alt "'" "''")) (range "^'\\] | ECHAR | UCHAR))* \"'''\"")))) - (terminal STRING_LITERAL_LONG2 "86" + (terminal STRING_LITERAL_LONG2 "159s" (seq "\"\"\"" (seq (opt (alt "\"" "\"\"")) (range "^\"\\] | ECHAR | UCHAR))* '\"\"\"'")))) - (terminal LANG_STRING_LITERAL_LONG2 "86l" - (seq "\"\"\"" - (seq (opt (alt "\"" "\"\"")) (range "^\"\\] | ECHAR | UCHAR))* '\"\"\"' LANGTAG"))) ) - (terminal UCHAR "87" - (alt (seq "\\u" HEX HEX HEX HEX) (seq "\\U" HEX HEX HEX HEX HEX HEX HEX HEX))) - (terminal ECHAR "88" (seq "\\" (range "tbnrf\\\"'"))) - (terminal PN_CHARS_BASE "89" + (terminal ECHAR "160s" (seq "\\" (range "tbnrf\\\"'"))) + (terminal PN_CHARS_BASE "164s" (alt (range "A-Z") (range "a-z") @@ -2123,22 +2082,23 @@ (range "#xF900-#xFDCF") (range "#xFDF0-#xFFFD") (range "#x10000-#xEFFFF")) ) - (terminal PN_CHARS_U "90" (alt PN_CHARS_BASE "_")) - (terminal PN_CHARS "91" + (terminal PN_CHARS_U "165s" (alt PN_CHARS_BASE "_")) + (terminal PN_CHARS "167s" (alt PN_CHARS_U "-" (range "0-9") (range "#x00B7") (range "#x0300-#x036F") (range "#x203F-#x2040")) ) - (terminal PN_PREFIX "92" (seq PN_CHARS_BASE (opt (seq (star (alt PN_CHARS ".")) PN_CHARS)))) - (terminal PN_LOCAL "93" + (terminal PN_PREFIX "168s" + (seq PN_CHARS_BASE (opt (seq (star (alt PN_CHARS ".")) PN_CHARS)))) + (terminal PN_LOCAL "169s" (seq (alt PN_CHARS_U ":" (range "0-9") PLX) (opt (seq (star (alt PN_CHARS "." ":" PLX)) (alt PN_CHARS ":" PLX)))) ) - (terminal PLX "94" (alt PERCENT PN_LOCAL_ESC)) - (terminal PERCENT "95" (seq "%" HEX HEX)) - (terminal HEX "96" (alt (range "0-9") (range "A-F") (range "a-f"))) - (terminal PN_LOCAL_ESC "97" + (terminal PLX "170s" (alt PERCENT PN_LOCAL_ESC)) + (terminal PERCENT "171s" (seq "%" HEX HEX)) + (terminal HEX "172s" (alt (range "0-9") (range "A-F") (range "a-f"))) + (terminal PN_LOCAL_ESC "173s" (seq "\\" (alt "_" "~" "." "-" "!" "$" "&" "'" "(" ")" "*" "+" "," ";" "=" "/" "?" "#" "@" "%" )) )) diff --git a/etc/shex.sxp b/etc/shex.sxp index 91d6b39..47faa02 100644 --- a/etc/shex.sxp +++ b/etc/shex.sxp @@ -1,9 +1,4 @@ ( - (terminal REGEXP "XX" - (seq "/" - (plus (alt (range "^/\\\n\r") (seq "\\" (range "nrt\\|.?*+(){}$-[]^/")) UCHAR)) - "/" - (star (range "smix"))) ) (rule _empty "0" (seq)) (pass (alt (plus (range " \t\r\n")) (seq "#" (star (range "^\r\n"))))) (rule shexDoc "1" (seq _shexDoc_1 _shexDoc_2)) @@ -48,6 +43,7 @@ (rule _shapeOrB_1 "12b.1" (seq "AND" shapeNot)) (rule _shapeOr_1 "12.1" (seq shapeOrB _shapeOr_2)) (rule _shapeOr_2 "12.2" (cleanup opt) (alt _empty shapeOrA)) + (rule literal "13t" (alt rdfLiteral numericLiteral booleanLiteral)) (rule inlineShapeOr "13" (seq inlineShapeAnd _inlineShapeOr_1)) (rule _inlineShapeOr_1 "13.1" (cleanup star) (alt _empty _inlineShapeOr_3)) (rule _inlineShapeOr_2 "13.2" (seq "OR" inlineShapeAnd)) @@ -63,11 +59,17 @@ (cleanup merge) (seq _inlineShapeAnd_2 _inlineShapeAnd_1)) (rule shapeNot "16" (seq _shapeNot_1 shapeAtom)) + (rule numericLiteral "16t" (alt INTEGER DECIMAL DOUBLE)) (rule _shapeNot_1 "16.1" (cleanup opt) (alt _empty "NOT")) (rule inlineShapeNot "17" (seq _inlineShapeNot_1 inlineShapeAtom)) (rule _inlineShapeNot_1 "17.1" (cleanup opt) (alt _empty "NOT")) (rule shapeAtom "18" (alt _shapeAtom_1 litNodeConstraint _shapeAtom_2 _shapeAtom_3 ".")) + (terminal IRIREF "18t" + (seq "<" + (range + "^#x00-#x20<>\"{}|^`\\] | UCHAR)* '>' /* #x00=NULL #01-#x1F=control codes #x20=space */" + )) ) (rule _shapeAtom_1 "18.1" (seq nonLitNodeConstraint _shapeAtom_4)) (rule _shapeAtom_2 "18.2" (seq shapeOrRef _shapeAtom_5)) (rule _shapeAtom_3 "18.3" (seq "(" shapeExpression ")")) @@ -75,11 +77,13 @@ (rule _shapeAtom_5 "18.5" (cleanup opt) (alt _empty nonLitNodeConstraint)) (rule shapeAtomNoRef "19" (alt _shapeAtomNoRef_1 litNodeConstraint _shapeAtomNoRef_2 _shapeAtomNoRef_3 ".")) + (terminal INTEGER "19t" (seq (opt (range "+-")) (plus (range "0-9")))) (rule _shapeAtomNoRef_1 "19.1" (seq nonLitNodeConstraint _shapeAtomNoRef_4)) (rule _shapeAtomNoRef_2 "19.2" (seq shapeDefinition _shapeAtomNoRef_5)) (rule _shapeAtomNoRef_3 "19.3" (seq "(" shapeExpression ")")) (rule _shapeAtomNoRef_4 "19.4" (cleanup opt) (alt _empty shapeOrRef)) (rule _shapeAtomNoRef_5 "19.5" (cleanup opt) (alt _empty nonLitNodeConstraint)) + (terminal DECIMAL "20t" (seq (opt (range "+-")) (star (range "0-9")) "." (plus (range "0-9")))) (rule inlineShapeAtom "20" (alt _inlineShapeAtom_1 litNodeConstraint _inlineShapeAtom_2 _inlineShapeAtom_3 "." )) @@ -88,6 +92,12 @@ (rule _inlineShapeAtom_3 "20.3" (seq "(" shapeExpression ")")) (rule _inlineShapeAtom_4 "20.4" (cleanup opt) (alt _empty inlineShapeOrRef)) (rule _inlineShapeAtom_5 "20.5" (cleanup opt) (alt _empty nonLitNodeConstraint)) + (terminal DOUBLE "21t" + (seq + (opt (range "+-")) + (alt + (seq (plus (range "0-9")) "." (star (range "0-9")) EXPONENT) + (seq (opt ".") (plus (range "0-9")) EXPONENT)) )) (rule shapeOrRef "21" (alt shapeDefinition shapeRef)) (rule inlineShapeOrRef "22" (alt inlineShapeDefinition shapeRef)) (rule shapeRef "23" (alt ATPNAME_LN ATPNAME_NS _shapeRef_1)) @@ -95,10 +105,10 @@ (rule litNodeConstraint "24" (alt _litNodeConstraint_1 _litNodeConstraint_2 _litNodeConstraint_3 _litNodeConstraint_4 )) + (rule _litNodeConstraint_1 "24.1" (seq "LITERAL" _litNodeConstraint_5)) (rule _litNodeConstraint_10 "24.10" (cleanup merge) (seq xsFacet _litNodeConstraint_9)) - (rule _litNodeConstraint_1 "24.1" (seq "LITERAL" _litNodeConstraint_5)) (rule _litNodeConstraint_11 "24.11" (cleanup star) (alt _empty _litNodeConstraint_12)) (rule _litNodeConstraint_12 "24.12" (cleanup merge) @@ -131,6 +141,8 @@ (rule _nonLitNodeConstraint_6 "25.6" (cleanup merge) (seq stringFacet _nonLitNodeConstraint_5)) + (terminal UCHAR "26t" + (alt (seq "\\u" HEX HEX HEX HEX) (seq "\\U" HEX HEX HEX HEX HEX HEX HEX HEX))) (rule nonLiteralKind "26" (alt "IRI" "BNODE" "NONLITERAL")) (rule xsFacet "27" (alt stringFacet numericFacet)) (rule stringFacet "28" (alt _stringFacet_1 REGEXP)) @@ -181,6 +193,8 @@ (cleanup merge) (seq _groupTripleExpr_2 _groupTripleExpr_1)) (rule _groupTripleExpr_4 "40.4" (cleanup opt) (alt _empty unaryTripleExpr)) + (rule _productionLabel_1 "43a.1" (alt iri blankNode)) + (rule productionLabel "43a" (seq "$" _productionLabel_1)) (rule unaryTripleExpr "43" (alt _unaryTripleExpr_1 include)) (rule _unaryTripleExpr_1 "43.1" (seq _unaryTripleExpr_2 _unaryTripleExpr_3)) (rule _unaryTripleExpr_2 "43.2" (cleanup opt) (alt _empty productionLabel)) @@ -195,127 +209,108 @@ (rule _bracketedTripleExpr_3 "44.3" (cleanup merge) (seq annotation _bracketedTripleExpr_2)) - (rule productionLabel "45" (seq "$" _productionLabel_1)) - (rule _productionLabel_1 "45.1" (alt iri blankNode)) - (rule tripleConstraint "46" + (rule tripleConstraint "45" (seq _tripleConstraint_1 predicate inlineShapeExpression _tripleConstraint_2 _tripleConstraint_3 semanticActions )) - (rule _tripleConstraint_1 "46.1" (cleanup opt) (alt _empty senseFlags)) - (rule _tripleConstraint_2 "46.2" (cleanup opt) (alt _empty cardinality)) - (rule _tripleConstraint_3 "46.3" (cleanup star) (alt _empty _tripleConstraint_4)) - (rule _tripleConstraint_4 "46.4" (cleanup merge) (seq annotation _tripleConstraint_3)) - (rule cardinality "47" (alt "*" "+" "?" REPEAT_RANGE)) - (rule senseFlags "48" (seq "^")) - (rule valueSet "49" (seq "[" _valueSet_1 "]")) - (rule _valueSet_1 "49.1" (cleanup star) (alt _empty _valueSet_2)) - (rule _valueSet_2 "49.2" (cleanup merge) (seq valueSetValue _valueSet_1)) - (rule valueSetValue "50" (alt _valueSetValue_1 _valueSetValue_2)) - (rule _valueSetValue_1 "50.1" (alt iriRange literalRange languageRange)) - (rule _valueSetValue_2 "50.2" (seq "." _valueSetValue_3)) - (rule _valueSetValue_3 "50.3" (cleanup plus) (seq exclusion _valueSetValue_4)) - (rule _valueSetValue_4 "50.4" (cleanup star) (alt _empty _valueSetValue_5)) - (rule _valueSetValue_5 "50.5" (cleanup merge) (seq exclusion _valueSetValue_4)) - (rule iriRange "51i" (seq iri _iriRange_1)) - (rule _iriRange_1 "51i.1" (cleanup opt) (alt _empty _iriRange_2)) - (rule _iriRange_2 "51i.2" (seq "~" _iriRange_3)) - (rule _iriRange_3 "51i.3" (cleanup star) (alt _empty _iriRange_4)) - (rule _iriRange_4 "51i.4" (cleanup merge) (seq iriExclusion _iriRange_3)) - (rule _literalRange_3 "51l.3" (cleanup star) (alt _empty _literalRange_4)) - (rule _literalRange_2 "51l.2" (seq "~" _literalRange_3)) - (rule _literalRange_4 "51l.4" (cleanup merge) (seq literalExclusion _literalRange_3)) - (rule languageRange "51g" (seq LANGTAG _languageRange_1)) - (rule _languageRange_1 "51g.1" (cleanup opt) (alt _empty _languageRange_2)) - (rule _languageRange_2 "51g.2" (seq "~" _languageRange_3)) - (rule _languageRange_3 "51g.3" (cleanup star) (alt _empty _languageRange_4)) - (rule _languageRange_4 "51g.4" + (rule _tripleConstraint_1 "45.1" (cleanup opt) (alt _empty senseFlags)) + (rule _tripleConstraint_2 "45.2" (cleanup opt) (alt _empty cardinality)) + (rule _tripleConstraint_3 "45.3" (cleanup star) (alt _empty _tripleConstraint_4)) + (rule _tripleConstraint_4 "45.4" (cleanup merge) (seq annotation _tripleConstraint_3)) + (rule cardinality "46" (alt "*" "+" "?" REPEAT_RANGE)) + (rule senseFlags "47" (seq "^")) + (rule valueSet "48" (seq "[" _valueSet_1 "]")) + (rule _valueSet_1 "48.1" (cleanup star) (alt _empty _valueSet_2)) + (rule _valueSet_2 "48.2" (cleanup merge) (seq valueSetValue _valueSet_1)) + (rule valueSetValue "49" (alt iriRange literalRange languageRange _valueSetValue_1)) + (rule _valueSetValue_1 "49.1" (seq "." _valueSetValue_2)) + (rule _valueSetValue_2 "49.2" (cleanup plus) (seq exclusion _valueSetValue_3)) + (rule _valueSetValue_3 "49.3" (cleanup star) (alt _empty _valueSetValue_4)) + (rule _valueSetValue_4 "49.4" (cleanup merge) (seq exclusion _valueSetValue_3)) + (rule exclusion "50" (seq "-" _exclusion_1 _exclusion_2)) + (rule _exclusion_1 "50.1" (alt iri literal LANGTAG)) + (rule _exclusion_2 "50.2" (cleanup opt) (alt _empty "~")) + (rule iriRange "51" (seq iri _iriRange_1)) + (rule _iriRange_1 "51.1" (cleanup opt) (alt _empty _iriRange_2)) + (rule _iriRange_2 "51.2" (seq "~" _iriRange_3)) + (rule _iriRange_3 "51.3" (cleanup star) (alt _empty _iriRange_4)) + (rule _iriRange_4 "51.4" (cleanup merge) (seq iriExclusion _iriRange_3)) + (rule iriExclusion "52" (seq "-" iri _iriExclusion_1)) + (rule _iriExclusion_1 "52.1" (cleanup opt) (alt _empty "~")) + (rule literalRange "53" (seq literal _literalRange_1)) + (rule _literalRange_1 "53.1" (cleanup opt) (alt _empty _literalRange_2)) + (rule _literalRange_2 "53.2" (seq "~" _literalRange_3)) + (rule _literalRange_3 "53.3" (cleanup star) (alt _empty _literalRange_4)) + (rule _literalRange_4 "53.4" (cleanup merge) (seq literalExclusion _literalRange_3)) + (rule literalExclusion "54" (seq "-" literal _literalExclusion_1)) + (rule _literalExclusion_1 "54.1" (cleanup opt) (alt _empty "~")) + (rule languageRange "55" (seq LANGTAG _languageRange_1)) + (rule _languageRange_1 "55.1" (cleanup opt) (alt _empty _languageRange_2)) + (rule _languageRange_2 "55.2" (seq "~" _languageRange_3)) + (rule _languageRange_3 "55.3" (cleanup star) (alt _empty _languageRange_4)) + (rule _languageRange_4 "55.4" (cleanup merge) (seq languageExclusion _languageRange_3)) - (rule exclusion "51" (seq "-" _exclusion_1 _exclusion_2)) - (rule literalRange "51l" (seq literal _literalRange_1)) - (rule _literalRange_1 "51l.1" (cleanup opt) (alt _empty _literalRange_2)) - (rule _exclusion_1 "51.1" (alt iri literal LANGTAG)) - (rule _exclusion_2 "51.2" (cleanup opt) (alt _empty "~")) - (rule _literalExclusion_1 "52l.1" (cleanup opt) (alt _empty "~")) - (rule _languageExclusion_1 "52g.1" (cleanup opt) (alt _empty "~")) - (rule languageExclusion "52g" (seq "-" LANGTAG _languageExclusion_1)) - (rule iriExclusion "52i" (seq "-" iri _iriExclusion_1)) - (rule literalExclusion "52l" (seq "-" literal _literalExclusion_1)) - (rule _iriExclusion_1 "52i.1" (cleanup opt) (alt _empty "~")) - (rule include "53" (seq "&" shapeLabel)) - (rule annotation "54" (seq "//" predicate _annotation_1)) - (rule _annotation_1 "54.1" (alt iri literal)) - (rule semanticActions "55" (cleanup star) (alt _empty _semanticActions_1)) - (rule _semanticActions_1 "55.1" (cleanup merge) (seq codeDecl semanticActions)) - (rule codeDecl "56" (seq "%" iri _codeDecl_1)) - (rule _codeDecl_1 "56.1" (alt CODE "%")) - (rule literal "57" (alt rdfLiteral numericLiteral booleanLiteral)) - (rule predicate "58" (alt iri RDF_TYPE)) - (rule datatype "59" (seq iri)) - (rule shapeLabel "60" (alt iri blankNode)) - (rule numericLiteral "61" (alt INTEGER DECIMAL DOUBLE)) - (rule rdfLiteral "62" (alt langString _rdfLiteral_1)) - (rule _rdfLiteral_1 "62.1" (seq string _rdfLiteral_2)) - (rule _rdfLiteral_2 "62.2" (cleanup opt) (alt _empty _rdfLiteral_3)) - (rule _rdfLiteral_3 "62.3" (seq "^^" datatype)) - (rule booleanLiteral "63" (alt "true" "false")) - (rule string "64" - (alt STRING_LITERAL1 STRING_LITERAL_LONG1 STRING_LITERAL2 STRING_LITERAL_LONG2)) - (rule langString "64l" + (rule languageExclusion "56" (seq "-" LANGTAG _languageExclusion_1)) + (rule _languageExclusion_1 "56.1" (cleanup opt) (alt _empty "~")) + (rule include "57" (seq "&" shapeLabel)) + (rule annotation "58" (seq "//" predicate _annotation_1)) + (rule _annotation_1 "58.1" (alt iri literal)) + (rule semanticActions "59" (cleanup star) (alt _empty _semanticActions_1)) + (rule _semanticActions_1 "59.1" (cleanup merge) (seq codeDecl semanticActions)) + (rule codeDecl "60" (seq "%" iri _codeDecl_1)) + (rule _codeDecl_1 "60.1" (alt CODE "%")) + (rule predicate "61" (alt iri RDF_TYPE)) + (rule datatype "62" (seq iri)) + (rule shapeLabel "63" (alt iri blankNode)) + (rule langString "66" (alt LANG_STRING_LITERAL1 LANG_STRING_LITERAL_LONG1 LANG_STRING_LITERAL2 LANG_STRING_LITERAL_LONG2 )) - (rule iri "65" (alt IRIREF prefixedName)) - (rule prefixedName "66" (alt PNAME_LN PNAME_NS)) - (rule blankNode "67" (seq BLANK_NODE_LABEL)) - (rule includeSet "68" (seq "&" _includeSet_1)) - (rule _includeSet_1 "68.1" (cleanup plus) (seq shapeLabel _includeSet_2)) - (rule _includeSet_2 "68.2" (cleanup star) (alt _empty _includeSet_3)) - (rule _includeSet_3 "68.3" (cleanup merge) (seq shapeLabel _includeSet_2)) - (terminal CODE "69" (seq "{" (range "^%\\] | '\\'[%\\] | UCHAR)* '%''}'"))) - (terminal REPEAT_RANGE "70" (seq "{" INTEGER (opt (seq "," (opt (alt INTEGER "*")))) "}")) - (terminal RDF_TYPE "71" (seq "a")) - (terminal IRIREF "72" - (seq "<" - (range - "^#x00-#x20<>\"{}|^`\\] | UCHAR)* '>' /* #x00=NULL #01-#x1F=control codes #x20=space */" - )) ) - (terminal PNAME_NS "73" (seq (opt PN_PREFIX) ":")) - (terminal PNAME_LN "74" (seq PNAME_NS PN_LOCAL)) - (terminal ATPNAME_NS "75" (seq "@" (opt PN_PREFIX) ":")) - (terminal ATPNAME_LN "76" (seq "@" PNAME_NS PN_LOCAL)) - (terminal BLANK_NODE_LABEL "77" + (terminal CODE "67" (seq "{" (range "^%\\] | '\\'[%\\] | UCHAR)* '%''}'"))) + (terminal REPEAT_RANGE "68" (seq "{" INTEGER (opt (seq "," (opt (alt INTEGER "*")))) "}")) + (terminal RDF_TYPE "69" (seq "a")) + (terminal ATPNAME_NS "70" (seq "@" (opt PN_PREFIX) ":")) + (terminal ATPNAME_LN "71" (seq "@" PNAME_NS PN_LOCAL)) + (terminal REGEXP "72" + (seq "/" + (plus (alt (range "^/\\\n\r") (seq "\\" (range "nrt\\|.?*+(){}$-[]^/")) UCHAR)) + "/" + (star (range "smix"))) ) + (terminal LANG_STRING_LITERAL1 "73" + (seq "'" (star (alt (range "^#x27#x5C#xA#xD") ECHAR UCHAR)) "'" LANGTAG)) + (terminal LANG_STRING_LITERAL2 "74" + (seq "\"" (star (alt (range "^#x22#x5C#xA#xD") ECHAR UCHAR)) "\"" LANGTAG)) + (terminal LANG_STRING_LITERAL_LONG1 "75" + (seq "'''" (seq (opt (alt "'" "''")) (range "^'\\] | ECHAR | UCHAR))* \"'''\" LANGTAG")))) + (terminal LANG_STRING_LITERAL_LONG2 "76" + (seq "\"\"\"" + (seq (opt (alt "\"" "\"\"")) (range "^\"\\] | ECHAR | UCHAR))* '\"\"\"' LANGTAG"))) ) + (rule _rdfLiteral_3 "129s.3" (seq "^^" datatype)) + (rule rdfLiteral "129s" (alt langString _rdfLiteral_1)) + (rule _rdfLiteral_1 "129s.1" (seq string _rdfLiteral_2)) + (rule _rdfLiteral_2 "129s.2" (cleanup opt) (alt _empty _rdfLiteral_3)) + (rule booleanLiteral "134s" (alt "true" "false")) + (rule string "135s" + (alt STRING_LITERAL1 STRING_LITERAL_LONG1 STRING_LITERAL2 STRING_LITERAL_LONG2)) + (rule iri "136s" (alt IRIREF prefixedName)) + (rule prefixedName "137s" (alt PNAME_LN PNAME_NS)) + (rule blankNode "138s" (seq BLANK_NODE_LABEL)) + (terminal PNAME_NS "140s" (seq (opt PN_PREFIX) ":")) + (terminal PNAME_LN "141s" (seq PNAME_NS PN_LOCAL)) + (terminal BLANK_NODE_LABEL "142s" (seq "_:" (alt PN_CHARS_U (range "0-9")) (opt (seq (star (alt PN_CHARS ".")) PN_CHARS)))) - (terminal LANGTAG "78" + (terminal LANGTAG "145s" (seq "@" (plus (range "a-zA-Z")) (star (seq "-" (plus (range "a-zA-Z0-9")))))) - (terminal INTEGER "79" (seq (opt (range "+-")) (plus (range "0-9")))) - (terminal DECIMAL "80" (seq (opt (range "+-")) (star (range "0-9")) "." (plus (range "0-9")))) - (terminal DOUBLE "81" - (seq - (opt (range "+-")) - (alt - (seq (plus (range "0-9")) "." (star (range "0-9")) EXPONENT) - (seq (opt ".") (plus (range "0-9")) EXPONENT)) )) - (terminal EXPONENT "82" (seq (range "eE") (opt (range "+-")) (plus (range "0-9")))) - (terminal STRING_LITERAL1 "83" + (terminal EXPONENT "155s" (seq (range "eE") (opt (range "+-")) (plus (range "0-9")))) + (terminal STRING_LITERAL1 "156s" (seq "'" (star (alt (range "^#x27#x5C#xA#xD") ECHAR UCHAR)) "'")) - (terminal LANG_STRING_LITERAL1 "83l" - (seq "'" (star (alt (range "^#x27#x5C#xA#xD") ECHAR UCHAR)) "'" LANGTAG)) - (terminal STRING_LITERAL2 "84" + (terminal STRING_LITERAL2 "157s" (seq "\"" (star (alt (range "^#x22#x5C#xA#xD") ECHAR UCHAR)) "\"")) - (terminal LANG_STRING_LITERAL2 "84l" - (seq "\"" (star (alt (range "^#x22#x5C#xA#xD") ECHAR UCHAR)) "\"" LANGTAG)) - (terminal STRING_LITERAL_LONG1 "85" + (terminal STRING_LITERAL_LONG1 "158s" (seq "'''" (seq (opt (alt "'" "''")) (range "^'\\] | ECHAR | UCHAR))* \"'''\"")))) - (terminal LANG_STRING_LITERAL_LONG1 "85l" - (seq "'''" (seq (opt (alt "'" "''")) (range "^'\\] | ECHAR | UCHAR))* \"'''\" LANGTAG")))) - (terminal STRING_LITERAL_LONG2 "86" + (terminal STRING_LITERAL_LONG2 "159s" (seq "\"\"\"" (seq (opt (alt "\"" "\"\"")) (range "^\"\\] | ECHAR | UCHAR))* '\"\"\"'")))) - (terminal LANG_STRING_LITERAL_LONG2 "86l" - (seq "\"\"\"" - (seq (opt (alt "\"" "\"\"")) (range "^\"\\] | ECHAR | UCHAR))* '\"\"\"' LANGTAG"))) ) - (terminal UCHAR "87" - (alt (seq "\\u" HEX HEX HEX HEX) (seq "\\U" HEX HEX HEX HEX HEX HEX HEX HEX))) - (terminal ECHAR "88" (seq "\\" (range "tbnrf\\\"'"))) - (terminal PN_CHARS_BASE "89" + (terminal ECHAR "160s" (seq "\\" (range "tbnrf\\\"'"))) + (terminal PN_CHARS_BASE "164s" (alt (range "A-Z") (range "a-z") @@ -331,22 +326,23 @@ (range "#xF900-#xFDCF") (range "#xFDF0-#xFFFD") (range "#x10000-#xEFFFF")) ) - (terminal PN_CHARS_U "90" (alt PN_CHARS_BASE "_")) - (terminal PN_CHARS "91" + (terminal PN_CHARS_U "165s" (alt PN_CHARS_BASE "_")) + (terminal PN_CHARS "167s" (alt PN_CHARS_U "-" (range "0-9") (range "#x00B7") (range "#x0300-#x036F") (range "#x203F-#x2040")) ) - (terminal PN_PREFIX "92" (seq PN_CHARS_BASE (opt (seq (star (alt PN_CHARS ".")) PN_CHARS)))) - (terminal PN_LOCAL "93" + (terminal PN_PREFIX "168s" + (seq PN_CHARS_BASE (opt (seq (star (alt PN_CHARS ".")) PN_CHARS)))) + (terminal PN_LOCAL "169s" (seq (alt PN_CHARS_U ":" (range "0-9") PLX) (opt (seq (star (alt PN_CHARS "." ":" PLX)) (alt PN_CHARS ":" PLX)))) ) - (terminal PLX "94" (alt PERCENT PN_LOCAL_ESC)) - (terminal PERCENT "95" (seq "%" HEX HEX)) - (terminal HEX "96" (alt (range "0-9") (range "A-F") (range "a-f"))) - (terminal PN_LOCAL_ESC "97" + (terminal PLX "170s" (alt PERCENT PN_LOCAL_ESC)) + (terminal PERCENT "171s" (seq "%" HEX HEX)) + (terminal HEX "172s" (alt (range "0-9") (range "A-F") (range "a-f"))) + (terminal PN_LOCAL_ESC "173s" (seq "\\" (alt "_" "~" "." "-" "!" "$" "&" "'" "(" ")" "*" "+" "," ";" "=" "/" "?" "#" "@" "%" )) )) diff --git a/lib/shex/meta.rb b/lib/shex/meta.rb index 33d5e67..10ecbed 100644 --- a/lib/shex/meta.rb +++ b/lib/shex/meta.rb @@ -138,7 +138,6 @@ module ShEx::Meta :RDF_TYPE => [:predicate, :_extraPropertySet_2], }, :_extraPropertySet_2 => { - "&" => [], "CLOSED" => [], "EXTRA" => [], :IRIREF => [:_extraPropertySet_3], @@ -192,33 +191,7 @@ module ShEx::Meta :include => { "&" => ["&", :shapeLabel], }, - :includeSet => { - "&" => ["&", :_includeSet_1], - }, - :_includeSet_1 => { - :BLANK_NODE_LABEL => [:shapeLabel, :_includeSet_2], - :IRIREF => [:shapeLabel, :_includeSet_2], - :PNAME_LN => [:shapeLabel, :_includeSet_2], - :PNAME_NS => [:shapeLabel, :_includeSet_2], - }, - :_includeSet_2 => { - "&" => [], - :BLANK_NODE_LABEL => [:_includeSet_3], - "CLOSED" => [], - "EXTRA" => [], - :IRIREF => [:_includeSet_3], - :PNAME_LN => [:_includeSet_3], - :PNAME_NS => [:_includeSet_3], - "{" => [], - }, - :_includeSet_3 => { - :BLANK_NODE_LABEL => [:shapeLabel, :_includeSet_2], - :IRIREF => [:shapeLabel, :_includeSet_2], - :PNAME_LN => [:shapeLabel, :_includeSet_2], - :PNAME_NS => [:shapeLabel, :_includeSet_2], - }, :inlineShapeAnd => { - "&" => [:inlineShapeNot, :_inlineShapeAnd_1], "(" => [:inlineShapeNot, :_inlineShapeAnd_1], "." => [:inlineShapeNot, :_inlineShapeAnd_1], "@" => [:inlineShapeNot, :_inlineShapeAnd_1], @@ -268,7 +241,6 @@ module ShEx::Meta "AND" => [:_inlineShapeAnd_2, :_inlineShapeAnd_1], }, :inlineShapeAtom => { - "&" => [:_inlineShapeAtom_2], "(" => [:_inlineShapeAtom_3], "." => ["."], "@" => [:_inlineShapeAtom_2], @@ -306,7 +278,6 @@ module ShEx::Meta :REGEXP => [:nonLitNodeConstraint, :_inlineShapeAtom_4], }, :_inlineShapeAtom_2 => { - "&" => [:inlineShapeOrRef, :_inlineShapeAtom_5], "@" => [:inlineShapeOrRef, :_inlineShapeAtom_5], :ATPNAME_LN => [:inlineShapeOrRef, :_inlineShapeAtom_5], :ATPNAME_NS => [:inlineShapeOrRef, :_inlineShapeAtom_5], @@ -319,7 +290,6 @@ module ShEx::Meta }, :_inlineShapeAtom_4 => { "%" => [], - "&" => [:inlineShapeOrRef], ")" => [], "*" => [], "+" => [], @@ -360,13 +330,11 @@ module ShEx::Meta "}" => [], }, :inlineShapeDefinition => { - "&" => [:_inlineShapeDefinition_1, "{", :_inlineShapeDefinition_2, "}"], "CLOSED" => [:_inlineShapeDefinition_1, "{", :_inlineShapeDefinition_2, "}"], "EXTRA" => [:_inlineShapeDefinition_1, "{", :_inlineShapeDefinition_2, "}"], "{" => [:_inlineShapeDefinition_1, "{", :_inlineShapeDefinition_2, "}"], }, :_inlineShapeDefinition_1 => { - "&" => [:_inlineShapeDefinition_4], "CLOSED" => [:_inlineShapeDefinition_4], "EXTRA" => [:_inlineShapeDefinition_4], "{" => [], @@ -383,17 +351,15 @@ module ShEx::Meta "}" => [], }, :_inlineShapeDefinition_3 => { - "&" => [:includeSet], "CLOSED" => ["CLOSED"], "EXTRA" => [:extraPropertySet], + :includeSet => [:includeSet], }, :_inlineShapeDefinition_4 => { - "&" => [:_inlineShapeDefinition_3, :_inlineShapeDefinition_1], "CLOSED" => [:_inlineShapeDefinition_3, :_inlineShapeDefinition_1], "EXTRA" => [:_inlineShapeDefinition_3, :_inlineShapeDefinition_1], }, :inlineShapeExpression => { - "&" => [:inlineShapeOr], "(" => [:inlineShapeOr], "." => [:inlineShapeOr], "@" => [:inlineShapeOr], @@ -423,7 +389,6 @@ module ShEx::Meta "{" => [:inlineShapeOr], }, :inlineShapeNot => { - "&" => [:_inlineShapeNot_1, :inlineShapeAtom], "(" => [:_inlineShapeNot_1, :inlineShapeAtom], "." => [:_inlineShapeNot_1, :inlineShapeAtom], "@" => [:_inlineShapeNot_1, :inlineShapeAtom], @@ -453,7 +418,6 @@ module ShEx::Meta "{" => [:_inlineShapeNot_1, :inlineShapeAtom], }, :_inlineShapeNot_1 => { - "&" => [], "(" => [], "." => [], "@" => [], @@ -483,7 +447,6 @@ module ShEx::Meta "{" => [], }, :inlineShapeOr => { - "&" => [:inlineShapeAnd, :_inlineShapeOr_1], "(" => [:inlineShapeAnd, :_inlineShapeOr_1], "." => [:inlineShapeAnd, :_inlineShapeOr_1], "@" => [:inlineShapeAnd, :_inlineShapeOr_1], @@ -513,7 +476,6 @@ module ShEx::Meta "{" => [:inlineShapeAnd, :_inlineShapeOr_1], }, :inlineShapeOrRef => { - "&" => [:inlineShapeDefinition], "@" => [:shapeRef], :ATPNAME_LN => [:shapeRef], :ATPNAME_NS => [:shapeRef], @@ -1035,7 +997,6 @@ module ShEx::Meta }, :_nonLitNodeConstraint_3 => { "%" => [], - "&" => [], ")" => [], "*" => [], "+" => [], @@ -1073,7 +1034,6 @@ module ShEx::Meta }, :_nonLitNodeConstraint_5 => { "%" => [], - "&" => [], ")" => [], "*" => [], "+" => [], @@ -1289,7 +1249,6 @@ module ShEx::Meta "^" => ["^"], }, :shapeAnd => { - "&" => [:shapeNot, :_shapeAnd_1], "(" => [:shapeNot, :_shapeAnd_1], "." => [:shapeNot, :_shapeAnd_1], "@" => [:shapeNot, :_shapeAnd_1], @@ -1337,7 +1296,6 @@ module ShEx::Meta "AND" => [:_shapeAnd_2, :_shapeAnd_1], }, :shapeAtom => { - "&" => [:_shapeAtom_2], "(" => [:_shapeAtom_3], "." => ["."], "@" => [:_shapeAtom_2], @@ -1366,7 +1324,6 @@ module ShEx::Meta "{" => [:_shapeAtom_2], }, :shapeAtomNoRef => { - "&" => [:_shapeAtomNoRef_2], "(" => [:_shapeAtomNoRef_3], "." => ["."], "BNODE" => [:_shapeAtomNoRef_1], @@ -1401,7 +1358,6 @@ module ShEx::Meta :REGEXP => [:nonLitNodeConstraint, :_shapeAtomNoRef_4], }, :_shapeAtomNoRef_2 => { - "&" => [:shapeDefinition, :_shapeAtomNoRef_5], "CLOSED" => [:shapeDefinition, :_shapeAtomNoRef_5], "EXTRA" => [:shapeDefinition, :_shapeAtomNoRef_5], "{" => [:shapeDefinition, :_shapeAtomNoRef_5], @@ -1410,7 +1366,6 @@ module ShEx::Meta "(" => ["(", :shapeExpression, ")"], }, :_shapeAtomNoRef_4 => { - "&" => [:shapeOrRef], ")" => [], "@" => [:shapeOrRef], "AND" => [], @@ -1457,7 +1412,6 @@ module ShEx::Meta :REGEXP => [:nonLitNodeConstraint, :_shapeAtom_4], }, :_shapeAtom_2 => { - "&" => [:shapeOrRef, :_shapeAtom_5], "@" => [:shapeOrRef, :_shapeAtom_5], :ATPNAME_LN => [:shapeOrRef, :_shapeAtom_5], :ATPNAME_NS => [:shapeOrRef, :_shapeAtom_5], @@ -1469,7 +1423,6 @@ module ShEx::Meta "(" => ["(", :shapeExpression, ")"], }, :_shapeAtom_4 => { - "&" => [:shapeOrRef], ")" => [], "@" => [:shapeOrRef], "AND" => [], @@ -1507,13 +1460,11 @@ module ShEx::Meta "START" => [], }, :shapeDefinition => { - "&" => [:_shapeDefinition_1, "{", :_shapeDefinition_2, "}", :_shapeDefinition_3, :semanticActions], "CLOSED" => [:_shapeDefinition_1, "{", :_shapeDefinition_2, "}", :_shapeDefinition_3, :semanticActions], "EXTRA" => [:_shapeDefinition_1, "{", :_shapeDefinition_2, "}", :_shapeDefinition_3, :semanticActions], "{" => [:_shapeDefinition_1, "{", :_shapeDefinition_2, "}", :_shapeDefinition_3, :semanticActions], }, :_shapeDefinition_1 => { - "&" => [:_shapeDefinition_5], "CLOSED" => [:_shapeDefinition_5], "EXTRA" => [:_shapeDefinition_5], "{" => [], @@ -1551,12 +1502,11 @@ module ShEx::Meta "START" => [], }, :_shapeDefinition_4 => { - "&" => [:includeSet], "CLOSED" => ["CLOSED"], "EXTRA" => [:extraPropertySet], + :includeSet => [:includeSet], }, :_shapeDefinition_5 => { - "&" => [:_shapeDefinition_4, :_shapeDefinition_1], "CLOSED" => [:_shapeDefinition_4, :_shapeDefinition_1], "EXTRA" => [:_shapeDefinition_4, :_shapeDefinition_1], }, @@ -1570,7 +1520,6 @@ module ShEx::Meta :PNAME_NS => [:shapeLabel, :_shapeExprDecl_1], }, :_shapeExprDecl_1 => { - "&" => [:shapeExpression], "(" => [:shapeExpression], "." => [:shapeExpression], "@" => [:shapeExpression], @@ -1601,7 +1550,6 @@ module ShEx::Meta "{" => [:shapeExpression], }, :shapeExpression => { - "&" => [:_shapeExpression_1], "(" => [:_shapeExpression_1], "." => [:_shapeExpression_1], "@" => [:_shapeExpression_3], @@ -1631,7 +1579,6 @@ module ShEx::Meta "{" => [:_shapeExpression_1], }, :_shapeExpression_1 => { - "&" => [:shapeAtomNoRef, :_shapeExpression_4], "(" => [:shapeAtomNoRef, :_shapeExpression_4], "." => [:shapeAtomNoRef, :_shapeExpression_4], "BNODE" => [:shapeAtomNoRef, :_shapeExpression_4], @@ -1677,7 +1624,6 @@ module ShEx::Meta "START" => [], }, :_shapeExpression_5 => { - "&" => [:shapeAtomNoRef], "(" => [:shapeAtomNoRef], "." => [:shapeAtomNoRef], "@" => [:shapeRef], @@ -1724,7 +1670,6 @@ module ShEx::Meta :PNAME_NS => [:iri], }, :shapeNot => { - "&" => [:_shapeNot_1, :shapeAtom], "(" => [:_shapeNot_1, :shapeAtom], "." => [:_shapeNot_1, :shapeAtom], "@" => [:_shapeNot_1, :shapeAtom], @@ -1754,7 +1699,6 @@ module ShEx::Meta "{" => [:_shapeNot_1, :shapeAtom], }, :_shapeNot_1 => { - "&" => [], "(" => [], "." => [], "@" => [], @@ -1829,7 +1773,6 @@ module ShEx::Meta "AND" => [:_shapeOrB_1, :_shapeOrB_2], }, :shapeOrRef => { - "&" => [:shapeDefinition], "@" => [:shapeRef], :ATPNAME_LN => [:shapeRef], :ATPNAME_NS => [:shapeRef], @@ -1945,7 +1888,6 @@ module ShEx::Meta "%" => [:codeDecl, :_startActions_1], }, :_start_1 => { - "&" => [], "(" => [], "." => [], "@" => [], @@ -1975,7 +1917,6 @@ module ShEx::Meta "{" => [], }, :_start_2 => { - "&" => [:shapeAtomNoRef], "(" => [:shapeAtomNoRef], "." => [:shapeAtomNoRef], "@" => [:shapeRef], @@ -2132,26 +2073,7 @@ module ShEx::Meta "[" => ["[", :_valueSet_1, "]"], }, :valueSetValue => { - "." => [:_valueSetValue_2], - :DECIMAL => [:_valueSetValue_1], - :DOUBLE => [:_valueSetValue_1], - :INTEGER => [:_valueSetValue_1], - :IRIREF => [:_valueSetValue_1], - :LANGTAG => [:_valueSetValue_1], - :LANG_STRING_LITERAL1 => [:_valueSetValue_1], - :LANG_STRING_LITERAL2 => [:_valueSetValue_1], - :LANG_STRING_LITERAL_LONG1 => [:_valueSetValue_1], - :LANG_STRING_LITERAL_LONG2 => [:_valueSetValue_1], - :PNAME_LN => [:_valueSetValue_1], - :PNAME_NS => [:_valueSetValue_1], - :STRING_LITERAL1 => [:_valueSetValue_1], - :STRING_LITERAL2 => [:_valueSetValue_1], - :STRING_LITERAL_LONG1 => [:_valueSetValue_1], - :STRING_LITERAL_LONG2 => [:_valueSetValue_1], - "false" => [:_valueSetValue_1], - "true" => [:_valueSetValue_1], - }, - :_valueSetValue_1 => { + "." => [:_valueSetValue_1], :DECIMAL => [:literalRange], :DOUBLE => [:literalRange], :INTEGER => [:literalRange], @@ -2170,14 +2092,14 @@ module ShEx::Meta "false" => [:literalRange], "true" => [:literalRange], }, + :_valueSetValue_1 => { + "." => [".", :_valueSetValue_2], + }, :_valueSetValue_2 => { - "." => [".", :_valueSetValue_3], + "-" => [:exclusion, :_valueSetValue_3], }, :_valueSetValue_3 => { - "-" => [:exclusion, :_valueSetValue_4], - }, - :_valueSetValue_4 => { - "-" => [:_valueSetValue_5], + "-" => [:_valueSetValue_4], "." => [], :DECIMAL => [], :DOUBLE => [], @@ -2198,8 +2120,8 @@ module ShEx::Meta "false" => [], "true" => [], }, - :_valueSetValue_5 => { - "-" => [:exclusion, :_valueSetValue_4], + :_valueSetValue_4 => { + "-" => [:exclusion, :_valueSetValue_3], }, :_valueSet_1 => { "." => [:_valueSet_2], @@ -2564,41 +2486,6 @@ module ShEx::Meta :PNAME_NS], :include => [ "&"], - :includeSet => [ - "&"], - :_includeSet_1 => [ - :IRIREF, - :BLANK_NODE_LABEL, - :PNAME_LN, - :PNAME_NS], - :_includeSet_2 => [ - :_eps, - :IRIREF, - :BLANK_NODE_LABEL, - :PNAME_LN, - :PNAME_NS], - :_includeSet_3 => [ - :IRIREF, - :BLANK_NODE_LABEL, - :PNAME_LN, - :PNAME_NS], - :_includeSet_4 => [ - :IRIREF, - :BLANK_NODE_LABEL, - :PNAME_LN, - :PNAME_NS], - :_includeSet_5 => [ - :_eps, - :IRIREF, - :BLANK_NODE_LABEL, - :PNAME_LN, - :PNAME_NS], - :_includeSet_6 => [ - :_eps, - :IRIREF, - :BLANK_NODE_LABEL, - :PNAME_LN, - :PNAME_NS], :_include_1 => [ :IRIREF, :BLANK_NODE_LABEL, @@ -2631,7 +2518,6 @@ module ShEx::Meta "MINLENGTH", "MAXLENGTH", "CLOSED", - "&", "EXTRA"], :_inlineShapeAnd_1 => [ :_eps, @@ -2673,7 +2559,6 @@ module ShEx::Meta "MINLENGTH", "MAXLENGTH", "CLOSED", - "&", "EXTRA"], :inlineShapeAtom => [ ".", @@ -2701,7 +2586,6 @@ module ShEx::Meta "MINLENGTH", "MAXLENGTH", "CLOSED", - "&", "EXTRA"], :_inlineShapeAtom_1 => [ "IRI", @@ -2717,7 +2601,6 @@ module ShEx::Meta "@", "{", "CLOSED", - "&", "EXTRA"], :_inlineShapeAtom_3 => [ "("], @@ -2728,7 +2611,6 @@ module ShEx::Meta "@", "{", "CLOSED", - "&", "EXTRA"], :_inlineShapeAtom_5 => [ :_eps, @@ -2746,7 +2628,6 @@ module ShEx::Meta "@", "{", "CLOSED", - "&", "EXTRA"], :_inlineShapeAtom_7 => [ :_eps, @@ -2784,19 +2665,16 @@ module ShEx::Meta "LENGTH", "MINLENGTH", "MAXLENGTH", - "&", "EXTRA"], :_inlineShapeAtom_9 => [ ")"], :inlineShapeDefinition => [ "{", "CLOSED", - "&", "EXTRA"], :_inlineShapeDefinition_1 => [ :_eps, "CLOSED", - "&", "EXTRA"], :_inlineShapeDefinition_2 => [ :_eps, @@ -2810,18 +2688,15 @@ module ShEx::Meta :PNAME_NS], :_inlineShapeDefinition_3 => [ "CLOSED", - "&", "EXTRA"], :_inlineShapeDefinition_4 => [ "CLOSED", - "&", "EXTRA"], :_inlineShapeDefinition_5 => [ "{"], :_inlineShapeDefinition_6 => [ :_eps, "CLOSED", - "&", "EXTRA"], :_inlineShapeDefinition_7 => [ "}", @@ -2862,7 +2737,6 @@ module ShEx::Meta "MINLENGTH", "MAXLENGTH", "CLOSED", - "&", "EXTRA"], :inlineShapeNot => [ "NOT", @@ -2891,7 +2765,6 @@ module ShEx::Meta "MINLENGTH", "MAXLENGTH", "CLOSED", - "&", "EXTRA"], :_inlineShapeNot_1 => [ "NOT", @@ -2922,7 +2795,6 @@ module ShEx::Meta "MINLENGTH", "MAXLENGTH", "CLOSED", - "&", "EXTRA"], :inlineShapeOr => [ "NOT", @@ -2951,7 +2823,6 @@ module ShEx::Meta "MINLENGTH", "MAXLENGTH", "CLOSED", - "&", "EXTRA"], :inlineShapeOrRef => [ :ATPNAME_LN, @@ -2959,7 +2830,6 @@ module ShEx::Meta "@", "{", "CLOSED", - "&", "EXTRA"], :_inlineShapeOr_1 => [ :_eps, @@ -3001,7 +2871,6 @@ module ShEx::Meta "MINLENGTH", "MAXLENGTH", "CLOSED", - "&", "EXTRA"], :iri => [ :IRIREF, @@ -3570,7 +3439,6 @@ module ShEx::Meta "MINLENGTH", "MAXLENGTH", "CLOSED", - "&", "EXTRA"], :_shapeAnd_1 => [ :_eps, @@ -3612,7 +3480,6 @@ module ShEx::Meta "MINLENGTH", "MAXLENGTH", "CLOSED", - "&", "EXTRA"], :shapeAtom => [ ".", @@ -3640,7 +3507,6 @@ module ShEx::Meta "MINLENGTH", "MAXLENGTH", "CLOSED", - "&", "EXTRA"], :shapeAtomNoRef => [ ".", @@ -3665,7 +3531,6 @@ module ShEx::Meta "LENGTH", "MINLENGTH", "MAXLENGTH", - "&", "EXTRA"], :_shapeAtomNoRef_1 => [ "IRI", @@ -3678,7 +3543,6 @@ module ShEx::Meta :_shapeAtomNoRef_2 => [ "{", "CLOSED", - "&", "EXTRA"], :_shapeAtomNoRef_3 => [ "("], @@ -3689,7 +3553,6 @@ module ShEx::Meta "@", "{", "CLOSED", - "&", "EXTRA"], :_shapeAtomNoRef_5 => [ :_eps, @@ -3707,7 +3570,6 @@ module ShEx::Meta "@", "{", "CLOSED", - "&", "EXTRA"], :_shapeAtomNoRef_7 => [ :_eps, @@ -3745,7 +3607,6 @@ module ShEx::Meta "LENGTH", "MINLENGTH", "MAXLENGTH", - "&", "EXTRA"], :_shapeAtomNoRef_9 => [ ")"], @@ -3763,7 +3624,6 @@ module ShEx::Meta "@", "{", "CLOSED", - "&", "EXTRA"], :_shapeAtom_3 => [ "("], @@ -3774,7 +3634,6 @@ module ShEx::Meta "@", "{", "CLOSED", - "&", "EXTRA"], :_shapeAtom_5 => [ :_eps, @@ -3792,7 +3651,6 @@ module ShEx::Meta "@", "{", "CLOSED", - "&", "EXTRA"], :_shapeAtom_7 => [ :_eps, @@ -3830,19 +3688,16 @@ module ShEx::Meta "LENGTH", "MINLENGTH", "MAXLENGTH", - "&", "EXTRA"], :_shapeAtom_9 => [ ")"], :shapeDefinition => [ "{", "CLOSED", - "&", "EXTRA"], :_shapeDefinition_1 => [ :_eps, "CLOSED", - "&", "EXTRA"], :_shapeDefinition_10 => [ "}", @@ -3875,11 +3730,9 @@ module ShEx::Meta "//"], :_shapeDefinition_4 => [ "CLOSED", - "&", "EXTRA"], :_shapeDefinition_5 => [ "CLOSED", - "&", "EXTRA"], :_shapeDefinition_6 => [ "//"], @@ -3888,7 +3741,6 @@ module ShEx::Meta :_shapeDefinition_8 => [ :_eps, "CLOSED", - "&", "EXTRA"], :_shapeDefinition_9 => [ :_eps, @@ -3926,7 +3778,6 @@ module ShEx::Meta "LENGTH", "MINLENGTH", "MAXLENGTH", - "&", "EXTRA"], :_shapeExprDecl_2 => [ "EXTERNAL", @@ -3956,7 +3807,6 @@ module ShEx::Meta "LENGTH", "MINLENGTH", "MAXLENGTH", - "&", "EXTRA"], :shapeExpression => [ "NOT", @@ -3985,7 +3835,6 @@ module ShEx::Meta "LENGTH", "MINLENGTH", "MAXLENGTH", - "&", "EXTRA"], :_shapeExpression_1 => [ ".", @@ -4010,7 +3859,6 @@ module ShEx::Meta "LENGTH", "MINLENGTH", "MAXLENGTH", - "&", "EXTRA"], :_shapeExpression_10 => [ :_eps, @@ -4052,7 +3900,6 @@ module ShEx::Meta "LENGTH", "MINLENGTH", "MAXLENGTH", - "&", "EXTRA"], :_shapeExpression_6 => [ :_eps, @@ -4088,7 +3935,6 @@ module ShEx::Meta "LENGTH", "MINLENGTH", "MAXLENGTH", - "&", "EXTRA"], :_shapeExpression_9 => [ "OR", @@ -4125,7 +3971,6 @@ module ShEx::Meta "MINLENGTH", "MAXLENGTH", "CLOSED", - "&", "EXTRA"], :_shapeNot_1 => [ "NOT", @@ -4156,7 +4001,6 @@ module ShEx::Meta "MINLENGTH", "MAXLENGTH", "CLOSED", - "&", "EXTRA"], :shapeOr => [ "OR", @@ -4203,7 +4047,6 @@ module ShEx::Meta "MINLENGTH", "MAXLENGTH", "CLOSED", - "&", "EXTRA"], :shapeOrB => [ "AND"], @@ -4247,7 +4090,6 @@ module ShEx::Meta "MINLENGTH", "MAXLENGTH", "CLOSED", - "&", "EXTRA"], :shapeOrRef => [ :ATPNAME_LN, @@ -4255,7 +4097,6 @@ module ShEx::Meta "@", "{", "CLOSED", - "&", "EXTRA"], :_shapeOr_1 => [ "AND"], @@ -4406,7 +4247,6 @@ module ShEx::Meta "LENGTH", "MINLENGTH", "MAXLENGTH", - "&", "EXTRA"], :_start_3 => [ :_eps, @@ -4441,7 +4281,6 @@ module ShEx::Meta "LENGTH", "MINLENGTH", "MAXLENGTH", - "&", "EXTRA"], :_start_6 => [ ".", @@ -4469,7 +4308,6 @@ module ShEx::Meta "LENGTH", "MINLENGTH", "MAXLENGTH", - "&", "EXTRA"], :_start_7 => [ :_eps, @@ -4558,7 +4396,6 @@ module ShEx::Meta "MINLENGTH", "MAXLENGTH", "CLOSED", - "&", "EXTRA"], :_tripleConstraint_8 => [ "*", @@ -4618,8 +4455,8 @@ module ShEx::Meta :valueSet => [ "["], :valueSetValue => [ - ".", :LANGTAG, + ".", :IRIREF, :PNAME_LN, :PNAME_NS, @@ -4637,44 +4474,26 @@ module ShEx::Meta :STRING_LITERAL2, :STRING_LITERAL_LONG2], :_valueSetValue_1 => [ - :LANGTAG, - :IRIREF, - :PNAME_LN, - :PNAME_NS, - :INTEGER, - :DECIMAL, - :DOUBLE, - "true", - "false", - :LANG_STRING_LITERAL1, - :LANG_STRING_LITERAL_LONG1, - :LANG_STRING_LITERAL2, - :LANG_STRING_LITERAL_LONG2, - :STRING_LITERAL1, - :STRING_LITERAL_LONG1, - :STRING_LITERAL2, - :STRING_LITERAL_LONG2], - :_valueSetValue_2 => [ "."], + :_valueSetValue_2 => [ + "-"], :_valueSetValue_3 => [ + :_eps, "-"], :_valueSetValue_4 => [ - :_eps, "-"], :_valueSetValue_5 => [ "-"], :_valueSetValue_6 => [ - "-"], - :_valueSetValue_7 => [ :_eps, "-"], - :_valueSetValue_8 => [ + :_valueSetValue_7 => [ :_eps, "-"], :_valueSet_1 => [ :_eps, - ".", :LANGTAG, + ".", :IRIREF, :PNAME_LN, :PNAME_NS, @@ -4692,8 +4511,8 @@ module ShEx::Meta :STRING_LITERAL2, :STRING_LITERAL_LONG2], :_valueSet_2 => [ - ".", :LANGTAG, + ".", :IRIREF, :PNAME_LN, :PNAME_NS, @@ -4712,8 +4531,8 @@ module ShEx::Meta :STRING_LITERAL_LONG2], :_valueSet_3 => [ "]", - ".", :LANGTAG, + ".", :IRIREF, :PNAME_LN, :PNAME_NS, @@ -4732,8 +4551,8 @@ module ShEx::Meta :STRING_LITERAL_LONG2], :_valueSet_4 => [ :_eps, - ".", :LANGTAG, + ".", :IRIREF, :PNAME_LN, :PNAME_NS, @@ -4887,9 +4706,6 @@ module ShEx::Meta ")", "}", "NOT", - :IRIREF, - :BLANK_NODE_LABEL, - "{", :_eof, "OR", ";", @@ -4899,9 +4715,7 @@ module ShEx::Meta :ATPNAME_NS, "^", :RDF_TYPE, - :PNAME_LN, - :PNAME_NS, - "CLOSED", + :IRIREF, "AND", "IRI", "BNODE", @@ -4912,8 +4726,8 @@ module ShEx::Meta "?", :REPEAT_RANGE, "@", - "&", - "EXTRA", + :PNAME_LN, + :PNAME_NS, "BASE", "PREFIX", "START", @@ -4924,24 +4738,35 @@ module ShEx::Meta "//", "%", "[", + :BLANK_NODE_LABEL, + "{", "MININCLUSIVE", "MINEXCLUSIVE", "MAXINCLUSIVE", "MAXEXCLUSIVE", "TOTALDIGITS", - "FRACTIONDIGITS"], + "FRACTIONDIGITS", + "CLOSED", + "EXTRA"], :booleanLiteral => [ "~", "]", "-", + :LANGTAG, ".", "//", ")", - :LANGTAG, + :IRIREF, "%", :_eof, "}", - :IRIREF, + :PNAME_LN, + :PNAME_NS, + :INTEGER, + :DECIMAL, + :DOUBLE, + "true", + "false", "IRI", "BNODE", "NONLITERAL", @@ -4950,27 +4775,20 @@ module ShEx::Meta "AND", ";", "|", - :PNAME_LN, - :PNAME_NS, - :INTEGER, - :DECIMAL, - :DOUBLE, - "true", - "false", - "BASE", - "PREFIX", - "START", :LANG_STRING_LITERAL1, :LANG_STRING_LITERAL_LONG1, :LANG_STRING_LITERAL2, :LANG_STRING_LITERAL_LONG2, - "LENGTH", - "MINLENGTH", - "MAXLENGTH", + "BASE", + "PREFIX", + "START", :STRING_LITERAL1, :STRING_LITERAL_LONG1, :STRING_LITERAL2, :STRING_LITERAL_LONG2, + "LENGTH", + "MINLENGTH", + "MAXLENGTH", :BLANK_NODE_LABEL], :bracketedTripleExpr => [ ")", @@ -5138,6 +4956,7 @@ module ShEx::Meta "START", "}", "-", + :LANGTAG, ".", "//", "LENGTH", @@ -5152,12 +4971,8 @@ module ShEx::Meta "%", ";", "|", - :LANGTAG, :IRIREF, :BLANK_NODE_LABEL, - "IRI", - "BNODE", - "NONLITERAL", :PNAME_LN, :PNAME_NS, :INTEGER, @@ -5165,6 +4980,9 @@ module ShEx::Meta :DOUBLE, "true", "false", + "IRI", + "BNODE", + "NONLITERAL", :LANG_STRING_LITERAL1, :LANG_STRING_LITERAL_LONG1, :LANG_STRING_LITERAL2, @@ -5186,8 +5004,8 @@ module ShEx::Meta :exclusion => [ "-", "]", - ".", :LANGTAG, + ".", :IRIREF, :PNAME_LN, :PNAME_NS, @@ -5208,8 +5026,8 @@ module ShEx::Meta "~", "-", "]", - ".", :LANGTAG, + ".", :IRIREF, :PNAME_LN, :PNAME_NS, @@ -5229,8 +5047,8 @@ module ShEx::Meta :_exclusion_2 => [ "-", "]", - ".", :LANGTAG, + ".", :IRIREF, :PNAME_LN, :PNAME_NS, @@ -5250,8 +5068,8 @@ module ShEx::Meta :_exclusion_3 => [ "-", "]", - ".", :LANGTAG, + ".", :IRIREF, :PNAME_LN, :PNAME_NS, @@ -5271,8 +5089,8 @@ module ShEx::Meta :_exclusion_4 => [ "-", "]", - ".", :LANGTAG, + ".", :IRIREF, :PNAME_LN, :PNAME_NS, @@ -5292,37 +5110,30 @@ module ShEx::Meta :extraPropertySet => [ "{", "CLOSED", - "&", "EXTRA"], :_extraPropertySet_1 => [ "{", "CLOSED", - "&", "EXTRA"], :_extraPropertySet_2 => [ "{", "CLOSED", - "&", "EXTRA"], :_extraPropertySet_3 => [ "{", "CLOSED", - "&", "EXTRA"], :_extraPropertySet_4 => [ "{", "CLOSED", - "&", "EXTRA"], :_extraPropertySet_5 => [ "{", "CLOSED", - "&", "EXTRA"], :_extraPropertySet_6 => [ "{", "CLOSED", - "&", "EXTRA"], :groupTripleExpr => [ ")", @@ -5364,41 +5175,6 @@ module ShEx::Meta "}", ";", "|"], - :includeSet => [ - "{", - "CLOSED", - "&", - "EXTRA"], - :_includeSet_1 => [ - "{", - "CLOSED", - "&", - "EXTRA"], - :_includeSet_2 => [ - "{", - "CLOSED", - "&", - "EXTRA"], - :_includeSet_3 => [ - "{", - "CLOSED", - "&", - "EXTRA"], - :_includeSet_4 => [ - "{", - "CLOSED", - "&", - "EXTRA"], - :_includeSet_5 => [ - "{", - "CLOSED", - "&", - "EXTRA"], - :_includeSet_6 => [ - "{", - "CLOSED", - "&", - "EXTRA"], :_include_1 => [ ")", "}", @@ -5647,7 +5423,6 @@ module ShEx::Meta :_inlineShapeDefinition_3 => [ "{", "CLOSED", - "&", "EXTRA"], :_inlineShapeDefinition_4 => [ "{"], @@ -5763,7 +5538,6 @@ module ShEx::Meta "MINLENGTH", "MAXLENGTH", "CLOSED", - "&", "EXTRA"], :_inlineShapeNot_2 => [ "AND", @@ -5892,6 +5666,7 @@ module ShEx::Meta "}", "NOT", "-", + :LANGTAG, ".", "//", :PNAME_LN, @@ -5909,18 +5684,15 @@ module ShEx::Meta "+", "?", :REPEAT_RANGE, - :BLANK_NODE_LABEL, ";", "|", :ATPNAME_LN, :ATPNAME_NS, "^", - :LANGTAG, :LANG_STRING_LITERAL1, :LANG_STRING_LITERAL_LONG1, :LANG_STRING_LITERAL2, :LANG_STRING_LITERAL_LONG2, - "&", "EXTRA", "BASE", "PREFIX", @@ -5943,12 +5715,13 @@ module ShEx::Meta "TOTALDIGITS", "FRACTIONDIGITS", "LITERAL", + :BLANK_NODE_LABEL, "["], :iriExclusion => [ "-", "]", - ".", :LANGTAG, + ".", :IRIREF, :PNAME_LN, :PNAME_NS, @@ -5968,8 +5741,8 @@ module ShEx::Meta :_iriExclusion_1 => [ "-", "]", - ".", :LANGTAG, + ".", :IRIREF, :PNAME_LN, :PNAME_NS, @@ -5989,8 +5762,8 @@ module ShEx::Meta :_iriExclusion_2 => [ "-", "]", - ".", :LANGTAG, + ".", :IRIREF, :PNAME_LN, :PNAME_NS, @@ -6010,8 +5783,8 @@ module ShEx::Meta :_iriExclusion_3 => [ "-", "]", - ".", :LANGTAG, + ".", :IRIREF, :PNAME_LN, :PNAME_NS, @@ -6030,8 +5803,8 @@ module ShEx::Meta :STRING_LITERAL_LONG2], :iriRange => [ "]", - ".", :LANGTAG, + ".", :IRIREF, :PNAME_LN, :PNAME_NS, @@ -6050,8 +5823,8 @@ module ShEx::Meta :STRING_LITERAL_LONG2], :_iriRange_1 => [ "]", - ".", :LANGTAG, + ".", :IRIREF, :PNAME_LN, :PNAME_NS, @@ -6070,8 +5843,8 @@ module ShEx::Meta :STRING_LITERAL_LONG2], :_iriRange_2 => [ "]", - ".", :LANGTAG, + ".", :IRIREF, :PNAME_LN, :PNAME_NS, @@ -6090,8 +5863,8 @@ module ShEx::Meta :STRING_LITERAL_LONG2], :_iriRange_3 => [ "]", - ".", :LANGTAG, + ".", :IRIREF, :PNAME_LN, :PNAME_NS, @@ -6110,8 +5883,8 @@ module ShEx::Meta :STRING_LITERAL_LONG2], :_iriRange_4 => [ "]", - ".", :LANGTAG, + ".", :IRIREF, :PNAME_LN, :PNAME_NS, @@ -6130,8 +5903,8 @@ module ShEx::Meta :STRING_LITERAL_LONG2], :_iriRange_5 => [ "]", - ".", :LANGTAG, + ".", :IRIREF, :PNAME_LN, :PNAME_NS, @@ -6150,8 +5923,8 @@ module ShEx::Meta :STRING_LITERAL_LONG2], :_iriRange_6 => [ "]", - ".", :LANGTAG, + ".", :IRIREF, :PNAME_LN, :PNAME_NS, @@ -6170,8 +5943,8 @@ module ShEx::Meta :STRING_LITERAL_LONG2], :_iriRange_7 => [ "]", - ".", :LANGTAG, + ".", :IRIREF, :PNAME_LN, :PNAME_NS, @@ -6192,14 +5965,21 @@ module ShEx::Meta "~", "]", "-", + :LANGTAG, ".", "//", ")", - :LANGTAG, + :IRIREF, "%", :_eof, "}", - :IRIREF, + :PNAME_LN, + :PNAME_NS, + :INTEGER, + :DECIMAL, + :DOUBLE, + "true", + "false", "IRI", "BNODE", "NONLITERAL", @@ -6208,33 +5988,26 @@ module ShEx::Meta "AND", ";", "|", - :PNAME_LN, - :PNAME_NS, - :INTEGER, - :DECIMAL, - :DOUBLE, - "true", - "false", - "BASE", - "PREFIX", - "START", :LANG_STRING_LITERAL1, :LANG_STRING_LITERAL_LONG1, :LANG_STRING_LITERAL2, :LANG_STRING_LITERAL_LONG2, - "LENGTH", - "MINLENGTH", - "MAXLENGTH", + "BASE", + "PREFIX", + "START", :STRING_LITERAL1, :STRING_LITERAL_LONG1, :STRING_LITERAL2, :STRING_LITERAL_LONG2, + "LENGTH", + "MINLENGTH", + "MAXLENGTH", :BLANK_NODE_LABEL], :languageExclusion => [ "-", "]", - ".", :LANGTAG, + ".", :IRIREF, :PNAME_LN, :PNAME_NS, @@ -6254,8 +6027,8 @@ module ShEx::Meta :_languageExclusion_1 => [ "-", "]", - ".", :LANGTAG, + ".", :IRIREF, :PNAME_LN, :PNAME_NS, @@ -6275,8 +6048,8 @@ module ShEx::Meta :_languageExclusion_2 => [ "-", "]", - ".", :LANGTAG, + ".", :IRIREF, :PNAME_LN, :PNAME_NS, @@ -6296,8 +6069,8 @@ module ShEx::Meta :_languageExclusion_3 => [ "-", "]", - ".", :LANGTAG, + ".", :IRIREF, :PNAME_LN, :PNAME_NS, @@ -6316,8 +6089,8 @@ module ShEx::Meta :STRING_LITERAL_LONG2], :languageRange => [ "]", - ".", :LANGTAG, + ".", :IRIREF, :PNAME_LN, :PNAME_NS, @@ -6336,8 +6109,8 @@ module ShEx::Meta :STRING_LITERAL_LONG2], :_languageRange_1 => [ "]", - ".", :LANGTAG, + ".", :IRIREF, :PNAME_LN, :PNAME_NS, @@ -6356,8 +6129,8 @@ module ShEx::Meta :STRING_LITERAL_LONG2], :_languageRange_2 => [ "]", - ".", :LANGTAG, + ".", :IRIREF, :PNAME_LN, :PNAME_NS, @@ -6376,8 +6149,8 @@ module ShEx::Meta :STRING_LITERAL_LONG2], :_languageRange_3 => [ "]", - ".", :LANGTAG, + ".", :IRIREF, :PNAME_LN, :PNAME_NS, @@ -6396,8 +6169,8 @@ module ShEx::Meta :STRING_LITERAL_LONG2], :_languageRange_4 => [ "]", - ".", :LANGTAG, + ".", :IRIREF, :PNAME_LN, :PNAME_NS, @@ -6416,8 +6189,8 @@ module ShEx::Meta :STRING_LITERAL_LONG2], :_languageRange_5 => [ "]", - ".", :LANGTAG, + ".", :IRIREF, :PNAME_LN, :PNAME_NS, @@ -6436,8 +6209,8 @@ module ShEx::Meta :STRING_LITERAL_LONG2], :_languageRange_6 => [ "]", - ".", :LANGTAG, + ".", :IRIREF, :PNAME_LN, :PNAME_NS, @@ -6456,8 +6229,8 @@ module ShEx::Meta :STRING_LITERAL_LONG2], :_languageRange_7 => [ "]", - ".", :LANGTAG, + ".", :IRIREF, :PNAME_LN, :PNAME_NS, @@ -6919,14 +6692,21 @@ module ShEx::Meta "~", "]", "-", + :LANGTAG, ".", "//", ")", - :LANGTAG, + :IRIREF, "%", :_eof, "}", - :IRIREF, + :PNAME_LN, + :PNAME_NS, + :INTEGER, + :DECIMAL, + :DOUBLE, + "true", + "false", "IRI", "BNODE", "NONLITERAL", @@ -6935,33 +6715,26 @@ module ShEx::Meta "AND", ";", "|", - :PNAME_LN, - :PNAME_NS, - :INTEGER, - :DECIMAL, - :DOUBLE, - "true", - "false", - "BASE", - "PREFIX", - "START", :LANG_STRING_LITERAL1, :LANG_STRING_LITERAL_LONG1, :LANG_STRING_LITERAL2, :LANG_STRING_LITERAL_LONG2, - "LENGTH", - "MINLENGTH", - "MAXLENGTH", + "BASE", + "PREFIX", + "START", :STRING_LITERAL1, :STRING_LITERAL_LONG1, :STRING_LITERAL2, :STRING_LITERAL_LONG2, + "LENGTH", + "MINLENGTH", + "MAXLENGTH", :BLANK_NODE_LABEL], :literalExclusion => [ "-", "]", - ".", :LANGTAG, + ".", :IRIREF, :PNAME_LN, :PNAME_NS, @@ -6981,8 +6754,8 @@ module ShEx::Meta :_literalExclusion_1 => [ "-", "]", - ".", :LANGTAG, + ".", :IRIREF, :PNAME_LN, :PNAME_NS, @@ -7002,8 +6775,8 @@ module ShEx::Meta :_literalExclusion_2 => [ "-", "]", - ".", :LANGTAG, + ".", :IRIREF, :PNAME_LN, :PNAME_NS, @@ -7023,8 +6796,8 @@ module ShEx::Meta :_literalExclusion_3 => [ "-", "]", - ".", :LANGTAG, + ".", :IRIREF, :PNAME_LN, :PNAME_NS, @@ -7043,8 +6816,8 @@ module ShEx::Meta :STRING_LITERAL_LONG2], :literalRange => [ "]", - ".", :LANGTAG, + ".", :IRIREF, :PNAME_LN, :PNAME_NS, @@ -7063,8 +6836,8 @@ module ShEx::Meta :STRING_LITERAL_LONG2], :_literalRange_1 => [ "]", - ".", :LANGTAG, + ".", :IRIREF, :PNAME_LN, :PNAME_NS, @@ -7083,8 +6856,8 @@ module ShEx::Meta :STRING_LITERAL_LONG2], :_literalRange_2 => [ "]", - ".", :LANGTAG, + ".", :IRIREF, :PNAME_LN, :PNAME_NS, @@ -7103,8 +6876,8 @@ module ShEx::Meta :STRING_LITERAL_LONG2], :_literalRange_3 => [ "]", - ".", :LANGTAG, + ".", :IRIREF, :PNAME_LN, :PNAME_NS, @@ -7123,8 +6896,8 @@ module ShEx::Meta :STRING_LITERAL_LONG2], :_literalRange_4 => [ "]", - ".", :LANGTAG, + ".", :IRIREF, :PNAME_LN, :PNAME_NS, @@ -7143,8 +6916,8 @@ module ShEx::Meta :STRING_LITERAL_LONG2], :_literalRange_5 => [ "]", - ".", :LANGTAG, + ".", :IRIREF, :PNAME_LN, :PNAME_NS, @@ -7163,8 +6936,8 @@ module ShEx::Meta :STRING_LITERAL_LONG2], :_literalRange_6 => [ "]", - ".", :LANGTAG, + ".", :IRIREF, :PNAME_LN, :PNAME_NS, @@ -7183,8 +6956,8 @@ module ShEx::Meta :STRING_LITERAL_LONG2], :_literalRange_7 => [ "]", - ".", :LANGTAG, + ".", :IRIREF, :PNAME_LN, :PNAME_NS, @@ -7223,7 +6996,6 @@ module ShEx::Meta "%", ";", "|", - "&", "EXTRA", :IRIREF, :BLANK_NODE_LABEL, @@ -7251,7 +7023,6 @@ module ShEx::Meta "%", ";", "|", - "&", "EXTRA", :IRIREF, :BLANK_NODE_LABEL, @@ -7279,7 +7050,6 @@ module ShEx::Meta "%", ";", "|", - "&", "EXTRA", :IRIREF, :BLANK_NODE_LABEL, @@ -7307,7 +7077,6 @@ module ShEx::Meta "%", ";", "|", - "&", "EXTRA", :IRIREF, :BLANK_NODE_LABEL, @@ -7335,7 +7104,6 @@ module ShEx::Meta "%", ";", "|", - "&", "EXTRA", :IRIREF, :BLANK_NODE_LABEL, @@ -7363,7 +7131,6 @@ module ShEx::Meta "%", ";", "|", - "&", "EXTRA", :IRIREF, :BLANK_NODE_LABEL, @@ -7391,7 +7158,6 @@ module ShEx::Meta "%", ";", "|", - "&", "EXTRA", :IRIREF, :BLANK_NODE_LABEL, @@ -7419,7 +7185,6 @@ module ShEx::Meta "%", ";", "|", - "&", "EXTRA", :IRIREF, :BLANK_NODE_LABEL, @@ -7447,7 +7212,6 @@ module ShEx::Meta "%", ";", "|", - "&", "EXTRA", :IRIREF, :BLANK_NODE_LABEL, @@ -7475,7 +7239,6 @@ module ShEx::Meta "%", ";", "|", - "&", "EXTRA", :IRIREF, :BLANK_NODE_LABEL, @@ -7503,7 +7266,6 @@ module ShEx::Meta "%", ";", "|", - "&", "EXTRA", :IRIREF, :BLANK_NODE_LABEL, @@ -7535,7 +7297,6 @@ module ShEx::Meta "%", ";", "|", - "&", "EXTRA", :IRIREF, :BLANK_NODE_LABEL, @@ -7713,6 +7474,7 @@ module ShEx::Meta ")", :_eof, "-", + :LANGTAG, ".", "//", "AND", @@ -7722,7 +7484,7 @@ module ShEx::Meta "?", :REPEAT_RANGE, :REGEXP, - :LANGTAG, + :IRIREF, "%", "}", "MININCLUSIVE", @@ -7734,7 +7496,13 @@ module ShEx::Meta "BASE", "PREFIX", "START", - :IRIREF, + :PNAME_LN, + :PNAME_NS, + :INTEGER, + :DECIMAL, + :DOUBLE, + "true", + "false", "IRI", "BNODE", "NONLITERAL", @@ -7743,18 +7511,11 @@ module ShEx::Meta "LENGTH", "MINLENGTH", "MAXLENGTH", - :PNAME_LN, - :PNAME_NS, - :INTEGER, - :DECIMAL, - :DOUBLE, - "true", - "false", - :BLANK_NODE_LABEL, :LANG_STRING_LITERAL1, :LANG_STRING_LITERAL_LONG1, :LANG_STRING_LITERAL2, :LANG_STRING_LITERAL_LONG2, + :BLANK_NODE_LABEL, :STRING_LITERAL1, :STRING_LITERAL_LONG1, :STRING_LITERAL2, @@ -7802,7 +7563,6 @@ module ShEx::Meta :LANG_STRING_LITERAL_LONG1, :LANG_STRING_LITERAL2, :LANG_STRING_LITERAL_LONG2, - "&", "EXTRA", "NOT", :STRING_LITERAL1, @@ -7864,6 +7624,7 @@ module ShEx::Meta "}", "NOT", "-", + :LANGTAG, ".", "//", :PNAME_LN, @@ -7881,18 +7642,15 @@ module ShEx::Meta "+", "?", :REPEAT_RANGE, - :BLANK_NODE_LABEL, ";", "|", :ATPNAME_LN, :ATPNAME_NS, "^", - :LANGTAG, :LANG_STRING_LITERAL1, :LANG_STRING_LITERAL_LONG1, :LANG_STRING_LITERAL2, :LANG_STRING_LITERAL_LONG2, - "&", "EXTRA", "BASE", "PREFIX", @@ -7915,6 +7673,7 @@ module ShEx::Meta "TOTALDIGITS", "FRACTIONDIGITS", "LITERAL", + :BLANK_NODE_LABEL, "["], :productionLabel => [ "(", @@ -7941,14 +7700,21 @@ module ShEx::Meta "~", "]", "-", + :LANGTAG, ".", "//", ")", - :LANGTAG, + :IRIREF, "%", :_eof, "}", - :IRIREF, + :PNAME_LN, + :PNAME_NS, + :INTEGER, + :DECIMAL, + :DOUBLE, + "true", + "false", "IRI", "BNODE", "NONLITERAL", @@ -7957,40 +7723,40 @@ module ShEx::Meta "AND", ";", "|", - :PNAME_LN, - :PNAME_NS, - :INTEGER, - :DECIMAL, - :DOUBLE, - "true", - "false", - "BASE", - "PREFIX", - "START", :LANG_STRING_LITERAL1, :LANG_STRING_LITERAL_LONG1, :LANG_STRING_LITERAL2, :LANG_STRING_LITERAL_LONG2, - "LENGTH", - "MINLENGTH", - "MAXLENGTH", + "BASE", + "PREFIX", + "START", :STRING_LITERAL1, :STRING_LITERAL_LONG1, :STRING_LITERAL2, :STRING_LITERAL_LONG2, + "LENGTH", + "MINLENGTH", + "MAXLENGTH", :BLANK_NODE_LABEL], :_rdfLiteral_1 => [ "~", "]", "-", + :LANGTAG, ".", "//", ")", - :LANGTAG, + :IRIREF, "%", :_eof, "}", - :IRIREF, + :PNAME_LN, + :PNAME_NS, + :INTEGER, + :DECIMAL, + :DOUBLE, + "true", + "false", "IRI", "BNODE", "NONLITERAL", @@ -7999,40 +7765,40 @@ module ShEx::Meta "AND", ";", "|", - :PNAME_LN, - :PNAME_NS, - :INTEGER, - :DECIMAL, - :DOUBLE, - "true", - "false", - "BASE", - "PREFIX", - "START", :LANG_STRING_LITERAL1, :LANG_STRING_LITERAL_LONG1, :LANG_STRING_LITERAL2, :LANG_STRING_LITERAL_LONG2, - "LENGTH", - "MINLENGTH", - "MAXLENGTH", + "BASE", + "PREFIX", + "START", :STRING_LITERAL1, :STRING_LITERAL_LONG1, :STRING_LITERAL2, :STRING_LITERAL_LONG2, + "LENGTH", + "MINLENGTH", + "MAXLENGTH", :BLANK_NODE_LABEL], :_rdfLiteral_2 => [ "~", "]", "-", + :LANGTAG, ".", "//", ")", - :LANGTAG, + :IRIREF, "%", :_eof, "}", - :IRIREF, + :PNAME_LN, + :PNAME_NS, + :INTEGER, + :DECIMAL, + :DOUBLE, + "true", + "false", "IRI", "BNODE", "NONLITERAL", @@ -8041,40 +7807,40 @@ module ShEx::Meta "AND", ";", "|", - :PNAME_LN, - :PNAME_NS, - :INTEGER, - :DECIMAL, - :DOUBLE, - "true", - "false", - "BASE", - "PREFIX", - "START", :LANG_STRING_LITERAL1, :LANG_STRING_LITERAL_LONG1, :LANG_STRING_LITERAL2, :LANG_STRING_LITERAL_LONG2, - "LENGTH", - "MINLENGTH", - "MAXLENGTH", + "BASE", + "PREFIX", + "START", :STRING_LITERAL1, :STRING_LITERAL_LONG1, :STRING_LITERAL2, :STRING_LITERAL_LONG2, + "LENGTH", + "MINLENGTH", + "MAXLENGTH", :BLANK_NODE_LABEL], :_rdfLiteral_3 => [ "~", "]", "-", + :LANGTAG, ".", "//", ")", - :LANGTAG, + :IRIREF, "%", :_eof, "}", - :IRIREF, + :PNAME_LN, + :PNAME_NS, + :INTEGER, + :DECIMAL, + :DOUBLE, + "true", + "false", "IRI", "BNODE", "NONLITERAL", @@ -8083,40 +7849,40 @@ module ShEx::Meta "AND", ";", "|", - :PNAME_LN, - :PNAME_NS, - :INTEGER, - :DECIMAL, - :DOUBLE, - "true", - "false", - "BASE", - "PREFIX", - "START", :LANG_STRING_LITERAL1, :LANG_STRING_LITERAL_LONG1, :LANG_STRING_LITERAL2, :LANG_STRING_LITERAL_LONG2, - "LENGTH", - "MINLENGTH", - "MAXLENGTH", + "BASE", + "PREFIX", + "START", :STRING_LITERAL1, :STRING_LITERAL_LONG1, :STRING_LITERAL2, :STRING_LITERAL_LONG2, + "LENGTH", + "MINLENGTH", + "MAXLENGTH", :BLANK_NODE_LABEL], :_rdfLiteral_4 => [ "~", "]", "-", + :LANGTAG, ".", "//", ")", - :LANGTAG, + :IRIREF, "%", :_eof, "}", - :IRIREF, + :PNAME_LN, + :PNAME_NS, + :INTEGER, + :DECIMAL, + :DOUBLE, + "true", + "false", "IRI", "BNODE", "NONLITERAL", @@ -8125,40 +7891,40 @@ module ShEx::Meta "AND", ";", "|", - :PNAME_LN, - :PNAME_NS, - :INTEGER, - :DECIMAL, - :DOUBLE, - "true", - "false", - "BASE", - "PREFIX", - "START", :LANG_STRING_LITERAL1, :LANG_STRING_LITERAL_LONG1, :LANG_STRING_LITERAL2, :LANG_STRING_LITERAL_LONG2, - "LENGTH", - "MINLENGTH", - "MAXLENGTH", + "BASE", + "PREFIX", + "START", :STRING_LITERAL1, :STRING_LITERAL_LONG1, :STRING_LITERAL2, :STRING_LITERAL_LONG2, + "LENGTH", + "MINLENGTH", + "MAXLENGTH", :BLANK_NODE_LABEL], :_rdfLiteral_5 => [ "~", "]", "-", + :LANGTAG, ".", "//", ")", - :LANGTAG, + :IRIREF, "%", :_eof, "}", - :IRIREF, + :PNAME_LN, + :PNAME_NS, + :INTEGER, + :DECIMAL, + :DOUBLE, + "true", + "false", "IRI", "BNODE", "NONLITERAL", @@ -8167,27 +7933,20 @@ module ShEx::Meta "AND", ";", "|", - :PNAME_LN, - :PNAME_NS, - :INTEGER, - :DECIMAL, - :DOUBLE, - "true", - "false", - "BASE", - "PREFIX", - "START", :LANG_STRING_LITERAL1, :LANG_STRING_LITERAL_LONG1, :LANG_STRING_LITERAL2, :LANG_STRING_LITERAL_LONG2, - "LENGTH", - "MINLENGTH", - "MAXLENGTH", + "BASE", + "PREFIX", + "START", :STRING_LITERAL1, :STRING_LITERAL_LONG1, :STRING_LITERAL2, :STRING_LITERAL_LONG2, + "LENGTH", + "MINLENGTH", + "MAXLENGTH", :BLANK_NODE_LABEL], :semanticActions => [ ")", @@ -8682,7 +8441,6 @@ module ShEx::Meta :_shapeDefinition_4 => [ "{", "CLOSED", - "&", "EXTRA"], :_shapeDefinition_5 => [ "{"], @@ -8891,9 +8649,6 @@ module ShEx::Meta ")", "}", "NOT", - :IRIREF, - :BLANK_NODE_LABEL, - "{", :_eof, "OR", ";", @@ -8901,9 +8656,6 @@ module ShEx::Meta ".", :ATPNAME_LN, :ATPNAME_NS, - :PNAME_LN, - :PNAME_NS, - "CLOSED", "AND", "IRI", "BNODE", @@ -8915,8 +8667,6 @@ module ShEx::Meta :REPEAT_RANGE, "(", "@", - "&", - "EXTRA", "BASE", "PREFIX", "START", @@ -8927,12 +8677,19 @@ module ShEx::Meta "//", "%", "[", + :IRIREF, + :BLANK_NODE_LABEL, + "{", + :PNAME_LN, + :PNAME_NS, "MININCLUSIVE", "MINEXCLUSIVE", "MAXINCLUSIVE", "MAXEXCLUSIVE", "TOTALDIGITS", - "FRACTIONDIGITS"], + "FRACTIONDIGITS", + "CLOSED", + "EXTRA"], :shapeNot => [ "AND", "OR", @@ -8971,7 +8728,6 @@ module ShEx::Meta "MINLENGTH", "MAXLENGTH", "CLOSED", - "&", "EXTRA"], :_shapeNot_2 => [ "AND", @@ -9408,7 +9164,6 @@ module ShEx::Meta "LENGTH", "MINLENGTH", "MAXLENGTH", - "&", "EXTRA"], :_start_2 => [ :_eof, @@ -9480,14 +9235,21 @@ module ShEx::Meta "~", "]", "-", + :LANGTAG, ".", "//", ")", - :LANGTAG, + :IRIREF, "%", :_eof, "}", - :IRIREF, + :PNAME_LN, + :PNAME_NS, + :INTEGER, + :DECIMAL, + :DOUBLE, + "true", + "false", "IRI", "BNODE", "NONLITERAL", @@ -9496,27 +9258,20 @@ module ShEx::Meta "AND", ";", "|", - :PNAME_LN, - :PNAME_NS, - :INTEGER, - :DECIMAL, - :DOUBLE, - "true", - "false", - "BASE", - "PREFIX", - "START", :LANG_STRING_LITERAL1, :LANG_STRING_LITERAL_LONG1, :LANG_STRING_LITERAL2, :LANG_STRING_LITERAL_LONG2, - "LENGTH", - "MINLENGTH", - "MAXLENGTH", + "BASE", + "PREFIX", + "START", :STRING_LITERAL1, :STRING_LITERAL_LONG1, :STRING_LITERAL2, :STRING_LITERAL_LONG2, + "LENGTH", + "MINLENGTH", + "MAXLENGTH", :BLANK_NODE_LABEL], :stringFacet => [ ")", @@ -9550,7 +9305,6 @@ module ShEx::Meta "MAXEXCLUSIVE", "TOTALDIGITS", "FRACTIONDIGITS", - "&", "EXTRA", :IRIREF, :BLANK_NODE_LABEL, @@ -9588,7 +9342,6 @@ module ShEx::Meta "MAXEXCLUSIVE", "TOTALDIGITS", "FRACTIONDIGITS", - "&", "EXTRA", :IRIREF, :BLANK_NODE_LABEL, @@ -9626,7 +9379,6 @@ module ShEx::Meta "MAXEXCLUSIVE", "TOTALDIGITS", "FRACTIONDIGITS", - "&", "EXTRA", :IRIREF, :BLANK_NODE_LABEL, @@ -9751,8 +9503,8 @@ module ShEx::Meta :PNAME_NS], :valueSetValue => [ "]", - ".", :LANGTAG, + ".", :IRIREF, :PNAME_LN, :PNAME_NS, @@ -9771,8 +9523,8 @@ module ShEx::Meta :STRING_LITERAL_LONG2], :_valueSetValue_1 => [ "]", - ".", :LANGTAG, + ".", :IRIREF, :PNAME_LN, :PNAME_NS, @@ -9791,8 +9543,8 @@ module ShEx::Meta :STRING_LITERAL_LONG2], :_valueSetValue_2 => [ "]", - ".", :LANGTAG, + ".", :IRIREF, :PNAME_LN, :PNAME_NS, @@ -9811,8 +9563,8 @@ module ShEx::Meta :STRING_LITERAL_LONG2], :_valueSetValue_3 => [ "]", - ".", :LANGTAG, + ".", :IRIREF, :PNAME_LN, :PNAME_NS, @@ -9831,8 +9583,8 @@ module ShEx::Meta :STRING_LITERAL_LONG2], :_valueSetValue_4 => [ "]", - ".", :LANGTAG, + ".", :IRIREF, :PNAME_LN, :PNAME_NS, @@ -9851,8 +9603,8 @@ module ShEx::Meta :STRING_LITERAL_LONG2], :_valueSetValue_5 => [ "]", - ".", :LANGTAG, + ".", :IRIREF, :PNAME_LN, :PNAME_NS, @@ -9871,8 +9623,8 @@ module ShEx::Meta :STRING_LITERAL_LONG2], :_valueSetValue_6 => [ "]", - ".", :LANGTAG, + ".", :IRIREF, :PNAME_LN, :PNAME_NS, @@ -9891,28 +9643,8 @@ module ShEx::Meta :STRING_LITERAL_LONG2], :_valueSetValue_7 => [ "]", - ".", :LANGTAG, - :IRIREF, - :PNAME_LN, - :PNAME_NS, - :INTEGER, - :DECIMAL, - :DOUBLE, - "true", - "false", - :LANG_STRING_LITERAL1, - :LANG_STRING_LITERAL_LONG1, - :LANG_STRING_LITERAL2, - :LANG_STRING_LITERAL_LONG2, - :STRING_LITERAL1, - :STRING_LITERAL_LONG1, - :STRING_LITERAL2, - :STRING_LITERAL_LONG2], - :_valueSetValue_8 => [ - "]", ".", - :LANGTAG, :IRIREF, :PNAME_LN, :PNAME_NS, @@ -10040,9 +9772,6 @@ module ShEx::Meta :_groupTripleExpr_1 => :star, :_groupTripleExpr_3 => :merge, :_groupTripleExpr_4 => :opt, - :_includeSet_1 => :plus, - :_includeSet_2 => :star, - :_includeSet_3 => :merge, :_inlineShapeAnd_1 => :star, :_inlineShapeAnd_3 => :merge, :_inlineShapeAtom_4 => :opt, @@ -10120,9 +9849,9 @@ module ShEx::Meta :_tripleConstraint_3 => :star, :_tripleConstraint_4 => :merge, :_unaryTripleExpr_2 => :opt, - :_valueSetValue_3 => :plus, - :_valueSetValue_4 => :star, - :_valueSetValue_5 => :merge, + :_valueSetValue_2 => :plus, + :_valueSetValue_3 => :star, + :_valueSetValue_4 => :merge, :_valueSet_1 => :star, :_valueSet_2 => :merge, }.freeze diff --git a/lib/shex/parser.rb b/lib/shex/parser.rb index 57b198c..0005aaa 100644 --- a/lib/shex/parser.rb +++ b/lib/shex/parser.rb @@ -505,6 +505,11 @@ def shape_definition(input, data) (input[:tripleExpression] ||= []) << expression if expression end + # [43a] productionLabel ::= '$' (iri | blankNode) + production(:productionLabel) do |input, data, callback| + input[:productionLabel] = data[:iri] || data[:blankNode] + end + # [44] bracketedTripleExpr ::= '(' oneOfTripleExpr ')' cardinality? annotation* semanticActions production(:bracketedTripleExpr) do |input, data, callback| # XXX cardinality? annotation* semanticActions @@ -525,12 +530,7 @@ def shape_definition(input, data) input[:tripleExpression] = expression end - # [45] productionLabel ::= '$' (iri | blankNode) - production(:productionLabel) do |input, data, callback| - input[:productionLabel] = data[:iri] || data[:blankNode] - end - - # [46] tripleConstraint ::= senseFlags? predicate shapeExpression cardinality? annotation* semanticActions + # [45] tripleConstraint ::= senseFlags? predicate shapeExpression cardinality? annotation* semanticActions production(:tripleConstraint) do |input, data, callback| cardinality = data.fetch(:cardinality, {}) attrs = [ @@ -546,11 +546,11 @@ def shape_definition(input, data) input[:tripleExpression] = Algebra::TripleConstraint.new(*attrs, {}) unless attrs.empty? end - # [47] cardinality ::= '*' | '+' | '?' | REPEAT_RANGE - # [48] senseFlags ::= '^' - # [49] valueSet ::= '[' valueSetValue* ']' + # [46] cardinality ::= '*' | '+' | '?' | REPEAT_RANGE + # [47] senseFlags ::= '^' + # [48] valueSet ::= '[' valueSetValue* ']' - # [50] valueSetValue ::= (iriRange | literalRange | languageRange) | '.' (exclusion)+ + # [49] valueSetValue ::= iriRange | literalRange | languageRange | '.' exclusion+ production(:valueSetValue) do |input, data, callback| range = data[:iriRange] || data[:literalRange] || data[:languageRange] if !range @@ -576,7 +576,7 @@ def shape_definition(input, data) (input[:valueSetValue] ||= []) << Algebra::Value.new(range) end - # [51] exclusion ::= '-' (iri | literal | LANGTAG) '~'? + # [50] exclusion ::= '-' (iri | literal | LANGTAG) '~'? production(:exclusion) do |input, data, callback| (input[:exclusion] ||= []) << if data[:pattern] case @@ -589,7 +589,7 @@ def shape_definition(input, data) end end - # [51i] iriRange ::= iri ('~' iriExclusion*)? + # [51] iriRange ::= iri ('~' iriExclusion*)? production(:iriRange) do |input, data, callback| exclusions = data[:exclusion].unshift(:exclusions) if data[:exclusion] input[:iriRange] = if data[:pattern] && exclusions @@ -603,13 +603,13 @@ def shape_definition(input, data) end end - # [52i] iriExclusion ::= '-' iri '~'? + # [52] iriExclusion ::= '-' iri '~'? production(:iriExclusion) do |input, data, callback| val = data[:iri] (input[:exclusion] ||= []) << (data[:pattern] ? Algebra::IriStem.new(val) : val) end - # [51l] literalRange ::= literal ('~' literalExclusion*)? + # [53] literalRange ::= literal ('~' literalExclusion*)? production(:literalRange) do |input, data, callback| exclusions = data[:exclusion].unshift(:exclusions) if data[:exclusion] input[:literalRange] = if data[:pattern] && exclusions @@ -623,13 +623,13 @@ def shape_definition(input, data) end end - # [52l] literalExclusion ::= '-' literal '~'? + # [54] literalExclusion ::= '-' literal '~'? production(:literalExclusion) do |input, data, callback| val = data[:literal] (input[:exclusion] ||= []) << (data[:pattern] ? Algebra::LiteralStem.new(val) : val) end - # [51g] languageRange ::= LANGTAG ('~' languageExclusion*)? + # [55] languageRange ::= LANGTAG ('~' languageExclusion*)? production(:languageRange) do |input, data, callback| exclusions = data[:exclusion].unshift(:exclusions) if data[:exclusion] input[:languageRange] = if data[:pattern] && exclusions @@ -643,64 +643,61 @@ def shape_definition(input, data) end end - # [52g] languageExclusion ::= '-' literal '~'? + # [56] languageExclusion ::= '-' literal '~'? production(:languageExclusion) do |input, data, callback| val = data[:language] (input[:exclusion] ||= []) << (data[:pattern] ? Algebra::LanguageStem.new(val) : val) end - # [53] include ::= '&' shapeLabel + # [57] include ::= '&' shapeLabel production(:include) do |input, data, callback| input[:tripleExpression] = data[:shapeLabel].first end - # [54] annotation ::= '//' predicate (iri | literal) + # [58] annotation ::= '//' predicate (iri | literal) production(:annotation) do |input, data, callback| annotation = Algebra::Annotation.new([:predicate, data[:predicate].first], (data[:iri] || data[:literal])) (input[:annotation] ||= []) << annotation end - # [55] semanticActions ::= codeDecl* + # [59] semanticActions ::= codeDecl* - # [56] codeDecl ::= '%' iri (CODE | "%") + # [60] codeDecl ::= '%' iri (CODE | "%") production(:codeDecl) do |input, data, callback| (input[:codeDecl] ||= []) << Algebra::SemAct.new(*[data[:iri], data[:code]].compact, {}) end - # [57] literal ::= rdfLiteral | numericLiteral | booleanLiteral + # [13t] literal ::= rdfLiteral | numericLiteral | booleanLiteral - # [58] predicate ::= iri | RDF_TYPE + # [61] predicate ::= iri | RDF_TYPE production(:predicate) do |input, data, callback| (input[:predicate] ||= []) << data[:iri] end - # [59] datatype ::= iri + # [62] datatype ::= iri production(:datatype) do |input, data, callback| input[:datatype] = data[:iri] end - # [60] shapeLabel ::= iri | blankNode + # [63] shapeLabel ::= iri | blankNode production(:shapeLabel) do |input, data, callback| (input[:shapeLabel] ||= []) << (data[:iri] || data[:blankNode]) end - # [61] numericLiteral ::= INTEGER | DECIMAL | DOUBLE - # [62] rdfLiteral ::= langString | string ('^^' datatype)? + # [16t] numericLiteral ::= INTEGER | DECIMAL | DOUBLE + # [129s] rdfLiteral ::= langString | string ('^^' datatype)? production(:rdfLiteral) do |input, data, callback| input[:literal] = literal(data[:string], data) end - # [63] booleanLiteral ::= 'true' | 'false' - # [64] string ::= STRING_LITERAL1 | STRING_LITERAL_LONG1 + # [134s] booleanLiteral ::= 'true' | 'false' + # [135s] string ::= STRING_LITERAL1 | STRING_LITERAL_LONG1 # | STRING_LITERAL2 | STRING_LITERAL_LONG2 - # [65] iri ::= IRIREF | prefixedName - # [66] prefixedName ::= PNAME_LN | PNAME_NS - # [67] blankNode ::= BLANK_NODE_LABEL - - # [68] include ::= '&' shapeLabel - production(:include) do |input, data, callback| - input[:tripleExpression] = data[:shapeLabel].first - end + # [66] langString ::= LANG_STRING_LITERAL1 | LANG_STRING_LITERAL_LONG1 + # | LANG_STRING_LITERAL2 | LANG_STRING_LITERAL_LONG2 + # [136s] iri ::= IRIREF | prefixedName + # [1372] prefixedName ::= PNAME_LN | PNAME_NS + # [138s] blankNode ::= BLANK_NODE_LABEL ## # Initializes a new parser instance. diff --git a/lib/shex/terminals.rb b/lib/shex/terminals.rb index e17534f..7da0f42 100644 --- a/lib/shex/terminals.rb +++ b/lib/shex/terminals.rb @@ -20,34 +20,34 @@ module Terminals UCHAR4 = /\\u([0-9A-Fa-f]{4,4})/.freeze UCHAR8 = /\\U([0-9A-Fa-f]{8,8})/.freeze UCHAR = Regexp.union(UCHAR4, UCHAR8).freeze - # 95 + # 171s PERCENT = /%\h\h/.freeze - # 97 + # 173s PN_LOCAL_ESC = /\\[_~\.\-\!$\&'\(\)\*\+,;=\/\?\#@%]/.freeze - # 94 + # 170s PLX = /#{PERCENT}|#{PN_LOCAL_ESC}/.freeze.freeze - # 89 + # 164s PN_CHARS_BASE = /[A-Za-z]|#{U_CHARS1}/.freeze - # 90 + # 165s PN_CHARS_U = /_|#{PN_CHARS_BASE}/.freeze - # 91 + # 167s PN_CHARS = /[\d-]|#{PN_CHARS_U}|#{U_CHARS2}/.freeze PN_LOCAL_BODY = /(?:(?:\.|:|#{PN_CHARS}|#{PLX})*(?:#{PN_CHARS}|:|#{PLX}))?/.freeze PN_CHARS_BODY = /(?:(?:\.|#{PN_CHARS})*#{PN_CHARS})?/.freeze - # 92 + # 168s PN_PREFIX = /#{PN_CHARS_BASE}#{PN_CHARS_BODY}/.freeze - # 93 + # 169s PN_LOCAL = /(?:[\d|]|#{PN_CHARS_U}|#{PLX})#{PN_LOCAL_BODY}/.freeze - # 82 + # 155s EXPONENT = /[eE][+-]?\d+/ - # 88 + # 160s ECHAR = /\\[tbnrf\\"']/ WS = /(?:\s|(?:#[^\n\r]*))+/m.freeze - # 71 + # 69 RDF_TYPE = /a/.freeze - # 72 + # 18t IRIREF = /<(?:#{IRI_RANGE}|#{UCHAR})*>/.freeze # 73 PNAME_NS = /#{PN_PREFIX}?:/.freeze