module: versionDecl libraryModule mainModule module ::= versionDecl? ( libraryModule | mainModule ) no referencesversionDecl: xquery version stringliteral encoding stringliteral \; versionDecl ::= 'xquery' 'version' stringliteral ( 'encoding' stringliteral )? '\;' referenced by: module mainModule: prolog queryBody mainModule ::= prolog queryBody referenced by: module libraryModule: moduleDecl prolog libraryModule ::= moduleDecl prolog referenced by: module moduleDecl: module namespace NCNAME \::= uriliteral \; moduleDecl ::= 'module' 'namespace' NCNAME '\::=' uriliteral '\;' referenced by: libraryModule prolog: baseDecl defaultNamespaceDecl namespaceDecl setter importa \; prefixDecl varDecl functionDecl optionDecl \; prolog ::= baseDecl? ( ( defaultNamespaceDecl | namespaceDecl | setter | importa ) '\;' | prefixDecl )* ( ( varDecl | functionDecl | optionDecl ) '\;' )* referenced by: libraryModule mainModule setter: boundarySpaceDecl defaultCollationDecl baseURIDecl constructionDecl orderingModeDecl emptyOrderDecl copyNamespacesDecl setter ::= boundarySpaceDecl | defaultCollationDecl | baseURIDecl | constructionDecl | orderingModeDecl | emptyOrderDecl | copyNamespacesDecl referenced by: prolog importa: schemaImport moduleImport importa ::= schemaImport | moduleImport referenced by: prolog namespaceDecl: declare namespace NCNAME \::= QSTRING namespaceDecl ::= 'declare' 'namespace' NCNAME '\::=' QSTRING referenced by: prolog boundarySpaceDecl: declare boundary-space preserve strip boundarySpaceDecl ::= 'declare' 'boundary-space' ( 'preserve' | 'strip' ) referenced by: setter defaultNamespaceDecl: declare default element function namespace QSTRING defaultNamespaceDecl ::= 'declare' 'default' ( 'element' | 'function' ) 'namespace' QSTRING referenced by: prolog optionDecl: declare option qname stringliteral optionDecl ::= 'declare' 'option' qname stringliteral referenced by: prolog orderingModeDecl: declare ordering ordered unordered orderingModeDecl ::= 'declare' 'ordering' ( 'ordered' | 'unordered' ) referenced by: setter emptyOrderDecl: declare default order empty greatest least emptyOrderDecl ::= 'declare' 'default' 'order' 'empty' ( 'greatest' | 'least' ) referenced by: setter copyNamespacesDecl: declare COPYNAMESPACES preserveMode \, inheritMode copyNamespacesDecl ::= 'declare' COPYNAMESPACES^ preserveMode '\,' inheritMode referenced by: setter preserveMode: preserve no-preserve preserveMode ::= 'preserve' | 'no-preserve' referenced by: copyNamespacesDecl inheritMode: inherit no-inherit inheritMode ::= 'inherit' | 'no-inherit' referenced by: copyNamespacesDecl defaultCollationDecl: declare default collation uriliteral defaultCollationDecl ::= 'declare' 'default' 'collation' uriliteral referenced by: setter baseURIDecl: declare base-uri QSTRING baseURIDecl ::= 'declare' 'base-uri' QSTRING referenced by: setter schemaImport: IMPORT schema schemaPrefix uriliteral AT uriliteral \, schemaImport ::= IMPORT 'schema' schemaPrefix? uriliteral ( AT uriliteral ( '\,' uriliteral )* )? referenced by: importa schemaPrefix: namespace NCNAME \::= default element namespace schemaPrefix ::= 'namespace' NCNAME '\::=' | 'default' 'element' 'namespace' referenced by: schemaImport moduleImport: IMPORT module namespace NCNAME \::= uriliteral AT uriliteral \, moduleImport ::= IMPORT 'module' ( 'namespace' NCNAME '\::=' )? uriliteral ( AT uriliteral ( '\,' uriliteral )* )? referenced by: importa varDecl: declare variable VAR typeDeclaration \:\::= exprSingle EXTERNAL varDecl ::= 'declare' 'variable' VAR typeDeclaration? ( '\:\::=' exprSingle | EXTERNAL ) referenced by: prolog constructionDecl: declare construction strip preserve constructionDecl ::= 'declare' 'construction' ( 'strip' | 'preserve' ) referenced by: setter functionDecl: declare function qname \( paramList \) as sequenceType enclosedExpr EXTERNAL functionDecl ::= 'declare' 'function' qname '\(' paramList? '\)' ( 'as' sequenceType )? ( enclosedExpr | EXTERNAL ) referenced by: prolog paramList: param \, paramList ::= param ( '\,' param )* referenced by: functionDecl param: VAR typeDeclaration param ::= VAR typeDeclaration? referenced by: paramList enclosedExpr: \{ expr \} enclosedExpr ::= '\{' expr '\}' referenced by: blankConstruct compAttrConstructor compCommentConstructor compDocConstructor compPIConstructor constructTemplate dirAttributeValue functionDecl iriConstruct literalConstruct sqlAttrSpec subject_ queryBody: exprSingle \, queryBody ::= exprSingle ( '\,' exprSingle )* referenced by: mainModule expr: exprSingle \, expr ::= exprSingle ( '\,' exprSingle )* referenced by: compAttrConstructor compPIConstructor contentExpr enclosedExpr extensionExpr ifExpr iriConstruct orderedExpr parenthesizedExpr predicate typeSwitchExpr unorderedExpr validateExpr exprSingle: flworExpr quantifiedExpr typeSwitchExpr constructQuery orExpr ifExpr exprSingle ::= flworExpr | quantifiedExpr | typeSwitchExpr | constructQuery | orExpr | ifExpr referenced by: caseClause expr flworExpr functionCall ifExpr orderSpec quantifiedExpr queryBody singleForClause singleLetClause typeSwitchExpr varDecl whereClause flworExpr: construct constructTemplate return exprSingle forletClause flworExpr ::= 'construct' constructTemplate | 'return' exprSingle | forletClause referenced by: exprSingle forletClause: for sparqlForClause sqlForClause xqueryForClause whereClause orderByClause letClause whereClause orderByClause forletClause ::= 'for' ( sparqlForClause | sqlForClause | xqueryForClause whereClause? orderByClause? ) | letClause whereClause? orderByClause? referenced by: flworExpr sparqlForClause: distinct sparqlVarOrFunction \* datasetClause endpointClause sWhereClause solutionmodifier valuesClause sparqlForClause ::= 'distinct'? ( sparqlVarOrFunction+ | '\*' ) datasetClause* endpointClause? sWhereClause solutionmodifier valuesClause referenced by: forletClause distinctOrReduced: distinct reduced distinctOrReduced ::= 'distinct' | 'reduced' no referencesendpointClause: endpoint sourceSelector endpointClause ::= 'endpoint' sourceSelector referenced by: sparqlForClause sparqlVarOrFunction: VAR \( expression as VAR \) sparqlVarOrFunction ::= VAR | '\(' expression 'as' VAR '\)' referenced by: selectClause sparqlForClause xqueryForClause: singleForClause \, xqueryForClause ::= singleForClause ( '\,' singleForClause )* referenced by: forletClause singleForClause: VAR typeDeclaration positionalVar in exprSingle singleForClause ::= VAR typeDeclaration? positionalVar? 'in' exprSingle referenced by: xqueryForClause positionalVar: AT VAR positionalVar ::= AT VAR referenced by: singleForClause letClause: let singleLetClause \, letClause ::= 'let' singleLetClause ( '\,' singleLetClause )* referenced by: forletClause singleLetClause: VAR typeDeclaration \:\::= exprSingle singleLetClause ::= VAR typeDeclaration? '\:\::=' exprSingle referenced by: letClause whereClause: WHERE exprSingle whereClause ::= WHERE exprSingle referenced by: forletClause orderByClause: stable order by orderSpecList orderByClause ::= 'stable'? 'order' 'by' orderSpecList referenced by: forletClause orderSpecList: orderSpec \, orderSpecList ::= orderSpec ( '\,' orderSpec )* referenced by: orderByClause orderSpec: exprSingle orderModifier orderSpec ::= exprSingle orderModifier referenced by: orderSpecList orderModifier: ascending descending empty greatest least collation uriliteral orderModifier ::= ( 'ascending' | 'descending' )? ( 'empty' ( 'greatest' | 'least' ) )? ( 'collation' uriliteral )? referenced by: orderSpec quantifiedExpr: some every VAR typeDeclaration in exprSingle \, satisfies exprSingle quantifiedExpr ::= ( 'some' | 'every' ) VAR typeDeclaration? 'in' exprSingle ( '\,' VAR typeDeclaration? 'in' exprSingle )* 'satisfies' exprSingle referenced by: exprSingle typeSwitchExpr: TYPESWITCH \( expr \) caseClause default VAR return exprSingle typeSwitchExpr ::= TYPESWITCH^ '\(' expr '\)' caseClause+ 'default' VAR? 'return' exprSingle referenced by: exprSingle caseClause: case VAR as sequenceType return exprSingle caseClause ::= 'case' ( VAR 'as' )? sequenceType 'return' exprSingle referenced by: typeSwitchExpr ifExpr: IF \( expr \) then exprSingle else exprSingle ifExpr ::= IF^ '\(' expr '\)' 'then' exprSingle 'else' exprSingle referenced by: exprSingle orExpr: andExpr OR orExpr ::= andExpr ( OR^ andExpr )* referenced by: exprSingle andExpr: comparisonExpr and andExpr ::= comparisonExpr ( 'and' comparisonExpr )* referenced by: orExpr comparisonExpr: valueComp generalComp nodeComp rangeExpr comparisonExpr ::= ( ( valueComp^ | generalComp^ | nodeComp^ ) rangeExpr )? referenced by: andExpr rangeExpr: additiveExpr to additiveExpr rangeExpr ::= additiveExpr ( 'to' additiveExpr )? referenced by: comparisonExpr additiveExpr: multiplicativeExpr \+ MINUS additiveExpr ::= multiplicativeExpr ( ( '\+' | MINUS ) multiplicativeExpr )* referenced by: rangeExpr multiplicativeExpr: unionExpr \* div idiv mod multiplicativeExpr ::= unionExpr ( ( '\*' | 'div' | 'idiv' | 'mod' ) unionExpr )* referenced by: additiveExpr unionExpr: intersectExceptExpr union \| unionExpr ::= intersectExceptExpr ( ( 'union' | '\|' ) intersectExceptExpr )* referenced by: multiplicativeExpr intersectExceptExpr: instanceOfExpr intersect except intersectExceptExpr ::= instanceOfExpr ( ( 'intersect' | 'except' ) instanceOfExpr )* referenced by: unionExpr instanceOfExpr: treatExpr instance of sequenceType instanceOfExpr ::= treatExpr ( 'instance' 'of' sequenceType )? referenced by: intersectExceptExpr treatExpr: castableExpr treat as sequenceType treatExpr ::= castableExpr ( 'treat' 'as' sequenceType )? referenced by: instanceOfExpr castableExpr: castExpr castable as singleType castableExpr ::= castExpr ( 'castable' 'as' singleType )? referenced by: treatExpr castExpr: unaryExpr cast as singleType castExpr ::= unaryExpr ( 'cast' 'as' singleType )? referenced by: castableExpr unaryExpr: MINUS \+ valueExpr unaryExpr ::= ( MINUS | '\+' )* valueExpr referenced by: castExpr valueExpr: pathExpr validateExpr extensionExpr valueExpr ::= pathExpr | validateExpr | extensionExpr referenced by: unaryExpr generalComp: \::= \< \> \<\::= \>\::= \t\::= generalComp ::= '\::=' | '\<' | '\>' | '\<\::=' | '\>\::=' | '\t\::=' referenced by: comparisonExpr sqlAttrSpecList valueComp: eq ne lt le gt ge valueComp ::= 'eq' | 'ne' | 'lt' | 'le' | 'gt' | 'ge' referenced by: comparisonExpr nodeComp: \<\< GREATERTHANGREATERTHAN is nodeComp ::= '\<\<' | GREATERTHANGREATERTHAN | 'is' referenced by: comparisonExpr validateExpr: validate validationMode \{ expr \} validateExpr ::= 'validate' validationMode? '\{' expr '\}' referenced by: valueExpr validationMode: lax strict validationMode ::= 'lax' | 'strict' referenced by: validateExpr extensionExpr: \{ expr \} extensionExpr ::= '\{' expr? '\}' referenced by: valueExpr pathExpr: \/ \/ relativePathExpr relativePathExpr pathExpr ::= '\/' ( '\/' | relativePathExpr )? | relativePathExpr referenced by: valueExpr relativePathExpr: stepExpr \/ \/ relativePathExpr ::= stepExpr ( '\/' '\/'? stepExpr )* referenced by: pathExpr stepExpr: filterExpr axisStep stepExpr ::= filterExpr | axisStep referenced by: relativePathExpr axisStep: reverseStep forwardStep predicateList axisStep ::= ( reverseStep | forwardStep ) predicateList referenced by: stepExpr forwardStep: forwardAxis nodeTest abbrevForwardStep forwardStep ::= forwardAxis nodeTest | abbrevForwardStep referenced by: axisStep forwardAxis: child descendant attribute self descendant-or-self following-sibling following \:\: forwardAxis ::= ( 'child' | 'descendant' | 'attribute' | 'self' | 'descendant-or-self' | 'following-sibling' | 'following' ) '\:\:' referenced by: forwardStep abbrevForwardStep: AT nodeTest abbrevForwardStep ::= AT? nodeTest referenced by: forwardStep reverseStep: reverseAxis nodeTest \.\. reverseStep ::= reverseAxis nodeTest | '\.\.' referenced by: axisStep reverseAxis: parent ancestor preceding-sibling preceding ancestor-or-self \:\: reverseAxis ::= ( 'parent' | 'ancestor' | 'preceding-sibling' | 'preceding' | 'ancestor-or-self' ) '\:\:' referenced by: reverseStep nodeTest: kindTest nameTest nodeTest ::= kindTest | nameTest referenced by: abbrevForwardStep forwardStep reverseStep nameTest: qname wildCard nameTest ::= qname | wildCard referenced by: nodeTest wildCard: \* \: NCNAME NCNAME \: \* wildCard ::= '\*' ( '\:' NCNAME )? | NCNAME '\:' '\*' referenced by: nameTest filterExpr: primaryExpr predicateList filterExpr ::= primaryExpr predicateList referenced by: stepExpr predicateList: predicate predicateList ::= predicate* referenced by: axisStep filterExpr predicate: \[ expr \] predicate ::= '\[' expr '\]' referenced by: predicateList primaryExpr: varRef literal parenthesizedExpr \. functionCall orderedExpr unorderedExpr constructor primaryExpr ::= varRef | literal | parenthesizedExpr | '\.' | functionCall | orderedExpr | unorderedExpr | constructor referenced by: filterExpr literal: numericliteral stringliteral literal ::= numericliteral | stringliteral referenced by: primaryExpr sqlAttrSpec numericliteral: integerLiteral decimalLiteral numericliteral ::= integerLiteral | decimalLiteral referenced by: dataBlockValue literal varRef: VAR varRef ::= VAR referenced by: primaryExpr varName: qname varName ::= qname no referencesparenthesizedExpr: \( expr \) parenthesizedExpr ::= '\(' expr? '\)' referenced by: primaryExpr orderedExpr: ordered \{ expr \} orderedExpr ::= 'ordered' '\{' expr '\}' referenced by: primaryExpr unorderedExpr: unordered \{ expr \} unorderedExpr ::= 'unordered' '\{' expr '\}' referenced by: primaryExpr functionCall: qname \( exprSingle \, \) functionCall ::= qname '\(' ( exprSingle ( '\,' exprSingle )* )? '\)' referenced by: primaryExpr sqlVarOrFunction constructor: directConstructor computedConstructor constructor ::= directConstructor | computedConstructor referenced by: primaryExpr directConstructor: dirElemConstructor directConstructor ::= dirElemConstructor referenced by: constructor dirElemContent dirElemConstructor: \< qname dirAttributeList \> dirElemContent <\/ qname WHITESPACE \> \/\> dirElemConstructor ::= '\<' qname dirAttributeList ( '\/\>' | '\>' dirElemContent* '<\/' qname WHITESPACE? '\>' ) referenced by: directConstructor dirAttributeList: WHITESPACE dirAttribute dirAttributeList ::= ( WHITESPACE dirAttribute? )* referenced by: dirElemConstructor dirAttribute: qname WHITESPACE \::= WHITESPACE dirAttributeValue dirAttribute ::= qname WHITESPACE? '\::=' WHITESPACE? dirAttributeValue referenced by: dirAttributeList dirAttributeValue: enclosedExpr QSTRING dirAttributeValue ::= enclosedExpr | QSTRING referenced by: dirAttribute dirElemContent: directConstructor commonContent WHITESPACE NCNAMEELM cDataSection dirElemContent ::= directConstructor | commonContent | WHITESPACE | NCNAMEELM | cDataSection referenced by: dirElemConstructor commonContent: enclosedExpr_ \{ \{ \} \} commonContent ::= ( enclosedExpr_ | '\{' '\{' | '\}' '\}' )? referenced by: dirElemContent cDataSection: < [CDATA[ CDATAELMEND cDataSection ::= '< [CDATA[' CDATAELMEND referenced by: dirElemContent computedConstructor: compDocConstructor compElemConstructor compAttrConstructor compTextConstructor compCommentConstructor compPIConstructor computedConstructor ::= compDocConstructor | compElemConstructor | compAttrConstructor | compTextConstructor | compCommentConstructor | compPIConstructor referenced by: constructor compDocConstructor: document enclosedExpr compDocConstructor ::= 'document' enclosedExpr referenced by: computedConstructor compElemConstructor: element qname enclosedExpr_ \{ contentExpr \} compElemConstructor ::= 'element' ( qname | enclosedExpr_ ) '\{' contentExpr? '\}' referenced by: computedConstructor contentExpr: expr contentExpr ::= expr referenced by: compElemConstructor compAttrConstructor: attribute qname enclosedExpr \{ expr \} compAttrConstructor ::= 'attribute' ( qname | enclosedExpr ) '\{' expr? '\}' referenced by: computedConstructor compTextConstructor: TEXT enclosedExpr_ compTextConstructor ::= TEXT enclosedExpr_ referenced by: computedConstructor compCommentConstructor: comment enclosedExpr compCommentConstructor ::= 'comment' enclosedExpr referenced by: computedConstructor compPIConstructor: processing-instruction NCNAME enclosedExpr \{ expr \} compPIConstructor ::= 'processing-instruction' ( NCNAME | enclosedExpr ) '\{' expr? '\}' referenced by: computedConstructor singleType: atomicType \? singleType ::= atomicType '\?'? referenced by: castExpr castableExpr typeDeclaration: as sequenceType typeDeclaration ::= 'as' sequenceType referenced by: param quantifiedExpr singleForClause singleLetClause varDecl sequenceType: empty-sequence \( \) itemType \? sequenceType ::= 'empty-sequence' '\(' '\)' | itemType '\?'? referenced by: caseClause functionDecl instanceOfExpr treatExpr typeDeclaration itemType: item \( \) atomicType kindTest itemType ::= 'item' '\(' '\)' | atomicType | kindTest referenced by: sequenceType atomicType: qname atomicType ::= qname referenced by: itemType singleType kindTest: documentTest elementTest attributeTest schemaElementTest schemaAttributeTest piTest commentTest textTest anyKindTest kindTest ::= documentTest | elementTest | attributeTest | schemaElementTest | schemaAttributeTest | piTest | commentTest | textTest | anyKindTest referenced by: itemType nodeTest anyKindTest: node \( \) anyKindTest ::= 'node' '\(' '\)' referenced by: kindTest documentTest: document-node \( elementTest schemaElementTest \) documentTest ::= 'document-node' '\(' ( elementTest | schemaElementTest )? '\)' referenced by: kindTest textTest: TEXT \( \) textTest ::= TEXT '\(' '\)' referenced by: kindTest commentTest: comment \( \) commentTest ::= 'comment' '\(' '\)' referenced by: kindTest piTest: processing-instruction \( NCNAME stringliteral \) piTest ::= 'processing-instruction' '\(' ( NCNAME | stringliteral )? '\)' referenced by: kindTest attributeTest: attribute \( attributeNameOrWildcard \, typeName \) attributeTest ::= 'attribute' '\(' ( attributeNameOrWildcard ( '\,' typeName )? )? '\)' referenced by: kindTest attributeNameOrWildcard: attributeName \* attributeNameOrWildcard ::= attributeName | '\*' referenced by: attributeTest schemaAttributeTest: schema-attribute \( attributeDeclaration \) schemaAttributeTest ::= 'schema-attribute' '\(' attributeDeclaration '\)' referenced by: kindTest attributeDeclaration: attributeName attributeDeclaration ::= attributeName referenced by: schemaAttributeTest elementTest: element \( elementNameOrWildcard \, typeName \? \) elementTest ::= 'element' '\(' ( elementNameOrWildcard ( '\,' typeName '\?'? )? )? '\)' referenced by: documentTest kindTest elementNameOrWildcard: elementName \* elementNameOrWildcard ::= elementName | '\*' referenced by: elementTest schemaElementTest: schema-element \( elementDeclaration \) schemaElementTest ::= 'schema-element' '\(' elementDeclaration '\)' referenced by: documentTest kindTest elementDeclaration: elementName elementDeclaration ::= elementName referenced by: schemaElementTest attributeName: qname attributeName ::= qname referenced by: attributeDeclaration attributeNameOrWildcard elementName: qname elementName ::= qname referenced by: elementDeclaration elementNameOrWildcard typeName: qname typeName ::= qname referenced by: attributeTest elementTest uriliteral: stringliteral uriliteral ::= stringliteral referenced by: defaultCollationDecl moduleDecl moduleImport orderModifier schemaImport integerLiteral: INTEGER integerLiteral ::= INTEGER referenced by: numericliteral decimalLiteral: DECIMAL decimalLiteral ::= DECIMAL referenced by: numericliteral stringliteral: QSTRING stringliteral ::= QSTRING referenced by: literal optionDecl piTest uriliteral versionDecl baseDecl: base IRIREF baseDecl ::= 'base' IRIREF referenced by: prolog prefixDecl: prefix PNAME_NS IRIREF prefixDecl ::= 'prefix' PNAME_NS IRIREF referenced by: prolog subSelect: selectClause sWhereClause solutionmodifier valuesClause subSelect ::= selectClause sWhereClause solutionmodifier valuesClause referenced by: groupGraphPattern selectClause: SELECT distinct reduced sparqlVarOrFunction \* selectClause ::= SELECT^ ( 'distinct' | 'reduced' )? ( sparqlVarOrFunction+ | '\*' ) referenced by: subSelect constructQuery: construct constructTemplate datasetClause sWhereClause WHERE \{ triplesSameSubject \. \. \} solutionmodifier constructQuery ::= 'construct' ( constructTemplate datasetClause* sWhereClause | WHERE '\{' triplesSameSubject ( '\.' triplesSameSubject )* '\.'? '\}' ) solutionmodifier referenced by: exprSingle datasetClause: FROM defaultGraphClause namedGraphClause datasetClause ::= FROM^ ( defaultGraphClause | namedGraphClause ) referenced by: constructQuery sparqlForClause defaultGraphClause: sourceSelector defaultGraphClause ::= sourceSelector referenced by: datasetClause namedGraphClause: named sourceSelector namedGraphClause ::= 'named' sourceSelector referenced by: datasetClause sourceSelector: IRIREF VAR sourceSelector ::= IRIREF | VAR referenced by: defaultGraphClause endpointClause namedGraphClause sWhereClause: WHERE groupGraphPattern sWhereClause ::= WHERE groupGraphPattern referenced by: constructQuery sparqlForClause subSelect solutionmodifier: groupBy having orderclause limitoffsetclauses solutionmodifier ::= groupBy? having? orderclause? limitoffsetclauses? referenced by: constructQuery sparqlForClause subSelect groupBy: group by groupByCondition groupBy ::= 'group' 'by' groupByCondition+ referenced by: solutionmodifier groupByCondition: builtInCall sFunctionCall \( expression as VAR \) VAR groupByCondition ::= builtInCall | sFunctionCall | '\(' expression ( 'as' VAR )? '\)' | VAR referenced by: groupBy having: having havingCondition having ::= 'having' havingCondition+ referenced by: solutionmodifier havingCondition: constraint havingCondition ::= constraint referenced by: having orderclause: order by orderCondition orderclause ::= 'order' 'by' orderCondition+ referenced by: solutionmodifier orderCondition: asc desc brackettedExpression constraint VAR orderCondition ::= ( 'asc' | 'desc' ) brackettedExpression | constraint | VAR referenced by: orderclause limitoffsetclauses: limitclause offsetclause offsetclause limitclause limitoffsetclauses ::= limitclause offsetclause? | offsetclause limitclause? referenced by: solutionmodifier limitclause: LIMIT INTEGER limitclause ::= LIMIT^ INTEGER referenced by: limitoffsetclauses offsetclause: OFFSET INTEGER offsetclause ::= OFFSET^ INTEGER referenced by: limitoffsetclauses valuesClause: VALUES dataBlock valuesClause ::= ( VALUES^ dataBlock )? referenced by: sparqlForClause subSelect groupGraphPattern: \{ subSelect groupGraphPatternSub \} groupGraphPattern ::= '\{' ( subSelect | groupGraphPatternSub ) '\}' referenced by: existsFunc graphGraphPattern groupOrUnionGraphPattern minusGraphPattern notExistsFunc optionalGraphPattern sWhereClause serviceGraphPattern groupGraphPatternSub: triplesBlock \. graphPatternNotTriples filter groupGraphPatternSub ::= triplesBlock? ( ( graphPatternNotTriples | filter ) '\.'? triplesBlock? )* referenced by: groupGraphPattern triplesBlock: triplesSameSubjectPath \. \. triplesBlock ::= triplesSameSubjectPath ( '\.' triplesSameSubjectPath )* '\.'? referenced by: groupGraphPatternSub graphPatternNotTriples: optionalGraphPattern groupOrUnionGraphPattern graphGraphPattern minusGraphPattern serviceGraphPattern bind inlineData graphPatternNotTriples ::= optionalGraphPattern | groupOrUnionGraphPattern | graphGraphPattern | minusGraphPattern | serviceGraphPattern | bind | inlineData referenced by: groupGraphPatternSub optionalGraphPattern: OPTIONAL groupGraphPattern optionalGraphPattern ::= OPTIONAL^ groupGraphPattern referenced by: graphPatternNotTriples graphGraphPattern: GRAPH varOrIRIref groupGraphPattern graphGraphPattern ::= GRAPH^ varOrIRIref groupGraphPattern referenced by: graphPatternNotTriples serviceGraphPattern: SERVICE silent varOrIRIref groupGraphPattern serviceGraphPattern ::= SERVICE^ 'silent'? varOrIRIref groupGraphPattern referenced by: graphPatternNotTriples bind: BIND \( expression as VAR \) bind ::= BIND^ '\(' expression 'as' VAR '\)' referenced by: graphPatternNotTriples inlineData: VALUES dataBlock inlineData ::= VALUES^ dataBlock referenced by: graphPatternNotTriples dataBlock: inlineDataOneVar inlineDataFull dataBlock ::= inlineDataOneVar | inlineDataFull referenced by: inlineData valuesClause inlineDataOneVar: VAR \{ dataBlockValue \} inlineDataOneVar ::= VAR '\{' dataBlockValue* '\}' referenced by: dataBlock inlineDataFull: nil \( VAR \) \{ \( dataBlockValue \) nil \} inlineDataFull ::= ( nil | '\(' VAR+ '\)' ) '\{' ( '\(' dataBlockValue+ '\)' | nil )* '\}' referenced by: dataBlock dataBlockValue: sparqlPrefixedName IRIREF rdfLiteral numericliteral booleanLiteral undef dataBlockValue ::= sparqlPrefixedName | IRIREF | rdfLiteral | numericliteral | booleanLiteral | 'undef' referenced by: inlineDataFull inlineDataOneVar minusGraphPattern: MINUS groupGraphPattern minusGraphPattern ::= MINUS^ groupGraphPattern referenced by: graphPatternNotTriples groupOrUnionGraphPattern: groupGraphPattern union groupOrUnionGraphPattern ::= groupGraphPattern ( 'union' groupGraphPattern )* referenced by: graphPatternNotTriples filter: FILTER constraint filter ::= FILTER^ constraint referenced by: groupGraphPatternSub constraint: brackettedExpression builtInCall sFunctionCall constraint ::= brackettedExpression | builtInCall | sFunctionCall referenced by: filter havingCondition orderCondition sFunctionCall: iRIref arglist sFunctionCall ::= iRIref arglist referenced by: constraint groupByCondition arglist: \( expression \, \) arglist ::= '\(' ( expression ( '\,' expression )* )? '\)' referenced by: iRIrefOrFunction sFunctionCall expressionList: nil \( expression \, \) expressionList ::= nil | '\(' expression ( '\,' expression )* '\)' referenced by: builtInCall relationalExpression constructTemplate: \{ triplesSameSubject_ enclosedExpr \. triplesSameSubject_ \. enclosedExpr \} constructTemplate ::= '\{' ( ( ( triplesSameSubject_ | enclosedExpr ) '\.' )* ( triplesSameSubject_ '\.'? | enclosedExpr ) )? '\}' referenced by: constructQuery flworExpr triplesSameSubject: subject propertyListNotEmpty triplesNode propertyListNotEmpty triplesSameSubject ::= subject propertyListNotEmpty | triplesNode propertyListNotEmpty? referenced by: constructQuery triplesSameSubject_: subject_ propertyListNotEmpty_ triplesNode_ propertyListNotEmpty_ triplesSameSubject_ ::= subject_ propertyListNotEmpty_ | triplesNode_ propertyListNotEmpty_? referenced by: constructTemplate propertyListNotEmpty: verb objectList \; verb objectList propertyListNotEmpty ::= verb objectList ( '\;' ( verb objectList )? )* referenced by: blankNodePropertyList triplesSameSubject propertyListNotEmpty_: verb_ objectList_ \; verb_ objectList_ propertyListNotEmpty_ ::= verb_ objectList_ ( '\;' ( verb_ objectList_ )? )* referenced by: blankNodePropertyList_ triplesSameSubject_ verb: varOrIRIref a verb ::= varOrIRIref | 'a' referenced by: propertyListNotEmpty verb_: varOrIRIref_ a verb_ ::= varOrIRIref_ | 'a' referenced by: propertyListNotEmpty_ objectList: object \, objectList ::= object ( '\,' object )* referenced by: propertyListNotEmpty propertyListPathNotEmptySub objectList_: object_ \, objectList_ ::= object_ ( '\,' object_ )* referenced by: propertyListNotEmpty_ object: resource blank rdfLiteral sNumericLiteral triplesNode literalConstruct object ::= resource | blank | rdfLiteral | sNumericLiteral | triplesNode | literalConstruct referenced by: objectList object_: graphNode_ quad object_ ::= graphNode_ quad? referenced by: objectList_ quad: iri literal_ quad ::= iri | literal_ referenced by: object_ literal_: literalConstruct rdfLiteral literal_ ::= literalConstruct | rdfLiteral referenced by: quad triplesSameSubjectPath: subject propertyListPathNotEmpty triplesNodePath propertyListPathNotEmpty triplesSameSubjectPath ::= subject propertyListPathNotEmpty | triplesNodePath propertyListPathNotEmpty? referenced by: triplesBlock propertyListPathNotEmpty: vp objectListPath propertyListPathNotEmptySub propertyListPathNotEmpty ::= vp objectListPath propertyListPathNotEmptySub* referenced by: blanckNodePropertyListPath triplesSameSubjectPath propertyListPathNotEmptySub: \; vp objectList propertyListPathNotEmptySub ::= '\;' ( vp objectList )? referenced by: propertyListPathNotEmpty vp: verbPath verbSimple vp ::= verbPath | verbSimple referenced by: propertyListPathNotEmpty propertyListPathNotEmptySub verbPath: path verbPath ::= path referenced by: vp verbSimple: VAR verbSimple ::= VAR referenced by: vp objectListPath: objectPath \, objectListPath ::= objectPath ( '\,' objectPath )* referenced by: propertyListPathNotEmpty objectPath: graphNodePath objectPath ::= graphNodePath referenced by: objectListPath path: pathAlternative path ::= pathAlternative referenced by: pathPrimary verbPath pathAlternative: pathSequence \| pathAlternative ::= pathSequence ( '\|' pathSequence )* referenced by: path pathSequence: pathEltOrInverse \/ pathSequence ::= pathEltOrInverse ( '\/' pathEltOrInverse )* referenced by: pathAlternative pathElt: pathPrimary pathMod pathElt ::= pathPrimary pathMod? referenced by: pathEltOrInverse pathEltOrInverse: \^ pathElt pathEltOrInverse ::= '\^'? pathElt referenced by: pathSequence pathMod: \? \* \+ pathMod ::= '\?' | '\*' | '\+' referenced by: pathElt pathPrimary: iRIref a \ pathNegatedPropertySet \( path \) pathPrimary ::= iRIref | 'a' | '\' pathNegatedPropertySet | '\(' path '\)' referenced by: pathElt pathNegatedPropertySet: pathOneInPropertySet \( pathOneInPropertySet \| \) pathNegatedPropertySet ::= pathOneInPropertySet | '\(' ( pathOneInPropertySet ( '\|' pathOneInPropertySet )* )? '\)' referenced by: pathPrimary pathOneInPropertySet: \^ iRIref a pathOneInPropertySet ::= '\^'? ( iRIref | 'a' ) referenced by: pathNegatedPropertySet triplesNode: collection blankNodePropertyList triplesNode ::= collection | blankNodePropertyList referenced by: graphNode object triplesSameSubject triplesNode_: collection_ blankNodePropertyList_ triplesNode_ ::= collection_ | blankNodePropertyList_ referenced by: graphNode_ triplesSameSubject_ blankNodePropertyList: \[ propertyListNotEmpty \] blankNodePropertyList ::= '\[' propertyListNotEmpty '\]' referenced by: triplesNode blankNodePropertyList_: \[ propertyListNotEmpty_ \] blankNodePropertyList_ ::= '\[' propertyListNotEmpty_ '\]' referenced by: triplesNode_ triplesNodePath: collectionPath blanckNodePropertyListPath triplesNodePath ::= collectionPath | blanckNodePropertyListPath referenced by: graphNodePath triplesSameSubjectPath blanckNodePropertyListPath: \[ propertyListPathNotEmpty \] blanckNodePropertyListPath ::= '\[' propertyListPathNotEmpty '\]' referenced by: triplesNodePath collection: \( graphNode \) collection ::= '\(' graphNode+ '\)' referenced by: triplesNode collection_: \( graphNode_ \) collection_ ::= '\(' graphNode_+ '\)' referenced by: triplesNode_ collectionPath: \( graphNodePath \) collectionPath ::= '\(' graphNodePath+ '\)' referenced by: triplesNodePath graphNode: varOrTerm triplesNode graphNode ::= varOrTerm | triplesNode referenced by: collection graphNode_: varOrTerm_ triplesNode_ graphNode_ ::= varOrTerm_ | triplesNode_ referenced by: collection_ object_ graphNodePath: VAR graphTerm triplesNodePath graphNodePath ::= VAR | graphTerm | triplesNodePath referenced by: collectionPath objectPath varOrTerm: VAR graphTerm varOrTerm ::= VAR | graphTerm referenced by: graphNode varOrTerm_: VAR iriConstruct literalConstruct graphTerm_ varOrTerm_ ::= VAR | iriConstruct | literalConstruct | graphTerm_ referenced by: graphNode_ literalConstruct: enclosedExpr AT enclosedExpr \^ \^ iri INTEGER QSTRING AT enclosedExpr \^ \^ iriConstruct literalConstruct ::= enclosedExpr ( AT enclosedExpr | '\^' '\^' iri )? | ( INTEGER | QSTRING ) ( AT enclosedExpr | '\^' '\^' iriConstruct ) referenced by: literal_ object varOrTerm_ varOrIRIref: VAR iRIref varOrIRIref ::= VAR | iRIref referenced by: graphGraphPattern serviceGraphPattern verb varOrIRIref_: VAR iRIref iriConstruct varOrIRIref_ ::= VAR | iRIref | iriConstruct referenced by: verb_ iriConstruct: <{ expr \}> enclosedExpr \: enclosedExpr OLON qname qname \: enclosedExpr iriConstruct ::= '<{' expr '\}>' | enclosedExpr ( '\:' enclosedExpr | OLON? qname ) | qname '\:' enclosedExpr referenced by: iri literalConstruct subject_ varOrIRIref_ varOrTerm_ graphTerm: iRIref rdfLiteral sNumericLiteral booleanLiteral blankNode nil graphTerm ::= iRIref | rdfLiteral | sNumericLiteral | booleanLiteral | blankNode | nil referenced by: graphNodePath varOrTerm graphTerm_: rdfLiteral sNumericLiteral booleanLiteral blankNode blankConstruct graphTerm_ ::= rdfLiteral | sNumericLiteral | booleanLiteral | blankNode | blankConstruct referenced by: varOrTerm_ blankConstruct: BNODE_CONSTRUCT enclosedExpr blankConstruct ::= BNODE_CONSTRUCT enclosedExpr referenced by: graphTerm_ subject_ expression: conditionalOrExpression expression ::= conditionalOrExpression referenced by: aggregate arglist bind brackettedExpression builtInCall expressionList groupByCondition regexExpression sparqlVarOrFunction strReplaceExpression substringExpression conditionalOrExpression: conditionalAndExpression ORSYMBOL conditionalOrExpression ::= conditionalAndExpression ( ORSYMBOL^ conditionalAndExpression )* referenced by: expression conditionalAndExpression: valueLogical ANDSYMBOL conditionalAndExpression ::= valueLogical ( ANDSYMBOL^ valueLogical )* referenced by: conditionalOrExpression valueLogical: relationalExpression valueLogical ::= relationalExpression referenced by: conditionalAndExpression relationalExpression: numericExpression \::= \t\::= \< \> \<\::= \>\::= numericExpression not in expressionList relationalExpression ::= numericExpression ( ( '\::=' | '\t\::=' | '\<' | '\>' | '\<\::=' | '\>\::=' ) numericExpression | 'not'? 'in' expressionList )? referenced by: valueLogical numericExpression: additiveExpression numericExpression ::= additiveExpression referenced by: relationalExpression additiveExpression: multiplicativeExpression PLUS MINUS additiveExpression ::= multiplicativeExpression ( ( PLUS^ | MINUS^ ) multiplicativeExpression )* referenced by: numericExpression multiplicativeExpression: unaryExpression STAR SLASH multiplicativeExpression ::= unaryExpression ( ( STAR^ | SLASH^ ) unaryExpression )* referenced by: additiveExpression unaryExpression: \ \+ MINUS primaryExpression unaryExpression ::= ( '\' | '\+' | MINUS )? primaryExpression referenced by: multiplicativeExpression primaryExpression: brackettedExpression builtInCall iRIrefOrFunction rdfLiteral sNumericLiteral booleanLiteral VAR BLANK_NODE_LABEL \[ \] primaryExpression ::= brackettedExpression | builtInCall | iRIrefOrFunction | rdfLiteral | sNumericLiteral | booleanLiteral | VAR | BLANK_NODE_LABEL | '\[' '\]' referenced by: unaryExpression brackettedExpression: \( expression \) brackettedExpression ::= '\(' expression '\)' referenced by: constraint orderCondition primaryExpression builtInCall: str lang datatype isiri isuri isblank isliteral iri uri abs ceil floor round strlen ucase lcase encode_for_uri year month day hours minutes seconds timezone tz md5 sha1 sha256 sha384 sha512 isnumeric \( langmatches contains strstarts strends strbefore strafter strlang strdt sameterm \( IF \( expression \, expression \, expression bound \( VAR \) regexExpression bnode \( expression \) nil RAND now uuid struuid nil concat coalesce expressionList substringExpression strReplaceExpression aggregate existsFunc notExistsFunc builtInCall ::= ( ( ( 'str' | 'lang' | 'datatype' | 'isiri' | 'isuri' | 'isblank' | 'isliteral' | 'iri' | 'uri' | 'abs' | 'ceil' | 'floor' | 'round' | 'strlen' | 'ucase' | 'lcase' | 'encode_for_uri' | 'year' | 'month' | 'day' | 'hours' | 'minutes' | 'seconds' | 'timezone' | 'tz' | 'md5' | 'sha1' | 'sha256' | 'sha384' | 'sha512' | 'isnumeric' ) '\(' | ( ( 'langmatches' | 'contains' | 'strstarts' | 'strends' | 'strbefore' | 'strafter' | 'strlang' | 'strdt' | 'sameterm' ) '\(' | IF '\(' expression '\,' ) expression '\,' ) expression | 'bound' '\(' VAR ) '\)' | regexExpression | 'bnode' ( '\(' expression '\)' | nil ) | ( RAND | 'now' | 'uuid' | 'struuid' ) nil | ( 'concat' | 'coalesce' ) expressionList | substringExpression | strReplaceExpression | aggregate | existsFunc | notExistsFunc referenced by: constraint groupByCondition primaryExpression regexExpression: regex \( expression \, expression \, expression \) regexExpression ::= 'regex' '\(' expression '\,' expression ( '\,' expression )? '\)' referenced by: builtInCall substringExpression: substr \( expression \, expression \, expression \) substringExpression ::= 'substr' '\(' expression '\,' expression ( '\,' expression )? '\)' referenced by: builtInCall strReplaceExpression: replace \( expression \, expression \, expression \, expression \) strReplaceExpression ::= 'replace' '\(' expression '\,' expression '\,' expression ( '\,' expression )? '\)' referenced by: builtInCall existsFunc: exists groupGraphPattern existsFunc ::= 'exists' groupGraphPattern referenced by: builtInCall notExistsFunc: NOTKW exists groupGraphPattern notExistsFunc ::= NOTKW^ 'exists' groupGraphPattern referenced by: builtInCall aggregate: count \( distinct \* expression sum min max avg sample \( distinct expression group_concat \( distinct expression \; separator \::= string \) aggregate ::= ( 'count' '\(' 'distinct'? ( '\*' | expression ) | ( 'sum' | 'min' | 'max' | 'avg' | 'sample' ) '\(' 'distinct'? expression | 'group_concat' '\(' 'distinct'? expression ( '\;' 'separator' '\::=' string )? ) '\)' referenced by: builtInCall iRIrefOrFunction: iRIref arglist iRIrefOrFunction ::= iRIref arglist? referenced by: primaryExpression rdfLiteral: QSTRING AT NCNAME \^ \^ IRIREF PNAME_LN rdfLiteral ::= QSTRING ( AT NCNAME | '\^' '\^' ( IRIREF | PNAME_LN ) )? referenced by: dataBlockValue graphTerm graphTerm_ literal_ object primaryExpression sNumericLiteral: \+ MINUS INTEGER DECIMAL DOUBLET sNumericLiteral ::= ( '\+' | MINUS )? ( INTEGER | DECIMAL | DOUBLET ) referenced by: graphTerm graphTerm_ object primaryExpression booleanLiteral: true false booleanLiteral ::= 'true' | 'false' referenced by: dataBlockValue graphTerm graphTerm_ primaryExpression string: QSTRING string ::= QSTRING referenced by: aggregate iRIref: IRIREF prefixedName iRIref ::= IRIREF | prefixedName referenced by: graphTerm iRIrefOrFunction pathOneInPropertySet pathPrimary sFunctionCall varOrIRIref varOrIRIref_ prefixedName: PNAME_LN PNAME_NS prefixedName ::= PNAME_LN | PNAME_NS referenced by: iRIref qname blankNode: blank blankNode ::= blank referenced by: graphTerm graphTerm_ blank: bnode \[ \] blank ::= bnode | '\[' '\]' referenced by: blankNode object subject subject_ nil: \( \) nil ::= '\(' '\)' referenced by: builtInCall expressionList graphTerm inlineDataFull subject_: resource iriConstruct blank blankConstruct enclosedExpr subject_ ::= resource | iriConstruct | blank | blankConstruct | enclosedExpr referenced by: triplesSameSubject_ subject: resource blank subject ::= resource | blank referenced by: triplesSameSubject triplesSameSubjectPath iri: PNAME_LN IRIREF iriConstruct < ([^<>\"\{\}\|\^`\\])* > iri ::= PNAME_LN | IRIREF | iriConstruct | '< ([^<>\"\{\}\|\^`\\])* >' referenced by: IRIREF literalConstruct quad resource: sparqlPrefixedName VAR IRIREF resource ::= sparqlPrefixedName | VAR | IRIREF referenced by: object rdfPredicate subject subject_ rdfPredicate: resource rdfPredicate ::= resource no referencesbnode: BLANK_NODE_LABEL bnode ::= BLANK_NODE_LABEL referenced by: blank sparqlPrefixedName: PNAME_LN PNAME_NS sparqlPrefixedName ::= PNAME_LN | PNAME_NS referenced by: dataBlockValue resource qname: prefixedName unprefixedName count max min avg sum sample not exists qname ::= prefixedName | unprefixedName | 'count' | 'max' | 'min' | 'avg' | 'sum' | 'sample' | 'not' | 'exists' referenced by: atomicType attributeName compAttrConstructor compElemConstructor dirAttribute dirElemConstructor elementName functionCall functionDecl iriConstruct nameTest optionDecl relationAlias relationClause sqlAttrSpec sqlVarOrFunction typeName varName keyword: item to from comment row node a keyword ::= 'item' | 'to' | 'from' | 'comment' | 'row' | 'node' | 'a' referenced by: localPart unprefixedName: localPart unprefixedName ::= localPart referenced by: qname localPart: NCNAME keyword localPart ::= NCNAME | keyword referenced by: unprefixedName sqlForClause: for distinct \* sqlVarOrFunctionList row VAR relationClause sqlWhereClause sqlForClause ::= 'for' 'distinct'? ( '\*' | sqlVarOrFunctionList | 'row' VAR ) relationClause sqlWhereClause? referenced by: forletClause sqlVarOrFunctionList: sqlVarOrFunction f a l s e \, sqlVarOrFunction t r u e sqlVarOrFunctionList ::= sqlVarOrFunction [false] ( '\,' sqlVarOrFunction [true] )* referenced by: sqlForClause sqlVarOrFunction: qname \( functionCall as VAR \) VAR sqlVarOrFunction ::= qname | '\(' functionCall 'as' VAR '\)' | VAR referenced by: sqlVarOrFunctionList relationClause: from rdbSourceSelector \, qname \( rdbSourceSelectorFunctionParams \) relationClause ::= 'from' ( rdbSourceSelector ( '\,' rdbSourceSelector )* | qname '\(' rdbSourceSelectorFunctionParams? '\)' ) referenced by: sqlForClause rdbSourceSelectorFunctionParams: rdbSourceSelector \, QSTRING rdbSourceSelectorFunctionParams ::= rdbSourceSelector ( '\,' rdbSourceSelector )* | QSTRING referenced by: relationClause rdbSourceSelector: relationSchemaName relationAlias rdbSourceSelector ::= relationSchemaName relationAlias? referenced by: rdbSourceSelectorFunctionParams relationClause relationSchemaName: relationAlias \. relationAlias relationSchemaName ::= relationAlias ( '\.' relationAlias )? referenced by: rdbSourceSelector relationAlias: qname VAR relationAlias ::= qname | VAR referenced by: rdbSourceSelector relationSchemaName sqlWhereClause: WHERE sqlWhereSpecList sqlWhereClause ::= WHERE^ sqlWhereSpecList referenced by: sqlForClause sqlWhereSpecList: sqlAttrSpecList sqlBooleanOp sqlWhereSpecList ::= sqlAttrSpecList ( sqlBooleanOp sqlAttrSpecList )* referenced by: sqlAttrSpecList sqlWhereClause sqlAttrSpecList: sqlAttrSpec generalComp sqlAttrSpec \( sqlWhereSpecList \) sqlAttrSpecList ::= sqlAttrSpec generalComp sqlAttrSpec | '\(' sqlWhereSpecList '\)' referenced by: sqlWhereSpecList sqlBooleanOp: and or sqlBooleanOp ::= 'and' | 'or' referenced by: sqlWhereSpecList sqlAttrSpec: qname VAR literal enclosedExpr sqlAttrSpec ::= qname | VAR | literal | enclosedExpr referenced by: sqlAttrSpecList WhiteSpace: \r|\n|\r\n \ t f WhiteSpace ::= '\r|\n|\r\n' | [\tf ] referenced by: WHERE WHITESPACE PN_CHARS_BASE: [A-Z] [a-z] PN_CHARS_BASE ::= [A-Za-z] referenced by: PN_CHARS_U PN_PREFIX PN_CHARS_U: PN_CHARS_BASE _ PN_CHARS_U ::= PN_CHARS_BASE | _ referenced by: PN_CHARS PN_LOCAL PN_CHARS: PN_CHARS_U - [0-9] PN_CHARS ::= PN_CHARS_U | [-0-9] referenced by: PN_LOCAL PN_PREFIX PN_PREFIX: PN_CHARS_BASE PN_CHARS \. PN_CHARS PN_PREFIX ::= PN_CHARS_BASE ( ( PN_CHARS | '\.' )* PN_CHARS )? referenced by: BLANK_NODE_LABEL BNODE_CONSTRUCT NCNAME PNAME_LN PNAME_NS PN_LOCAL: PN_CHARS_U [0-9] PN_CHARS \. PN_CHARS PN_LOCAL ::= ( PN_CHARS_U | [0-9] ) ( ( PN_CHARS | '\.' )* PN_CHARS )? referenced by: PNAME_LN var: \ $ [a-z] [A-Z] [a-z] [A-Z] [0-9] \ _ [\-\] . [a-z] [A-Z] [0-9] \ _ - var ::= [\$] [a-zA-Z] ( [a-zA-Z0-9\_\-\.]* [a-zA-Z0-9\_#x2D]+ )? referenced by: VAR digit: [0-9] digit ::= [0-9] referenced by: DECIMAL INTEGER QSTRING: \"(\"\"|[^\"])*\" \'(\'\'|[^\'])*\' QSTRING ::= '\"(\"\"|[^\"])*\"' | "\'(\'\'|[^\'])*\'" referenced by: baseURIDecl defaultNamespaceDecl dirAttributeValue literalConstruct namespaceDecl rdbSourceSelectorFunctionParams rdfLiteral string stringliteral INTEGER: digit INTEGER ::= digit+ referenced by: integerLiteral limitclause literalConstruct offsetclause sNumericLiteral DECIMAL: /* . digit DECIMAL ::= ( '/*' '.' digit+ )? referenced by: decimalLiteral sNumericLiteral EXPONENT: /* e E [0-9] EXPONENT ::= '/*' ( 'e' | 'E' ) [0-9]+ no referencesDOUBLET: DOUBLET ::= referenced by: sNumericLiteral AT: @ at AT ::= '@' | 'at' referenced by: abbrevForwardStep literalConstruct moduleImport positionalVar rdfLiteral schemaImport MINUS: \- minus MINUS ::= '\-' | 'minus' referenced by: additiveExpr additiveExpression minusGraphPattern sNumericLiteral unaryExpr unaryExpression IF: if IF ::= 'if' referenced by: builtInCall ifExpr WHERE: where WhiteSpace \{ WHERE ::= 'where' ( WhiteSpace* '\{' )? referenced by: constructQuery sWhereClause sqlWhereClause whereClause IMPORT: import IMPORT ::= 'import' referenced by: moduleImport schemaImport EXTERNAL: external EXTERNAL ::= 'external' referenced by: functionDecl varDecl BLANK_NODE_LABEL: _: PN_PREFIX BLANK_NODE_LABEL ::= '_:' PN_PREFIX referenced by: bnode primaryExpression BNODE_CONSTRUCT: _: PN_PREFIX /\{ BNODE_CONSTRUCT ::= '_:' PN_PREFIX? '/\{' referenced by: blankConstruct PNAME_LN: PN_PREFIX : PN_LOCAL PNAME_LN ::= PN_PREFIX? ':' PN_LOCAL referenced by: iri prefixedName rdfLiteral sparqlPrefixedName PNAME_NS: PN_PREFIX :/ [^\:{] PNAME_NS ::= PN_PREFIX? ':/' [^\:{] referenced by: prefixDecl prefixedName sparqlPrefixedName NCNAME: PN_PREFIX NCNAME ::= PN_PREFIX referenced by: compPIConstructor localPart moduleDecl moduleImport namespaceDecl piTest rdfLiteral schemaPrefix wildCard VAR: var VAR ::= var referenced by: bind builtInCall caseClause graphNodePath groupByCondition inlineDataFull inlineDataOneVar orderCondition param positionalVar primaryExpression quantifiedExpr relationAlias resource singleForClause singleLetClause sourceSelector sparqlVarOrFunction sqlAttrSpec sqlForClause sqlVarOrFunction typeSwitchExpr varDecl varOrIRIref varOrIRIref_ varOrTerm varOrTerm_ varRef verbSimple NCNAMEELM: [^\{}<(:)] NCNAMEELM ::= [^\{}<(:)]+ referenced by: dirElemContent CDATAELMEND: . \ ^ \n \t \r \]\]> CDATAELMEND ::= ( . | [\^] | '\n' | '\t' | '\r' )* '\]\]>' referenced by: cDataSection WHITESPACE: WhiteSpace WHITESPACE ::= WhiteSpace+ referenced by: dirAttribute dirAttributeList dirElemConstructor dirElemContent IRIREF: iri IRIREF ::= iri referenced by: baseDecl dataBlockValue iRIref iri prefixDecl rdfLiteral resource sourceSelector   ... generated by Railroad Diagram Generator R R