@comake/skl-js-engine 1.2.2 → 1.3.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.
@@ -4,6 +4,14 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.SparqlQueryBuilder = void 0;
7
+ /* eslint-disable no-inline-comments */
8
+ /* eslint-disable line-comment-position */
9
+ /* eslint-disable @typescript-eslint/prefer-nullish-coalescing */
10
+ /* eslint-disable @typescript-eslint/no-shadow */
11
+ /* eslint-disable @typescript-eslint/naming-convention */
12
+ /* eslint-disable multiline-comment-style */
13
+ /* eslint-disable capitalized-comments */
14
+ /* eslint-disable indent */
7
15
  const data_model_1 = __importDefault(require("@rdfjs/data-model"));
8
16
  const constants_1 = require("../../../constants");
9
17
  const SparqlUtil_1 = require("../../../util/SparqlUtil");
@@ -33,14 +41,26 @@ class SparqlQueryBuilder {
33
41
  (whereQueryData.values.length === 0 &&
34
42
  whereQueryData.graphValues.length === 0 &&
35
43
  whereQueryData.graphTriples.length === 0))) {
36
- const entityGraphFilterPattern = this.createEntityGraphFilterPattern(subject);
37
- patterns.push(entityGraphFilterPattern);
44
+ if (relationsQueryData.unionPatterns.length > 0) {
45
+ /* relationsQueryData.unionPatterns.push(
46
+ createSparqlGraphPattern(subject, [ createSparqlBasicGraphPattern([ entityGraphTriple ]) ])
47
+ ); */
48
+ }
49
+ else {
50
+ const entityGraphFilterPattern = this.createEntityGraphFilterPattern(subject);
51
+ // patterns.push(createSparqlGraphPattern(subject, [ createSparqlBasicGraphPattern([ entityGraphTriple ]) ]));
52
+ patterns.push(entityGraphFilterPattern);
53
+ }
38
54
  }
39
55
  else if (!options?.where?.id) {
40
56
  const entityGraphFilterPattern = this.createEntityGraphFilterPattern(subject);
41
57
  const entityIsGraphFilter = (0, SparqlUtil_1.createSparqlExistsOperation)([entityGraphFilterPattern]);
42
58
  whereQueryData.filters.push(entityIsGraphFilter);
43
59
  }
60
+ // Add union patterns to the patterns
61
+ if (relationsQueryData.unionPatterns.length > 0) {
62
+ patterns.push((0, SparqlUtil_1.createSparqlUnion)(relationsQueryData.unionPatterns));
63
+ }
44
64
  const wherePatterns = this.createWherePatternsFromQueryData(patterns, whereQueryData.triples, whereQueryData.filters, orderQueryData.triples, orderQueryData.filters, whereQueryData.patterns ?? [], undefined, whereQueryData.binds);
45
65
  const graphWherePatterns = this.createWherePatternsFromQueryData(whereQueryData.graphValues, whereQueryData.graphTriples, whereQueryData.graphFilters, undefined, undefined, relationsQueryData.patterns);
46
66
  // Create variables for each order expression and update the orders to use them
@@ -60,12 +80,15 @@ class SparqlQueryBuilder {
60
80
  expression: SparqlUtil_1.entityVariable
61
81
  });
62
82
  }
83
+ // eslint-disable-next-line max-len
84
+ const isRelationsQueryDataEmpty = relationsQueryData.unionPatterns.length === 0 && relationsQueryData.patterns.length === 0 && relationsQueryData.selectionTriples.length === 0;
63
85
  const returnData = {
64
86
  where: wherePatterns,
65
87
  orders,
66
- group: orderQueryData.groupByParent ? subject : undefined,
88
+ ...orderQueryData.groupByParent ? { group: subject } : {},
67
89
  graphWhere: graphWherePatterns,
68
- graphSelectionTriples: relationsQueryData.selectionTriples
90
+ graphSelectionTriples: relationsQueryData.selectionTriples,
91
+ ...isRelationsQueryDataEmpty ? {} : { relationsQueryData }
69
92
  };
70
93
  if (selectVariables.length > 0) {
71
94
  returnData.selectVariables = selectVariables;
@@ -108,10 +131,16 @@ class SparqlQueryBuilder {
108
131
  }
109
132
  else {
110
133
  triples = [SparqlUtil_1.entityGraphTriple, ...graphSelectionTriples];
111
- where = [
112
- ...graphWhere,
113
- (0, SparqlUtil_1.createSparqlGraphPattern)(SparqlUtil_1.entityVariable, [(0, SparqlUtil_1.createSparqlBasicGraphPattern)([SparqlUtil_1.entityGraphTriple])])
114
- ];
134
+ /* Skip if the where contains a union pattern */
135
+ if (graphWhere.some(pattern => pattern.type === 'union')) {
136
+ where = graphWhere;
137
+ }
138
+ else {
139
+ where = [
140
+ ...graphWhere,
141
+ (0, SparqlUtil_1.createSparqlGraphPattern)(SparqlUtil_1.entityVariable, [(0, SparqlUtil_1.createSparqlBasicGraphPattern)([SparqlUtil_1.entityGraphTriple])])
142
+ ];
143
+ }
115
144
  }
116
145
  // // Add select variables to the query
117
146
  // if (selectVariables?.length) {
@@ -521,8 +550,8 @@ class SparqlQueryBuilder {
521
550
  {
522
551
  type: 'values',
523
552
  values: resolvedValue.map((value) => ({ [`?${leftSide.value}`]: value }))
524
- },
525
- ],
553
+ }
554
+ ]
526
555
  };
527
556
  }
528
557
  case 'not':
@@ -530,8 +559,8 @@ class SparqlQueryBuilder {
530
559
  triples: [],
531
560
  values: [],
532
561
  filters: [
533
- this.buildNotOperationForId(leftSide, this.resolveValueToExpression(operator.value)),
534
- ],
562
+ this.buildNotOperationForId(leftSide, this.resolveValueToExpression(operator.value))
563
+ ]
535
564
  };
536
565
  case 'equal':
537
566
  return {
@@ -681,47 +710,48 @@ class SparqlQueryBuilder {
681
710
  }
682
711
  createRelationsQueryData(subject, relations) {
683
712
  if (!relations) {
684
- return { patterns: [], selectionTriples: [] };
713
+ return { patterns: [], selectionTriples: [], unionPatterns: [] };
685
714
  }
686
- return Object.entries(relations).reduce((obj, [property, relationsValue]) => {
715
+ const response = Object.entries(relations).reduce((obj, [property, relationsValue]) => {
687
716
  const predicate = data_model_1.default.namedNode(property);
688
717
  if (typeof relationsValue === 'object') {
689
718
  if (FindOperator_1.FindOperator.isFindOperator(relationsValue)) {
690
- const { patterns, selectionTriples } = this.createRelationsQueryDataForInverseRelation(subject, predicate, relationsValue);
719
+ const { patterns, selectionTriples, unionPatterns } = this.createRelationsQueryDataForInverseRelation(subject, predicate, relationsValue);
691
720
  return {
692
721
  patterns: [...obj.patterns, ...patterns],
693
- selectionTriples: [...obj.selectionTriples, ...selectionTriples]
722
+ selectionTriples: [...obj.selectionTriples, ...selectionTriples],
723
+ unionPatterns: [...obj.unionPatterns ?? [], ...unionPatterns ?? []]
694
724
  };
695
725
  }
696
- const { patterns, selectionTriples } = this.createRelationsQueryDataForNestedRelation(subject, predicate, relationsValue);
726
+ const { patterns, selectionTriples, unionPatterns } = this.createRelationsQueryDataForNestedRelation(subject, predicate, relationsValue);
697
727
  return {
698
728
  patterns: [...obj.patterns, ...patterns],
699
- selectionTriples: [...obj.selectionTriples, ...selectionTriples]
729
+ selectionTriples: [...obj.selectionTriples, ...selectionTriples],
730
+ unionPatterns: [
731
+ ...obj.unionPatterns ?? [],
732
+ ...unionPatterns ?? []
733
+ ]
700
734
  };
701
735
  }
702
736
  const variable = this.createVariable();
703
- const graphTriple = {
704
- subject: this.createVariable(),
705
- predicate: this.createVariable(),
706
- object: this.createVariable()
707
- };
708
- const relationPattern = (0, SparqlUtil_1.createSparqlOptional)([
737
+ const relationPattern = (0, SparqlUtil_1.createSparqlSelectGroup)([
709
738
  (0, SparqlUtil_1.createSparqlBasicGraphPattern)([{ subject, predicate, object: variable }]),
710
- (0, SparqlUtil_1.createSparqlGraphPattern)(variable, [(0, SparqlUtil_1.createSparqlBasicGraphPattern)([graphTriple])])
739
+ (0, SparqlUtil_1.createSparqlGraphPattern)(variable, [(0, SparqlUtil_1.createSparqlBasicGraphPattern)([SparqlUtil_1.entityGraphTriple])])
711
740
  ]);
712
741
  return {
713
- patterns: [...obj.patterns, relationPattern],
714
- selectionTriples: [...obj.selectionTriples, graphTriple]
742
+ unionPatterns: [...obj.unionPatterns ?? [], relationPattern],
743
+ patterns: [...obj.patterns],
744
+ selectionTriples: [...obj.selectionTriples]
715
745
  };
716
- }, { patterns: [], selectionTriples: [] });
746
+ }, { patterns: [], selectionTriples: [], unionPatterns: [] });
747
+ return {
748
+ patterns: [...response?.patterns ?? []],
749
+ selectionTriples: [...response?.selectionTriples ?? []],
750
+ unionPatterns: [...response?.unionPatterns ?? []]
751
+ };
717
752
  }
718
753
  createRelationsQueryDataForInverseRelation(subject, predicate, relationsValue) {
719
754
  const variable = this.createVariable();
720
- const graphTriple = {
721
- subject: this.createVariable(),
722
- predicate: this.createVariable(),
723
- object: this.createVariable()
724
- };
725
755
  const inverseRelationTriple = {
726
756
  subject,
727
757
  predicate: (0, SparqlUtil_1.createSparqlInversePredicate)([predicate]),
@@ -729,42 +759,68 @@ class SparqlQueryBuilder {
729
759
  };
730
760
  if (typeof relationsValue.value === 'object' && relationsValue.value.relations) {
731
761
  const subRelationsQueryData = this.createRelationsQueryData(variable, relationsValue.value.relations);
732
- const relationPattern = (0, SparqlUtil_1.createSparqlOptional)([
762
+ const unionPatterns = [];
763
+ unionPatterns.push((0, SparqlUtil_1.createSparqlSelectGroup)([
733
764
  (0, SparqlUtil_1.createSparqlBasicGraphPattern)([inverseRelationTriple]),
734
- (0, SparqlUtil_1.createSparqlGraphPattern)(variable, [(0, SparqlUtil_1.createSparqlBasicGraphPattern)([graphTriple])]),
735
- ...subRelationsQueryData.patterns
736
- ]);
765
+ (0, SparqlUtil_1.createSparqlGraphPattern)(variable, [(0, SparqlUtil_1.createSparqlBasicGraphPattern)([SparqlUtil_1.entityGraphTriple])])
766
+ ]));
767
+ for (const subRelationUnionPattern of subRelationsQueryData.unionPatterns) {
768
+ unionPatterns.push((0, SparqlUtil_1.createSparqlSelectGroup)([
769
+ (0, SparqlUtil_1.createSparqlBasicGraphPattern)([inverseRelationTriple]),
770
+ ...subRelationUnionPattern.type === 'group'
771
+ ? subRelationUnionPattern.patterns
772
+ : [subRelationUnionPattern]
773
+ ]));
774
+ }
737
775
  return {
738
- patterns: [relationPattern],
739
- selectionTriples: [graphTriple, ...subRelationsQueryData.selectionTriples]
776
+ patterns: [],
777
+ selectionTriples: [...subRelationsQueryData.selectionTriples],
778
+ unionPatterns
740
779
  };
741
780
  }
742
- const relationPattern = (0, SparqlUtil_1.createSparqlOptional)([
781
+ const unionPatterns = [];
782
+ unionPatterns.push((0, SparqlUtil_1.createSparqlSelectGroup)([
743
783
  (0, SparqlUtil_1.createSparqlBasicGraphPattern)([inverseRelationTriple]),
744
- (0, SparqlUtil_1.createSparqlGraphPattern)(variable, [(0, SparqlUtil_1.createSparqlBasicGraphPattern)([graphTriple])])
745
- ]);
784
+ (0, SparqlUtil_1.createSparqlGraphPattern)(variable, [(0, SparqlUtil_1.createSparqlBasicGraphPattern)([SparqlUtil_1.entityGraphTriple])])
785
+ ]));
746
786
  return {
747
- patterns: [relationPattern],
748
- selectionTriples: [graphTriple]
787
+ patterns: [],
788
+ selectionTriples: [],
789
+ unionPatterns
749
790
  };
750
791
  }
751
792
  createRelationsQueryDataForNestedRelation(subject, predicate, relationsValue) {
752
793
  const variable = this.createVariable();
753
- const graphTriple = {
754
- subject: this.createVariable(),
755
- predicate: this.createVariable(),
756
- object: this.createVariable()
757
- };
758
794
  const relationTriple = { subject, predicate, object: variable };
795
+ const unionPatterns = [];
759
796
  const subRelationsQueryData = this.createRelationsQueryData(variable, relationsValue);
760
- const relationPattern = (0, SparqlUtil_1.createSparqlOptional)([
797
+ // subRelationsQueryData.patterns.push(createSparqlBasicGraphPattern([ relationTriple ]));
798
+ // unionPatterns.push(...subRelationsQueryData.patterns);
799
+ // unionPatterns.push(
800
+ // createSparqlGraphPattern(variable, [ createSparqlBasicGraphPattern([ entityGraphTriple ]) ])
801
+ // );
802
+ /* const relationPattern = subRelationsQueryData.patterns.length > 0
803
+ ? createSparqlSelectGroup([
804
+ ...patterns,
805
+ ...subRelationsQueryData.patterns,
806
+ ...subRelationsQueryData.unionPatterns
807
+ ])
808
+ : undefined; */
809
+ /* We always need to include the first level of the property in the union patterns */
810
+ unionPatterns.push((0, SparqlUtil_1.createSparqlSelectGroup)([
761
811
  (0, SparqlUtil_1.createSparqlBasicGraphPattern)([relationTriple]),
762
- (0, SparqlUtil_1.createSparqlGraphPattern)(variable, [(0, SparqlUtil_1.createSparqlBasicGraphPattern)([graphTriple])]),
763
- ...subRelationsQueryData.patterns
764
- ]);
812
+ (0, SparqlUtil_1.createSparqlGraphPattern)(variable, [(0, SparqlUtil_1.createSparqlBasicGraphPattern)([SparqlUtil_1.entityGraphTriple])])
813
+ ]));
814
+ for (const subRelationUnionPattern of subRelationsQueryData.unionPatterns) {
815
+ unionPatterns.push((0, SparqlUtil_1.createSparqlSelectGroup)([
816
+ (0, SparqlUtil_1.createSparqlBasicGraphPattern)([relationTriple]),
817
+ ...subRelationUnionPattern.type === 'group' ? subRelationUnionPattern.patterns : [subRelationUnionPattern]
818
+ ]));
819
+ }
765
820
  return {
766
- patterns: [relationPattern],
767
- selectionTriples: [graphTriple, ...subRelationsQueryData.selectionTriples]
821
+ patterns: [],
822
+ selectionTriples: [...subRelationsQueryData.selectionTriples],
823
+ unionPatterns
768
824
  };
769
825
  }
770
826
  createVariable() {
@@ -881,10 +937,7 @@ class SparqlQueryBuilder {
881
937
  {
882
938
  type: 'operation',
883
939
  operator: '>=',
884
- args: [
885
- dateVar,
886
- data_model_1.default.literal(options.dateRange.start, constants_1.XSD.dateTime)
887
- ]
940
+ args: [dateVar, data_model_1.default.literal(options.dateRange.start, constants_1.XSD.dateTime)]
888
941
  },
889
942
  {
890
943
  type: 'operation',
@@ -1 +1 @@
1
- {"version":3,"file":"SparqlQueryBuilder.js","sourceRoot":"","sources":["../../../../src/storage/query-adapter/sparql/SparqlQueryBuilder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SparqlQueryBuilder.js","sourceRoot":"","sources":["../../../../src/storage/query-adapter/sparql/SparqlQueryBuilder.ts"],"names":[],"mappings":"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"}
@@ -14,6 +14,7 @@ export interface SparqlEndpointQueryExecutorOptions {
14
14
  export declare class SparqlEndpointQueryExecutor implements QueryExecutor {
15
15
  private readonly sparqlClient;
16
16
  private readonly sparqlGenerator;
17
+ private readonly logger;
17
18
  constructor(options: SparqlEndpointQueryExecutorOptions);
18
19
  executeSparqlSelectAndGetData<TQuery extends SelectQuery | ConstructQuery, TReturn extends SelectVariableQueryResult<any> | Quad = TQuery extends SelectQuery ? SelectVariableQueryResult<any> : Quad>(query: TQuery): Promise<TReturn[]>;
19
20
  executeSparqlSelectAndGetDataRaw<T extends Quad | SelectVariableQueryResult<any> = Quad>(query: string): Promise<T[]>;
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.SparqlEndpointQueryExecutor = void 0;
7
7
  const sparql_http_client_1 = __importDefault(require("sparql-http-client"));
8
8
  const sparqljs_1 = require("sparqljs");
9
+ const logger_1 = require("../../../../logger");
9
10
  class SparqlEndpointQueryExecutor {
10
11
  constructor(options) {
11
12
  this.sparqlClient = new sparql_http_client_1.default({
@@ -13,12 +14,14 @@ class SparqlEndpointQueryExecutor {
13
14
  updateUrl: options.updateUrl ?? options.endpointUrl
14
15
  });
15
16
  this.sparqlGenerator = new sparqljs_1.Generator();
17
+ this.logger = logger_1.Logger.getInstance();
16
18
  }
17
19
  async executeSparqlSelectAndGetData(query) {
18
20
  const generatedQuery = this.sparqlGenerator.stringify(query);
19
21
  return this.executeSparqlSelectAndGetDataRaw(generatedQuery);
20
22
  }
21
23
  async executeSparqlSelectAndGetDataRaw(query) {
24
+ this.logger.debug(query);
22
25
  const stream = await this.sparqlClient.query.select(query, { operation: 'postUrlencoded' });
23
26
  return new Promise((resolve, reject) => {
24
27
  const data = [];
@@ -1 +1 @@
1
- {"version":3,"file":"SparqlEndpointQueryExecutor.js","sourceRoot":"","sources":["../../../../../src/storage/query-adapter/sparql/query-executor/SparqlEndpointQueryExecutor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SparqlEndpointQueryExecutor.js","sourceRoot":"","sources":["../../../../../src/storage/query-adapter/sparql/query-executor/SparqlEndpointQueryExecutor.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import type { Literal, NamedNode } from '@rdfjs/types';
2
- import type { SelectQuery, Pattern, Variable, GraphPattern, Triple, AskQuery, GroupPattern, Ordering, BgpPattern, IriTerm, Expression, FilterPattern, OptionalPattern, ServicePattern, OperationExpression, ValuesPattern, PropertyPath, ConstructQuery, UpdateOperation, Update, BindPattern, ClearDropOperation, GraphQuads, InsertDeleteOperation, Grouping } from 'sparqljs';
2
+ import type { AskQuery, BgpPattern, BindPattern, ClearDropOperation, ConstructQuery, Expression, FilterPattern, GraphPattern, GraphQuads, Grouping, GroupPattern, InsertDeleteOperation, IriTerm, OperationExpression, OptionalPattern, Ordering, Pattern, PropertyPath, SelectQuery, ServicePattern, Triple, UnionPattern, Update, UpdateOperation, ValuesPattern, Variable } from 'sparqljs';
3
3
  import type { RawQueryResult } from '../storage/query-adapter/QueryAdapter';
4
4
  import type { SelectVariableQueryResult } from '../storage/query-adapter/sparql/query-executor/SparqlQueryExecutor';
5
5
  export declare const rdfTypeNamedNode: NamedNode<"http://www.w3.org/1999/02/22-rdf-syntax-ns#type">;
@@ -34,6 +34,7 @@ export declare function createSparqlCountSelectQuery(subject: Variable, where: P
34
34
  export declare function creteSparqlAskQuery(where: Pattern[]): AskQuery;
35
35
  export declare function createSparqlSelectGroup(patterns: Pattern[]): GroupPattern;
36
36
  export declare function createSparqlOptional(patterns: Pattern[]): OptionalPattern;
37
+ export declare function createSparqlUnion(patterns: Pattern[]): UnionPattern;
37
38
  export declare function createSparqlBasicGraphPattern(triples: Triple[]): BgpPattern;
38
39
  export declare function createSparqlOptionalGraphSelection(name: Variable | NamedNode, triples: Triple[]): GraphPattern;
39
40
  export declare function createSparqlServicePattern(serviceName: string, triples: Triple[]): ServicePattern;