@comake/skl-js-engine 0.3.8 → 0.5.0

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.
Files changed (59) hide show
  1. package/dist/index.d.ts +10 -2
  2. package/dist/index.js +12 -2
  3. package/dist/index.js.map +1 -1
  4. package/dist/sklEngine.d.ts +4 -3
  5. package/dist/sklEngine.js +10 -6
  6. package/dist/sklEngine.js.map +1 -1
  7. package/dist/storage/BaseQueryAdapterOptions.d.ts +1 -1
  8. package/dist/storage/FindOperator.d.ts +1 -1
  9. package/dist/storage/FindOptionsTypes.d.ts +7 -4
  10. package/dist/storage/QueryAdapter.d.ts +2 -2
  11. package/dist/storage/blazegraph/BlazegraphQueryAdapter.d.ts +30 -0
  12. package/dist/storage/blazegraph/BlazegraphQueryAdapter.js +130 -0
  13. package/dist/storage/blazegraph/BlazegraphQueryAdapter.js.map +1 -0
  14. package/dist/storage/blazegraph/BlazegraphQueryAdapterOptions.d.ts +15 -0
  15. package/dist/storage/blazegraph/BlazegraphQueryAdapterOptions.js +3 -0
  16. package/dist/storage/blazegraph/BlazegraphQueryAdapterOptions.js.map +1 -0
  17. package/dist/storage/blazegraph/BlazegraphQueryBuilder.d.ts +23 -0
  18. package/dist/storage/blazegraph/BlazegraphQueryBuilder.js +98 -0
  19. package/dist/storage/blazegraph/BlazegraphQueryBuilder.js.map +1 -0
  20. package/dist/storage/memory/MemoryQueryAdapter.d.ts +2 -2
  21. package/dist/storage/memory/MemoryQueryAdapter.js +10 -5
  22. package/dist/storage/memory/MemoryQueryAdapter.js.map +1 -1
  23. package/dist/storage/operator/Equal.d.ts +3 -1
  24. package/dist/storage/operator/Equal.js.map +1 -1
  25. package/dist/storage/operator/In.d.ts +2 -1
  26. package/dist/storage/operator/In.js.map +1 -1
  27. package/dist/storage/operator/InverseRelation.d.ts +7 -0
  28. package/dist/storage/operator/InverseRelation.js +13 -0
  29. package/dist/storage/operator/InverseRelation.js.map +1 -0
  30. package/dist/storage/sparql/BasicSparqlQueryAdapter.d.ts +31 -0
  31. package/dist/storage/sparql/BasicSparqlQueryAdapter.js +133 -0
  32. package/dist/storage/sparql/BasicSparqlQueryAdapter.js.map +1 -0
  33. package/dist/storage/sparql/BasicSparqlQueryBuilder.d.ts +17 -0
  34. package/dist/storage/sparql/BasicSparqlQueryBuilder.js +36 -0
  35. package/dist/storage/sparql/BasicSparqlQueryBuilder.js.map +1 -0
  36. package/dist/storage/sparql/SparqlQueryAdapter.d.ts +15 -19
  37. package/dist/storage/sparql/SparqlQueryAdapter.js +51 -180
  38. package/dist/storage/sparql/SparqlQueryAdapter.js.map +1 -1
  39. package/dist/storage/sparql/SparqlQueryBuilder.d.ts +7 -84
  40. package/dist/storage/sparql/SparqlQueryBuilder.js +0 -655
  41. package/dist/storage/sparql/SparqlQueryBuilder.js.map +1 -1
  42. package/dist/storage/sparql/SparqlQueryExecutor.d.ts +23 -0
  43. package/dist/storage/sparql/SparqlQueryExecutor.js +63 -0
  44. package/dist/storage/sparql/SparqlQueryExecutor.js.map +1 -0
  45. package/dist/storage/sparql/SparqlQueryPatternBuilder.d.ts +55 -0
  46. package/dist/storage/sparql/SparqlQueryPatternBuilder.js +509 -0
  47. package/dist/storage/sparql/SparqlQueryPatternBuilder.js.map +1 -0
  48. package/dist/storage/sparql/SparqlUpdateBuilder.js +8 -7
  49. package/dist/storage/sparql/SparqlUpdateBuilder.js.map +1 -1
  50. package/dist/util/SparqlUtil.d.ts +50 -0
  51. package/dist/util/SparqlUtil.js +304 -0
  52. package/dist/util/SparqlUtil.js.map +1 -0
  53. package/dist/util/TripleUtil.d.ts +0 -12
  54. package/dist/util/TripleUtil.js +21 -34
  55. package/dist/util/TripleUtil.js.map +1 -1
  56. package/dist/util/Vocabularies.d.ts +1 -0
  57. package/dist/util/Vocabularies.js +4 -1
  58. package/dist/util/Vocabularies.js.map +1 -1
  59. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"SparqlQueryBuilder.js","sourceRoot":"","sources":["../../../src/storage/sparql/SparqlQueryBuilder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SparqlQueryBuilder.js","sourceRoot":"","sources":["../../../src/storage/sparql/SparqlQueryBuilder.ts"],"names":[],"mappings":""}
@@ -0,0 +1,23 @@
1
+ import type { Quad, Literal, NamedNode } from '@rdfjs/types';
2
+ import type { Update, AskQuery, SelectQuery, ConstructQuery } from 'sparqljs';
3
+ export declare type SelectVariableQueryResult<T> = Record<keyof T, NamedNode | Literal>;
4
+ export interface SparqlQueryExecutorOptions {
5
+ /**
6
+ * The location of the SPARQL endpoint. This value is required.
7
+ */
8
+ readonly endpointUrl: string;
9
+ /**
10
+ * The location of the SPARQL update endpoint. Defaults to the value of endpointUrl if not set.
11
+ */
12
+ readonly updateUrl?: string;
13
+ }
14
+ export declare class SparqlQueryExecutor {
15
+ private readonly sparqlClient;
16
+ private readonly sparqlGenerator;
17
+ constructor(options: SparqlQueryExecutorOptions);
18
+ executeSparqlSelectAndGetData<T extends Quad | SelectVariableQueryResult<any> = Quad>(query: SelectQuery | ConstructQuery): Promise<T[]>;
19
+ executeSparqlSelectAndGetDataRaw<T extends Quad | SelectVariableQueryResult<any> = Quad>(query: string): Promise<T[]>;
20
+ executeSparqlUpdate(query: Update): Promise<void>;
21
+ executeAskQueryAndGetResponse(query: AskQuery): Promise<boolean>;
22
+ executeSelectCountAndGetResponse(query: SelectQuery): Promise<number>;
23
+ }
@@ -0,0 +1,63 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.SparqlQueryExecutor = void 0;
7
+ const sparql_http_client_1 = __importDefault(require("sparql-http-client"));
8
+ const sparqljs_1 = require("sparqljs");
9
+ class SparqlQueryExecutor {
10
+ constructor(options) {
11
+ this.sparqlClient = new sparql_http_client_1.default({
12
+ endpointUrl: options.endpointUrl,
13
+ updateUrl: options.updateUrl ?? options.endpointUrl,
14
+ });
15
+ this.sparqlGenerator = new sparqljs_1.Generator();
16
+ }
17
+ async executeSparqlSelectAndGetData(query) {
18
+ const generatedQuery = this.sparqlGenerator.stringify(query);
19
+ return this.executeSparqlSelectAndGetDataRaw(generatedQuery);
20
+ }
21
+ async executeSparqlSelectAndGetDataRaw(query) {
22
+ const stream = await this.sparqlClient.query.select(query, { operation: 'postUrlencoded' });
23
+ return new Promise((resolve, reject) => {
24
+ const data = [];
25
+ stream.on('data', (row) => {
26
+ data.push(row);
27
+ });
28
+ stream.on('end', () => {
29
+ resolve(data);
30
+ });
31
+ stream.on('error', (error) => {
32
+ reject(error);
33
+ });
34
+ });
35
+ }
36
+ async executeSparqlUpdate(query) {
37
+ const generatedQuery = this.sparqlGenerator.stringify(query);
38
+ await this.sparqlClient.query.update(generatedQuery);
39
+ }
40
+ async executeAskQueryAndGetResponse(query) {
41
+ const generatedQuery = this.sparqlGenerator.stringify(query);
42
+ return await this.sparqlClient.query.ask(generatedQuery);
43
+ }
44
+ async executeSelectCountAndGetResponse(query) {
45
+ const generatedQuery = this.sparqlGenerator.stringify(query);
46
+ const stream = await this.sparqlClient.query.select(generatedQuery, { operation: 'postUrlencoded' });
47
+ return new Promise((resolve, reject) => {
48
+ let countValue;
49
+ stream.on('data', (row) => {
50
+ const { count } = row;
51
+ countValue = Number.parseInt(count.value, 10);
52
+ });
53
+ stream.on('end', () => {
54
+ resolve(countValue);
55
+ });
56
+ stream.on('error', (error) => {
57
+ reject(error);
58
+ });
59
+ });
60
+ }
61
+ }
62
+ exports.SparqlQueryExecutor = SparqlQueryExecutor;
63
+ //# sourceMappingURL=SparqlQueryExecutor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SparqlQueryExecutor.js","sourceRoot":"","sources":["../../../src/storage/sparql/SparqlQueryExecutor.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,55 @@
1
+ import type { Variable } from '@rdfjs/types';
2
+ import type { Triple, OperationExpression, Ordering, ValuesPattern, Pattern } from 'sparqljs';
3
+ import type { FindOptionsOrder, FindOptionsRelations, FindOptionsSelect, FindOptionsWhere } from '../FindOptionsTypes';
4
+ export interface WhereQueryData {
5
+ values: ValuesPattern[];
6
+ triples: Triple[];
7
+ filters: OperationExpression[];
8
+ graphValues: ValuesPattern[];
9
+ graphTriples: Triple[];
10
+ graphFilters: OperationExpression[];
11
+ serviceTriples?: Record<string, Triple[]>;
12
+ }
13
+ export interface RelationsQueryData {
14
+ patterns: Pattern[];
15
+ selectionTriples: Triple[];
16
+ }
17
+ export interface OrderQueryData {
18
+ triples: Triple[];
19
+ orders: Ordering[];
20
+ }
21
+ export interface EntitySelectQueryData {
22
+ where: Pattern[];
23
+ orders: Ordering[];
24
+ graphWhere: Pattern[];
25
+ graphSelectionTriples: Triple[];
26
+ }
27
+ export declare class SparqlQueryPatternBuilder {
28
+ private readonly variableGenerator;
29
+ constructor();
30
+ buildEntitySelectPatternsFromOptions(subject: Variable, where?: FindOptionsWhere, order?: FindOptionsOrder, relations?: FindOptionsRelations, serviceTriples?: Record<string, Triple[]>, additionalTriples?: Triple[]): EntitySelectQueryData;
31
+ private createWhereQueryData;
32
+ private createWhereQueryDataForField;
33
+ private createWhereQueryDataForIdValue;
34
+ private createWhereQueryDataForType;
35
+ private createWhereQueryDataFromKeyValue;
36
+ private createWhereQueryDataForFindOperator;
37
+ private createWhereQueryDataForNestedWhere;
38
+ private createWhereQueryDataForValueObject;
39
+ private valueObjectToTerm;
40
+ private resolveFindOperatorAsExpressionWithMultipleValues;
41
+ private resolveFindOperatorAsExpressionForId;
42
+ private resolveValueToExpression;
43
+ private buildNotOperationForMultiValued;
44
+ private buildNotOperationForId;
45
+ private buildTypesAndSuperTypesTriple;
46
+ private resolveValueToTerm;
47
+ private createOrderQueryData;
48
+ private createOrderQueryDataForProperty;
49
+ private createRelationsQueryData;
50
+ private createRelationsQueryDataForInverseRelation;
51
+ private createRelationsQueryDataForNestedRelation;
52
+ createVariable(): Variable;
53
+ createSelectPattern(select: FindOptionsSelect, subject: Variable): Triple[];
54
+ private createWherePatternsFromQueryData;
55
+ }