@traqula/generator-sparql-1-1 1.1.0 → 1.1.1

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.
package/README.md CHANGED
@@ -30,13 +30,13 @@ yarn add @traqula/generator-sparql-1-1
30
30
  Either through ESM import:
31
31
 
32
32
  ```javascript
33
- import { Generator } from 'engines/generator-sparql-1-1';
33
+ import { Generator } from '@traqula/generator-sparql-1-1';
34
34
  ```
35
35
 
36
36
  _or_ CJS require:
37
37
 
38
38
  ```javascript
39
- const Generator = require('engines/generator-sparql-1-1').Generator;
39
+ const Generator = require('@traqula/generator-sparql-1-1').Generator;
40
40
  ```
41
41
 
42
42
  ## Usage
@@ -44,8 +44,8 @@ const Generator = require('engines/generator-sparql-1-1').Generator;
44
44
  This package contains a `Generator` that is able to generate SPARQL 1.1 queries:
45
45
 
46
46
  ```typescript
47
- import { Parser } from 'parser/generator-sparql-1-1';
48
- import { Generator } from 'engines/generator-sparql-1-1';
47
+ import { Parser } from '@traqula/parser-sparql-1-1';
48
+ import { Generator } from '@traqula/generator-sparql-1-1';
49
49
  const query = `SELECT * WHERE { ?s ?p ?o }`
50
50
  const parser = new Parser();
51
51
  const ast = parser.parse(query)
@@ -3,6 +3,10 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.Generator = exports.sparql11GeneratorBuilder = void 0;
4
4
  const core_1 = require("@traqula/core");
5
5
  const rules_sparql_1_1_1 = require("@traqula/rules-sparql-1-1");
6
+ /**
7
+ * Pre-configured {@link GeneratorBuilder} for SPARQL 1.1 that composes all SPARQL 1.1 generator rules.
8
+ * Use {@link GeneratorBuilder.create GeneratorBuilder.create(sparql11GeneratorBuilder)} to extend it.
9
+ */
6
10
  exports.sparql11GeneratorBuilder = core_1.GeneratorBuilder.create([
7
11
  rules_sparql_1_1_1.gram.queryOrUpdate,
8
12
  rules_sparql_1_1_1.gram.query,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../lib/index.ts"],"names":[],"mappings":"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","sourcesContent":["import { GeneratorBuilder } from '@traqula/core';\nimport type * as T11 from '@traqula/rules-sparql-1-1';\nimport { gram, completeGeneratorContext } from '@traqula/rules-sparql-1-1';\n\nexport const sparql11GeneratorBuilder = GeneratorBuilder.create(<const> [\n gram.queryOrUpdate,\n gram.query,\n gram.selectQuery,\n gram.constructQuery,\n gram.describeQuery,\n gram.askQuery,\n gram.selectClause,\n])\n .addMany(\n gram.update,\n gram.update1,\n gram.load,\n gram.clear,\n gram.drop,\n gram.create,\n gram.copy,\n gram.move,\n gram.add,\n gram.insertData,\n gram.deleteData,\n gram.deleteWhere,\n gram.modify,\n gram.graphRef,\n gram.graphRefAll,\n gram.quads,\n gram.quadsNotTriples,\n )\n .addRule(gram.aggregate)\n .addMany(\n gram.datasetClauseStar,\n gram.usingClauseStar,\n )\n .addMany(\n gram.argList,\n gram.expression,\n gram.iriOrFunction,\n )\n .addMany(\n gram.prologue,\n gram.prefixDecl,\n gram.baseDecl,\n gram.varOrTerm,\n gram.var_,\n gram.graphTerm,\n )\n .addMany(\n gram.rdfLiteral,\n gram.iri,\n gram.iriFull,\n gram.prefixedName,\n gram.blankNode,\n )\n .addRule(gram.pathGenerator)\n .addMany(\n gram.solutionModifier,\n gram.groupClause,\n gram.havingClause,\n gram.orderClause,\n gram.limitOffsetClauses,\n )\n .addMany(\n gram.triplesBlock,\n gram.collectionPath,\n gram.blankNodePropertyListPath,\n gram.triplesNodePath,\n gram.graphNodePath,\n )\n .addMany(\n gram.whereClause,\n gram.generatePattern,\n gram.groupGraphPattern,\n gram.graphPatternNotTriples,\n gram.optionalGraphPattern,\n gram.graphGraphPattern,\n gram.serviceGraphPattern,\n gram.bind,\n gram.inlineData,\n gram.minusGraphPattern,\n gram.groupOrUnionGraphPattern,\n gram.filter,\n );\n\nexport type SparqlGenerator = ReturnType<typeof sparql11GeneratorBuilder.build>;\n\n/**\n * Generator that can generate a SPARQL 1.1 query string given a SPARQL 1.1 Traqula AST.\n */\nexport class Generator {\n protected readonly defaultContext: T11.SparqlGeneratorContext;\n public constructor(defaultContext: Partial<T11.SparqlGeneratorContext> = {}) {\n this.defaultContext = completeGeneratorContext(defaultContext);\n }\n\n private readonly generator: SparqlGenerator = sparql11GeneratorBuilder.build();\n\n /**\n * Generates a query string starting from the\n * [QueryUnit](https://www.w3.org/TR/sparql11-query/#rQueryUnit)\n * or [QueryUpdate](https://www.w3.org/TR/sparql11-query/#rUpdateUnit) rules.\n * @param ast\n * @param context\n */\n public generate(ast: T11.Query | T11.Update, context: Partial<T11.SparqlGeneratorContext> = {}): string {\n return this.generator.queryOrUpdate(ast, { ...this.defaultContext, ...context }).trim();\n }\n\n /**\n * Generates a query string starting from the [Path](https://www.w3.org/TR/sparql11-query/#rPath) grammar rule.\n * @param ast\n * @param context\n */\n public generatePath(ast: T11.Path, context: Partial<T11.SparqlGeneratorContext> = {}): string {\n return this.generator.path(ast, completeGeneratorContext({ ...this.defaultContext, ...context }), undefined).trim();\n }\n}\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../lib/index.ts"],"names":[],"mappings":"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","sourcesContent":["import { GeneratorBuilder } from '@traqula/core';\nimport type * as T11 from '@traqula/rules-sparql-1-1';\nimport { gram, completeGeneratorContext } from '@traqula/rules-sparql-1-1';\n\n/**\n * Pre-configured {@link GeneratorBuilder} for SPARQL 1.1 that composes all SPARQL 1.1 generator rules.\n * Use {@link GeneratorBuilder.create GeneratorBuilder.create(sparql11GeneratorBuilder)} to extend it.\n */\nexport const sparql11GeneratorBuilder = GeneratorBuilder.create(<const> [\n gram.queryOrUpdate,\n gram.query,\n gram.selectQuery,\n gram.constructQuery,\n gram.describeQuery,\n gram.askQuery,\n gram.selectClause,\n])\n .addMany(\n gram.update,\n gram.update1,\n gram.load,\n gram.clear,\n gram.drop,\n gram.create,\n gram.copy,\n gram.move,\n gram.add,\n gram.insertData,\n gram.deleteData,\n gram.deleteWhere,\n gram.modify,\n gram.graphRef,\n gram.graphRefAll,\n gram.quads,\n gram.quadsNotTriples,\n )\n .addRule(gram.aggregate)\n .addMany(\n gram.datasetClauseStar,\n gram.usingClauseStar,\n )\n .addMany(\n gram.argList,\n gram.expression,\n gram.iriOrFunction,\n )\n .addMany(\n gram.prologue,\n gram.prefixDecl,\n gram.baseDecl,\n gram.varOrTerm,\n gram.var_,\n gram.graphTerm,\n )\n .addMany(\n gram.rdfLiteral,\n gram.iri,\n gram.iriFull,\n gram.prefixedName,\n gram.blankNode,\n )\n .addRule(gram.pathGenerator)\n .addMany(\n gram.solutionModifier,\n gram.groupClause,\n gram.havingClause,\n gram.orderClause,\n gram.limitOffsetClauses,\n )\n .addMany(\n gram.triplesBlock,\n gram.collectionPath,\n gram.blankNodePropertyListPath,\n gram.triplesNodePath,\n gram.graphNodePath,\n )\n .addMany(\n gram.whereClause,\n gram.generatePattern,\n gram.groupGraphPattern,\n gram.graphPatternNotTriples,\n gram.optionalGraphPattern,\n gram.graphGraphPattern,\n gram.serviceGraphPattern,\n gram.bind,\n gram.inlineData,\n gram.minusGraphPattern,\n gram.groupOrUnionGraphPattern,\n gram.filter,\n );\n\nexport type SparqlGenerator = ReturnType<typeof sparql11GeneratorBuilder.build>;\n\n/**\n * Generator that can generate a SPARQL 1.1 query string given a SPARQL 1.1 Traqula AST.\n */\nexport class Generator {\n protected readonly defaultContext: T11.SparqlGeneratorContext;\n public constructor(defaultContext: Partial<T11.SparqlGeneratorContext> = {}) {\n this.defaultContext = completeGeneratorContext(defaultContext);\n }\n\n private readonly generator: SparqlGenerator = sparql11GeneratorBuilder.build();\n\n /**\n * Generates a query string starting from the\n * [QueryUnit](https://www.w3.org/TR/sparql11-query/#rQueryUnit)\n * or [QueryUpdate](https://www.w3.org/TR/sparql11-query/#rUpdateUnit) rules.\n * @param ast\n * @param context\n */\n public generate(ast: T11.Query | T11.Update, context: Partial<T11.SparqlGeneratorContext> = {}): string {\n return this.generator.queryOrUpdate(ast, { ...this.defaultContext, ...context }).trim();\n }\n\n /**\n * Generates a query string starting from the [Path](https://www.w3.org/TR/sparql11-query/#rPath) grammar rule.\n * @param ast\n * @param context\n */\n public generatePath(ast: T11.Path, context: Partial<T11.SparqlGeneratorContext> = {}): string {\n return this.generator.path(ast, completeGeneratorContext({ ...this.defaultContext, ...context }), undefined).trim();\n }\n}\n"]}
@@ -1,7 +1,12 @@
1
1
  import { GeneratorBuilder } from '@traqula/core';
2
2
  import type * as T11 from '@traqula/rules-sparql-1-1';
3
- export declare const sparql11GeneratorBuilder: GeneratorBuilder<T11.SparqlGeneratorContext, "filter" | "graphRef" | "load" | "clear" | "drop" | "create" | "add" | "move" | "copy" | "modify" | "update" | "query" | "datasetClauses" | "bind" | "solutionModifier" | "expression" | "aggregate" | "path" | "blankNode" | "selectQuery" | "selectClause" | "constructQuery" | "describeQuery" | "askQuery" | "update1" | "insertData" | "deleteData" | "deleteWhere" | "graphRefAll" | "quads" | "quadsNotTriples" | "usingClauses" | "argList" | "iriOrFunction" | "prologue" | "baseDecl" | "prefixDecl" | "varOrTerm" | "var" | "graphTerm" | "rdfLiteral" | "iri" | "iriFull" | "prefixedName" | "groupClause" | "havingClause" | "orderClause" | "limitOffsetClauses" | "triplesBlock" | "collectionPath" | "triplesNodePath" | "blankNodePropertyListPath" | "graphNodePath" | "whereClause" | "groupGraphPattern" | "graphPatternNotTriples" | "optionalGraphPattern" | "graphGraphPattern" | "serviceGraphPattern" | "inlineData" | "minusGraphPattern" | "groupOrUnionGraphPattern" | "queryOrUpdate" | "generatePattern", {
3
+ /**
4
+ * Pre-configured {@link GeneratorBuilder} for SPARQL 1.1 that composes all SPARQL 1.1 generator rules.
5
+ * Use {@link GeneratorBuilder.create GeneratorBuilder.create(sparql11GeneratorBuilder)} to extend it.
6
+ */
7
+ export declare const sparql11GeneratorBuilder: GeneratorBuilder<T11.SparqlGeneratorContext, "filter" | "copy" | "graphRef" | "load" | "clear" | "drop" | "create" | "add" | "move" | "modify" | "update" | "query" | "datasetClauses" | "bind" | "solutionModifier" | "expression" | "aggregate" | "path" | "blankNode" | "selectQuery" | "selectClause" | "constructQuery" | "describeQuery" | "askQuery" | "update1" | "insertData" | "deleteData" | "deleteWhere" | "graphRefAll" | "quads" | "quadsNotTriples" | "usingClauses" | "argList" | "iriOrFunction" | "prologue" | "baseDecl" | "prefixDecl" | "varOrTerm" | "var" | "graphTerm" | "rdfLiteral" | "iri" | "iriFull" | "prefixedName" | "groupClause" | "havingClause" | "orderClause" | "limitOffsetClauses" | "triplesBlock" | "collectionPath" | "triplesNodePath" | "blankNodePropertyListPath" | "graphNodePath" | "whereClause" | "groupGraphPattern" | "generatePattern" | "graphPatternNotTriples" | "optionalGraphPattern" | "graphGraphPattern" | "serviceGraphPattern" | "inlineData" | "minusGraphPattern" | "groupOrUnionGraphPattern" | "queryOrUpdate", {
4
8
  filter: import("@traqula/core").GeneratorRule<any, "filter"> & T11.SparqlGrammarRule<"filter", T11.PatternFilter, []> & T11.SparqlGeneratorRule<"filter", T11.PatternFilter, []>;
9
+ copy: import("@traqula/core").GeneratorRule<any, "copy"> & T11.SparqlGrammarRule<"copy", T11.UpdateOperationAdd | T11.UpdateOperationMove | T11.UpdateOperationCopy, []> & T11.SparqlGeneratorRule<"copy", T11.UpdateOperationAdd | T11.UpdateOperationMove | T11.UpdateOperationCopy, []>;
5
10
  graphRef: import("@traqula/core").GeneratorRule<any, "graphRef"> & T11.SparqlGrammarRule<"graphRef", T11.GraphRefSpecific, []> & T11.SparqlGeneratorRule<"graphRef", T11.GraphRefSpecific, []>;
6
11
  load: import("@traqula/core").GeneratorRule<any, "load"> & T11.SparqlGrammarRule<"load", T11.UpdateOperationLoad, []> & T11.SparqlGeneratorRule<"load", T11.UpdateOperationLoad, []>;
7
12
  clear: import("@traqula/core").GeneratorRule<any, "clear"> & T11.SparqlGrammarRule<"clear", T11.UpdateOperationClear | T11.UpdateOperationDrop, []> & T11.SparqlGeneratorRule<"clear", T11.UpdateOperationClear | T11.UpdateOperationDrop, []>;
@@ -9,7 +14,6 @@ export declare const sparql11GeneratorBuilder: GeneratorBuilder<T11.SparqlGenera
9
14
  create: import("@traqula/core").GeneratorRule<any, "create"> & T11.SparqlGrammarRule<"create", T11.UpdateOperationCreate, []> & T11.SparqlGeneratorRule<"create", T11.UpdateOperationCreate, []>;
10
15
  add: import("@traqula/core").GeneratorRule<any, "add"> & T11.SparqlGrammarRule<"add", T11.UpdateOperationAdd | T11.UpdateOperationMove | T11.UpdateOperationCopy, []> & T11.SparqlGeneratorRule<"add", T11.UpdateOperationAdd | T11.UpdateOperationMove | T11.UpdateOperationCopy, []>;
11
16
  move: import("@traqula/core").GeneratorRule<any, "move"> & T11.SparqlGrammarRule<"move", T11.UpdateOperationAdd | T11.UpdateOperationMove | T11.UpdateOperationCopy, []> & T11.SparqlGeneratorRule<"move", T11.UpdateOperationAdd | T11.UpdateOperationMove | T11.UpdateOperationCopy, []>;
12
- copy: import("@traqula/core").GeneratorRule<any, "copy"> & T11.SparqlGrammarRule<"copy", T11.UpdateOperationAdd | T11.UpdateOperationMove | T11.UpdateOperationCopy, []> & T11.SparqlGeneratorRule<"copy", T11.UpdateOperationAdd | T11.UpdateOperationMove | T11.UpdateOperationCopy, []>;
13
17
  modify: import("@traqula/core").GeneratorRule<any, "modify"> & T11.SparqlGrammarRule<"modify", T11.UpdateOperationModify, []> & T11.SparqlGeneratorRule<"modify", T11.UpdateOperationModify, []>;
14
18
  update: import("@traqula/core").GeneratorRule<any, "update"> & T11.SparqlGrammarRule<"update", T11.Update, []> & T11.SparqlGeneratorRule<"update", T11.Update, []>;
15
19
  query: import("@traqula/core").GeneratorRule<any, "query"> & T11.SparqlGrammarRule<"query", T11.Query, []> & T11.SparqlGeneratorRule<"query", T11.Query, []>;
@@ -34,7 +38,7 @@ export declare const sparql11GeneratorBuilder: GeneratorBuilder<T11.SparqlGenera
34
38
  quadsNotTriples: import("@traqula/core").GeneratorRule<any, "quadsNotTriples"> & T11.SparqlGrammarRule<"quadsNotTriples", T11.GraphQuads, []> & T11.SparqlGeneratorRule<"quadsNotTriples", T11.GraphQuads, []>;
35
39
  usingClauses: import("@traqula/core").GeneratorRule<any, "usingClauses"> & T11.SparqlGrammarRule<"usingClauses", T11.DatasetClauses, []> & T11.SparqlGeneratorRule<"usingClauses", T11.DatasetClauses, []>;
36
40
  argList: import("@traqula/core").GeneratorRule<any, "argList"> & T11.SparqlGrammarRule<"argList", import("@traqula/core").Wrap<T11.gram.IArgList>, []> & T11.SparqlGeneratorRule<"argList", import("@traqula/core").Wrap<T11.gram.IArgList>, []>;
37
- iriOrFunction: import("@traqula/core").GeneratorRule<any, "iriOrFunction"> & T11.SparqlGrammarRule<"iriOrFunction", T11.TermIri | T11.ExpressionFunctionCall, []> & T11.SparqlGeneratorRule<"iriOrFunction", T11.TermIri | T11.ExpressionFunctionCall, []>;
41
+ iriOrFunction: import("@traqula/core").GeneratorRule<any, "iriOrFunction"> & T11.SparqlGrammarRule<"iriOrFunction", T11.ExpressionFunctionCall | T11.TermIri, []> & T11.SparqlGeneratorRule<"iriOrFunction", T11.ExpressionFunctionCall | T11.TermIri, []>;
38
42
  prologue: import("@traqula/core").GeneratorRule<any, "prologue"> & T11.SparqlGrammarRule<"prologue", T11.ContextDefinition[], []> & T11.SparqlGeneratorRule<"prologue", T11.ContextDefinition[], []>;
39
43
  baseDecl: import("@traqula/core").GeneratorRule<any, "baseDecl"> & T11.SparqlGrammarRule<"baseDecl", T11.ContextDefinitionBase, []> & T11.SparqlGeneratorRule<"baseDecl", T11.ContextDefinitionBase, []>;
40
44
  prefixDecl: import("@traqula/core").GeneratorRule<any, "prefixDecl"> & T11.SparqlGrammarRule<"prefixDecl", T11.ContextDefinitionPrefix, []> & T11.SparqlGeneratorRule<"prefixDecl", T11.ContextDefinitionPrefix, []>;
@@ -53,10 +57,11 @@ export declare const sparql11GeneratorBuilder: GeneratorBuilder<T11.SparqlGenera
53
57
  collectionPath: import("@traqula/core").GeneratorRule<any, "collectionPath"> & T11.SparqlGrammarRule<"collectionPath", T11.TripleCollectionList, []> & T11.SparqlGeneratorRule<"collectionPath", T11.TripleCollectionList, []>;
54
58
  triplesNodePath: import("@traqula/core").GeneratorRule<any, "triplesNodePath"> & T11.SparqlGrammarRule<"triplesNodePath", T11.TripleCollection, []> & T11.SparqlGeneratorRule<"triplesNodePath", T11.TripleCollection, []>;
55
59
  blankNodePropertyListPath: import("@traqula/core").GeneratorRule<any, "blankNodePropertyListPath"> & T11.SparqlGrammarRule<"blankNodePropertyListPath", T11.TripleCollectionBlankNodeProperties, []> & T11.SparqlGeneratorRule<"blankNodePropertyListPath", T11.TripleCollectionBlankNodeProperties, []>;
56
- graphNodePath: import("@traqula/core").GeneratorRule<any, "graphNodePath"> & T11.SparqlGrammarRule<"graphNodePath", T11.Term | T11.TripleCollection, []> & T11.SparqlGeneratorRule<"graphNodePath", T11.Term | T11.TripleCollection, []>;
60
+ graphNodePath: import("@traqula/core").GeneratorRule<any, "graphNodePath"> & T11.SparqlGrammarRule<"graphNodePath", T11.TripleCollection | T11.Term, []> & T11.SparqlGeneratorRule<"graphNodePath", T11.TripleCollection | T11.Term, []>;
57
61
  whereClause: import("@traqula/core").GeneratorRule<any, "whereClause"> & T11.SparqlGrammarRule<"whereClause", import("@traqula/core").Wrap<T11.PatternGroup>, []> & T11.SparqlGeneratorRule<"whereClause", import("@traqula/core").Wrap<T11.PatternGroup>, []>;
58
62
  groupGraphPattern: import("@traqula/core").GeneratorRule<any, "groupGraphPattern"> & T11.SparqlGrammarRule<"groupGraphPattern", T11.PatternGroup, []> & T11.SparqlGeneratorRule<"groupGraphPattern", T11.PatternGroup, []>;
59
- graphPatternNotTriples: import("@traqula/core").GeneratorRule<any, "graphPatternNotTriples"> & T11.SparqlGrammarRule<"graphPatternNotTriples", T11.PatternFilter | T11.PatternBind | T11.PatternGroup | T11.PatternValues | T11.PatternUnion | T11.PatternOptional | T11.PatternMinus | T11.PatternGraph | T11.PatternService, []> & T11.SparqlGeneratorRule<"graphPatternNotTriples", T11.PatternFilter | T11.PatternBind | T11.PatternGroup | T11.PatternValues | T11.PatternUnion | T11.PatternOptional | T11.PatternMinus | T11.PatternGraph | T11.PatternService, []>;
63
+ generatePattern: import("@traqula/core").GeneratorRule<any, "generatePattern"> & T11.SparqlGeneratorRule<"generatePattern", T11.Pattern>;
64
+ graphPatternNotTriples: import("@traqula/core").GeneratorRule<any, "graphPatternNotTriples"> & T11.SparqlGrammarRule<"graphPatternNotTriples", T11.PatternGroup | T11.PatternUnion | T11.PatternOptional | T11.PatternMinus | T11.PatternGraph | T11.PatternService | T11.PatternFilter | T11.PatternBind | T11.PatternValues, []> & T11.SparqlGeneratorRule<"graphPatternNotTriples", T11.PatternGroup | T11.PatternUnion | T11.PatternOptional | T11.PatternMinus | T11.PatternGraph | T11.PatternService | T11.PatternFilter | T11.PatternBind | T11.PatternValues, []>;
60
65
  optionalGraphPattern: import("@traqula/core").GeneratorRule<any, "optionalGraphPattern"> & T11.SparqlGrammarRule<"optionalGraphPattern", T11.PatternOptional, []> & T11.SparqlGeneratorRule<"optionalGraphPattern", T11.PatternOptional, []>;
61
66
  graphGraphPattern: import("@traqula/core").GeneratorRule<any, "graphGraphPattern"> & T11.SparqlGrammarRule<"graphGraphPattern", T11.PatternGraph, []> & T11.SparqlGeneratorRule<"graphGraphPattern", T11.PatternGraph, []>;
62
67
  serviceGraphPattern: import("@traqula/core").GeneratorRule<any, "serviceGraphPattern"> & T11.SparqlGrammarRule<"serviceGraphPattern", T11.PatternService, []> & T11.SparqlGeneratorRule<"serviceGraphPattern", T11.PatternService, []>;
@@ -64,7 +69,6 @@ export declare const sparql11GeneratorBuilder: GeneratorBuilder<T11.SparqlGenera
64
69
  minusGraphPattern: import("@traqula/core").GeneratorRule<any, "minusGraphPattern"> & T11.SparqlGrammarRule<"minusGraphPattern", T11.PatternMinus, []> & T11.SparqlGeneratorRule<"minusGraphPattern", T11.PatternMinus, []>;
65
70
  groupOrUnionGraphPattern: import("@traqula/core").GeneratorRule<any, "groupOrUnionGraphPattern"> & T11.SparqlGrammarRule<"groupOrUnionGraphPattern", T11.PatternGroup | T11.PatternUnion, []> & T11.SparqlGeneratorRule<"groupOrUnionGraphPattern", T11.PatternGroup | T11.PatternUnion, []>;
66
71
  queryOrUpdate: import("@traqula/core").GeneratorRule<any, "queryOrUpdate"> & T11.SparqlGrammarRule<"queryOrUpdate", T11.SparqlQuery, []> & T11.SparqlGeneratorRule<"queryOrUpdate", T11.SparqlQuery, []>;
67
- generatePattern: import("@traqula/core").GeneratorRule<any, "generatePattern"> & T11.SparqlGeneratorRule<"generatePattern", T11.Pattern>;
68
72
  }>;
69
73
  export type SparqlGenerator = ReturnType<typeof sparql11GeneratorBuilder.build>;
70
74
  /**
@@ -1,5 +1,9 @@
1
1
  import { GeneratorBuilder } from '@traqula/core';
2
2
  import { gram, completeGeneratorContext } from '@traqula/rules-sparql-1-1';
3
+ /**
4
+ * Pre-configured {@link GeneratorBuilder} for SPARQL 1.1 that composes all SPARQL 1.1 generator rules.
5
+ * Use {@link GeneratorBuilder.create GeneratorBuilder.create(sparql11GeneratorBuilder)} to extend it.
6
+ */
3
7
  export const sparql11GeneratorBuilder = GeneratorBuilder.create([
4
8
  gram.queryOrUpdate,
5
9
  gram.query,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../lib/index.ts"],"names":[],"mappings":"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","sourcesContent":["import { GeneratorBuilder } from '@traqula/core';\nimport type * as T11 from '@traqula/rules-sparql-1-1';\nimport { gram, completeGeneratorContext } from '@traqula/rules-sparql-1-1';\n\nexport const sparql11GeneratorBuilder = GeneratorBuilder.create(<const> [\n gram.queryOrUpdate,\n gram.query,\n gram.selectQuery,\n gram.constructQuery,\n gram.describeQuery,\n gram.askQuery,\n gram.selectClause,\n])\n .addMany(\n gram.update,\n gram.update1,\n gram.load,\n gram.clear,\n gram.drop,\n gram.create,\n gram.copy,\n gram.move,\n gram.add,\n gram.insertData,\n gram.deleteData,\n gram.deleteWhere,\n gram.modify,\n gram.graphRef,\n gram.graphRefAll,\n gram.quads,\n gram.quadsNotTriples,\n )\n .addRule(gram.aggregate)\n .addMany(\n gram.datasetClauseStar,\n gram.usingClauseStar,\n )\n .addMany(\n gram.argList,\n gram.expression,\n gram.iriOrFunction,\n )\n .addMany(\n gram.prologue,\n gram.prefixDecl,\n gram.baseDecl,\n gram.varOrTerm,\n gram.var_,\n gram.graphTerm,\n )\n .addMany(\n gram.rdfLiteral,\n gram.iri,\n gram.iriFull,\n gram.prefixedName,\n gram.blankNode,\n )\n .addRule(gram.pathGenerator)\n .addMany(\n gram.solutionModifier,\n gram.groupClause,\n gram.havingClause,\n gram.orderClause,\n gram.limitOffsetClauses,\n )\n .addMany(\n gram.triplesBlock,\n gram.collectionPath,\n gram.blankNodePropertyListPath,\n gram.triplesNodePath,\n gram.graphNodePath,\n )\n .addMany(\n gram.whereClause,\n gram.generatePattern,\n gram.groupGraphPattern,\n gram.graphPatternNotTriples,\n gram.optionalGraphPattern,\n gram.graphGraphPattern,\n gram.serviceGraphPattern,\n gram.bind,\n gram.inlineData,\n gram.minusGraphPattern,\n gram.groupOrUnionGraphPattern,\n gram.filter,\n );\n\nexport type SparqlGenerator = ReturnType<typeof sparql11GeneratorBuilder.build>;\n\n/**\n * Generator that can generate a SPARQL 1.1 query string given a SPARQL 1.1 Traqula AST.\n */\nexport class Generator {\n protected readonly defaultContext: T11.SparqlGeneratorContext;\n public constructor(defaultContext: Partial<T11.SparqlGeneratorContext> = {}) {\n this.defaultContext = completeGeneratorContext(defaultContext);\n }\n\n private readonly generator: SparqlGenerator = sparql11GeneratorBuilder.build();\n\n /**\n * Generates a query string starting from the\n * [QueryUnit](https://www.w3.org/TR/sparql11-query/#rQueryUnit)\n * or [QueryUpdate](https://www.w3.org/TR/sparql11-query/#rUpdateUnit) rules.\n * @param ast\n * @param context\n */\n public generate(ast: T11.Query | T11.Update, context: Partial<T11.SparqlGeneratorContext> = {}): string {\n return this.generator.queryOrUpdate(ast, { ...this.defaultContext, ...context }).trim();\n }\n\n /**\n * Generates a query string starting from the [Path](https://www.w3.org/TR/sparql11-query/#rPath) grammar rule.\n * @param ast\n * @param context\n */\n public generatePath(ast: T11.Path, context: Partial<T11.SparqlGeneratorContext> = {}): string {\n return this.generator.path(ast, completeGeneratorContext({ ...this.defaultContext, ...context }), undefined).trim();\n }\n}\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../lib/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAEjD,OAAO,EAAE,IAAI,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AAE3E;;;GAGG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,gBAAgB,CAAC,MAAM,CAAS;IACtE,IAAI,CAAC,aAAa;IAClB,IAAI,CAAC,KAAK;IACV,IAAI,CAAC,WAAW;IAChB,IAAI,CAAC,cAAc;IACnB,IAAI,CAAC,aAAa;IAClB,IAAI,CAAC,QAAQ;IACb,IAAI,CAAC,YAAY;CAClB,CAAC;KACC,OAAO,CACN,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,KAAK,EACV,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,GAAG,EACR,IAAI,CAAC,UAAU,EACf,IAAI,CAAC,UAAU,EACf,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,KAAK,EACV,IAAI,CAAC,eAAe,CACrB;KACA,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC;KACvB,OAAO,CACN,IAAI,CAAC,iBAAiB,EACtB,IAAI,CAAC,eAAe,CACrB;KACA,OAAO,CACN,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,UAAU,EACf,IAAI,CAAC,aAAa,CACnB;KACA,OAAO,CACN,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,UAAU,EACf,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,SAAS,CACf;KACA,OAAO,CACN,IAAI,CAAC,UAAU,EACf,IAAI,CAAC,GAAG,EACR,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,YAAY,EACjB,IAAI,CAAC,SAAS,CACf;KACA,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC;KAC3B,OAAO,CACN,IAAI,CAAC,gBAAgB,EACrB,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,YAAY,EACjB,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,kBAAkB,CACxB;KACA,OAAO,CACN,IAAI,CAAC,YAAY,EACjB,IAAI,CAAC,cAAc,EACnB,IAAI,CAAC,yBAAyB,EAC9B,IAAI,CAAC,eAAe,EACpB,IAAI,CAAC,aAAa,CACnB;KACA,OAAO,CACN,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,eAAe,EACpB,IAAI,CAAC,iBAAiB,EACtB,IAAI,CAAC,sBAAsB,EAC3B,IAAI,CAAC,oBAAoB,EACzB,IAAI,CAAC,iBAAiB,EACtB,IAAI,CAAC,mBAAmB,EACxB,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,UAAU,EACf,IAAI,CAAC,iBAAiB,EACtB,IAAI,CAAC,wBAAwB,EAC7B,IAAI,CAAC,MAAM,CACZ,CAAC;AAIJ;;GAEG;AACH,MAAM,OAAO,SAAS;IACD,cAAc,CAA6B;IAC9D,YAAmB,iBAAsD,EAAE;QACzE,IAAI,CAAC,cAAc,GAAG,wBAAwB,CAAC,cAAc,CAAC,CAAC;IACjE,CAAC;IAEgB,SAAS,GAAoB,wBAAwB,CAAC,KAAK,EAAE,CAAC;IAE/E;;;;;;OAMG;IACI,QAAQ,CAAC,GAA2B,EAAE,UAA+C,EAAE;QAC5F,OAAO,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,GAAG,EAAE,EAAE,GAAG,IAAI,CAAC,cAAc,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IAC1F,CAAC;IAED;;;;OAIG;IACI,YAAY,CAAC,GAAa,EAAE,UAA+C,EAAE;QAClF,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE,wBAAwB,CAAC,EAAE,GAAG,IAAI,CAAC,cAAc,EAAE,GAAG,OAAO,EAAE,CAAC,EAAE,SAAS,CAAC,CAAC,IAAI,EAAE,CAAC;IACtH,CAAC;CACF","sourcesContent":["import { GeneratorBuilder } from '@traqula/core';\nimport type * as T11 from '@traqula/rules-sparql-1-1';\nimport { gram, completeGeneratorContext } from '@traqula/rules-sparql-1-1';\n\n/**\n * Pre-configured {@link GeneratorBuilder} for SPARQL 1.1 that composes all SPARQL 1.1 generator rules.\n * Use {@link GeneratorBuilder.create GeneratorBuilder.create(sparql11GeneratorBuilder)} to extend it.\n */\nexport const sparql11GeneratorBuilder = GeneratorBuilder.create(<const> [\n gram.queryOrUpdate,\n gram.query,\n gram.selectQuery,\n gram.constructQuery,\n gram.describeQuery,\n gram.askQuery,\n gram.selectClause,\n])\n .addMany(\n gram.update,\n gram.update1,\n gram.load,\n gram.clear,\n gram.drop,\n gram.create,\n gram.copy,\n gram.move,\n gram.add,\n gram.insertData,\n gram.deleteData,\n gram.deleteWhere,\n gram.modify,\n gram.graphRef,\n gram.graphRefAll,\n gram.quads,\n gram.quadsNotTriples,\n )\n .addRule(gram.aggregate)\n .addMany(\n gram.datasetClauseStar,\n gram.usingClauseStar,\n )\n .addMany(\n gram.argList,\n gram.expression,\n gram.iriOrFunction,\n )\n .addMany(\n gram.prologue,\n gram.prefixDecl,\n gram.baseDecl,\n gram.varOrTerm,\n gram.var_,\n gram.graphTerm,\n )\n .addMany(\n gram.rdfLiteral,\n gram.iri,\n gram.iriFull,\n gram.prefixedName,\n gram.blankNode,\n )\n .addRule(gram.pathGenerator)\n .addMany(\n gram.solutionModifier,\n gram.groupClause,\n gram.havingClause,\n gram.orderClause,\n gram.limitOffsetClauses,\n )\n .addMany(\n gram.triplesBlock,\n gram.collectionPath,\n gram.blankNodePropertyListPath,\n gram.triplesNodePath,\n gram.graphNodePath,\n )\n .addMany(\n gram.whereClause,\n gram.generatePattern,\n gram.groupGraphPattern,\n gram.graphPatternNotTriples,\n gram.optionalGraphPattern,\n gram.graphGraphPattern,\n gram.serviceGraphPattern,\n gram.bind,\n gram.inlineData,\n gram.minusGraphPattern,\n gram.groupOrUnionGraphPattern,\n gram.filter,\n );\n\nexport type SparqlGenerator = ReturnType<typeof sparql11GeneratorBuilder.build>;\n\n/**\n * Generator that can generate a SPARQL 1.1 query string given a SPARQL 1.1 Traqula AST.\n */\nexport class Generator {\n protected readonly defaultContext: T11.SparqlGeneratorContext;\n public constructor(defaultContext: Partial<T11.SparqlGeneratorContext> = {}) {\n this.defaultContext = completeGeneratorContext(defaultContext);\n }\n\n private readonly generator: SparqlGenerator = sparql11GeneratorBuilder.build();\n\n /**\n * Generates a query string starting from the\n * [QueryUnit](https://www.w3.org/TR/sparql11-query/#rQueryUnit)\n * or [QueryUpdate](https://www.w3.org/TR/sparql11-query/#rUpdateUnit) rules.\n * @param ast\n * @param context\n */\n public generate(ast: T11.Query | T11.Update, context: Partial<T11.SparqlGeneratorContext> = {}): string {\n return this.generator.queryOrUpdate(ast, { ...this.defaultContext, ...context }).trim();\n }\n\n /**\n * Generates a query string starting from the [Path](https://www.w3.org/TR/sparql11-query/#rPath) grammar rule.\n * @param ast\n * @param context\n */\n public generatePath(ast: T11.Path, context: Partial<T11.SparqlGeneratorContext> = {}): string {\n return this.generator.path(ast, completeGeneratorContext({ ...this.defaultContext, ...context }), undefined).trim();\n }\n}\n"]}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@traqula/generator-sparql-1-1",
3
3
  "type": "module",
4
- "version": "1.1.0",
4
+ "version": "1.1.1",
5
5
  "description": "SPARQL 1.1 generator",
6
6
  "lsd:module": true,
7
7
  "license": "MIT",
@@ -41,12 +41,12 @@
41
41
  "build:cjs": "node \"../../node_modules/typescript/bin/tsc\" -b tsconfig.cjs.json"
42
42
  },
43
43
  "dependencies": {
44
- "@traqula/core": "^1.1.0",
45
- "@traqula/rules-sparql-1-1": "^1.1.0"
44
+ "@traqula/core": "^1.1.1",
45
+ "@traqula/rules-sparql-1-1": "^1.1.1"
46
46
  },
47
47
  "devDependencies": {
48
- "@traqula/parser-sparql-1-1": "^1.1.0",
49
- "@traqula/test-utils": "^1.1.0"
48
+ "@traqula/parser-sparql-1-1": "^1.1.1",
49
+ "@traqula/test-utils": "^1.1.1"
50
50
  },
51
- "gitHead": "ecbed266b9247b7600d4d7185a98b2ead74e33b9"
51
+ "gitHead": "51799d80873e4f0fb0ca6ab778861f526d3a66d1"
52
52
  }