@traqula/parser-sparql-1-2 1.1.2 → 1.1.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -31,6 +31,8 @@ exports.sparql12ParserBuilder = core_1.ParserBuilder.create(parser_sparql_1_1_1.
31
31
  .patchRule(rules_sparql_1_2_1.gram.rdfLiteral)
32
32
  .patchRule(rules_sparql_1_2_1.gram.unaryExpression)
33
33
  .patchRule(rules_sparql_1_2_1.gram.prologue)
34
+ .patchRule(rules_sparql_1_2_1.gram.string)
35
+ .patchRule(rules_sparql_1_2_1.gram.iriFull)
34
36
  .deleteRule(rules_sparql_1_1_1.gram.graphTerm.name);
35
37
  /**
36
38
  * Parser that can parse a SPARQL 1.2 string into a SPARQL 1.2 AST.
@@ -41,7 +43,6 @@ class Parser {
41
43
  constructor(args = {}) {
42
44
  this.parser = exports.sparql12ParserBuilder.build({
43
45
  ...args,
44
- queryPreProcessor: rules_sparql_1_1_1.sparqlCodepointEscape,
45
46
  tokenVocabulary: rules_sparql_1_2_1.lex.sparql12LexerBuilder.tokenVocabulary,
46
47
  });
47
48
  this.defaultContext = (0, rules_sparql_1_2_1.completeParseContext)(args.defaultContext ?? {});
@@ -1 +1 @@
1
- {"version":3,"file":"Parser.js","sourceRoot":"","sources":["../../../lib/Parser.ts"],"names":[],"mappings":"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","sourcesContent":["import { ParserBuilder } from '@traqula/core';\nimport type { Patch, Wrap, ParserBuildArgs } from '@traqula/core';\nimport { sparql11ParserBuilder } from '@traqula/parser-sparql-1-1';\nimport {\n gram as g11,\n sparqlCodepointEscape,\n} from '@traqula/rules-sparql-1-1';\nimport type {\n TermIri,\n} from '@traqula/rules-sparql-1-1';\nimport { completeParseContext, copyParseContext, gram as S12, lex as l12 } from '@traqula/rules-sparql-1-2';\nimport type * as T12 from '@traqula/rules-sparql-1-2';\n\n/**\n * Pre-configured {@link ParserBuilder} for SPARQL 1.2, extending the SPARQL 1.1 parser builder\n * with SPARQL 1.2 grammar rules (e.g. reified triples, triple terms, VERSION declaration).\n * Use {@link ParserBuilder.create ParserBuilder.create(sparql12ParserBuilder)} to extend it\n * with additional rules.\n */\nexport const sparql12ParserBuilder = ParserBuilder.create(sparql11ParserBuilder)\n .widenContext<T12.SparqlContext>()\n .typePatch<{\n /// GeneralFile\n queryOrUpdate: [ T12.SparqlQuery];\n /// Query Unit file\n [g11.selectQuery.name]: [Omit<T12.QuerySelect, g11.HandledByBase>];\n [g11.subSelect.name]: [ Omit<T12.SubSelect, 'prefixes'>];\n [g11.selectClause.name]: [Wrap<Pick<T12.QuerySelect, 'variables' | 'distinct' | 'reduced'>>];\n [g11.constructQuery.name]: [Omit<T12.QueryConstruct, g11.HandledByBase>];\n [g11.describeQuery.name]: [Omit<T12.QueryDescribe, g11.HandledByBase>];\n [g11.askQuery.name]: [Omit<T12.QueryAsk, g11.HandledByBase>];\n [g11.valuesClause.name]: [T12.PatternValues[] | undefined];\n [g11.constructTemplate.name]: [Wrap<T12.PatternBgp>];\n [g11.constructTriples.name]: [T12.PatternBgp];\n /// Update Unit file\n [g11.update1.name]: [T12.UpdateOperation];\n [g11.load.name]: [T12.UpdateOperationLoad];\n [g11.clear.name]: [T12.UpdateOperationClear];\n [g11.drop.name]: [T12.UpdateOperationDrop];\n [g11.create.name]: [T12.UpdateOperationCreate];\n [g11.add.name]: [T12.UpdateOperationAdd];\n [g11.move.name]: [T12.UpdateOperationMove];\n [g11.copy.name]: [T12.UpdateOperationCopy];\n [g11.quadPattern.name]: [Wrap<T12.Quads[]>];\n [g11.quadData.name]: [Wrap<T12.Quads[]>];\n [g11.insertData.name]: [T12.UpdateOperationInsertData];\n [g11.deleteData.name]: [T12.UpdateOperationDeleteData];\n [g11.deleteWhere.name]: [T12.UpdateOperationDeleteWhere];\n [g11.modify.name]: [T12.UpdateOperationModify];\n [g11.deleteClause.name]: [Wrap<T12.Quads[]>];\n [g11.insertClause.name]: [Wrap<T12.Quads[]>];\n [g11.graphOrDefault.name]: [T12.GraphRefDefault | T12.GraphRefSpecific];\n [g11.graphRef.name]: [T12.GraphRefSpecific];\n [g11.graphRefAll.name]: [T12.GraphRef];\n [g11.quads.name]: [Wrap<T12.Quads[]>];\n [g11.quadsNotTriples.name]: [T12.GraphQuads];\n /// Built-in functions\n [g11.builtInStr.name]: [T12.ExpressionOperation];\n [g11.builtInLang.name]: [T12.ExpressionOperation];\n [g11.builtInLangmatches.name]: [T12.ExpressionOperation];\n [g11.builtInDatatype.name]: [T12.ExpressionOperation];\n [g11.builtInBound.name]: [T12.ExpressionOperation];\n [g11.builtInIri.name]: [T12.ExpressionOperation];\n [g11.builtInUri.name]: [T12.ExpressionOperation];\n [g11.builtInBnodeSparqlJs.name]: [T12.ExpressionOperation];\n [g11.builtInRand.name]: [T12.ExpressionOperation];\n [g11.builtInAbs.name]: [T12.ExpressionOperation];\n [g11.builtInCeil.name]: [T12.ExpressionOperation];\n [g11.builtInFloor.name]: [T12.ExpressionOperation];\n [g11.builtInRound.name]: [T12.ExpressionOperation];\n [g11.builtInConcat.name]: [T12.ExpressionOperation];\n [g11.substringExpression.name]: [T12.ExpressionOperation];\n [g11.builtInStrlen.name]: [T12.ExpressionOperation];\n [g11.strReplaceExpression.name]: [T12.ExpressionOperation];\n [g11.builtInUcase.name]: [T12.ExpressionOperation];\n [g11.builtInLcase.name]: [T12.ExpressionOperation];\n [g11.builtInEncode_for_uri.name]: [T12.ExpressionOperation];\n [g11.builtInContains.name]: [T12.ExpressionOperation];\n [g11.builtInStrstarts.name]: [T12.ExpressionOperation];\n [g11.builtInStrends.name]: [T12.ExpressionOperation];\n [g11.builtInStrbefore.name]: [T12.ExpressionOperation];\n [g11.builtInStrafter.name]: [T12.ExpressionOperation];\n [g11.builtInYear.name]: [T12.ExpressionOperation];\n [g11.builtInMonth.name]: [T12.ExpressionOperation];\n [g11.builtInDay.name]: [T12.ExpressionOperation];\n [g11.builtInHours.name]: [T12.ExpressionOperation];\n [g11.builtInMinutes.name]: [T12.ExpressionOperation];\n [g11.builtInSeconds.name]: [T12.ExpressionOperation];\n [g11.builtInTimezone.name]: [T12.ExpressionOperation];\n [g11.builtInTz.name]: [T12.ExpressionOperation];\n [g11.builtInNow.name]: [T12.ExpressionOperation];\n [g11.builtInUuid.name]: [T12.ExpressionOperation];\n [g11.builtInStruuid.name]: [T12.ExpressionOperation];\n [g11.builtInMd5.name]: [T12.ExpressionOperation];\n [g11.builtInSha1.name]: [T12.ExpressionOperation];\n [g11.builtInSha256.name]: [T12.ExpressionOperation];\n [g11.builtInSha384.name]: [T12.ExpressionOperation];\n [g11.builtInSha512.name]: [T12.ExpressionOperation];\n [g11.builtInCoalesce.name]: [T12.ExpressionOperation];\n [g11.builtInIf.name]: [T12.ExpressionOperation];\n [g11.builtInStrlang.name]: [T12.ExpressionOperation];\n [g11.builtInStrdt.name]: [T12.ExpressionOperation];\n [g11.builtInSameterm.name]: [T12.ExpressionOperation];\n [g11.builtInIsiri.name]: [T12.ExpressionOperation];\n [g11.builtInIsuri.name]: [T12.ExpressionOperation];\n [g11.builtInIsblank.name]: [T12.ExpressionOperation];\n [g11.builtInIsliteral.name]: [T12.ExpressionOperation];\n [g11.builtInIsnumeric.name]: [T12.ExpressionOperation];\n [g11.existsFunc.name]: [T12.ExpressionPatternOperation];\n [g11.notExistsFunc.name]: [T12.ExpressionPatternOperation];\n [g11.aggregateCount.name]: [T12.ExpressionAggregateOnWildcard | T12.ExpressionAggregateDefault];\n [g11.aggregateSum.name]: [T12.ExpressionAggregateDefault];\n [g11.aggregateMin.name]: [T12.ExpressionAggregateDefault];\n [g11.aggregateMax.name]: [T12.ExpressionAggregateDefault];\n [g11.aggregateAvg.name]: [T12.ExpressionAggregateDefault];\n [g11.aggregateSample.name]: [T12.ExpressionAggregateDefault];\n [g11.aggregateGroup_concat.name]: [T12.ExpressionAggregateDefault | T12.ExpressionAggregateSeparator];\n [g11.aggregate.name]: [T12.ExpressionAggregate];\n [g11.builtInCall.name]: [T12.Expression];\n /// DatasetClause\n [g11.datasetClause.name]: [Wrap<T12.DatasetClauses['clauses'][0]>];\n [g11.defaultGraphClause.name]: [T12.TermIri];\n [g11.usingClause.name]: [Wrap<T12.DatasetClauses['clauses'][0]>];\n [g11.datasetClauseStar.name]: [T12.DatasetClauses];\n [g11.usingClauseStar.name]: [T12.DatasetClauses];\n [g11.namedGraphClause.name]: [Wrap<T12.TermIri>];\n [g11.sourceSelector.name]: [T12.TermIri];\n // Expression file\n [g11.argList.name]: [Wrap<Patch<g11.IArgList, { args: T12.Expression[] }>>];\n [g11.expressionList.name]: [Wrap<T12.Expression[]>];\n [g11.expression.name]: [T12.Expression];\n [g11.conditionalOrExpression.name]: [T12.ExpressionOperation | T12.Expression];\n [g11.conditionalAndExpression.name]: [T12.Expression];\n [g11.valueLogical.name]: [T12.Expression];\n [g11.relationalExpression.name]: [T12.ExpressionOperation | T12.Expression];\n [g11.numericExpression.name]: [T12.Expression];\n [g11.additiveExpression.name]: [T12.Expression];\n [g11.multiplicativeExpression.name]: [T12.Expression];\n [g11.unaryExpression.name]: [T12.Expression];\n [g11.primaryExpression.name]: [T12.Expression];\n [g11.brackettedExpression.name]: [T12.Expression];\n [g11.iriOrFunction.name]: [T12.TermIri | T12.ExpressionFunctionCall];\n /// General\n [g11.prologue.name]: [T12.ContextDefinition[]];\n [g11.baseDecl.name]: [T12.ContextDefinition];\n [g11.prefixDecl.name]: [T12.ContextDefinition];\n [g11.verb.name]: [T12.TermVariable | T12.TermIri];\n [g11.varOrTerm.name]: [T12.Term];\n [g11.varOrIri.name]: [T12.TermIri | T12.TermVariable];\n [g11.var_.name]: [T12.TermVariable];\n [g11.graphTerm.name]: [T12.GraphTerm];\n /// Literals\n [g11.rdfLiteral.name]: [T12.TermLiteral];\n [g11.numericLiteral.name]: [T12.TermLiteralTyped];\n [g11.numericLiteralUnsigned.name]: [T12.TermLiteralTyped];\n [g11.numericLiteralPositive.name]: [T12.TermLiteralTyped];\n [g11.numericLiteralNegative.name]: [T12.TermLiteralTyped];\n [g11.booleanLiteral.name]: [T12.TermLiteralTyped];\n [g11.string.name]: [T12.TermLiteralStr];\n [g11.iri.name]: [T12.TermIri];\n [g11.iriFull.name]: [T12.TermIriFull];\n [g11.prefixedName.name]: [T12.TermIriPrefixed];\n [g11.blankNode.name]: [T12.TermBlank];\n [g11.verbA.name]: [T12.TermIriFull];\n /// / Paths: unchanged\n /// / SolutionModifiers\n [g11.solutionModifier.name]: [T12.SolutionModifiers];\n [g11.groupClause.name]: [T12.SolutionModifierGroup];\n [g11.groupCondition.name]: [T12.Expression | T12.SolutionModifierGroupBind];\n [g11.havingClause.name]: [T12.SolutionModifierHaving];\n [g11.havingCondition.name]: [T12.Expression];\n [g11.orderClause.name]: [T12.SolutionModifierOrder];\n [g11.orderCondition.name]: [T12.Ordering];\n [g11.limitOffsetClauses.name]: [T12.SolutionModifierLimitOffset];\n [g11.limitClause.name]: [Wrap<number>];\n [g11.offsetClause.name]: [ Wrap<number>];\n /// tripleBlock\n [g11.triplesBlock.name]: [T12.PatternBgp];\n [g11.triplesSameSubject.name]: [T12.BasicGraphPattern];\n [g11.triplesSameSubjectPath.name]: [T12.BasicGraphPattern];\n [g11.triplesTemplate.name]: [T12.PatternBgp];\n [g11.propertyList.name]: [T12.TripleNesting[]];\n [g11.propertyListPath.name]: [T12.TripleNesting[]];\n [g11.propertyListNotEmpty.name]: [T12.TripleNesting[]];\n [g11.propertyListPathNotEmpty.name]: [T12.TripleNesting[]];\n [g11.verbPath.name]: [T12.Path];\n [g11.verbSimple.name]: [T12.TermVariable];\n [g11.objectList.name]: [T12.TripleNesting[], [ T12.TripleNesting['subject'], T12.TripleNesting['predicate'] ]];\n [g11.objectListPath.name]: [T12.TripleNesting, [ T12.TripleNesting['subject'], T12.TripleNesting['predicate'] ]];\n [g11.object.name]: [T12.TripleNesting, [ T12.TripleNesting['subject'], T12.TripleNesting['predicate'] ]];\n [g11.objectPath.name]: [T12.TripleNesting[], [ T12.TripleNesting['subject'], T12.TripleNesting['predicate'] ]];\n [g11.collection.name]: [T12.TripleCollectionList];\n [g11.collectionPath.name]: [T12.TripleCollectionList];\n [g11.triplesNode.name]: [T12.TripleCollection];\n [g11.triplesNodePath.name]: [T12.TripleCollection];\n [g11.blankNodePropertyList.name]: [T12.TripleCollectionBlankNodeProperties];\n [g11.blankNodePropertyListPath.name]: [T12.TripleCollectionBlankNodeProperties];\n [g11.graphNode.name]: [T12.Term | T12.TripleCollection];\n [g11.graphNodePath.name]: [T12.Term | T12.TripleCollection];\n /// WhereClause\n [g11.whereClause.name]: [Wrap<T12.PatternGroup>];\n [g11.groupGraphPattern.name]: [T12.PatternGroup];\n [g11.groupGraphPatternSub.name]: [T12.Pattern[]];\n [g11.graphPatternNotTriples.name]: [Exclude<T12.Pattern, T12.SubSelect | T12.PatternBgp>];\n [g11.optionalGraphPattern.name]: [T12.PatternOptional];\n [g11.graphGraphPattern.name]: [T12.PatternGraph];\n [g11.serviceGraphPattern.name]: [T12.PatternService];\n [g11.bind.name]: [T12.PatternBind];\n [g11.inlineData.name]: [T12.PatternValues];\n [g11.dataBlock.name]: [T12.PatternValues];\n [g11.inlineDataOneVar.name]: [T12.PatternValues];\n [g11.inlineDataFull.name]: [T12.PatternValues];\n [g11.dataBlockValue.name]: [T12.TermIri | T12.TermLiteral | undefined];\n [g11.minusGraphPattern.name]: [T12.PatternMinus];\n [g11.groupOrUnionGraphPattern.name]: [T12.PatternGroup | T12.PatternUnion];\n [g11.filter.name]: [T12.PatternFilter];\n [g11.constraint.name]: [T12.Expression];\n [g11.functionCall.name]: [T12.ExpressionFunctionCall];\n }>()\n .addMany(\n S12.reifiedTripleBlock,\n S12.reifiedTripleBlockPath,\n S12.reifier,\n S12.varOrReifierId,\n S12.annotation,\n S12.annotationPath,\n S12.annotationBlockPath,\n S12.annotationBlock,\n S12.reifiedTriple,\n S12.reifiedTripleSubject,\n S12.reifiedTripleObject,\n S12.tripleTerm,\n S12.tripleTermSubject,\n S12.tripleTermObject,\n S12.tripleTermData,\n S12.tripleTermDataSubject,\n S12.tripleTermDataObject,\n S12.exprTripleTerm,\n S12.exprTripleTermSubject,\n S12.exprTripleTermObject,\n )\n .addMany(\n S12.versionDecl,\n S12.versionSpecifier,\n )\n .addMany(\n S12.buildInLangDir,\n S12.buildInLangStrDir,\n S12.buildInHasLang,\n S12.buildInHasLangDir,\n S12.buildInIsTriple,\n S12.buildInTriple,\n S12.buildInSubject,\n S12.buildInPredicate,\n S12.buildInObject,\n )\n .patchRule(S12.selectQuery)\n .patchRule(S12.dataBlockValue)\n .patchRule(S12.triplesSameSubject)\n .patchRule(S12.triplesSameSubjectPath)\n .patchRule(S12.object)\n .patchRule(S12.objectPath)\n .patchRule(S12.graphNode)\n .patchRule(S12.graphNodePath)\n .patchRule(S12.varOrTerm)\n .patchRule(S12.primaryExpression)\n .patchRule(S12.builtInCall)\n .patchRule(S12.rdfLiteral)\n .patchRule(S12.unaryExpression)\n .patchRule(S12.prologue)\n .deleteRule(g11.graphTerm.name);\n\nexport type SparqlParser = ReturnType<typeof sparql12ParserBuilder.build>;\n\n/**\n * Parser that can parse a SPARQL 1.2 string into a SPARQL 1.2 AST.\n */\nexport class Parser {\n private readonly parser: SparqlParser;\n protected readonly defaultContext: T12.SparqlContext;\n\n public constructor(\n args: Pick<ParserBuildArgs, 'parserConfig' | 'lexerConfig'> & { defaultContext?: Partial<T12.SparqlContext> } = {},\n ) {\n this.parser = sparql12ParserBuilder.build({\n ...args,\n queryPreProcessor: sparqlCodepointEscape,\n tokenVocabulary: l12.sparql12LexerBuilder.tokenVocabulary,\n });\n this.defaultContext = completeParseContext(args.defaultContext ?? {});\n }\n\n /**\n * Parse a query string starting from the\n * [QueryUnit](https://www.w3.org/TR/sparql12-query/#rQueryUnit)\n * or [QueryUpdate](https://www.w3.org/TR/sparql12-query/#rUpdateUnit) rules.\n * @param query\n * @param context\n */\n public parse(query: string, context: Partial<T12.SparqlContext> = {}): T12.SparqlQuery {\n const ast = this.parser.queryOrUpdate(query, copyParseContext({ ...this.defaultContext, ...context }));\n ast.loc = this.defaultContext.astFactory.sourceLocationInlinedSource(query, ast.loc, 0, Number.MAX_SAFE_INTEGER);\n return ast;\n }\n\n /**\n * Parse a query string starting from the [Path](https://www.w3.org/TR/sparql12-query/#rPath) grammar rule.\n * @param query\n * @param context\n */\n public parsePath(\n query: string,\ncontext: Partial<T12.SparqlContext> = {},\n ): (T12.Path & { prefixes: object }) | TermIri {\n const ast = this.parser.path(query, copyParseContext({ ...this.defaultContext, ...context }));\n ast.loc = this.defaultContext.astFactory.sourceLocationInlinedSource(query, ast.loc, 0, Number.MAX_SAFE_INTEGER);\n if (this.defaultContext.astFactory.isPathPure(ast)) {\n return {\n ...ast,\n prefixes: {},\n };\n }\n return ast;\n }\n}\n"]}
1
+ {"version":3,"file":"Parser.js","sourceRoot":"","sources":["../../../lib/Parser.ts"],"names":[],"mappings":";;;AAAA,wCAA8C;AAE9C,kEAAmE;AACnE,gEAEmC;AAInC,gEAA4G;AAG5G;;;;;GAKG;AACU,QAAA,qBAAqB,GAAG,oBAAa,CAAC,MAAM,CAAC,yCAAqB,CAAC;KAC7E,YAAY,EAAqB;KACjC,SAAS,EAqMN;KACH,OAAO,CACN,uBAAG,CAAC,kBAAkB,EACtB,uBAAG,CAAC,sBAAsB,EAC1B,uBAAG,CAAC,OAAO,EACX,uBAAG,CAAC,cAAc,EAClB,uBAAG,CAAC,UAAU,EACd,uBAAG,CAAC,cAAc,EAClB,uBAAG,CAAC,mBAAmB,EACvB,uBAAG,CAAC,eAAe,EACnB,uBAAG,CAAC,aAAa,EACjB,uBAAG,CAAC,oBAAoB,EACxB,uBAAG,CAAC,mBAAmB,EACvB,uBAAG,CAAC,UAAU,EACd,uBAAG,CAAC,iBAAiB,EACrB,uBAAG,CAAC,gBAAgB,EACpB,uBAAG,CAAC,cAAc,EAClB,uBAAG,CAAC,qBAAqB,EACzB,uBAAG,CAAC,oBAAoB,EACxB,uBAAG,CAAC,cAAc,EAClB,uBAAG,CAAC,qBAAqB,EACzB,uBAAG,CAAC,oBAAoB,CACzB;KACA,OAAO,CACN,uBAAG,CAAC,WAAW,EACf,uBAAG,CAAC,gBAAgB,CACrB;KACA,OAAO,CACN,uBAAG,CAAC,cAAc,EAClB,uBAAG,CAAC,iBAAiB,EACrB,uBAAG,CAAC,cAAc,EAClB,uBAAG,CAAC,iBAAiB,EACrB,uBAAG,CAAC,eAAe,EACnB,uBAAG,CAAC,aAAa,EACjB,uBAAG,CAAC,cAAc,EAClB,uBAAG,CAAC,gBAAgB,EACpB,uBAAG,CAAC,aAAa,CAClB;KACA,SAAS,CAAC,uBAAG,CAAC,WAAW,CAAC;KAC1B,SAAS,CAAC,uBAAG,CAAC,cAAc,CAAC;KAC7B,SAAS,CAAC,uBAAG,CAAC,kBAAkB,CAAC;KACjC,SAAS,CAAC,uBAAG,CAAC,sBAAsB,CAAC;KACrC,SAAS,CAAC,uBAAG,CAAC,MAAM,CAAC;KACrB,SAAS,CAAC,uBAAG,CAAC,UAAU,CAAC;KACzB,SAAS,CAAC,uBAAG,CAAC,SAAS,CAAC;KACxB,SAAS,CAAC,uBAAG,CAAC,aAAa,CAAC;KAC5B,SAAS,CAAC,uBAAG,CAAC,SAAS,CAAC;KACxB,SAAS,CAAC,uBAAG,CAAC,iBAAiB,CAAC;KAChC,SAAS,CAAC,uBAAG,CAAC,WAAW,CAAC;KAC1B,SAAS,CAAC,uBAAG,CAAC,UAAU,CAAC;KACzB,SAAS,CAAC,uBAAG,CAAC,eAAe,CAAC;KAC9B,SAAS,CAAC,uBAAG,CAAC,QAAQ,CAAC;KACvB,SAAS,CAAC,uBAAG,CAAC,MAAM,CAAC;KACrB,SAAS,CAAC,uBAAG,CAAC,OAAO,CAAC;KACtB,UAAU,CAAC,uBAAG,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;AAIlC;;GAEG;AACH,MAAa,MAAM;IACA,MAAM,CAAe;IACnB,cAAc,CAAoB;IAErD,YACE,OAAgH,EAAE;QAElH,IAAI,CAAC,MAAM,GAAG,6BAAqB,CAAC,KAAK,CAAC;YACxC,GAAG,IAAI;YACP,eAAe,EAAE,sBAAG,CAAC,oBAAoB,CAAC,eAAe;SAC1D,CAAC,CAAC;QACH,IAAI,CAAC,cAAc,GAAG,IAAA,uCAAoB,EAAC,IAAI,CAAC,cAAc,IAAI,EAAE,CAAC,CAAC;IACxE,CAAC;IAED;;;;;;OAMG;IACI,KAAK,CAAC,KAAa,EAAE,UAAsC,EAAE;QAClE,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,EAAE,IAAA,mCAAgB,EAAC,EAAE,GAAG,IAAI,CAAC,cAAc,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC,CAAC;QACvG,GAAG,CAAC,GAAG,GAAG,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,2BAA2B,CAAC,KAAK,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC,EAAE,MAAM,CAAC,gBAAgB,CAAC,CAAC;QACjH,OAAO,GAAG,CAAC;IACb,CAAC;IAED;;;;OAIG;IACI,SAAS,CACd,KAAa,EACjB,UAAsC,EAAE;QAEpC,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,IAAA,mCAAgB,EAAC,EAAE,GAAG,IAAI,CAAC,cAAc,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC,CAAC;QAC9F,GAAG,CAAC,GAAG,GAAG,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,2BAA2B,CAAC,KAAK,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC,EAAE,MAAM,CAAC,gBAAgB,CAAC,CAAC;QACjH,IAAI,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YACnD,OAAO;gBACL,GAAG,GAAG;gBACN,QAAQ,EAAE,EAAE;aACb,CAAC;QACJ,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC;CACF;AA9CD,wBA8CC","sourcesContent":["import { ParserBuilder } from '@traqula/core';\nimport type { Patch, Wrap, ParserBuildArgs } from '@traqula/core';\nimport { sparql11ParserBuilder } from '@traqula/parser-sparql-1-1';\nimport {\n gram as g11,\n} from '@traqula/rules-sparql-1-1';\nimport type {\n TermIri,\n} from '@traqula/rules-sparql-1-1';\nimport { completeParseContext, copyParseContext, gram as S12, lex as l12 } from '@traqula/rules-sparql-1-2';\nimport type * as T12 from '@traqula/rules-sparql-1-2';\n\n/**\n * Pre-configured {@link ParserBuilder} for SPARQL 1.2, extending the SPARQL 1.1 parser builder\n * with SPARQL 1.2 grammar rules (e.g. reified triples, triple terms, VERSION declaration).\n * Use {@link ParserBuilder.create ParserBuilder.create(sparql12ParserBuilder)} to extend it\n * with additional rules.\n */\nexport const sparql12ParserBuilder = ParserBuilder.create(sparql11ParserBuilder)\n .widenContext<T12.SparqlContext>()\n .typePatch<{\n /// GeneralFile\n queryOrUpdate: [ T12.SparqlQuery];\n /// Query Unit file\n [g11.selectQuery.name]: [Omit<T12.QuerySelect, g11.HandledByBase>];\n [g11.subSelect.name]: [ Omit<T12.SubSelect, 'prefixes'>];\n [g11.selectClause.name]: [Wrap<Pick<T12.QuerySelect, 'variables' | 'distinct' | 'reduced'>>];\n [g11.constructQuery.name]: [Omit<T12.QueryConstruct, g11.HandledByBase>];\n [g11.describeQuery.name]: [Omit<T12.QueryDescribe, g11.HandledByBase>];\n [g11.askQuery.name]: [Omit<T12.QueryAsk, g11.HandledByBase>];\n [g11.valuesClause.name]: [T12.PatternValues[] | undefined];\n [g11.constructTemplate.name]: [Wrap<T12.PatternBgp>];\n [g11.constructTriples.name]: [T12.PatternBgp];\n /// Update Unit file\n [g11.update1.name]: [T12.UpdateOperation];\n [g11.load.name]: [T12.UpdateOperationLoad];\n [g11.clear.name]: [T12.UpdateOperationClear];\n [g11.drop.name]: [T12.UpdateOperationDrop];\n [g11.create.name]: [T12.UpdateOperationCreate];\n [g11.add.name]: [T12.UpdateOperationAdd];\n [g11.move.name]: [T12.UpdateOperationMove];\n [g11.copy.name]: [T12.UpdateOperationCopy];\n [g11.quadPattern.name]: [Wrap<T12.Quads[]>];\n [g11.quadData.name]: [Wrap<T12.Quads[]>];\n [g11.insertData.name]: [T12.UpdateOperationInsertData];\n [g11.deleteData.name]: [T12.UpdateOperationDeleteData];\n [g11.deleteWhere.name]: [T12.UpdateOperationDeleteWhere];\n [g11.modify.name]: [T12.UpdateOperationModify];\n [g11.deleteClause.name]: [Wrap<T12.Quads[]>];\n [g11.insertClause.name]: [Wrap<T12.Quads[]>];\n [g11.graphOrDefault.name]: [T12.GraphRefDefault | T12.GraphRefSpecific];\n [g11.graphRef.name]: [T12.GraphRefSpecific];\n [g11.graphRefAll.name]: [T12.GraphRef];\n [g11.quads.name]: [Wrap<T12.Quads[]>];\n [g11.quadsNotTriples.name]: [T12.GraphQuads];\n /// Built-in functions\n [g11.builtInStr.name]: [T12.ExpressionOperation];\n [g11.builtInLang.name]: [T12.ExpressionOperation];\n [g11.builtInLangmatches.name]: [T12.ExpressionOperation];\n [g11.builtInDatatype.name]: [T12.ExpressionOperation];\n [g11.builtInBound.name]: [T12.ExpressionOperation];\n [g11.builtInIri.name]: [T12.ExpressionOperation];\n [g11.builtInUri.name]: [T12.ExpressionOperation];\n [g11.builtInBnodeSparqlJs.name]: [T12.ExpressionOperation];\n [g11.builtInRand.name]: [T12.ExpressionOperation];\n [g11.builtInAbs.name]: [T12.ExpressionOperation];\n [g11.builtInCeil.name]: [T12.ExpressionOperation];\n [g11.builtInFloor.name]: [T12.ExpressionOperation];\n [g11.builtInRound.name]: [T12.ExpressionOperation];\n [g11.builtInConcat.name]: [T12.ExpressionOperation];\n [g11.substringExpression.name]: [T12.ExpressionOperation];\n [g11.builtInStrlen.name]: [T12.ExpressionOperation];\n [g11.strReplaceExpression.name]: [T12.ExpressionOperation];\n [g11.builtInUcase.name]: [T12.ExpressionOperation];\n [g11.builtInLcase.name]: [T12.ExpressionOperation];\n [g11.builtInEncode_for_uri.name]: [T12.ExpressionOperation];\n [g11.builtInContains.name]: [T12.ExpressionOperation];\n [g11.builtInStrstarts.name]: [T12.ExpressionOperation];\n [g11.builtInStrends.name]: [T12.ExpressionOperation];\n [g11.builtInStrbefore.name]: [T12.ExpressionOperation];\n [g11.builtInStrafter.name]: [T12.ExpressionOperation];\n [g11.builtInYear.name]: [T12.ExpressionOperation];\n [g11.builtInMonth.name]: [T12.ExpressionOperation];\n [g11.builtInDay.name]: [T12.ExpressionOperation];\n [g11.builtInHours.name]: [T12.ExpressionOperation];\n [g11.builtInMinutes.name]: [T12.ExpressionOperation];\n [g11.builtInSeconds.name]: [T12.ExpressionOperation];\n [g11.builtInTimezone.name]: [T12.ExpressionOperation];\n [g11.builtInTz.name]: [T12.ExpressionOperation];\n [g11.builtInNow.name]: [T12.ExpressionOperation];\n [g11.builtInUuid.name]: [T12.ExpressionOperation];\n [g11.builtInStruuid.name]: [T12.ExpressionOperation];\n [g11.builtInMd5.name]: [T12.ExpressionOperation];\n [g11.builtInSha1.name]: [T12.ExpressionOperation];\n [g11.builtInSha256.name]: [T12.ExpressionOperation];\n [g11.builtInSha384.name]: [T12.ExpressionOperation];\n [g11.builtInSha512.name]: [T12.ExpressionOperation];\n [g11.builtInCoalesce.name]: [T12.ExpressionOperation];\n [g11.builtInIf.name]: [T12.ExpressionOperation];\n [g11.builtInStrlang.name]: [T12.ExpressionOperation];\n [g11.builtInStrdt.name]: [T12.ExpressionOperation];\n [g11.builtInSameterm.name]: [T12.ExpressionOperation];\n [g11.builtInIsiri.name]: [T12.ExpressionOperation];\n [g11.builtInIsuri.name]: [T12.ExpressionOperation];\n [g11.builtInIsblank.name]: [T12.ExpressionOperation];\n [g11.builtInIsliteral.name]: [T12.ExpressionOperation];\n [g11.builtInIsnumeric.name]: [T12.ExpressionOperation];\n [g11.existsFunc.name]: [T12.ExpressionPatternOperation];\n [g11.notExistsFunc.name]: [T12.ExpressionPatternOperation];\n [g11.aggregateCount.name]: [T12.ExpressionAggregateOnWildcard | T12.ExpressionAggregateDefault];\n [g11.aggregateSum.name]: [T12.ExpressionAggregateDefault];\n [g11.aggregateMin.name]: [T12.ExpressionAggregateDefault];\n [g11.aggregateMax.name]: [T12.ExpressionAggregateDefault];\n [g11.aggregateAvg.name]: [T12.ExpressionAggregateDefault];\n [g11.aggregateSample.name]: [T12.ExpressionAggregateDefault];\n [g11.aggregateGroup_concat.name]: [T12.ExpressionAggregateDefault | T12.ExpressionAggregateSeparator];\n [g11.aggregate.name]: [T12.ExpressionAggregate];\n [g11.builtInCall.name]: [T12.Expression];\n /// DatasetClause\n [g11.datasetClause.name]: [Wrap<T12.DatasetClauses['clauses'][0]>];\n [g11.defaultGraphClause.name]: [T12.TermIri];\n [g11.usingClause.name]: [Wrap<T12.DatasetClauses['clauses'][0]>];\n [g11.datasetClauseStar.name]: [T12.DatasetClauses];\n [g11.usingClauseStar.name]: [T12.DatasetClauses];\n [g11.namedGraphClause.name]: [Wrap<T12.TermIri>];\n [g11.sourceSelector.name]: [T12.TermIri];\n // Expression file\n [g11.argList.name]: [Wrap<Patch<g11.IArgList, { args: T12.Expression[] }>>];\n [g11.expressionList.name]: [Wrap<T12.Expression[]>];\n [g11.expression.name]: [T12.Expression];\n [g11.conditionalOrExpression.name]: [T12.ExpressionOperation | T12.Expression];\n [g11.conditionalAndExpression.name]: [T12.Expression];\n [g11.valueLogical.name]: [T12.Expression];\n [g11.relationalExpression.name]: [T12.ExpressionOperation | T12.Expression];\n [g11.numericExpression.name]: [T12.Expression];\n [g11.additiveExpression.name]: [T12.Expression];\n [g11.multiplicativeExpression.name]: [T12.Expression];\n [g11.unaryExpression.name]: [T12.Expression];\n [g11.primaryExpression.name]: [T12.Expression];\n [g11.brackettedExpression.name]: [T12.Expression];\n [g11.iriOrFunction.name]: [T12.TermIri | T12.ExpressionFunctionCall];\n /// General\n [g11.prologue.name]: [T12.ContextDefinition[]];\n [g11.baseDecl.name]: [T12.ContextDefinition];\n [g11.prefixDecl.name]: [T12.ContextDefinition];\n [g11.verb.name]: [T12.TermVariable | T12.TermIri];\n [g11.varOrTerm.name]: [T12.Term];\n [g11.varOrIri.name]: [T12.TermIri | T12.TermVariable];\n [g11.var_.name]: [T12.TermVariable];\n [g11.graphTerm.name]: [T12.GraphTerm];\n /// Literals\n [g11.rdfLiteral.name]: [T12.TermLiteral];\n [g11.numericLiteral.name]: [T12.TermLiteralTyped];\n [g11.numericLiteralUnsigned.name]: [T12.TermLiteralTyped];\n [g11.numericLiteralPositive.name]: [T12.TermLiteralTyped];\n [g11.numericLiteralNegative.name]: [T12.TermLiteralTyped];\n [g11.booleanLiteral.name]: [T12.TermLiteralTyped];\n [g11.string.name]: [T12.TermLiteralStr];\n [g11.iri.name]: [T12.TermIri];\n [g11.iriFull.name]: [T12.TermIriFull];\n [g11.prefixedName.name]: [T12.TermIriPrefixed];\n [g11.blankNode.name]: [T12.TermBlank];\n [g11.verbA.name]: [T12.TermIriFull];\n /// / Paths: unchanged\n /// / SolutionModifiers\n [g11.solutionModifier.name]: [T12.SolutionModifiers];\n [g11.groupClause.name]: [T12.SolutionModifierGroup];\n [g11.groupCondition.name]: [T12.Expression | T12.SolutionModifierGroupBind];\n [g11.havingClause.name]: [T12.SolutionModifierHaving];\n [g11.havingCondition.name]: [T12.Expression];\n [g11.orderClause.name]: [T12.SolutionModifierOrder];\n [g11.orderCondition.name]: [T12.Ordering];\n [g11.limitOffsetClauses.name]: [T12.SolutionModifierLimitOffset];\n [g11.limitClause.name]: [Wrap<number>];\n [g11.offsetClause.name]: [ Wrap<number>];\n /// tripleBlock\n [g11.triplesBlock.name]: [T12.PatternBgp];\n [g11.triplesSameSubject.name]: [T12.BasicGraphPattern];\n [g11.triplesSameSubjectPath.name]: [T12.BasicGraphPattern];\n [g11.triplesTemplate.name]: [T12.PatternBgp];\n [g11.propertyList.name]: [T12.TripleNesting[]];\n [g11.propertyListPath.name]: [T12.TripleNesting[]];\n [g11.propertyListNotEmpty.name]: [T12.TripleNesting[]];\n [g11.propertyListPathNotEmpty.name]: [T12.TripleNesting[]];\n [g11.verbPath.name]: [T12.Path];\n [g11.verbSimple.name]: [T12.TermVariable];\n [g11.objectList.name]: [T12.TripleNesting[], [ T12.TripleNesting['subject'], T12.TripleNesting['predicate'] ]];\n [g11.objectListPath.name]: [T12.TripleNesting, [ T12.TripleNesting['subject'], T12.TripleNesting['predicate'] ]];\n [g11.object.name]: [T12.TripleNesting, [ T12.TripleNesting['subject'], T12.TripleNesting['predicate'] ]];\n [g11.objectPath.name]: [T12.TripleNesting[], [ T12.TripleNesting['subject'], T12.TripleNesting['predicate'] ]];\n [g11.collection.name]: [T12.TripleCollectionList];\n [g11.collectionPath.name]: [T12.TripleCollectionList];\n [g11.triplesNode.name]: [T12.TripleCollection];\n [g11.triplesNodePath.name]: [T12.TripleCollection];\n [g11.blankNodePropertyList.name]: [T12.TripleCollectionBlankNodeProperties];\n [g11.blankNodePropertyListPath.name]: [T12.TripleCollectionBlankNodeProperties];\n [g11.graphNode.name]: [T12.Term | T12.TripleCollection];\n [g11.graphNodePath.name]: [T12.Term | T12.TripleCollection];\n /// WhereClause\n [g11.whereClause.name]: [Wrap<T12.PatternGroup>];\n [g11.groupGraphPattern.name]: [T12.PatternGroup];\n [g11.groupGraphPatternSub.name]: [T12.Pattern[]];\n [g11.graphPatternNotTriples.name]: [Exclude<T12.Pattern, T12.SubSelect | T12.PatternBgp>];\n [g11.optionalGraphPattern.name]: [T12.PatternOptional];\n [g11.graphGraphPattern.name]: [T12.PatternGraph];\n [g11.serviceGraphPattern.name]: [T12.PatternService];\n [g11.bind.name]: [T12.PatternBind];\n [g11.inlineData.name]: [T12.PatternValues];\n [g11.dataBlock.name]: [T12.PatternValues];\n [g11.inlineDataOneVar.name]: [T12.PatternValues];\n [g11.inlineDataFull.name]: [T12.PatternValues];\n [g11.dataBlockValue.name]: [T12.TermIri | T12.TermLiteral | undefined];\n [g11.minusGraphPattern.name]: [T12.PatternMinus];\n [g11.groupOrUnionGraphPattern.name]: [T12.PatternGroup | T12.PatternUnion];\n [g11.filter.name]: [T12.PatternFilter];\n [g11.constraint.name]: [T12.Expression];\n [g11.functionCall.name]: [T12.ExpressionFunctionCall];\n }>()\n .addMany(\n S12.reifiedTripleBlock,\n S12.reifiedTripleBlockPath,\n S12.reifier,\n S12.varOrReifierId,\n S12.annotation,\n S12.annotationPath,\n S12.annotationBlockPath,\n S12.annotationBlock,\n S12.reifiedTriple,\n S12.reifiedTripleSubject,\n S12.reifiedTripleObject,\n S12.tripleTerm,\n S12.tripleTermSubject,\n S12.tripleTermObject,\n S12.tripleTermData,\n S12.tripleTermDataSubject,\n S12.tripleTermDataObject,\n S12.exprTripleTerm,\n S12.exprTripleTermSubject,\n S12.exprTripleTermObject,\n )\n .addMany(\n S12.versionDecl,\n S12.versionSpecifier,\n )\n .addMany(\n S12.buildInLangDir,\n S12.buildInLangStrDir,\n S12.buildInHasLang,\n S12.buildInHasLangDir,\n S12.buildInIsTriple,\n S12.buildInTriple,\n S12.buildInSubject,\n S12.buildInPredicate,\n S12.buildInObject,\n )\n .patchRule(S12.selectQuery)\n .patchRule(S12.dataBlockValue)\n .patchRule(S12.triplesSameSubject)\n .patchRule(S12.triplesSameSubjectPath)\n .patchRule(S12.object)\n .patchRule(S12.objectPath)\n .patchRule(S12.graphNode)\n .patchRule(S12.graphNodePath)\n .patchRule(S12.varOrTerm)\n .patchRule(S12.primaryExpression)\n .patchRule(S12.builtInCall)\n .patchRule(S12.rdfLiteral)\n .patchRule(S12.unaryExpression)\n .patchRule(S12.prologue)\n .patchRule(S12.string)\n .patchRule(S12.iriFull)\n .deleteRule(g11.graphTerm.name);\n\nexport type SparqlParser = ReturnType<typeof sparql12ParserBuilder.build>;\n\n/**\n * Parser that can parse a SPARQL 1.2 string into a SPARQL 1.2 AST.\n */\nexport class Parser {\n private readonly parser: SparqlParser;\n protected readonly defaultContext: T12.SparqlContext;\n\n public constructor(\n args: Pick<ParserBuildArgs, 'parserConfig' | 'lexerConfig'> & { defaultContext?: Partial<T12.SparqlContext> } = {},\n ) {\n this.parser = sparql12ParserBuilder.build({\n ...args,\n tokenVocabulary: l12.sparql12LexerBuilder.tokenVocabulary,\n });\n this.defaultContext = completeParseContext(args.defaultContext ?? {});\n }\n\n /**\n * Parse a query string starting from the\n * [QueryUnit](https://www.w3.org/TR/sparql12-query/#rQueryUnit)\n * or [QueryUpdate](https://www.w3.org/TR/sparql12-query/#rUpdateUnit) rules.\n * @param query\n * @param context\n */\n public parse(query: string, context: Partial<T12.SparqlContext> = {}): T12.SparqlQuery {\n const ast = this.parser.queryOrUpdate(query, copyParseContext({ ...this.defaultContext, ...context }));\n ast.loc = this.defaultContext.astFactory.sourceLocationInlinedSource(query, ast.loc, 0, Number.MAX_SAFE_INTEGER);\n return ast;\n }\n\n /**\n * Parse a query string starting from the [Path](https://www.w3.org/TR/sparql12-query/#rPath) grammar rule.\n * @param query\n * @param context\n */\n public parsePath(\n query: string,\ncontext: Partial<T12.SparqlContext> = {},\n ): (T12.Path & { prefixes: object }) | TermIri {\n const ast = this.parser.path(query, copyParseContext({ ...this.defaultContext, ...context }));\n ast.loc = this.defaultContext.astFactory.sourceLocationInlinedSource(query, ast.loc, 0, Number.MAX_SAFE_INTEGER);\n if (this.defaultContext.astFactory.isPathPure(ast)) {\n return {\n ...ast,\n prefixes: {},\n };\n }\n return ast;\n }\n}\n"]}
@@ -9,83 +9,52 @@ import type * as T12 from '@traqula/rules-sparql-1-2';
9
9
  * Use {@link ParserBuilder.create ParserBuilder.create(sparql12ParserBuilder)} to extend it
10
10
  * with additional rules.
11
11
  */
12
- export declare const sparql12ParserBuilder: ParserBuilder<T12.SparqlContext, "string" | "object" | "path" | "pathEltOrInverse" | "pathSequence" | "pathAlternative" | "pathElt" | "pathMod" | "pathPrimary" | "pathNegatedPropertySet" | "pathOneInPropertySet" | "queryOrUpdate" | "triplesBlock" | "triplesSameSubject" | "triplesSameSubjectPath" | "triplesTemplate" | "propertyList" | "blankNode" | "propertyListPath" | "propertyListNotEmpty" | "propertyListPathNotEmpty" | "verbPath" | "verbSimple" | "objectList" | "objectListPath" | "objectPath" | "collection" | "collectionPath" | "triplesNode" | "triplesNodePath" | "blankNodePropertyList" | "blankNodePropertyListPath" | "graphNode" | "graphNodePath" | "query" | "queryUnit" | "prologue" | "selectQuery" | "constructQuery" | "describeQuery" | "askQuery" | "valuesClause" | "baseDecl" | "prefixDecl" | "subSelect" | "selectClause" | "whereClause" | "solutionModifier" | "expression" | "conditionalOrExpression" | "conditionalAndExpression" | "valueLogical" | "relationalExpression" | "numericExpression" | "expressionList" | "additiveExpression" | "multiplicativeExpression" | "unaryExpression" | "primaryExpression" | "brackettedExpression" | "iriOrFunction" | "rdfLiteral" | "numericLiteral" | "numericLiteralUnsigned" | "numericLiteralPositive" | "numericLiteralNegative" | "booleanLiteral" | "var" | "builtInStr" | "builtInLang" | "builtInLangmatches" | "builtInDatatype" | "builtInBound" | "builtInIri" | "builtInUri" | "builtInBnode" | "builtInRand" | "builtInAbs" | "builtInCeil" | "builtInFloor" | "builtInRound" | "builtInConcat" | "builtInStrlen" | "builtInUcase" | "builtInLcase" | "builtInEncode_for_uri" | "functionCall" | "aggregate" | "builtInContains" | "builtInStrstarts" | "builtInStrends" | "builtInStrbefore" | "builtInStrafter" | "builtInYear" | "builtInMonth" | "builtInDay" | "builtInHours" | "builtInMinutes" | "builtInSeconds" | "builtInTimezone" | "builtInTz" | "builtInNow" | "builtInUuid" | "builtInStruuid" | "builtInMd5" | "builtInSha1" | "builtInSha256" | "builtInSha384" | "builtInSha512" | "builtInCoalesce" | "builtInIf" | "builtInStrlang" | "builtInStrdt" | "builtInSameterm" | "builtInIsiri" | "builtInIsuri" | "builtInIsblank" | "builtInIsliteral" | "builtInIsnumeric" | "builtInRegex" | "builtInSubstr" | "builtInReplace" | "builtInCount" | "builtInSum" | "builtInMin" | "builtInMax" | "builtInAvg" | "builtInSample" | "builtInGroup_concat" | "iri" | "iriFull" | "prefixedName" | "argList" | "builtInCall" | "builtInExists" | "builtInNotexists" | "groupGraphPattern" | "groupGraphPatternSub" | "varOrTerm" | "verb" | "VerbA" | "varOrIri" | "graphPatternNotTriples" | "filter" | "bind" | "groupOrUnionGraphPattern" | "optionalGraphPattern" | "minusGraphPattern" | "graphGraphPattern" | "serviceGraphPattern" | "inlineData" | "constraint" | "dataBlock" | "inlineDataOneVar" | "inlineDataFull" | "dataBlockValue" | "groupClause" | "havingClause" | "orderClause" | "limitOffsetClauses" | "groupCondition" | "havingCondition" | "orderCondition" | "limitClause" | "offsetClause" | "datasetClause" | "datasetClauses" | "defaultGraphClause" | "namedGraphClause" | "sourceSelector" | "constructTemplate" | "constructTriples" | "updateUnit" | "update" | "load" | "clear" | "drop" | "add" | "move" | "copy" | "create" | "insertData" | "deleteData" | "deleteWhere" | "graphRef" | "graphRefAll" | "graphOrDefault" | "quadData" | "quads" | "update1" | "quadPattern" | "quadsNotTriples" | "modify" | "deleteClause" | "insertClause" | "usingClause" | "usingClauses" | "reifiedTriple" | "reifiedTripleBlock" | "reifiedTripleBlockPath" | "reifier" | "varOrReifierId" | "annotation" | "annotationPath" | "annotationBlockPath" | "annotationBlock" | "reifiedTripleSubject" | "reifiedTripleObject" | "tripleTerm" | "tripleTermSubject" | "tripleTermObject" | "tripleTermData" | "tripleTermDataSubject" | "tripleTermDataObject" | "exprTripleTerm" | "exprTripleTermSubject" | "exprTripleTermObject" | "versionDecl" | "versionSpecifier" | "builtInLangdir" | "builtInStrLangdir" | "builtInHasLang" | "builtInHasLangdir" | "builtInIsTriple" | "builtInTriple" | "builtInSubject" | "builtInPredicate" | "builtInObject", {
12
+ export declare const sparql12ParserBuilder: ParserBuilder<T12.SparqlContext, "string" | "object" | "filter" | "copy" | "graphRef" | "load" | "clear" | "drop" | "create" | "add" | "move" | "modify" | "update" | "query" | "datasetClauses" | "bind" | "solutionModifier" | "expression" | "aggregate" | "functionCall" | "path" | "blankNode" | "queryUnit" | "selectQuery" | "subSelect" | "selectClause" | "constructQuery" | "describeQuery" | "askQuery" | "valuesClause" | "constructTemplate" | "constructTriples" | "updateUnit" | "update1" | "quadPattern" | "quadData" | "insertData" | "deleteData" | "deleteWhere" | "deleteClause" | "insertClause" | "graphOrDefault" | "graphRefAll" | "quads" | "quadsNotTriples" | "builtInStr" | "builtInLang" | "builtInLangmatches" | "builtInDatatype" | "builtInBound" | "builtInIri" | "builtInUri" | "builtInBnode" | "builtInRand" | "builtInAbs" | "builtInCeil" | "builtInFloor" | "builtInRound" | "builtInConcat" | "builtInStrlen" | "builtInUcase" | "builtInLcase" | "builtInEncode_for_uri" | "builtInContains" | "builtInStrstarts" | "builtInStrends" | "builtInStrbefore" | "builtInStrafter" | "builtInYear" | "builtInMonth" | "builtInDay" | "builtInHours" | "builtInMinutes" | "builtInSeconds" | "builtInTimezone" | "builtInTz" | "builtInNow" | "builtInUuid" | "builtInStruuid" | "builtInMd5" | "builtInSha1" | "builtInSha256" | "builtInSha384" | "builtInSha512" | "builtInCoalesce" | "builtInIf" | "builtInStrlang" | "builtInStrdt" | "builtInSameterm" | "builtInIsiri" | "builtInIsuri" | "builtInIsblank" | "builtInIsliteral" | "builtInIsnumeric" | "builtInCall" | "builtInRegex" | "builtInSubstr" | "builtInReplace" | "builtInExists" | "builtInNotexists" | "builtInCount" | "builtInSum" | "builtInMin" | "builtInMax" | "builtInAvg" | "builtInSample" | "builtInGroup_concat" | "usingClause" | "datasetClause" | "defaultGraphClause" | "usingClauses" | "namedGraphClause" | "sourceSelector" | "argList" | "expressionList" | "conditionalOrExpression" | "conditionalAndExpression" | "valueLogical" | "relationalExpression" | "numericExpression" | "additiveExpression" | "multiplicativeExpression" | "unaryExpression" | "primaryExpression" | "brackettedExpression" | "iriOrFunction" | "prologue" | "baseDecl" | "prefixDecl" | "verb" | "varOrTerm" | "varOrIri" | "var" | "rdfLiteral" | "numericLiteral" | "numericLiteralUnsigned" | "numericLiteralPositive" | "numericLiteralNegative" | "booleanLiteral" | "iri" | "iriFull" | "prefixedName" | "VerbA" | "pathEltOrInverse" | "pathSequence" | "pathAlternative" | "pathElt" | "pathMod" | "pathPrimary" | "pathNegatedPropertySet" | "pathOneInPropertySet" | "groupClause" | "groupCondition" | "havingClause" | "havingCondition" | "orderClause" | "orderCondition" | "limitOffsetClauses" | "limitClause" | "offsetClause" | "triplesBlock" | "triplesSameSubject" | "triplesSameSubjectPath" | "triplesTemplate" | "propertyList" | "propertyListPath" | "propertyListNotEmpty" | "propertyListPathNotEmpty" | "verbPath" | "verbSimple" | "objectList" | "objectListPath" | "objectPath" | "collection" | "collectionPath" | "triplesNode" | "triplesNodePath" | "blankNodePropertyList" | "blankNodePropertyListPath" | "graphNode" | "graphNodePath" | "whereClause" | "groupGraphPattern" | "groupGraphPatternSub" | "graphPatternNotTriples" | "optionalGraphPattern" | "graphGraphPattern" | "serviceGraphPattern" | "inlineData" | "dataBlock" | "inlineDataOneVar" | "inlineDataFull" | "dataBlockValue" | "minusGraphPattern" | "groupOrUnionGraphPattern" | "constraint" | "queryOrUpdate" | "reifiedTriple" | "versionDecl" | "versionSpecifier" | "reifiedTripleBlock" | "reifiedTripleBlockPath" | "varOrReifierId" | "reifier" | "annotationPath" | "annotation" | "annotationBlockPath" | "annotationBlock" | "reifiedTripleSubject" | "reifiedTripleObject" | "tripleTerm" | "tripleTermSubject" | "tripleTermObject" | "tripleTermData" | "tripleTermDataSubject" | "tripleTermDataObject" | "exprTripleTerm" | "exprTripleTermSubject" | "exprTripleTermObject" | "builtInLangdir" | "builtInStrLangdir" | "builtInHasLang" | "builtInHasLangdir" | "builtInIsTriple" | "builtInTriple" | "builtInSubject" | "builtInPredicate" | "builtInObject", {
13
13
  string: import("@traqula/core").ParserRule<T12.SparqlContext, "string", import("@traqula/rules-sparql-1-1").TermLiteralStr, []>;
14
- object: import("@traqula/core").ParserRule<T12.SparqlContext, "object", T12.TripleNesting, [T12.GraphNode, import("@traqula/rules-sparql-1-1").TermIriFull | import("@traqula/rules-sparql-1-1").TermIriPrefixed | import("@traqula/rules-sparql-1-1").PropertyPathChain | import("@traqula/rules-sparql-1-1").PathModified | import("@traqula/rules-sparql-1-1").PathNegated | import("@traqula/rules-sparql-1-1").TermVariable]>;
14
+ object: import("@traqula/core").ParserRule<T12.SparqlContext, "object", T12.TripleNesting, [T12.GraphNode, import("@traqula/rules-sparql-1-1").TermIriFull | import("@traqula/rules-sparql-1-1").TermIriPrefixed | import("@traqula/rules-sparql-1-1").TermVariable | import("@traqula/rules-sparql-1-1").PropertyPathChain | import("@traqula/rules-sparql-1-1").PathModified | import("@traqula/rules-sparql-1-1").PathNegated]>;
15
+ filter: import("@traqula/core").ParserRule<T12.SparqlContext, "filter", T12.PatternFilter, []>;
16
+ copy: import("@traqula/core").ParserRule<T12.SparqlContext, "copy", T12.UpdateOperationCopy, []>;
17
+ graphRef: import("@traqula/core").ParserRule<T12.SparqlContext, "graphRef", import("@traqula/rules-sparql-1-1").GraphRefSpecific, []>;
18
+ load: import("@traqula/core").ParserRule<T12.SparqlContext, "load", T12.UpdateOperationLoad, []>;
19
+ clear: import("@traqula/core").ParserRule<T12.SparqlContext, "clear", T12.UpdateOperationClear, []>;
20
+ drop: import("@traqula/core").ParserRule<T12.SparqlContext, "drop", T12.UpdateOperationDrop, []>;
21
+ create: import("@traqula/core").ParserRule<T12.SparqlContext, "create", T12.UpdateOperationCreate, []>;
22
+ add: import("@traqula/core").ParserRule<T12.SparqlContext, "add", T12.UpdateOperationAdd, []>;
23
+ move: import("@traqula/core").ParserRule<T12.SparqlContext, "move", T12.UpdateOperationMove, []>;
24
+ modify: import("@traqula/core").ParserRule<T12.SparqlContext, "modify", T12.UpdateOperationModify, []>;
25
+ update: import("@traqula/core").ParserRule<T12.SparqlContext, "update", import("@traqula/rules-sparql-1-1").Update, []>;
26
+ query: import("@traqula/core").ParserRule<T12.SparqlContext, "query", import("@traqula/rules-sparql-1-1").Query, []>;
27
+ datasetClauses: import("@traqula/core").ParserRule<T12.SparqlContext, "datasetClauses", T12.DatasetClauses, []>;
28
+ bind: import("@traqula/core").ParserRule<T12.SparqlContext, "bind", T12.PatternBind, []>;
29
+ solutionModifier: import("@traqula/core").ParserRule<T12.SparqlContext, "solutionModifier", T12.SolutionModifiers, []>;
30
+ expression: import("@traqula/core").ParserRule<T12.SparqlContext, "expression", T12.Expression, []>;
31
+ aggregate: import("@traqula/core").ParserRule<T12.SparqlContext, "aggregate", T12.ExpressionAggregate, []>;
32
+ functionCall: import("@traqula/core").ParserRule<T12.SparqlContext, "functionCall", T12.ExpressionFunctionCall, []>;
15
33
  path: import("@traqula/core").ParserRule<T12.SparqlContext, "path", import("@traqula/rules-sparql-1-1").Path, []>;
16
- pathEltOrInverse: import("@traqula/core").ParserRule<T12.SparqlContext, "pathEltOrInverse", import("@traqula/rules-sparql-1-1").Path, []>;
17
- pathSequence: import("@traqula/core").ParserRule<T12.SparqlContext, "pathSequence", import("@traqula/rules-sparql-1-1").TermIriFull | import("@traqula/rules-sparql-1-1").TermIriPrefixed | import("@traqula/rules-sparql-1-1").PropertyPathChain | import("@traqula/rules-sparql-1-1").PathModified | import("@traqula/rules-sparql-1-1").PathNegated, []>;
18
- pathAlternative: import("@traqula/core").ParserRule<T12.SparqlContext, "pathAlternative", import("@traqula/rules-sparql-1-1").TermIriFull | import("@traqula/rules-sparql-1-1").TermIriPrefixed | import("@traqula/rules-sparql-1-1").PropertyPathChain | import("@traqula/rules-sparql-1-1").PathModified | import("@traqula/rules-sparql-1-1").PathNegated, []>;
19
- pathElt: import("@traqula/core").ParserRule<T12.SparqlContext, "pathElt", import("@traqula/rules-sparql-1-1").Path, []>;
20
- pathMod: import("@traqula/core").ParserRule<T12.SparqlContext, "pathMod", import("@traqula/chevrotain").IToken & {
21
- image: "*" | "+" | "?";
22
- }, []>;
23
- pathPrimary: import("@traqula/core").ParserRule<T12.SparqlContext, "pathPrimary", import("@traqula/rules-sparql-1-1").Path, []>;
24
- pathNegatedPropertySet: import("@traqula/core").ParserRule<T12.SparqlContext, "pathNegatedPropertySet", import("@traqula/rules-sparql-1-1").PathNegated, []>;
25
- pathOneInPropertySet: import("@traqula/core").ParserRule<T12.SparqlContext, "pathOneInPropertySet", TermIri | import("@traqula/rules-sparql-1-1").PathNegatedElt, []>;
26
- queryOrUpdate: import("@traqula/core").ParserRule<T12.SparqlContext, "queryOrUpdate", T12.SparqlQuery, []>;
27
- triplesBlock: import("@traqula/core").ParserRule<T12.SparqlContext, "triplesBlock", T12.PatternBgp, []>;
28
- triplesSameSubject: import("@traqula/core").ParserRule<T12.SparqlContext, "triplesSameSubject", import("@traqula/rules-sparql-1-1").BasicGraphPattern, []>;
29
- triplesSameSubjectPath: import("@traqula/core").ParserRule<T12.SparqlContext, "triplesSameSubjectPath", import("@traqula/rules-sparql-1-1").BasicGraphPattern, []>;
30
- triplesTemplate: import("@traqula/core").ParserRule<T12.SparqlContext, "triplesTemplate", T12.PatternBgp, []>;
31
- propertyList: import("@traqula/core").ParserRule<T12.SparqlContext, "propertyList", T12.TripleNesting[], [import("@traqula/rules-sparql-1-1").GraphNode]>;
32
34
  blankNode: import("@traqula/core").ParserRule<T12.SparqlContext, "blankNode", import("@traqula/rules-sparql-1-1").TermBlank, []>;
33
- propertyListPath: import("@traqula/core").ParserRule<T12.SparqlContext, "propertyListPath", T12.TripleNesting[], [import("@traqula/rules-sparql-1-1").GraphNode]>;
34
- propertyListNotEmpty: import("@traqula/core").ParserRule<T12.SparqlContext, "propertyListNotEmpty", T12.TripleNesting[], [import("@traqula/rules-sparql-1-1").GraphNode]>;
35
- propertyListPathNotEmpty: import("@traqula/core").ParserRule<T12.SparqlContext, "propertyListPathNotEmpty", T12.TripleNesting[], [import("@traqula/rules-sparql-1-1").GraphNode]>;
36
- verbPath: import("@traqula/core").ParserRule<T12.SparqlContext, "verbPath", import("@traqula/rules-sparql-1-1").Path, []>;
37
- verbSimple: import("@traqula/core").ParserRule<T12.SparqlContext, "verbSimple", import("@traqula/rules-sparql-1-1").TermVariable, []>;
38
- objectList: import("@traqula/core").ParserRule<T12.SparqlContext, "objectList", T12.TripleNesting[], [T12.GraphNode, import("@traqula/rules-sparql-1-1").TermIriFull | import("@traqula/rules-sparql-1-1").TermIriPrefixed | import("@traqula/rules-sparql-1-1").PropertyPathChain | import("@traqula/rules-sparql-1-1").PathModified | import("@traqula/rules-sparql-1-1").PathNegated | import("@traqula/rules-sparql-1-1").TermVariable]>;
39
- objectListPath: import("@traqula/core").ParserRule<T12.SparqlContext, "objectListPath", T12.TripleNesting, [T12.GraphNode, import("@traqula/rules-sparql-1-1").TermIriFull | import("@traqula/rules-sparql-1-1").TermIriPrefixed | import("@traqula/rules-sparql-1-1").PropertyPathChain | import("@traqula/rules-sparql-1-1").PathModified | import("@traqula/rules-sparql-1-1").PathNegated | import("@traqula/rules-sparql-1-1").TermVariable]>;
40
- objectPath: import("@traqula/core").ParserRule<T12.SparqlContext, "objectPath", T12.TripleNesting, [T12.GraphNode, import("@traqula/rules-sparql-1-1").TermIriFull | import("@traqula/rules-sparql-1-1").TermIriPrefixed | import("@traqula/rules-sparql-1-1").PropertyPathChain | import("@traqula/rules-sparql-1-1").PathModified | import("@traqula/rules-sparql-1-1").PathNegated | import("@traqula/rules-sparql-1-1").TermVariable]>;
41
- collection: import("@traqula/core").ParserRule<T12.SparqlContext, "collection", T12.TripleCollectionList, []>;
42
- collectionPath: import("@traqula/core").ParserRule<T12.SparqlContext, "collectionPath", T12.TripleCollectionList, []>;
43
- triplesNode: import("@traqula/core").ParserRule<T12.SparqlContext, "triplesNode", T12.TripleCollection, []>;
44
- triplesNodePath: import("@traqula/core").ParserRule<T12.SparqlContext, "triplesNodePath", T12.TripleCollection, []>;
45
- blankNodePropertyList: import("@traqula/core").ParserRule<T12.SparqlContext, "blankNodePropertyList", Patch<import("@traqula/rules-sparql-1-1").TripleCollectionBlankNodeProperties, {
46
- triples: T12.TripleNesting[];
47
- identifier: T12.TermBlank | T12.TermVariable | T12.TermIri;
48
- }>, []>;
49
- blankNodePropertyListPath: import("@traqula/core").ParserRule<T12.SparqlContext, "blankNodePropertyListPath", Patch<import("@traqula/rules-sparql-1-1").TripleCollectionBlankNodeProperties, {
50
- triples: T12.TripleNesting[];
51
- identifier: T12.TermBlank | T12.TermVariable | T12.TermIri;
52
- }>, []>;
53
- graphNode: import("@traqula/core").ParserRule<T12.SparqlContext, "graphNode", T12.GraphNode, []>;
54
- graphNodePath: import("@traqula/core").ParserRule<T12.SparqlContext, "graphNodePath", T12.GraphNode, []>;
55
- query: import("@traqula/core").ParserRule<T12.SparqlContext, "query", import("@traqula/rules-sparql-1-1").Query, []>;
56
35
  queryUnit: import("@traqula/core").ParserRule<T12.SparqlContext, "queryUnit", import("@traqula/rules-sparql-1-1").Query, []>;
57
- prologue: import("@traqula/core").ParserRule<T12.SparqlContext, "prologue", T12.ContextDefinition[], []>;
58
- selectQuery: import("@traqula/core").ParserRule<T12.SparqlContext, "selectQuery", Omit<T12.QuerySelect, "type" | "context" | "values">, []>;
36
+ selectQuery: import("@traqula/core").ParserRule<T12.SparqlContext, "selectQuery", Omit<T12.QuerySelect, "values" | "type" | "context">, []>;
37
+ subSelect: import("@traqula/core").ParserRule<T12.SparqlContext, "subSelect", Omit<T12.QuerySelect, "prefixes">, []>;
38
+ selectClause: import("@traqula/core").ParserRule<T12.SparqlContext, "selectClause", Wrap<Pick<T12.QuerySelect, "variables" | "distinct" | "reduced">>, []>;
59
39
  constructQuery: import("@traqula/core").ParserRule<T12.SparqlContext, "constructQuery", Omit<T12.QueryConstruct, g11.HandledByBase>, []>;
60
40
  describeQuery: import("@traqula/core").ParserRule<T12.SparqlContext, "describeQuery", Omit<T12.QueryDescribe, g11.HandledByBase>, []>;
61
41
  askQuery: import("@traqula/core").ParserRule<T12.SparqlContext, "askQuery", Omit<T12.QueryAsk, g11.HandledByBase>, []>;
62
42
  valuesClause: import("@traqula/core").ParserRule<T12.SparqlContext, "valuesClause", T12.PatternValues[] | undefined, []>;
63
- baseDecl: import("@traqula/core").ParserRule<T12.SparqlContext, "baseDecl", T12.ContextDefinition, []>;
64
- prefixDecl: import("@traqula/core").ParserRule<T12.SparqlContext, "prefixDecl", T12.ContextDefinition, []>;
65
- subSelect: import("@traqula/core").ParserRule<T12.SparqlContext, "subSelect", Omit<T12.QuerySelect, "prefixes">, []>;
66
- selectClause: import("@traqula/core").ParserRule<T12.SparqlContext, "selectClause", Wrap<Pick<T12.QuerySelect, "variables" | "distinct" | "reduced">>, []>;
67
- whereClause: import("@traqula/core").ParserRule<T12.SparqlContext, "whereClause", Wrap<T12.PatternGroup>, []>;
68
- solutionModifier: import("@traqula/core").ParserRule<T12.SparqlContext, "solutionModifier", T12.SolutionModifiers, []>;
69
- expression: import("@traqula/core").ParserRule<T12.SparqlContext, "expression", T12.Expression, []>;
70
- conditionalOrExpression: import("@traqula/core").ParserRule<T12.SparqlContext, "conditionalOrExpression", T12.Expression, []>;
71
- conditionalAndExpression: import("@traqula/core").ParserRule<T12.SparqlContext, "conditionalAndExpression", T12.Expression, []>;
72
- valueLogical: import("@traqula/core").ParserRule<T12.SparqlContext, "valueLogical", T12.Expression, []>;
73
- relationalExpression: import("@traqula/core").ParserRule<T12.SparqlContext, "relationalExpression", T12.Expression, []>;
74
- numericExpression: import("@traqula/core").ParserRule<T12.SparqlContext, "numericExpression", T12.Expression, []>;
75
- expressionList: import("@traqula/core").ParserRule<T12.SparqlContext, "expressionList", Wrap<T12.Expression[]>, []>;
76
- additiveExpression: import("@traqula/core").ParserRule<T12.SparqlContext, "additiveExpression", T12.Expression, []>;
77
- multiplicativeExpression: import("@traqula/core").ParserRule<T12.SparqlContext, "multiplicativeExpression", T12.Expression, []>;
78
- unaryExpression: import("@traqula/core").ParserRule<T12.SparqlContext, "unaryExpression", T12.Expression, []>;
79
- primaryExpression: import("@traqula/core").ParserRule<T12.SparqlContext, "primaryExpression", T12.Expression, []>;
80
- brackettedExpression: import("@traqula/core").ParserRule<T12.SparqlContext, "brackettedExpression", T12.Expression, []>;
81
- iriOrFunction: import("@traqula/core").ParserRule<T12.SparqlContext, "iriOrFunction", TermIri | T12.ExpressionFunctionCall, []>;
82
- rdfLiteral: import("@traqula/core").ParserRule<T12.SparqlContext, "rdfLiteral", import("@traqula/rules-sparql-1-1").TermLiteral, []>;
83
- numericLiteral: import("@traqula/core").ParserRule<T12.SparqlContext, "numericLiteral", import("@traqula/rules-sparql-1-1").TermLiteralTyped, []>;
84
- numericLiteralUnsigned: import("@traqula/core").ParserRule<T12.SparqlContext, "numericLiteralUnsigned", import("@traqula/rules-sparql-1-1").TermLiteralTyped, []>;
85
- numericLiteralPositive: import("@traqula/core").ParserRule<T12.SparqlContext, "numericLiteralPositive", import("@traqula/rules-sparql-1-1").TermLiteralTyped, []>;
86
- numericLiteralNegative: import("@traqula/core").ParserRule<T12.SparqlContext, "numericLiteralNegative", import("@traqula/rules-sparql-1-1").TermLiteralTyped, []>;
87
- booleanLiteral: import("@traqula/core").ParserRule<T12.SparqlContext, "booleanLiteral", import("@traqula/rules-sparql-1-1").TermLiteralTyped, []>;
88
- var: import("@traqula/core").ParserRule<T12.SparqlContext, "var", import("@traqula/rules-sparql-1-1").TermVariable, []>;
43
+ constructTemplate: import("@traqula/core").ParserRule<T12.SparqlContext, "constructTemplate", Wrap<T12.PatternBgp>, []>;
44
+ constructTriples: import("@traqula/core").ParserRule<T12.SparqlContext, "constructTriples", T12.PatternBgp, []>;
45
+ updateUnit: import("@traqula/core").ParserRule<T12.SparqlContext, "updateUnit", import("@traqula/rules-sparql-1-1").Update, []>;
46
+ update1: import("@traqula/core").ParserRule<T12.SparqlContext, "update1", T12.UpdateOperation, []>;
47
+ quadPattern: import("@traqula/core").ParserRule<T12.SparqlContext, "quadPattern", Wrap<T12.Quads[]>, []>;
48
+ quadData: import("@traqula/core").ParserRule<T12.SparqlContext, "quadData", Wrap<T12.Quads[]>, []>;
49
+ insertData: import("@traqula/core").ParserRule<T12.SparqlContext, "insertData", T12.UpdateOperationInsertData, []>;
50
+ deleteData: import("@traqula/core").ParserRule<T12.SparqlContext, "deleteData", T12.UpdateOperationDeleteData, []>;
51
+ deleteWhere: import("@traqula/core").ParserRule<T12.SparqlContext, "deleteWhere", T12.UpdateOperationDeleteWhere, []>;
52
+ deleteClause: import("@traqula/core").ParserRule<T12.SparqlContext, "deleteClause", Wrap<T12.Quads[]>, []>;
53
+ insertClause: import("@traqula/core").ParserRule<T12.SparqlContext, "insertClause", Wrap<T12.Quads[]>, []>;
54
+ graphOrDefault: import("@traqula/core").ParserRule<T12.SparqlContext, "graphOrDefault", import("@traqula/rules-sparql-1-1").GraphRefDefault | import("@traqula/rules-sparql-1-1").GraphRefSpecific, []>;
55
+ graphRefAll: import("@traqula/core").ParserRule<T12.SparqlContext, "graphRefAll", import("@traqula/rules-sparql-1-1").GraphRef, []>;
56
+ quads: import("@traqula/core").ParserRule<T12.SparqlContext, "quads", Wrap<T12.Quads[]>, []>;
57
+ quadsNotTriples: import("@traqula/core").ParserRule<T12.SparqlContext, "quadsNotTriples", T12.GraphQuads, []>;
89
58
  builtInStr: import("@traqula/core").ParserRule<T12.SparqlContext, "builtInStr", T12.ExpressionOperation, []>;
90
59
  builtInLang: import("@traqula/core").ParserRule<T12.SparqlContext, "builtInLang", T12.ExpressionOperation, []>;
91
60
  builtInLangmatches: import("@traqula/core").ParserRule<T12.SparqlContext, "builtInLangmatches", T12.ExpressionOperation, []>;
@@ -104,8 +73,6 @@ export declare const sparql12ParserBuilder: ParserBuilder<T12.SparqlContext, "st
104
73
  builtInUcase: import("@traqula/core").ParserRule<T12.SparqlContext, "builtInUcase", T12.ExpressionOperation, []>;
105
74
  builtInLcase: import("@traqula/core").ParserRule<T12.SparqlContext, "builtInLcase", T12.ExpressionOperation, []>;
106
75
  builtInEncode_for_uri: import("@traqula/core").ParserRule<T12.SparqlContext, "builtInEncode_for_uri", T12.ExpressionOperation, []>;
107
- functionCall: import("@traqula/core").ParserRule<T12.SparqlContext, "functionCall", T12.ExpressionFunctionCall, []>;
108
- aggregate: import("@traqula/core").ParserRule<T12.SparqlContext, "aggregate", T12.ExpressionAggregate, []>;
109
76
  builtInContains: import("@traqula/core").ParserRule<T12.SparqlContext, "builtInContains", T12.ExpressionOperation, []>;
110
77
  builtInStrstarts: import("@traqula/core").ParserRule<T12.SparqlContext, "builtInStrstarts", T12.ExpressionOperation, []>;
111
78
  builtInStrends: import("@traqula/core").ParserRule<T12.SparqlContext, "builtInStrends", T12.ExpressionOperation, []>;
@@ -137,126 +104,159 @@ export declare const sparql12ParserBuilder: ParserBuilder<T12.SparqlContext, "st
137
104
  builtInIsblank: import("@traqula/core").ParserRule<T12.SparqlContext, "builtInIsblank", T12.ExpressionOperation, []>;
138
105
  builtInIsliteral: import("@traqula/core").ParserRule<T12.SparqlContext, "builtInIsliteral", T12.ExpressionOperation, []>;
139
106
  builtInIsnumeric: import("@traqula/core").ParserRule<T12.SparqlContext, "builtInIsnumeric", T12.ExpressionOperation, []>;
107
+ builtInCall: import("@traqula/core").ParserRule<T12.SparqlContext, "builtInCall", import("@traqula/rules-sparql-1-1").Expression, []>;
140
108
  builtInRegex: import("@traqula/core").ParserRule<T12.SparqlContext, "builtInRegex", g11.ExpressionFunctionX<[import("@traqula/rules-sparql-1-1").Expression, import("@traqula/rules-sparql-1-1").Expression] | [import("@traqula/rules-sparql-1-1").Expression, import("@traqula/rules-sparql-1-1").Expression, import("@traqula/rules-sparql-1-1").Expression]>, []>;
141
109
  builtInSubstr: import("@traqula/core").ParserRule<T12.SparqlContext, "builtInSubstr", T12.ExpressionOperation, []>;
142
110
  builtInReplace: import("@traqula/core").ParserRule<T12.SparqlContext, "builtInReplace", T12.ExpressionOperation, []>;
143
- builtInCount: import("@traqula/core").ParserRule<T12.SparqlContext, "builtInCount", T12.ExpressionAggregateOnWildcard | T12.ExpressionAggregateDefault, []>;
111
+ builtInExists: import("@traqula/core").ParserRule<T12.SparqlContext, "builtInExists", T12.ExpressionPatternOperation, []>;
112
+ builtInNotexists: import("@traqula/core").ParserRule<T12.SparqlContext, "builtInNotexists", T12.ExpressionPatternOperation, []>;
113
+ builtInCount: import("@traqula/core").ParserRule<T12.SparqlContext, "builtInCount", T12.ExpressionAggregateDefault | T12.ExpressionAggregateOnWildcard, []>;
144
114
  builtInSum: import("@traqula/core").ParserRule<T12.SparqlContext, "builtInSum", T12.ExpressionAggregateDefault, []>;
145
115
  builtInMin: import("@traqula/core").ParserRule<T12.SparqlContext, "builtInMin", T12.ExpressionAggregateDefault, []>;
146
116
  builtInMax: import("@traqula/core").ParserRule<T12.SparqlContext, "builtInMax", T12.ExpressionAggregateDefault, []>;
147
117
  builtInAvg: import("@traqula/core").ParserRule<T12.SparqlContext, "builtInAvg", T12.ExpressionAggregateDefault, []>;
148
118
  builtInSample: import("@traqula/core").ParserRule<T12.SparqlContext, "builtInSample", T12.ExpressionAggregateDefault, []>;
149
119
  builtInGroup_concat: import("@traqula/core").ParserRule<T12.SparqlContext, "builtInGroup_concat", T12.ExpressionAggregateDefault | T12.ExpressionAggregateSeparator, []>;
150
- iri: import("@traqula/core").ParserRule<T12.SparqlContext, "iri", TermIri, []>;
151
- iriFull: import("@traqula/core").ParserRule<T12.SparqlContext, "iriFull", import("@traqula/rules-sparql-1-1").TermIriFull, []>;
152
- prefixedName: import("@traqula/core").ParserRule<T12.SparqlContext, "prefixedName", import("@traqula/rules-sparql-1-1").TermIriPrefixed, []>;
120
+ usingClause: import("@traqula/core").ParserRule<T12.SparqlContext, "usingClause", Wrap<{
121
+ clauseType: "default" | "named";
122
+ value: T12.TermIri;
123
+ }>, []>;
124
+ datasetClause: import("@traqula/core").ParserRule<T12.SparqlContext, "datasetClause", Wrap<{
125
+ clauseType: "default" | "named";
126
+ value: T12.TermIri;
127
+ }>, []>;
128
+ defaultGraphClause: import("@traqula/core").ParserRule<T12.SparqlContext, "defaultGraphClause", TermIri, []>;
129
+ usingClauses: import("@traqula/core").ParserRule<T12.SparqlContext, "usingClauses", T12.DatasetClauses, []>;
130
+ namedGraphClause: import("@traqula/core").ParserRule<T12.SparqlContext, "namedGraphClause", Wrap<TermIri>, []>;
131
+ sourceSelector: import("@traqula/core").ParserRule<T12.SparqlContext, "sourceSelector", TermIri, []>;
153
132
  argList: import("@traqula/core").ParserRule<T12.SparqlContext, "argList", Wrap<Patch<g11.IArgList, {
154
133
  args: T12.Expression[];
155
134
  }>>, []>;
156
- builtInCall: import("@traqula/core").ParserRule<T12.SparqlContext, "builtInCall", import("@traqula/rules-sparql-1-1").Expression, []>;
157
- builtInExists: import("@traqula/core").ParserRule<T12.SparqlContext, "builtInExists", T12.ExpressionPatternOperation, []>;
158
- builtInNotexists: import("@traqula/core").ParserRule<T12.SparqlContext, "builtInNotexists", T12.ExpressionPatternOperation, []>;
159
- groupGraphPattern: import("@traqula/core").ParserRule<T12.SparqlContext, "groupGraphPattern", T12.PatternGroup, []>;
160
- groupGraphPatternSub: import("@traqula/core").ParserRule<T12.SparqlContext, "groupGraphPatternSub", T12.Pattern[], []>;
161
- varOrTerm: import("@traqula/core").ParserRule<T12.SparqlContext, "varOrTerm", T12.Term, []>;
135
+ expressionList: import("@traqula/core").ParserRule<T12.SparqlContext, "expressionList", Wrap<T12.Expression[]>, []>;
136
+ conditionalOrExpression: import("@traqula/core").ParserRule<T12.SparqlContext, "conditionalOrExpression", T12.Expression, []>;
137
+ conditionalAndExpression: import("@traqula/core").ParserRule<T12.SparqlContext, "conditionalAndExpression", T12.Expression, []>;
138
+ valueLogical: import("@traqula/core").ParserRule<T12.SparqlContext, "valueLogical", T12.Expression, []>;
139
+ relationalExpression: import("@traqula/core").ParserRule<T12.SparqlContext, "relationalExpression", T12.Expression, []>;
140
+ numericExpression: import("@traqula/core").ParserRule<T12.SparqlContext, "numericExpression", T12.Expression, []>;
141
+ additiveExpression: import("@traqula/core").ParserRule<T12.SparqlContext, "additiveExpression", T12.Expression, []>;
142
+ multiplicativeExpression: import("@traqula/core").ParserRule<T12.SparqlContext, "multiplicativeExpression", T12.Expression, []>;
143
+ unaryExpression: import("@traqula/core").ParserRule<T12.SparqlContext, "unaryExpression", T12.Expression, []>;
144
+ primaryExpression: import("@traqula/core").ParserRule<T12.SparqlContext, "primaryExpression", T12.Expression, []>;
145
+ brackettedExpression: import("@traqula/core").ParserRule<T12.SparqlContext, "brackettedExpression", T12.Expression, []>;
146
+ iriOrFunction: import("@traqula/core").ParserRule<T12.SparqlContext, "iriOrFunction", TermIri | T12.ExpressionFunctionCall, []>;
147
+ prologue: import("@traqula/core").ParserRule<T12.SparqlContext, "prologue", T12.ContextDefinition[], []>;
148
+ baseDecl: import("@traqula/core").ParserRule<T12.SparqlContext, "baseDecl", T12.ContextDefinition, []>;
149
+ prefixDecl: import("@traqula/core").ParserRule<T12.SparqlContext, "prefixDecl", T12.ContextDefinition, []>;
162
150
  verb: import("@traqula/core").ParserRule<T12.SparqlContext, "verb", TermIri | import("@traqula/rules-sparql-1-1").TermVariable, []>;
163
- VerbA: import("@traqula/core").ParserRule<T12.SparqlContext, "VerbA", import("@traqula/rules-sparql-1-1").TermIriFull, []>;
151
+ varOrTerm: import("@traqula/core").ParserRule<T12.SparqlContext, "varOrTerm", T12.Term, []>;
164
152
  varOrIri: import("@traqula/core").ParserRule<T12.SparqlContext, "varOrIri", TermIri | import("@traqula/rules-sparql-1-1").TermVariable, []>;
165
- graphPatternNotTriples: import("@traqula/core").ParserRule<T12.SparqlContext, "graphPatternNotTriples", T12.PatternGroup | T12.PatternValues | T12.PatternUnion | T12.PatternOptional | T12.PatternMinus | T12.PatternGraph | T12.PatternService | T12.PatternFilter | T12.PatternBind, []>;
166
- filter: import("@traqula/core").ParserRule<T12.SparqlContext, "filter", T12.PatternFilter, []>;
167
- bind: import("@traqula/core").ParserRule<T12.SparqlContext, "bind", T12.PatternBind, []>;
168
- groupOrUnionGraphPattern: import("@traqula/core").ParserRule<T12.SparqlContext, "groupOrUnionGraphPattern", T12.PatternGroup | T12.PatternUnion, []>;
169
- optionalGraphPattern: import("@traqula/core").ParserRule<T12.SparqlContext, "optionalGraphPattern", T12.PatternOptional, []>;
170
- minusGraphPattern: import("@traqula/core").ParserRule<T12.SparqlContext, "minusGraphPattern", T12.PatternMinus, []>;
171
- graphGraphPattern: import("@traqula/core").ParserRule<T12.SparqlContext, "graphGraphPattern", T12.PatternGraph, []>;
172
- serviceGraphPattern: import("@traqula/core").ParserRule<T12.SparqlContext, "serviceGraphPattern", T12.PatternService, []>;
173
- inlineData: import("@traqula/core").ParserRule<T12.SparqlContext, "inlineData", T12.PatternValues, []>;
174
- constraint: import("@traqula/core").ParserRule<T12.SparqlContext, "constraint", T12.Expression, []>;
175
- dataBlock: import("@traqula/core").ParserRule<T12.SparqlContext, "dataBlock", T12.PatternValues, []>;
176
- inlineDataOneVar: import("@traqula/core").ParserRule<T12.SparqlContext, "inlineDataOneVar", T12.PatternValues, []>;
177
- inlineDataFull: import("@traqula/core").ParserRule<T12.SparqlContext, "inlineDataFull", T12.PatternValues, []>;
178
- dataBlockValue: import("@traqula/core").ParserRule<T12.SparqlContext, "dataBlockValue", TermIri | import("@traqula/rules-sparql-1-1").TermLiteral | T12.TermTriple | undefined, []>;
153
+ var: import("@traqula/core").ParserRule<T12.SparqlContext, "var", import("@traqula/rules-sparql-1-1").TermVariable, []>;
154
+ rdfLiteral: import("@traqula/core").ParserRule<T12.SparqlContext, "rdfLiteral", import("@traqula/rules-sparql-1-1").TermLiteral, []>;
155
+ numericLiteral: import("@traqula/core").ParserRule<T12.SparqlContext, "numericLiteral", import("@traqula/rules-sparql-1-1").TermLiteralTyped, []>;
156
+ numericLiteralUnsigned: import("@traqula/core").ParserRule<T12.SparqlContext, "numericLiteralUnsigned", import("@traqula/rules-sparql-1-1").TermLiteralTyped, []>;
157
+ numericLiteralPositive: import("@traqula/core").ParserRule<T12.SparqlContext, "numericLiteralPositive", import("@traqula/rules-sparql-1-1").TermLiteralTyped, []>;
158
+ numericLiteralNegative: import("@traqula/core").ParserRule<T12.SparqlContext, "numericLiteralNegative", import("@traqula/rules-sparql-1-1").TermLiteralTyped, []>;
159
+ booleanLiteral: import("@traqula/core").ParserRule<T12.SparqlContext, "booleanLiteral", import("@traqula/rules-sparql-1-1").TermLiteralTyped, []>;
160
+ iri: import("@traqula/core").ParserRule<T12.SparqlContext, "iri", TermIri, []>;
161
+ iriFull: import("@traqula/core").ParserRule<T12.SparqlContext, "iriFull", import("@traqula/rules-sparql-1-1").TermIriFull, []>;
162
+ prefixedName: import("@traqula/core").ParserRule<T12.SparqlContext, "prefixedName", import("@traqula/rules-sparql-1-1").TermIriPrefixed, []>;
163
+ VerbA: import("@traqula/core").ParserRule<T12.SparqlContext, "VerbA", import("@traqula/rules-sparql-1-1").TermIriFull, []>;
164
+ pathEltOrInverse: import("@traqula/core").ParserRule<T12.SparqlContext, "pathEltOrInverse", import("@traqula/rules-sparql-1-1").Path, []>;
165
+ pathSequence: import("@traqula/core").ParserRule<T12.SparqlContext, "pathSequence", import("@traqula/rules-sparql-1-1").TermIriFull | import("@traqula/rules-sparql-1-1").TermIriPrefixed | import("@traqula/rules-sparql-1-1").PropertyPathChain | import("@traqula/rules-sparql-1-1").PathModified | import("@traqula/rules-sparql-1-1").PathNegated, []>;
166
+ pathAlternative: import("@traqula/core").ParserRule<T12.SparqlContext, "pathAlternative", import("@traqula/rules-sparql-1-1").TermIriFull | import("@traqula/rules-sparql-1-1").TermIriPrefixed | import("@traqula/rules-sparql-1-1").PropertyPathChain | import("@traqula/rules-sparql-1-1").PathModified | import("@traqula/rules-sparql-1-1").PathNegated, []>;
167
+ pathElt: import("@traqula/core").ParserRule<T12.SparqlContext, "pathElt", import("@traqula/rules-sparql-1-1").Path, []>;
168
+ pathMod: import("@traqula/core").ParserRule<T12.SparqlContext, "pathMod", import("@traqula/chevrotain").IToken & {
169
+ image: "*" | "+" | "?";
170
+ }, []>;
171
+ pathPrimary: import("@traqula/core").ParserRule<T12.SparqlContext, "pathPrimary", import("@traqula/rules-sparql-1-1").Path, []>;
172
+ pathNegatedPropertySet: import("@traqula/core").ParserRule<T12.SparqlContext, "pathNegatedPropertySet", import("@traqula/rules-sparql-1-1").PathNegated, []>;
173
+ pathOneInPropertySet: import("@traqula/core").ParserRule<T12.SparqlContext, "pathOneInPropertySet", TermIri | import("@traqula/rules-sparql-1-1").PathNegatedElt, []>;
179
174
  groupClause: import("@traqula/core").ParserRule<T12.SparqlContext, "groupClause", T12.SolutionModifierGroup, []>;
180
- havingClause: import("@traqula/core").ParserRule<T12.SparqlContext, "havingClause", T12.SolutionModifierHaving, []>;
181
- orderClause: import("@traqula/core").ParserRule<T12.SparqlContext, "orderClause", T12.SolutionModifierOrder, []>;
182
- limitOffsetClauses: import("@traqula/core").ParserRule<T12.SparqlContext, "limitOffsetClauses", import("@traqula/rules-sparql-1-1").SolutionModifierLimitOffset, []>;
183
175
  groupCondition: import("@traqula/core").ParserRule<T12.SparqlContext, "groupCondition", T12.Expression | T12.SolutionModifierGroupBind, []>;
176
+ havingClause: import("@traqula/core").ParserRule<T12.SparqlContext, "havingClause", T12.SolutionModifierHaving, []>;
184
177
  havingCondition: import("@traqula/core").ParserRule<T12.SparqlContext, "havingCondition", T12.Expression, []>;
178
+ orderClause: import("@traqula/core").ParserRule<T12.SparqlContext, "orderClause", T12.SolutionModifierOrder, []>;
185
179
  orderCondition: import("@traqula/core").ParserRule<T12.SparqlContext, "orderCondition", T12.Ordering, []>;
180
+ limitOffsetClauses: import("@traqula/core").ParserRule<T12.SparqlContext, "limitOffsetClauses", import("@traqula/rules-sparql-1-1").SolutionModifierLimitOffset, []>;
186
181
  limitClause: import("@traqula/core").ParserRule<T12.SparqlContext, "limitClause", Wrap<number>, []>;
187
182
  offsetClause: import("@traqula/core").ParserRule<T12.SparqlContext, "offsetClause", Wrap<number>, []>;
188
- datasetClause: import("@traqula/core").ParserRule<T12.SparqlContext, "datasetClause", Wrap<{
189
- clauseType: "default" | "named";
190
- value: T12.TermIri;
183
+ triplesBlock: import("@traqula/core").ParserRule<T12.SparqlContext, "triplesBlock", T12.PatternBgp, []>;
184
+ triplesSameSubject: import("@traqula/core").ParserRule<T12.SparqlContext, "triplesSameSubject", import("@traqula/rules-sparql-1-1").BasicGraphPattern, []>;
185
+ triplesSameSubjectPath: import("@traqula/core").ParserRule<T12.SparqlContext, "triplesSameSubjectPath", import("@traqula/rules-sparql-1-1").BasicGraphPattern, []>;
186
+ triplesTemplate: import("@traqula/core").ParserRule<T12.SparqlContext, "triplesTemplate", T12.PatternBgp, []>;
187
+ propertyList: import("@traqula/core").ParserRule<T12.SparqlContext, "propertyList", T12.TripleNesting[], [import("@traqula/rules-sparql-1-1").GraphNode]>;
188
+ propertyListPath: import("@traqula/core").ParserRule<T12.SparqlContext, "propertyListPath", T12.TripleNesting[], [import("@traqula/rules-sparql-1-1").GraphNode]>;
189
+ propertyListNotEmpty: import("@traqula/core").ParserRule<T12.SparqlContext, "propertyListNotEmpty", T12.TripleNesting[], [import("@traqula/rules-sparql-1-1").GraphNode]>;
190
+ propertyListPathNotEmpty: import("@traqula/core").ParserRule<T12.SparqlContext, "propertyListPathNotEmpty", T12.TripleNesting[], [import("@traqula/rules-sparql-1-1").GraphNode]>;
191
+ verbPath: import("@traqula/core").ParserRule<T12.SparqlContext, "verbPath", import("@traqula/rules-sparql-1-1").Path, []>;
192
+ verbSimple: import("@traqula/core").ParserRule<T12.SparqlContext, "verbSimple", import("@traqula/rules-sparql-1-1").TermVariable, []>;
193
+ objectList: import("@traqula/core").ParserRule<T12.SparqlContext, "objectList", T12.TripleNesting[], [T12.GraphNode, import("@traqula/rules-sparql-1-1").TermIriFull | import("@traqula/rules-sparql-1-1").TermIriPrefixed | import("@traqula/rules-sparql-1-1").TermVariable | import("@traqula/rules-sparql-1-1").PropertyPathChain | import("@traqula/rules-sparql-1-1").PathModified | import("@traqula/rules-sparql-1-1").PathNegated]>;
194
+ objectListPath: import("@traqula/core").ParserRule<T12.SparqlContext, "objectListPath", T12.TripleNesting, [T12.GraphNode, import("@traqula/rules-sparql-1-1").TermIriFull | import("@traqula/rules-sparql-1-1").TermIriPrefixed | import("@traqula/rules-sparql-1-1").TermVariable | import("@traqula/rules-sparql-1-1").PropertyPathChain | import("@traqula/rules-sparql-1-1").PathModified | import("@traqula/rules-sparql-1-1").PathNegated]>;
195
+ objectPath: import("@traqula/core").ParserRule<T12.SparqlContext, "objectPath", T12.TripleNesting, [T12.GraphNode, import("@traqula/rules-sparql-1-1").TermIriFull | import("@traqula/rules-sparql-1-1").TermIriPrefixed | import("@traqula/rules-sparql-1-1").TermVariable | import("@traqula/rules-sparql-1-1").PropertyPathChain | import("@traqula/rules-sparql-1-1").PathModified | import("@traqula/rules-sparql-1-1").PathNegated]>;
196
+ collection: import("@traqula/core").ParserRule<T12.SparqlContext, "collection", T12.TripleCollectionList, []>;
197
+ collectionPath: import("@traqula/core").ParserRule<T12.SparqlContext, "collectionPath", T12.TripleCollectionList, []>;
198
+ triplesNode: import("@traqula/core").ParserRule<T12.SparqlContext, "triplesNode", T12.TripleCollection, []>;
199
+ triplesNodePath: import("@traqula/core").ParserRule<T12.SparqlContext, "triplesNodePath", T12.TripleCollection, []>;
200
+ blankNodePropertyList: import("@traqula/core").ParserRule<T12.SparqlContext, "blankNodePropertyList", Patch<import("@traqula/rules-sparql-1-1").TripleCollectionBlankNodeProperties, {
201
+ triples: T12.TripleNesting[];
202
+ identifier: T12.TermBlank | T12.TermVariable | T12.TermIri;
191
203
  }>, []>;
192
- datasetClauses: import("@traqula/core").ParserRule<T12.SparqlContext, "datasetClauses", T12.DatasetClauses, []>;
193
- defaultGraphClause: import("@traqula/core").ParserRule<T12.SparqlContext, "defaultGraphClause", TermIri, []>;
194
- namedGraphClause: import("@traqula/core").ParserRule<T12.SparqlContext, "namedGraphClause", Wrap<TermIri>, []>;
195
- sourceSelector: import("@traqula/core").ParserRule<T12.SparqlContext, "sourceSelector", TermIri, []>;
196
- constructTemplate: import("@traqula/core").ParserRule<T12.SparqlContext, "constructTemplate", Wrap<T12.PatternBgp>, []>;
197
- constructTriples: import("@traqula/core").ParserRule<T12.SparqlContext, "constructTriples", T12.PatternBgp, []>;
198
- updateUnit: import("@traqula/core").ParserRule<T12.SparqlContext, "updateUnit", import("@traqula/rules-sparql-1-1").Update, []>;
199
- update: import("@traqula/core").ParserRule<T12.SparqlContext, "update", import("@traqula/rules-sparql-1-1").Update, []>;
200
- load: import("@traqula/core").ParserRule<T12.SparqlContext, "load", T12.UpdateOperationLoad, []>;
201
- clear: import("@traqula/core").ParserRule<T12.SparqlContext, "clear", T12.UpdateOperationClear, []>;
202
- drop: import("@traqula/core").ParserRule<T12.SparqlContext, "drop", T12.UpdateOperationDrop, []>;
203
- add: import("@traqula/core").ParserRule<T12.SparqlContext, "add", T12.UpdateOperationAdd, []>;
204
- move: import("@traqula/core").ParserRule<T12.SparqlContext, "move", T12.UpdateOperationMove, []>;
205
- copy: import("@traqula/core").ParserRule<T12.SparqlContext, "copy", T12.UpdateOperationCopy, []>;
206
- create: import("@traqula/core").ParserRule<T12.SparqlContext, "create", T12.UpdateOperationCreate, []>;
207
- insertData: import("@traqula/core").ParserRule<T12.SparqlContext, "insertData", T12.UpdateOperationInsertData, []>;
208
- deleteData: import("@traqula/core").ParserRule<T12.SparqlContext, "deleteData", T12.UpdateOperationDeleteData, []>;
209
- deleteWhere: import("@traqula/core").ParserRule<T12.SparqlContext, "deleteWhere", T12.UpdateOperationDeleteWhere, []>;
210
- graphRef: import("@traqula/core").ParserRule<T12.SparqlContext, "graphRef", import("@traqula/rules-sparql-1-1").GraphRefSpecific, []>;
211
- graphRefAll: import("@traqula/core").ParserRule<T12.SparqlContext, "graphRefAll", import("@traqula/rules-sparql-1-1").GraphRef, []>;
212
- graphOrDefault: import("@traqula/core").ParserRule<T12.SparqlContext, "graphOrDefault", import("@traqula/rules-sparql-1-1").GraphRefSpecific | import("@traqula/rules-sparql-1-1").GraphRefDefault, []>;
213
- quadData: import("@traqula/core").ParserRule<T12.SparqlContext, "quadData", Wrap<T12.Quads[]>, []>;
214
- quads: import("@traqula/core").ParserRule<T12.SparqlContext, "quads", Wrap<T12.Quads[]>, []>;
215
- update1: import("@traqula/core").ParserRule<T12.SparqlContext, "update1", T12.UpdateOperation, []>;
216
- quadPattern: import("@traqula/core").ParserRule<T12.SparqlContext, "quadPattern", Wrap<T12.Quads[]>, []>;
217
- quadsNotTriples: import("@traqula/core").ParserRule<T12.SparqlContext, "quadsNotTriples", T12.GraphQuads, []>;
218
- modify: import("@traqula/core").ParserRule<T12.SparqlContext, "modify", T12.UpdateOperationModify, []>;
219
- deleteClause: import("@traqula/core").ParserRule<T12.SparqlContext, "deleteClause", Wrap<T12.Quads[]>, []>;
220
- insertClause: import("@traqula/core").ParserRule<T12.SparqlContext, "insertClause", Wrap<T12.Quads[]>, []>;
221
- usingClause: import("@traqula/core").ParserRule<T12.SparqlContext, "usingClause", Wrap<{
222
- clauseType: "default" | "named";
223
- value: T12.TermIri;
204
+ blankNodePropertyListPath: import("@traqula/core").ParserRule<T12.SparqlContext, "blankNodePropertyListPath", Patch<import("@traqula/rules-sparql-1-1").TripleCollectionBlankNodeProperties, {
205
+ triples: T12.TripleNesting[];
206
+ identifier: T12.TermBlank | T12.TermVariable | T12.TermIri;
224
207
  }>, []>;
225
- usingClauses: import("@traqula/core").ParserRule<T12.SparqlContext, "usingClauses", T12.DatasetClauses, []>;
208
+ graphNode: import("@traqula/core").ParserRule<T12.SparqlContext, "graphNode", T12.GraphNode, []>;
209
+ graphNodePath: import("@traqula/core").ParserRule<T12.SparqlContext, "graphNodePath", T12.GraphNode, []>;
210
+ whereClause: import("@traqula/core").ParserRule<T12.SparqlContext, "whereClause", Wrap<T12.PatternGroup>, []>;
211
+ groupGraphPattern: import("@traqula/core").ParserRule<T12.SparqlContext, "groupGraphPattern", T12.PatternGroup, []>;
212
+ groupGraphPatternSub: import("@traqula/core").ParserRule<T12.SparqlContext, "groupGraphPatternSub", T12.Pattern[], []>;
213
+ graphPatternNotTriples: import("@traqula/core").ParserRule<T12.SparqlContext, "graphPatternNotTriples", T12.PatternGroup | T12.PatternUnion | T12.PatternOptional | T12.PatternMinus | T12.PatternGraph | T12.PatternService | T12.PatternFilter | T12.PatternBind | T12.PatternValues, []>;
214
+ optionalGraphPattern: import("@traqula/core").ParserRule<T12.SparqlContext, "optionalGraphPattern", T12.PatternOptional, []>;
215
+ graphGraphPattern: import("@traqula/core").ParserRule<T12.SparqlContext, "graphGraphPattern", T12.PatternGraph, []>;
216
+ serviceGraphPattern: import("@traqula/core").ParserRule<T12.SparqlContext, "serviceGraphPattern", T12.PatternService, []>;
217
+ inlineData: import("@traqula/core").ParserRule<T12.SparqlContext, "inlineData", T12.PatternValues, []>;
218
+ dataBlock: import("@traqula/core").ParserRule<T12.SparqlContext, "dataBlock", T12.PatternValues, []>;
219
+ inlineDataOneVar: import("@traqula/core").ParserRule<T12.SparqlContext, "inlineDataOneVar", T12.PatternValues, []>;
220
+ inlineDataFull: import("@traqula/core").ParserRule<T12.SparqlContext, "inlineDataFull", T12.PatternValues, []>;
221
+ dataBlockValue: import("@traqula/core").ParserRule<T12.SparqlContext, "dataBlockValue", TermIri | import("@traqula/rules-sparql-1-1").TermLiteral | T12.TermTriple | undefined, []>;
222
+ minusGraphPattern: import("@traqula/core").ParserRule<T12.SparqlContext, "minusGraphPattern", T12.PatternMinus, []>;
223
+ groupOrUnionGraphPattern: import("@traqula/core").ParserRule<T12.SparqlContext, "groupOrUnionGraphPattern", T12.PatternGroup | T12.PatternUnion, []>;
224
+ constraint: import("@traqula/core").ParserRule<T12.SparqlContext, "constraint", T12.Expression, []>;
225
+ queryOrUpdate: import("@traqula/core").ParserRule<T12.SparqlContext, "queryOrUpdate", T12.SparqlQuery, []>;
226
226
  reifiedTriple: import("@traqula/core").ParserRule<any, "reifiedTriple"> & T12.SparqlGrammarRule<"reifiedTriple", T12.TripleCollectionReifiedTriple, []> & T12.SparqlGeneratorRule<"reifiedTriple", T12.TripleCollectionReifiedTriple, []>;
227
+ versionDecl: import("@traqula/core").ParserRule<any, "versionDecl"> & T12.SparqlGrammarRule<"versionDecl", T12.ContextDefinitionVersion, []> & T12.SparqlGeneratorRule<"versionDecl", T12.ContextDefinitionVersion, []>;
228
+ versionSpecifier: import("@traqula/core").ParserRule<any, "versionSpecifier"> & T12.SparqlGrammarRule<"versionSpecifier", Wrap<string>>;
227
229
  reifiedTripleBlock: import("@traqula/core").ParserRule<any, "reifiedTripleBlock"> & T12.SparqlGrammarRule<"reifiedTripleBlock", import("@traqula/rules-sparql-1-1").BasicGraphPattern>;
228
230
  reifiedTripleBlockPath: import("@traqula/core").ParserRule<any, "reifiedTripleBlockPath"> & T12.SparqlGrammarRule<"reifiedTripleBlockPath", import("@traqula/rules-sparql-1-1").BasicGraphPattern>;
229
- reifier: import("@traqula/core").ParserRule<any, "reifier"> & T12.SparqlGrammarRule<"reifier", Wrap<TermIri | import("@traqula/rules-sparql-1-1").TermBlank | import("@traqula/rules-sparql-1-1").TermVariable>>;
230
- varOrReifierId: import("@traqula/core").ParserRule<any, "varOrReifierId"> & T12.SparqlGrammarRule<"varOrReifierId", TermIri | import("@traqula/rules-sparql-1-1").TermBlank | import("@traqula/rules-sparql-1-1").TermVariable>;
231
- annotation: import("@traqula/core").ParserRule<any, "annotation"> & T12.SparqlGrammarRule<"annotation", T12.Annotation[], []> & T12.SparqlGeneratorRule<"annotation", T12.Annotation[], []>;
231
+ varOrReifierId: import("@traqula/core").ParserRule<any, "varOrReifierId"> & T12.SparqlGrammarRule<"varOrReifierId", TermIri | import("@traqula/rules-sparql-1-1").TermVariable | import("@traqula/rules-sparql-1-1").TermBlank>;
232
+ reifier: import("@traqula/core").ParserRule<any, "reifier"> & T12.SparqlGrammarRule<"reifier", Wrap<TermIri | import("@traqula/rules-sparql-1-1").TermVariable | import("@traqula/rules-sparql-1-1").TermBlank>>;
232
233
  annotationPath: import("@traqula/core").ParserRule<any, "annotationPath"> & T12.SparqlGrammarRule<"annotationPath", T12.Annotation[], []> & T12.SparqlGeneratorRule<"annotationPath", T12.Annotation[], []>;
234
+ annotation: import("@traqula/core").ParserRule<any, "annotation"> & T12.SparqlGrammarRule<"annotation", T12.Annotation[], []> & T12.SparqlGeneratorRule<"annotation", T12.Annotation[], []>;
233
235
  annotationBlockPath: import("@traqula/core").ParserRule<any, "annotationBlockPath"> & T12.SparqlGrammarRule<"annotationBlockPath", Patch<import("@traqula/rules-sparql-1-1").TripleCollectionBlankNodeProperties, {
234
236
  triples: T12.TripleNesting[];
235
237
  identifier: T12.TermBlank | T12.TermVariable | T12.TermIri;
236
- }>, [TermIri | import("@traqula/rules-sparql-1-1").TermBlank | import("@traqula/rules-sparql-1-1").TermVariable]> & T12.SparqlGeneratorRule<"annotationBlockPath", Patch<import("@traqula/rules-sparql-1-1").TripleCollectionBlankNodeProperties, {
238
+ }>, [TermIri | import("@traqula/rules-sparql-1-1").TermVariable | import("@traqula/rules-sparql-1-1").TermBlank]> & T12.SparqlGeneratorRule<"annotationBlockPath", Patch<import("@traqula/rules-sparql-1-1").TripleCollectionBlankNodeProperties, {
237
239
  triples: T12.TripleNesting[];
238
240
  identifier: T12.TermBlank | T12.TermVariable | T12.TermIri;
239
241
  }>>;
240
242
  annotationBlock: import("@traqula/core").ParserRule<any, "annotationBlock"> & T12.SparqlGrammarRule<"annotationBlock", Patch<import("@traqula/rules-sparql-1-1").TripleCollectionBlankNodeProperties, {
241
243
  triples: T12.TripleNesting[];
242
244
  identifier: T12.TermBlank | T12.TermVariable | T12.TermIri;
243
- }>, [TermIri | import("@traqula/rules-sparql-1-1").TermBlank | import("@traqula/rules-sparql-1-1").TermVariable]> & T12.SparqlGeneratorRule<"annotationBlock", Patch<import("@traqula/rules-sparql-1-1").TripleCollectionBlankNodeProperties, {
245
+ }>, [TermIri | import("@traqula/rules-sparql-1-1").TermVariable | import("@traqula/rules-sparql-1-1").TermBlank]> & T12.SparqlGeneratorRule<"annotationBlock", Patch<import("@traqula/rules-sparql-1-1").TripleCollectionBlankNodeProperties, {
244
246
  triples: T12.TripleNesting[];
245
247
  identifier: T12.TermBlank | T12.TermVariable | T12.TermIri;
246
248
  }>>;
247
- reifiedTripleSubject: import("@traqula/core").ParserRule<any, "reifiedTripleSubject"> & T12.SparqlGrammarRule<"reifiedTripleSubject", T12.Term | T12.TripleCollectionReifiedTriple>;
248
- reifiedTripleObject: import("@traqula/core").ParserRule<any, "reifiedTripleObject"> & T12.SparqlGrammarRule<"reifiedTripleObject", T12.Term | T12.TripleCollectionReifiedTriple>;
249
+ reifiedTripleSubject: import("@traqula/core").ParserRule<any, "reifiedTripleSubject"> & T12.SparqlGrammarRule<"reifiedTripleSubject", T12.TripleCollectionReifiedTriple | T12.Term>;
250
+ reifiedTripleObject: import("@traqula/core").ParserRule<any, "reifiedTripleObject"> & T12.SparqlGrammarRule<"reifiedTripleObject", T12.TripleCollectionReifiedTriple | T12.Term>;
249
251
  tripleTerm: import("@traqula/core").ParserRule<any, "tripleTerm"> & T12.SparqlGrammarRule<"tripleTerm", T12.TermTriple, []> & T12.SparqlGeneratorRule<"tripleTerm", T12.TermTriple, []>;
250
- tripleTermSubject: import("@traqula/core").ParserRule<any, "tripleTermSubject"> & T12.SparqlGrammarRule<"tripleTermSubject", TermIri | import("@traqula/rules-sparql-1-1").TermBlank | import("@traqula/rules-sparql-1-1").TermLiteral | import("@traqula/rules-sparql-1-1").TermVariable | T12.TermTriple>;
251
- tripleTermObject: import("@traqula/core").ParserRule<any, "tripleTermObject"> & T12.SparqlGrammarRule<"tripleTermObject", TermIri | import("@traqula/rules-sparql-1-1").TermBlank | import("@traqula/rules-sparql-1-1").TermLiteral | import("@traqula/rules-sparql-1-1").TermVariable | T12.TermTriple>;
252
+ tripleTermSubject: import("@traqula/core").ParserRule<any, "tripleTermSubject"> & T12.SparqlGrammarRule<"tripleTermSubject", TermIri | import("@traqula/rules-sparql-1-1").TermVariable | import("@traqula/rules-sparql-1-1").TermLiteral | import("@traqula/rules-sparql-1-1").TermBlank | T12.TermTriple>;
253
+ tripleTermObject: import("@traqula/core").ParserRule<any, "tripleTermObject"> & T12.SparqlGrammarRule<"tripleTermObject", TermIri | import("@traqula/rules-sparql-1-1").TermVariable | import("@traqula/rules-sparql-1-1").TermLiteral | import("@traqula/rules-sparql-1-1").TermBlank | T12.TermTriple>;
252
254
  tripleTermData: import("@traqula/core").ParserRule<any, "tripleTermData"> & T12.SparqlGrammarRule<"tripleTermData", T12.TermTriple>;
253
255
  tripleTermDataSubject: import("@traqula/core").ParserRule<any, "tripleTermDataSubject"> & T12.SparqlGrammarRule<"tripleTermDataSubject", TermIri | import("@traqula/rules-sparql-1-1").TermLiteral | T12.TermTriple>;
254
256
  tripleTermDataObject: import("@traqula/core").ParserRule<any, "tripleTermDataObject"> & T12.SparqlGrammarRule<"tripleTermDataObject", TermIri | import("@traqula/rules-sparql-1-1").TermLiteral | T12.TermTriple>;
255
257
  exprTripleTerm: import("@traqula/core").ParserRule<any, "exprTripleTerm"> & T12.SparqlGrammarRule<"exprTripleTerm", T12.TermTriple>;
256
- exprTripleTermSubject: import("@traqula/core").ParserRule<any, "exprTripleTermSubject"> & T12.SparqlGrammarRule<"exprTripleTermSubject", TermIri | import("@traqula/rules-sparql-1-1").TermLiteral | import("@traqula/rules-sparql-1-1").TermVariable | T12.TermTriple>;
257
- exprTripleTermObject: import("@traqula/core").ParserRule<any, "exprTripleTermObject"> & T12.SparqlGrammarRule<"exprTripleTermObject", TermIri | import("@traqula/rules-sparql-1-1").TermLiteral | import("@traqula/rules-sparql-1-1").TermVariable | T12.TermTriple>;
258
- versionDecl: import("@traqula/core").ParserRule<any, "versionDecl"> & T12.SparqlGrammarRule<"versionDecl", T12.ContextDefinitionVersion, []> & T12.SparqlGeneratorRule<"versionDecl", T12.ContextDefinitionVersion, []>;
259
- versionSpecifier: import("@traqula/core").ParserRule<any, "versionSpecifier"> & T12.SparqlGrammarRule<"versionSpecifier", Wrap<string>>;
258
+ exprTripleTermSubject: import("@traqula/core").ParserRule<any, "exprTripleTermSubject"> & T12.SparqlGrammarRule<"exprTripleTermSubject", TermIri | import("@traqula/rules-sparql-1-1").TermVariable | import("@traqula/rules-sparql-1-1").TermLiteral | T12.TermTriple>;
259
+ exprTripleTermObject: import("@traqula/core").ParserRule<any, "exprTripleTermObject"> & T12.SparqlGrammarRule<"exprTripleTermObject", TermIri | import("@traqula/rules-sparql-1-1").TermVariable | import("@traqula/rules-sparql-1-1").TermLiteral | T12.TermTriple>;
260
260
  builtInLangdir: import("@traqula/core").ParserRule<any, "builtInLangdir"> & g11.RuleDefExpressionFunctionX<"builtInLangdir", [import("@traqula/rules-sparql-1-1").Expression]>;
261
261
  builtInStrLangdir: import("@traqula/core").ParserRule<any, "builtInStrLangdir"> & g11.RuleDefExpressionFunctionX<"builtInStrLangdir", [import("@traqula/rules-sparql-1-1").Expression, import("@traqula/rules-sparql-1-1").Expression, import("@traqula/rules-sparql-1-1").Expression]>;
262
262
  builtInHasLang: import("@traqula/core").ParserRule<any, "builtInHasLang"> & g11.RuleDefExpressionFunctionX<"builtInHasLang", [import("@traqula/rules-sparql-1-1").Expression]>;
@@ -1,6 +1,6 @@
1
1
  import { ParserBuilder } from '@traqula/core';
2
2
  import { sparql11ParserBuilder } from '@traqula/parser-sparql-1-1';
3
- import { gram as g11, sparqlCodepointEscape, } from '@traqula/rules-sparql-1-1';
3
+ import { gram as g11, } from '@traqula/rules-sparql-1-1';
4
4
  import { completeParseContext, copyParseContext, gram as S12, lex as l12 } from '@traqula/rules-sparql-1-2';
5
5
  /**
6
6
  * Pre-configured {@link ParserBuilder} for SPARQL 1.2, extending the SPARQL 1.1 parser builder
@@ -28,6 +28,8 @@ export const sparql12ParserBuilder = ParserBuilder.create(sparql11ParserBuilder)
28
28
  .patchRule(S12.rdfLiteral)
29
29
  .patchRule(S12.unaryExpression)
30
30
  .patchRule(S12.prologue)
31
+ .patchRule(S12.string)
32
+ .patchRule(S12.iriFull)
31
33
  .deleteRule(g11.graphTerm.name);
32
34
  /**
33
35
  * Parser that can parse a SPARQL 1.2 string into a SPARQL 1.2 AST.
@@ -38,7 +40,6 @@ export class Parser {
38
40
  constructor(args = {}) {
39
41
  this.parser = sparql12ParserBuilder.build({
40
42
  ...args,
41
- queryPreProcessor: sparqlCodepointEscape,
42
43
  tokenVocabulary: l12.sparql12LexerBuilder.tokenVocabulary,
43
44
  });
44
45
  this.defaultContext = completeParseContext(args.defaultContext ?? {});
@@ -1 +1 @@
1
- {"version":3,"file":"Parser.js","sourceRoot":"","sources":["../../../lib/Parser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAE9C,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EACL,IAAI,IAAI,GAAG,EACX,qBAAqB,GACtB,MAAM,2BAA2B,CAAC;AAInC,OAAO,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,IAAI,IAAI,GAAG,EAAE,GAAG,IAAI,GAAG,EAAE,MAAM,2BAA2B,CAAC;AAG5G;;;;;GAKG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,aAAa,CAAC,MAAM,CAAC,qBAAqB,CAAC;KAC7E,YAAY,EAAqB;KACjC,SAAS,EAqMN;KACH,OAAO,CACN,GAAG,CAAC,kBAAkB,EACtB,GAAG,CAAC,sBAAsB,EAC1B,GAAG,CAAC,OAAO,EACX,GAAG,CAAC,cAAc,EAClB,GAAG,CAAC,UAAU,EACd,GAAG,CAAC,cAAc,EAClB,GAAG,CAAC,mBAAmB,EACvB,GAAG,CAAC,eAAe,EACnB,GAAG,CAAC,aAAa,EACjB,GAAG,CAAC,oBAAoB,EACxB,GAAG,CAAC,mBAAmB,EACvB,GAAG,CAAC,UAAU,EACd,GAAG,CAAC,iBAAiB,EACrB,GAAG,CAAC,gBAAgB,EACpB,GAAG,CAAC,cAAc,EAClB,GAAG,CAAC,qBAAqB,EACzB,GAAG,CAAC,oBAAoB,EACxB,GAAG,CAAC,cAAc,EAClB,GAAG,CAAC,qBAAqB,EACzB,GAAG,CAAC,oBAAoB,CACzB;KACA,OAAO,CACN,GAAG,CAAC,WAAW,EACf,GAAG,CAAC,gBAAgB,CACrB;KACA,OAAO,CACN,GAAG,CAAC,cAAc,EAClB,GAAG,CAAC,iBAAiB,EACrB,GAAG,CAAC,cAAc,EAClB,GAAG,CAAC,iBAAiB,EACrB,GAAG,CAAC,eAAe,EACnB,GAAG,CAAC,aAAa,EACjB,GAAG,CAAC,cAAc,EAClB,GAAG,CAAC,gBAAgB,EACpB,GAAG,CAAC,aAAa,CAClB;KACA,SAAS,CAAC,GAAG,CAAC,WAAW,CAAC;KAC1B,SAAS,CAAC,GAAG,CAAC,cAAc,CAAC;KAC7B,SAAS,CAAC,GAAG,CAAC,kBAAkB,CAAC;KACjC,SAAS,CAAC,GAAG,CAAC,sBAAsB,CAAC;KACrC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC;KACrB,SAAS,CAAC,GAAG,CAAC,UAAU,CAAC;KACzB,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC;KACxB,SAAS,CAAC,GAAG,CAAC,aAAa,CAAC;KAC5B,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC;KACxB,SAAS,CAAC,GAAG,CAAC,iBAAiB,CAAC;KAChC,SAAS,CAAC,GAAG,CAAC,WAAW,CAAC;KAC1B,SAAS,CAAC,GAAG,CAAC,UAAU,CAAC;KACzB,SAAS,CAAC,GAAG,CAAC,eAAe,CAAC;KAC9B,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC;KACvB,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;AAIlC;;GAEG;AACH,MAAM,OAAO,MAAM;IACA,MAAM,CAAe;IACnB,cAAc,CAAoB;IAErD,YACE,OAAgH,EAAE;QAElH,IAAI,CAAC,MAAM,GAAG,qBAAqB,CAAC,KAAK,CAAC;YACxC,GAAG,IAAI;YACP,iBAAiB,EAAE,qBAAqB;YACxC,eAAe,EAAE,GAAG,CAAC,oBAAoB,CAAC,eAAe;SAC1D,CAAC,CAAC;QACH,IAAI,CAAC,cAAc,GAAG,oBAAoB,CAAC,IAAI,CAAC,cAAc,IAAI,EAAE,CAAC,CAAC;IACxE,CAAC;IAED;;;;;;OAMG;IACI,KAAK,CAAC,KAAa,EAAE,UAAsC,EAAE;QAClE,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,EAAE,gBAAgB,CAAC,EAAE,GAAG,IAAI,CAAC,cAAc,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC,CAAC;QACvG,GAAG,CAAC,GAAG,GAAG,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,2BAA2B,CAAC,KAAK,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC,EAAE,MAAM,CAAC,gBAAgB,CAAC,CAAC;QACjH,OAAO,GAAG,CAAC;IACb,CAAC;IAED;;;;OAIG;IACI,SAAS,CACd,KAAa,EACjB,UAAsC,EAAE;QAEpC,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,gBAAgB,CAAC,EAAE,GAAG,IAAI,CAAC,cAAc,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC,CAAC;QAC9F,GAAG,CAAC,GAAG,GAAG,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,2BAA2B,CAAC,KAAK,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC,EAAE,MAAM,CAAC,gBAAgB,CAAC,CAAC;QACjH,IAAI,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YACnD,OAAO;gBACL,GAAG,GAAG;gBACN,QAAQ,EAAE,EAAE;aACb,CAAC;QACJ,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC;CACF","sourcesContent":["import { ParserBuilder } from '@traqula/core';\nimport type { Patch, Wrap, ParserBuildArgs } from '@traqula/core';\nimport { sparql11ParserBuilder } from '@traqula/parser-sparql-1-1';\nimport {\n gram as g11,\n sparqlCodepointEscape,\n} from '@traqula/rules-sparql-1-1';\nimport type {\n TermIri,\n} from '@traqula/rules-sparql-1-1';\nimport { completeParseContext, copyParseContext, gram as S12, lex as l12 } from '@traqula/rules-sparql-1-2';\nimport type * as T12 from '@traqula/rules-sparql-1-2';\n\n/**\n * Pre-configured {@link ParserBuilder} for SPARQL 1.2, extending the SPARQL 1.1 parser builder\n * with SPARQL 1.2 grammar rules (e.g. reified triples, triple terms, VERSION declaration).\n * Use {@link ParserBuilder.create ParserBuilder.create(sparql12ParserBuilder)} to extend it\n * with additional rules.\n */\nexport const sparql12ParserBuilder = ParserBuilder.create(sparql11ParserBuilder)\n .widenContext<T12.SparqlContext>()\n .typePatch<{\n /// GeneralFile\n queryOrUpdate: [ T12.SparqlQuery];\n /// Query Unit file\n [g11.selectQuery.name]: [Omit<T12.QuerySelect, g11.HandledByBase>];\n [g11.subSelect.name]: [ Omit<T12.SubSelect, 'prefixes'>];\n [g11.selectClause.name]: [Wrap<Pick<T12.QuerySelect, 'variables' | 'distinct' | 'reduced'>>];\n [g11.constructQuery.name]: [Omit<T12.QueryConstruct, g11.HandledByBase>];\n [g11.describeQuery.name]: [Omit<T12.QueryDescribe, g11.HandledByBase>];\n [g11.askQuery.name]: [Omit<T12.QueryAsk, g11.HandledByBase>];\n [g11.valuesClause.name]: [T12.PatternValues[] | undefined];\n [g11.constructTemplate.name]: [Wrap<T12.PatternBgp>];\n [g11.constructTriples.name]: [T12.PatternBgp];\n /// Update Unit file\n [g11.update1.name]: [T12.UpdateOperation];\n [g11.load.name]: [T12.UpdateOperationLoad];\n [g11.clear.name]: [T12.UpdateOperationClear];\n [g11.drop.name]: [T12.UpdateOperationDrop];\n [g11.create.name]: [T12.UpdateOperationCreate];\n [g11.add.name]: [T12.UpdateOperationAdd];\n [g11.move.name]: [T12.UpdateOperationMove];\n [g11.copy.name]: [T12.UpdateOperationCopy];\n [g11.quadPattern.name]: [Wrap<T12.Quads[]>];\n [g11.quadData.name]: [Wrap<T12.Quads[]>];\n [g11.insertData.name]: [T12.UpdateOperationInsertData];\n [g11.deleteData.name]: [T12.UpdateOperationDeleteData];\n [g11.deleteWhere.name]: [T12.UpdateOperationDeleteWhere];\n [g11.modify.name]: [T12.UpdateOperationModify];\n [g11.deleteClause.name]: [Wrap<T12.Quads[]>];\n [g11.insertClause.name]: [Wrap<T12.Quads[]>];\n [g11.graphOrDefault.name]: [T12.GraphRefDefault | T12.GraphRefSpecific];\n [g11.graphRef.name]: [T12.GraphRefSpecific];\n [g11.graphRefAll.name]: [T12.GraphRef];\n [g11.quads.name]: [Wrap<T12.Quads[]>];\n [g11.quadsNotTriples.name]: [T12.GraphQuads];\n /// Built-in functions\n [g11.builtInStr.name]: [T12.ExpressionOperation];\n [g11.builtInLang.name]: [T12.ExpressionOperation];\n [g11.builtInLangmatches.name]: [T12.ExpressionOperation];\n [g11.builtInDatatype.name]: [T12.ExpressionOperation];\n [g11.builtInBound.name]: [T12.ExpressionOperation];\n [g11.builtInIri.name]: [T12.ExpressionOperation];\n [g11.builtInUri.name]: [T12.ExpressionOperation];\n [g11.builtInBnodeSparqlJs.name]: [T12.ExpressionOperation];\n [g11.builtInRand.name]: [T12.ExpressionOperation];\n [g11.builtInAbs.name]: [T12.ExpressionOperation];\n [g11.builtInCeil.name]: [T12.ExpressionOperation];\n [g11.builtInFloor.name]: [T12.ExpressionOperation];\n [g11.builtInRound.name]: [T12.ExpressionOperation];\n [g11.builtInConcat.name]: [T12.ExpressionOperation];\n [g11.substringExpression.name]: [T12.ExpressionOperation];\n [g11.builtInStrlen.name]: [T12.ExpressionOperation];\n [g11.strReplaceExpression.name]: [T12.ExpressionOperation];\n [g11.builtInUcase.name]: [T12.ExpressionOperation];\n [g11.builtInLcase.name]: [T12.ExpressionOperation];\n [g11.builtInEncode_for_uri.name]: [T12.ExpressionOperation];\n [g11.builtInContains.name]: [T12.ExpressionOperation];\n [g11.builtInStrstarts.name]: [T12.ExpressionOperation];\n [g11.builtInStrends.name]: [T12.ExpressionOperation];\n [g11.builtInStrbefore.name]: [T12.ExpressionOperation];\n [g11.builtInStrafter.name]: [T12.ExpressionOperation];\n [g11.builtInYear.name]: [T12.ExpressionOperation];\n [g11.builtInMonth.name]: [T12.ExpressionOperation];\n [g11.builtInDay.name]: [T12.ExpressionOperation];\n [g11.builtInHours.name]: [T12.ExpressionOperation];\n [g11.builtInMinutes.name]: [T12.ExpressionOperation];\n [g11.builtInSeconds.name]: [T12.ExpressionOperation];\n [g11.builtInTimezone.name]: [T12.ExpressionOperation];\n [g11.builtInTz.name]: [T12.ExpressionOperation];\n [g11.builtInNow.name]: [T12.ExpressionOperation];\n [g11.builtInUuid.name]: [T12.ExpressionOperation];\n [g11.builtInStruuid.name]: [T12.ExpressionOperation];\n [g11.builtInMd5.name]: [T12.ExpressionOperation];\n [g11.builtInSha1.name]: [T12.ExpressionOperation];\n [g11.builtInSha256.name]: [T12.ExpressionOperation];\n [g11.builtInSha384.name]: [T12.ExpressionOperation];\n [g11.builtInSha512.name]: [T12.ExpressionOperation];\n [g11.builtInCoalesce.name]: [T12.ExpressionOperation];\n [g11.builtInIf.name]: [T12.ExpressionOperation];\n [g11.builtInStrlang.name]: [T12.ExpressionOperation];\n [g11.builtInStrdt.name]: [T12.ExpressionOperation];\n [g11.builtInSameterm.name]: [T12.ExpressionOperation];\n [g11.builtInIsiri.name]: [T12.ExpressionOperation];\n [g11.builtInIsuri.name]: [T12.ExpressionOperation];\n [g11.builtInIsblank.name]: [T12.ExpressionOperation];\n [g11.builtInIsliteral.name]: [T12.ExpressionOperation];\n [g11.builtInIsnumeric.name]: [T12.ExpressionOperation];\n [g11.existsFunc.name]: [T12.ExpressionPatternOperation];\n [g11.notExistsFunc.name]: [T12.ExpressionPatternOperation];\n [g11.aggregateCount.name]: [T12.ExpressionAggregateOnWildcard | T12.ExpressionAggregateDefault];\n [g11.aggregateSum.name]: [T12.ExpressionAggregateDefault];\n [g11.aggregateMin.name]: [T12.ExpressionAggregateDefault];\n [g11.aggregateMax.name]: [T12.ExpressionAggregateDefault];\n [g11.aggregateAvg.name]: [T12.ExpressionAggregateDefault];\n [g11.aggregateSample.name]: [T12.ExpressionAggregateDefault];\n [g11.aggregateGroup_concat.name]: [T12.ExpressionAggregateDefault | T12.ExpressionAggregateSeparator];\n [g11.aggregate.name]: [T12.ExpressionAggregate];\n [g11.builtInCall.name]: [T12.Expression];\n /// DatasetClause\n [g11.datasetClause.name]: [Wrap<T12.DatasetClauses['clauses'][0]>];\n [g11.defaultGraphClause.name]: [T12.TermIri];\n [g11.usingClause.name]: [Wrap<T12.DatasetClauses['clauses'][0]>];\n [g11.datasetClauseStar.name]: [T12.DatasetClauses];\n [g11.usingClauseStar.name]: [T12.DatasetClauses];\n [g11.namedGraphClause.name]: [Wrap<T12.TermIri>];\n [g11.sourceSelector.name]: [T12.TermIri];\n // Expression file\n [g11.argList.name]: [Wrap<Patch<g11.IArgList, { args: T12.Expression[] }>>];\n [g11.expressionList.name]: [Wrap<T12.Expression[]>];\n [g11.expression.name]: [T12.Expression];\n [g11.conditionalOrExpression.name]: [T12.ExpressionOperation | T12.Expression];\n [g11.conditionalAndExpression.name]: [T12.Expression];\n [g11.valueLogical.name]: [T12.Expression];\n [g11.relationalExpression.name]: [T12.ExpressionOperation | T12.Expression];\n [g11.numericExpression.name]: [T12.Expression];\n [g11.additiveExpression.name]: [T12.Expression];\n [g11.multiplicativeExpression.name]: [T12.Expression];\n [g11.unaryExpression.name]: [T12.Expression];\n [g11.primaryExpression.name]: [T12.Expression];\n [g11.brackettedExpression.name]: [T12.Expression];\n [g11.iriOrFunction.name]: [T12.TermIri | T12.ExpressionFunctionCall];\n /// General\n [g11.prologue.name]: [T12.ContextDefinition[]];\n [g11.baseDecl.name]: [T12.ContextDefinition];\n [g11.prefixDecl.name]: [T12.ContextDefinition];\n [g11.verb.name]: [T12.TermVariable | T12.TermIri];\n [g11.varOrTerm.name]: [T12.Term];\n [g11.varOrIri.name]: [T12.TermIri | T12.TermVariable];\n [g11.var_.name]: [T12.TermVariable];\n [g11.graphTerm.name]: [T12.GraphTerm];\n /// Literals\n [g11.rdfLiteral.name]: [T12.TermLiteral];\n [g11.numericLiteral.name]: [T12.TermLiteralTyped];\n [g11.numericLiteralUnsigned.name]: [T12.TermLiteralTyped];\n [g11.numericLiteralPositive.name]: [T12.TermLiteralTyped];\n [g11.numericLiteralNegative.name]: [T12.TermLiteralTyped];\n [g11.booleanLiteral.name]: [T12.TermLiteralTyped];\n [g11.string.name]: [T12.TermLiteralStr];\n [g11.iri.name]: [T12.TermIri];\n [g11.iriFull.name]: [T12.TermIriFull];\n [g11.prefixedName.name]: [T12.TermIriPrefixed];\n [g11.blankNode.name]: [T12.TermBlank];\n [g11.verbA.name]: [T12.TermIriFull];\n /// / Paths: unchanged\n /// / SolutionModifiers\n [g11.solutionModifier.name]: [T12.SolutionModifiers];\n [g11.groupClause.name]: [T12.SolutionModifierGroup];\n [g11.groupCondition.name]: [T12.Expression | T12.SolutionModifierGroupBind];\n [g11.havingClause.name]: [T12.SolutionModifierHaving];\n [g11.havingCondition.name]: [T12.Expression];\n [g11.orderClause.name]: [T12.SolutionModifierOrder];\n [g11.orderCondition.name]: [T12.Ordering];\n [g11.limitOffsetClauses.name]: [T12.SolutionModifierLimitOffset];\n [g11.limitClause.name]: [Wrap<number>];\n [g11.offsetClause.name]: [ Wrap<number>];\n /// tripleBlock\n [g11.triplesBlock.name]: [T12.PatternBgp];\n [g11.triplesSameSubject.name]: [T12.BasicGraphPattern];\n [g11.triplesSameSubjectPath.name]: [T12.BasicGraphPattern];\n [g11.triplesTemplate.name]: [T12.PatternBgp];\n [g11.propertyList.name]: [T12.TripleNesting[]];\n [g11.propertyListPath.name]: [T12.TripleNesting[]];\n [g11.propertyListNotEmpty.name]: [T12.TripleNesting[]];\n [g11.propertyListPathNotEmpty.name]: [T12.TripleNesting[]];\n [g11.verbPath.name]: [T12.Path];\n [g11.verbSimple.name]: [T12.TermVariable];\n [g11.objectList.name]: [T12.TripleNesting[], [ T12.TripleNesting['subject'], T12.TripleNesting['predicate'] ]];\n [g11.objectListPath.name]: [T12.TripleNesting, [ T12.TripleNesting['subject'], T12.TripleNesting['predicate'] ]];\n [g11.object.name]: [T12.TripleNesting, [ T12.TripleNesting['subject'], T12.TripleNesting['predicate'] ]];\n [g11.objectPath.name]: [T12.TripleNesting[], [ T12.TripleNesting['subject'], T12.TripleNesting['predicate'] ]];\n [g11.collection.name]: [T12.TripleCollectionList];\n [g11.collectionPath.name]: [T12.TripleCollectionList];\n [g11.triplesNode.name]: [T12.TripleCollection];\n [g11.triplesNodePath.name]: [T12.TripleCollection];\n [g11.blankNodePropertyList.name]: [T12.TripleCollectionBlankNodeProperties];\n [g11.blankNodePropertyListPath.name]: [T12.TripleCollectionBlankNodeProperties];\n [g11.graphNode.name]: [T12.Term | T12.TripleCollection];\n [g11.graphNodePath.name]: [T12.Term | T12.TripleCollection];\n /// WhereClause\n [g11.whereClause.name]: [Wrap<T12.PatternGroup>];\n [g11.groupGraphPattern.name]: [T12.PatternGroup];\n [g11.groupGraphPatternSub.name]: [T12.Pattern[]];\n [g11.graphPatternNotTriples.name]: [Exclude<T12.Pattern, T12.SubSelect | T12.PatternBgp>];\n [g11.optionalGraphPattern.name]: [T12.PatternOptional];\n [g11.graphGraphPattern.name]: [T12.PatternGraph];\n [g11.serviceGraphPattern.name]: [T12.PatternService];\n [g11.bind.name]: [T12.PatternBind];\n [g11.inlineData.name]: [T12.PatternValues];\n [g11.dataBlock.name]: [T12.PatternValues];\n [g11.inlineDataOneVar.name]: [T12.PatternValues];\n [g11.inlineDataFull.name]: [T12.PatternValues];\n [g11.dataBlockValue.name]: [T12.TermIri | T12.TermLiteral | undefined];\n [g11.minusGraphPattern.name]: [T12.PatternMinus];\n [g11.groupOrUnionGraphPattern.name]: [T12.PatternGroup | T12.PatternUnion];\n [g11.filter.name]: [T12.PatternFilter];\n [g11.constraint.name]: [T12.Expression];\n [g11.functionCall.name]: [T12.ExpressionFunctionCall];\n }>()\n .addMany(\n S12.reifiedTripleBlock,\n S12.reifiedTripleBlockPath,\n S12.reifier,\n S12.varOrReifierId,\n S12.annotation,\n S12.annotationPath,\n S12.annotationBlockPath,\n S12.annotationBlock,\n S12.reifiedTriple,\n S12.reifiedTripleSubject,\n S12.reifiedTripleObject,\n S12.tripleTerm,\n S12.tripleTermSubject,\n S12.tripleTermObject,\n S12.tripleTermData,\n S12.tripleTermDataSubject,\n S12.tripleTermDataObject,\n S12.exprTripleTerm,\n S12.exprTripleTermSubject,\n S12.exprTripleTermObject,\n )\n .addMany(\n S12.versionDecl,\n S12.versionSpecifier,\n )\n .addMany(\n S12.buildInLangDir,\n S12.buildInLangStrDir,\n S12.buildInHasLang,\n S12.buildInHasLangDir,\n S12.buildInIsTriple,\n S12.buildInTriple,\n S12.buildInSubject,\n S12.buildInPredicate,\n S12.buildInObject,\n )\n .patchRule(S12.selectQuery)\n .patchRule(S12.dataBlockValue)\n .patchRule(S12.triplesSameSubject)\n .patchRule(S12.triplesSameSubjectPath)\n .patchRule(S12.object)\n .patchRule(S12.objectPath)\n .patchRule(S12.graphNode)\n .patchRule(S12.graphNodePath)\n .patchRule(S12.varOrTerm)\n .patchRule(S12.primaryExpression)\n .patchRule(S12.builtInCall)\n .patchRule(S12.rdfLiteral)\n .patchRule(S12.unaryExpression)\n .patchRule(S12.prologue)\n .deleteRule(g11.graphTerm.name);\n\nexport type SparqlParser = ReturnType<typeof sparql12ParserBuilder.build>;\n\n/**\n * Parser that can parse a SPARQL 1.2 string into a SPARQL 1.2 AST.\n */\nexport class Parser {\n private readonly parser: SparqlParser;\n protected readonly defaultContext: T12.SparqlContext;\n\n public constructor(\n args: Pick<ParserBuildArgs, 'parserConfig' | 'lexerConfig'> & { defaultContext?: Partial<T12.SparqlContext> } = {},\n ) {\n this.parser = sparql12ParserBuilder.build({\n ...args,\n queryPreProcessor: sparqlCodepointEscape,\n tokenVocabulary: l12.sparql12LexerBuilder.tokenVocabulary,\n });\n this.defaultContext = completeParseContext(args.defaultContext ?? {});\n }\n\n /**\n * Parse a query string starting from the\n * [QueryUnit](https://www.w3.org/TR/sparql12-query/#rQueryUnit)\n * or [QueryUpdate](https://www.w3.org/TR/sparql12-query/#rUpdateUnit) rules.\n * @param query\n * @param context\n */\n public parse(query: string, context: Partial<T12.SparqlContext> = {}): T12.SparqlQuery {\n const ast = this.parser.queryOrUpdate(query, copyParseContext({ ...this.defaultContext, ...context }));\n ast.loc = this.defaultContext.astFactory.sourceLocationInlinedSource(query, ast.loc, 0, Number.MAX_SAFE_INTEGER);\n return ast;\n }\n\n /**\n * Parse a query string starting from the [Path](https://www.w3.org/TR/sparql12-query/#rPath) grammar rule.\n * @param query\n * @param context\n */\n public parsePath(\n query: string,\ncontext: Partial<T12.SparqlContext> = {},\n ): (T12.Path & { prefixes: object }) | TermIri {\n const ast = this.parser.path(query, copyParseContext({ ...this.defaultContext, ...context }));\n ast.loc = this.defaultContext.astFactory.sourceLocationInlinedSource(query, ast.loc, 0, Number.MAX_SAFE_INTEGER);\n if (this.defaultContext.astFactory.isPathPure(ast)) {\n return {\n ...ast,\n prefixes: {},\n };\n }\n return ast;\n }\n}\n"]}
1
+ {"version":3,"file":"Parser.js","sourceRoot":"","sources":["../../../lib/Parser.ts"],"names":[],"mappings":"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","sourcesContent":["import { ParserBuilder } from '@traqula/core';\nimport type { Patch, Wrap, ParserBuildArgs } from '@traqula/core';\nimport { sparql11ParserBuilder } from '@traqula/parser-sparql-1-1';\nimport {\n gram as g11,\n} from '@traqula/rules-sparql-1-1';\nimport type {\n TermIri,\n} from '@traqula/rules-sparql-1-1';\nimport { completeParseContext, copyParseContext, gram as S12, lex as l12 } from '@traqula/rules-sparql-1-2';\nimport type * as T12 from '@traqula/rules-sparql-1-2';\n\n/**\n * Pre-configured {@link ParserBuilder} for SPARQL 1.2, extending the SPARQL 1.1 parser builder\n * with SPARQL 1.2 grammar rules (e.g. reified triples, triple terms, VERSION declaration).\n * Use {@link ParserBuilder.create ParserBuilder.create(sparql12ParserBuilder)} to extend it\n * with additional rules.\n */\nexport const sparql12ParserBuilder = ParserBuilder.create(sparql11ParserBuilder)\n .widenContext<T12.SparqlContext>()\n .typePatch<{\n /// GeneralFile\n queryOrUpdate: [ T12.SparqlQuery];\n /// Query Unit file\n [g11.selectQuery.name]: [Omit<T12.QuerySelect, g11.HandledByBase>];\n [g11.subSelect.name]: [ Omit<T12.SubSelect, 'prefixes'>];\n [g11.selectClause.name]: [Wrap<Pick<T12.QuerySelect, 'variables' | 'distinct' | 'reduced'>>];\n [g11.constructQuery.name]: [Omit<T12.QueryConstruct, g11.HandledByBase>];\n [g11.describeQuery.name]: [Omit<T12.QueryDescribe, g11.HandledByBase>];\n [g11.askQuery.name]: [Omit<T12.QueryAsk, g11.HandledByBase>];\n [g11.valuesClause.name]: [T12.PatternValues[] | undefined];\n [g11.constructTemplate.name]: [Wrap<T12.PatternBgp>];\n [g11.constructTriples.name]: [T12.PatternBgp];\n /// Update Unit file\n [g11.update1.name]: [T12.UpdateOperation];\n [g11.load.name]: [T12.UpdateOperationLoad];\n [g11.clear.name]: [T12.UpdateOperationClear];\n [g11.drop.name]: [T12.UpdateOperationDrop];\n [g11.create.name]: [T12.UpdateOperationCreate];\n [g11.add.name]: [T12.UpdateOperationAdd];\n [g11.move.name]: [T12.UpdateOperationMove];\n [g11.copy.name]: [T12.UpdateOperationCopy];\n [g11.quadPattern.name]: [Wrap<T12.Quads[]>];\n [g11.quadData.name]: [Wrap<T12.Quads[]>];\n [g11.insertData.name]: [T12.UpdateOperationInsertData];\n [g11.deleteData.name]: [T12.UpdateOperationDeleteData];\n [g11.deleteWhere.name]: [T12.UpdateOperationDeleteWhere];\n [g11.modify.name]: [T12.UpdateOperationModify];\n [g11.deleteClause.name]: [Wrap<T12.Quads[]>];\n [g11.insertClause.name]: [Wrap<T12.Quads[]>];\n [g11.graphOrDefault.name]: [T12.GraphRefDefault | T12.GraphRefSpecific];\n [g11.graphRef.name]: [T12.GraphRefSpecific];\n [g11.graphRefAll.name]: [T12.GraphRef];\n [g11.quads.name]: [Wrap<T12.Quads[]>];\n [g11.quadsNotTriples.name]: [T12.GraphQuads];\n /// Built-in functions\n [g11.builtInStr.name]: [T12.ExpressionOperation];\n [g11.builtInLang.name]: [T12.ExpressionOperation];\n [g11.builtInLangmatches.name]: [T12.ExpressionOperation];\n [g11.builtInDatatype.name]: [T12.ExpressionOperation];\n [g11.builtInBound.name]: [T12.ExpressionOperation];\n [g11.builtInIri.name]: [T12.ExpressionOperation];\n [g11.builtInUri.name]: [T12.ExpressionOperation];\n [g11.builtInBnodeSparqlJs.name]: [T12.ExpressionOperation];\n [g11.builtInRand.name]: [T12.ExpressionOperation];\n [g11.builtInAbs.name]: [T12.ExpressionOperation];\n [g11.builtInCeil.name]: [T12.ExpressionOperation];\n [g11.builtInFloor.name]: [T12.ExpressionOperation];\n [g11.builtInRound.name]: [T12.ExpressionOperation];\n [g11.builtInConcat.name]: [T12.ExpressionOperation];\n [g11.substringExpression.name]: [T12.ExpressionOperation];\n [g11.builtInStrlen.name]: [T12.ExpressionOperation];\n [g11.strReplaceExpression.name]: [T12.ExpressionOperation];\n [g11.builtInUcase.name]: [T12.ExpressionOperation];\n [g11.builtInLcase.name]: [T12.ExpressionOperation];\n [g11.builtInEncode_for_uri.name]: [T12.ExpressionOperation];\n [g11.builtInContains.name]: [T12.ExpressionOperation];\n [g11.builtInStrstarts.name]: [T12.ExpressionOperation];\n [g11.builtInStrends.name]: [T12.ExpressionOperation];\n [g11.builtInStrbefore.name]: [T12.ExpressionOperation];\n [g11.builtInStrafter.name]: [T12.ExpressionOperation];\n [g11.builtInYear.name]: [T12.ExpressionOperation];\n [g11.builtInMonth.name]: [T12.ExpressionOperation];\n [g11.builtInDay.name]: [T12.ExpressionOperation];\n [g11.builtInHours.name]: [T12.ExpressionOperation];\n [g11.builtInMinutes.name]: [T12.ExpressionOperation];\n [g11.builtInSeconds.name]: [T12.ExpressionOperation];\n [g11.builtInTimezone.name]: [T12.ExpressionOperation];\n [g11.builtInTz.name]: [T12.ExpressionOperation];\n [g11.builtInNow.name]: [T12.ExpressionOperation];\n [g11.builtInUuid.name]: [T12.ExpressionOperation];\n [g11.builtInStruuid.name]: [T12.ExpressionOperation];\n [g11.builtInMd5.name]: [T12.ExpressionOperation];\n [g11.builtInSha1.name]: [T12.ExpressionOperation];\n [g11.builtInSha256.name]: [T12.ExpressionOperation];\n [g11.builtInSha384.name]: [T12.ExpressionOperation];\n [g11.builtInSha512.name]: [T12.ExpressionOperation];\n [g11.builtInCoalesce.name]: [T12.ExpressionOperation];\n [g11.builtInIf.name]: [T12.ExpressionOperation];\n [g11.builtInStrlang.name]: [T12.ExpressionOperation];\n [g11.builtInStrdt.name]: [T12.ExpressionOperation];\n [g11.builtInSameterm.name]: [T12.ExpressionOperation];\n [g11.builtInIsiri.name]: [T12.ExpressionOperation];\n [g11.builtInIsuri.name]: [T12.ExpressionOperation];\n [g11.builtInIsblank.name]: [T12.ExpressionOperation];\n [g11.builtInIsliteral.name]: [T12.ExpressionOperation];\n [g11.builtInIsnumeric.name]: [T12.ExpressionOperation];\n [g11.existsFunc.name]: [T12.ExpressionPatternOperation];\n [g11.notExistsFunc.name]: [T12.ExpressionPatternOperation];\n [g11.aggregateCount.name]: [T12.ExpressionAggregateOnWildcard | T12.ExpressionAggregateDefault];\n [g11.aggregateSum.name]: [T12.ExpressionAggregateDefault];\n [g11.aggregateMin.name]: [T12.ExpressionAggregateDefault];\n [g11.aggregateMax.name]: [T12.ExpressionAggregateDefault];\n [g11.aggregateAvg.name]: [T12.ExpressionAggregateDefault];\n [g11.aggregateSample.name]: [T12.ExpressionAggregateDefault];\n [g11.aggregateGroup_concat.name]: [T12.ExpressionAggregateDefault | T12.ExpressionAggregateSeparator];\n [g11.aggregate.name]: [T12.ExpressionAggregate];\n [g11.builtInCall.name]: [T12.Expression];\n /// DatasetClause\n [g11.datasetClause.name]: [Wrap<T12.DatasetClauses['clauses'][0]>];\n [g11.defaultGraphClause.name]: [T12.TermIri];\n [g11.usingClause.name]: [Wrap<T12.DatasetClauses['clauses'][0]>];\n [g11.datasetClauseStar.name]: [T12.DatasetClauses];\n [g11.usingClauseStar.name]: [T12.DatasetClauses];\n [g11.namedGraphClause.name]: [Wrap<T12.TermIri>];\n [g11.sourceSelector.name]: [T12.TermIri];\n // Expression file\n [g11.argList.name]: [Wrap<Patch<g11.IArgList, { args: T12.Expression[] }>>];\n [g11.expressionList.name]: [Wrap<T12.Expression[]>];\n [g11.expression.name]: [T12.Expression];\n [g11.conditionalOrExpression.name]: [T12.ExpressionOperation | T12.Expression];\n [g11.conditionalAndExpression.name]: [T12.Expression];\n [g11.valueLogical.name]: [T12.Expression];\n [g11.relationalExpression.name]: [T12.ExpressionOperation | T12.Expression];\n [g11.numericExpression.name]: [T12.Expression];\n [g11.additiveExpression.name]: [T12.Expression];\n [g11.multiplicativeExpression.name]: [T12.Expression];\n [g11.unaryExpression.name]: [T12.Expression];\n [g11.primaryExpression.name]: [T12.Expression];\n [g11.brackettedExpression.name]: [T12.Expression];\n [g11.iriOrFunction.name]: [T12.TermIri | T12.ExpressionFunctionCall];\n /// General\n [g11.prologue.name]: [T12.ContextDefinition[]];\n [g11.baseDecl.name]: [T12.ContextDefinition];\n [g11.prefixDecl.name]: [T12.ContextDefinition];\n [g11.verb.name]: [T12.TermVariable | T12.TermIri];\n [g11.varOrTerm.name]: [T12.Term];\n [g11.varOrIri.name]: [T12.TermIri | T12.TermVariable];\n [g11.var_.name]: [T12.TermVariable];\n [g11.graphTerm.name]: [T12.GraphTerm];\n /// Literals\n [g11.rdfLiteral.name]: [T12.TermLiteral];\n [g11.numericLiteral.name]: [T12.TermLiteralTyped];\n [g11.numericLiteralUnsigned.name]: [T12.TermLiteralTyped];\n [g11.numericLiteralPositive.name]: [T12.TermLiteralTyped];\n [g11.numericLiteralNegative.name]: [T12.TermLiteralTyped];\n [g11.booleanLiteral.name]: [T12.TermLiteralTyped];\n [g11.string.name]: [T12.TermLiteralStr];\n [g11.iri.name]: [T12.TermIri];\n [g11.iriFull.name]: [T12.TermIriFull];\n [g11.prefixedName.name]: [T12.TermIriPrefixed];\n [g11.blankNode.name]: [T12.TermBlank];\n [g11.verbA.name]: [T12.TermIriFull];\n /// / Paths: unchanged\n /// / SolutionModifiers\n [g11.solutionModifier.name]: [T12.SolutionModifiers];\n [g11.groupClause.name]: [T12.SolutionModifierGroup];\n [g11.groupCondition.name]: [T12.Expression | T12.SolutionModifierGroupBind];\n [g11.havingClause.name]: [T12.SolutionModifierHaving];\n [g11.havingCondition.name]: [T12.Expression];\n [g11.orderClause.name]: [T12.SolutionModifierOrder];\n [g11.orderCondition.name]: [T12.Ordering];\n [g11.limitOffsetClauses.name]: [T12.SolutionModifierLimitOffset];\n [g11.limitClause.name]: [Wrap<number>];\n [g11.offsetClause.name]: [ Wrap<number>];\n /// tripleBlock\n [g11.triplesBlock.name]: [T12.PatternBgp];\n [g11.triplesSameSubject.name]: [T12.BasicGraphPattern];\n [g11.triplesSameSubjectPath.name]: [T12.BasicGraphPattern];\n [g11.triplesTemplate.name]: [T12.PatternBgp];\n [g11.propertyList.name]: [T12.TripleNesting[]];\n [g11.propertyListPath.name]: [T12.TripleNesting[]];\n [g11.propertyListNotEmpty.name]: [T12.TripleNesting[]];\n [g11.propertyListPathNotEmpty.name]: [T12.TripleNesting[]];\n [g11.verbPath.name]: [T12.Path];\n [g11.verbSimple.name]: [T12.TermVariable];\n [g11.objectList.name]: [T12.TripleNesting[], [ T12.TripleNesting['subject'], T12.TripleNesting['predicate'] ]];\n [g11.objectListPath.name]: [T12.TripleNesting, [ T12.TripleNesting['subject'], T12.TripleNesting['predicate'] ]];\n [g11.object.name]: [T12.TripleNesting, [ T12.TripleNesting['subject'], T12.TripleNesting['predicate'] ]];\n [g11.objectPath.name]: [T12.TripleNesting[], [ T12.TripleNesting['subject'], T12.TripleNesting['predicate'] ]];\n [g11.collection.name]: [T12.TripleCollectionList];\n [g11.collectionPath.name]: [T12.TripleCollectionList];\n [g11.triplesNode.name]: [T12.TripleCollection];\n [g11.triplesNodePath.name]: [T12.TripleCollection];\n [g11.blankNodePropertyList.name]: [T12.TripleCollectionBlankNodeProperties];\n [g11.blankNodePropertyListPath.name]: [T12.TripleCollectionBlankNodeProperties];\n [g11.graphNode.name]: [T12.Term | T12.TripleCollection];\n [g11.graphNodePath.name]: [T12.Term | T12.TripleCollection];\n /// WhereClause\n [g11.whereClause.name]: [Wrap<T12.PatternGroup>];\n [g11.groupGraphPattern.name]: [T12.PatternGroup];\n [g11.groupGraphPatternSub.name]: [T12.Pattern[]];\n [g11.graphPatternNotTriples.name]: [Exclude<T12.Pattern, T12.SubSelect | T12.PatternBgp>];\n [g11.optionalGraphPattern.name]: [T12.PatternOptional];\n [g11.graphGraphPattern.name]: [T12.PatternGraph];\n [g11.serviceGraphPattern.name]: [T12.PatternService];\n [g11.bind.name]: [T12.PatternBind];\n [g11.inlineData.name]: [T12.PatternValues];\n [g11.dataBlock.name]: [T12.PatternValues];\n [g11.inlineDataOneVar.name]: [T12.PatternValues];\n [g11.inlineDataFull.name]: [T12.PatternValues];\n [g11.dataBlockValue.name]: [T12.TermIri | T12.TermLiteral | undefined];\n [g11.minusGraphPattern.name]: [T12.PatternMinus];\n [g11.groupOrUnionGraphPattern.name]: [T12.PatternGroup | T12.PatternUnion];\n [g11.filter.name]: [T12.PatternFilter];\n [g11.constraint.name]: [T12.Expression];\n [g11.functionCall.name]: [T12.ExpressionFunctionCall];\n }>()\n .addMany(\n S12.reifiedTripleBlock,\n S12.reifiedTripleBlockPath,\n S12.reifier,\n S12.varOrReifierId,\n S12.annotation,\n S12.annotationPath,\n S12.annotationBlockPath,\n S12.annotationBlock,\n S12.reifiedTriple,\n S12.reifiedTripleSubject,\n S12.reifiedTripleObject,\n S12.tripleTerm,\n S12.tripleTermSubject,\n S12.tripleTermObject,\n S12.tripleTermData,\n S12.tripleTermDataSubject,\n S12.tripleTermDataObject,\n S12.exprTripleTerm,\n S12.exprTripleTermSubject,\n S12.exprTripleTermObject,\n )\n .addMany(\n S12.versionDecl,\n S12.versionSpecifier,\n )\n .addMany(\n S12.buildInLangDir,\n S12.buildInLangStrDir,\n S12.buildInHasLang,\n S12.buildInHasLangDir,\n S12.buildInIsTriple,\n S12.buildInTriple,\n S12.buildInSubject,\n S12.buildInPredicate,\n S12.buildInObject,\n )\n .patchRule(S12.selectQuery)\n .patchRule(S12.dataBlockValue)\n .patchRule(S12.triplesSameSubject)\n .patchRule(S12.triplesSameSubjectPath)\n .patchRule(S12.object)\n .patchRule(S12.objectPath)\n .patchRule(S12.graphNode)\n .patchRule(S12.graphNodePath)\n .patchRule(S12.varOrTerm)\n .patchRule(S12.primaryExpression)\n .patchRule(S12.builtInCall)\n .patchRule(S12.rdfLiteral)\n .patchRule(S12.unaryExpression)\n .patchRule(S12.prologue)\n .patchRule(S12.string)\n .patchRule(S12.iriFull)\n .deleteRule(g11.graphTerm.name);\n\nexport type SparqlParser = ReturnType<typeof sparql12ParserBuilder.build>;\n\n/**\n * Parser that can parse a SPARQL 1.2 string into a SPARQL 1.2 AST.\n */\nexport class Parser {\n private readonly parser: SparqlParser;\n protected readonly defaultContext: T12.SparqlContext;\n\n public constructor(\n args: Pick<ParserBuildArgs, 'parserConfig' | 'lexerConfig'> & { defaultContext?: Partial<T12.SparqlContext> } = {},\n ) {\n this.parser = sparql12ParserBuilder.build({\n ...args,\n tokenVocabulary: l12.sparql12LexerBuilder.tokenVocabulary,\n });\n this.defaultContext = completeParseContext(args.defaultContext ?? {});\n }\n\n /**\n * Parse a query string starting from the\n * [QueryUnit](https://www.w3.org/TR/sparql12-query/#rQueryUnit)\n * or [QueryUpdate](https://www.w3.org/TR/sparql12-query/#rUpdateUnit) rules.\n * @param query\n * @param context\n */\n public parse(query: string, context: Partial<T12.SparqlContext> = {}): T12.SparqlQuery {\n const ast = this.parser.queryOrUpdate(query, copyParseContext({ ...this.defaultContext, ...context }));\n ast.loc = this.defaultContext.astFactory.sourceLocationInlinedSource(query, ast.loc, 0, Number.MAX_SAFE_INTEGER);\n return ast;\n }\n\n /**\n * Parse a query string starting from the [Path](https://www.w3.org/TR/sparql12-query/#rPath) grammar rule.\n * @param query\n * @param context\n */\n public parsePath(\n query: string,\ncontext: Partial<T12.SparqlContext> = {},\n ): (T12.Path & { prefixes: object }) | TermIri {\n const ast = this.parser.path(query, copyParseContext({ ...this.defaultContext, ...context }));\n ast.loc = this.defaultContext.astFactory.sourceLocationInlinedSource(query, ast.loc, 0, Number.MAX_SAFE_INTEGER);\n if (this.defaultContext.astFactory.isPathPure(ast)) {\n return {\n ...ast,\n prefixes: {},\n };\n }\n return ast;\n }\n}\n"]}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@traqula/parser-sparql-1-2",
3
3
  "type": "module",
4
- "version": "1.1.2",
4
+ "version": "1.1.3",
5
5
  "description": "SPARQL 1.2 parser",
6
6
  "lsd:module": true,
7
7
  "license": "MIT",
@@ -53,17 +53,17 @@
53
53
  "spec:earl": "yarn spec:earl:base-1-0 && yarn spec:earl:query-1-1 && yarn spec:earl:update-1-1"
54
54
  },
55
55
  "dependencies": {
56
- "@traqula/core": "^1.1.1",
57
- "@traqula/parser-sparql-1-1": "^1.1.2",
58
- "@traqula/rules-sparql-1-1": "^1.1.2",
59
- "@traqula/rules-sparql-1-2": "^1.1.2",
56
+ "@traqula/core": "^1.1.3",
57
+ "@traqula/parser-sparql-1-1": "^1.1.3",
58
+ "@traqula/rules-sparql-1-1": "^1.1.3",
59
+ "@traqula/rules-sparql-1-2": "^1.1.3",
60
60
  "rdf-data-factory": "^2.0.1"
61
61
  },
62
62
  "devDependencies": {
63
- "@traqula/test-utils": "^1.1.2",
63
+ "@traqula/test-utils": "^1.1.3",
64
64
  "rdf-data-factory": "^2.0.1",
65
65
  "rdf-test-suite": "^2.0.0",
66
66
  "sparqljs": "^3.7.3"
67
67
  },
68
- "gitHead": "4a8a40e902755a39eab0d9f4f144e2e46d44b4d2"
68
+ "gitHead": "9f3269bc699a2990f2948c78883dabdac6908f26"
69
69
  }