@openhps/rdf 0.1.8 → 0.1.9

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 (46) hide show
  1. package/dist/cjs/service/SPARQLDataDriver.d.ts +4 -10
  2. package/dist/cjs/service/SPARQLDataDriver.js +2 -78
  3. package/dist/cjs/service/SPARQLDataDriver.js.map +1 -1
  4. package/dist/cjs/service/SPARQLDriverBase.d.ts +20 -0
  5. package/dist/cjs/service/SPARQLDriverBase.js +90 -0
  6. package/dist/cjs/service/SPARQLDriverBase.js.map +1 -0
  7. package/dist/cjs/service/SPARQLGenerator.js +15 -1
  8. package/dist/cjs/service/SPARQLGenerator.js.map +1 -1
  9. package/dist/cjs/service/index.d.ts +1 -0
  10. package/dist/cjs/service/index.js +1 -0
  11. package/dist/cjs/service/index.js.map +1 -1
  12. package/dist/esm/service/SPARQLDataDriver.d.ts +4 -10
  13. package/dist/esm/service/SPARQLDataDriver.js +3 -79
  14. package/dist/esm/service/SPARQLDataDriver.js.map +1 -1
  15. package/dist/esm/service/SPARQLDriverBase.d.ts +20 -0
  16. package/dist/esm/service/SPARQLDriverBase.js +86 -0
  17. package/dist/esm/service/SPARQLDriverBase.js.map +1 -0
  18. package/dist/esm/service/SPARQLGenerator.js +15 -1
  19. package/dist/esm/service/SPARQLGenerator.js.map +1 -1
  20. package/dist/esm/service/index.d.ts +1 -0
  21. package/dist/esm/service/index.js +1 -0
  22. package/dist/esm/service/index.js.map +1 -1
  23. package/dist/types/service/SPARQLDataDriver.d.ts +4 -10
  24. package/dist/types/service/SPARQLDriverBase.d.ts +20 -0
  25. package/dist/types/service/index.d.ts +1 -0
  26. package/dist/web/openhps-rdf.all.es.js +115 -72
  27. package/dist/web/openhps-rdf.all.es.js.map +1 -1
  28. package/dist/web/openhps-rdf.all.es.min.js +1 -1
  29. package/dist/web/openhps-rdf.all.es.min.js.map +1 -1
  30. package/dist/web/openhps-rdf.all.js +115 -72
  31. package/dist/web/openhps-rdf.all.js.map +1 -1
  32. package/dist/web/openhps-rdf.all.min.js +1 -1
  33. package/dist/web/openhps-rdf.all.min.js.map +1 -1
  34. package/dist/web/openhps-rdf.sparql.es.js +114 -72
  35. package/dist/web/openhps-rdf.sparql.es.js.map +1 -1
  36. package/dist/web/openhps-rdf.sparql.es.min.js +1 -1
  37. package/dist/web/openhps-rdf.sparql.es.min.js.map +1 -1
  38. package/dist/web/openhps-rdf.sparql.js +114 -72
  39. package/dist/web/openhps-rdf.sparql.js.map +1 -1
  40. package/dist/web/openhps-rdf.sparql.min.js +1 -1
  41. package/dist/web/openhps-rdf.sparql.min.js.map +1 -1
  42. package/package.json +1 -1
  43. package/src/service/SPARQLDataDriver.ts +6 -95
  44. package/src/service/SPARQLDriverBase.ts +112 -0
  45. package/src/service/SPARQLGenerator.ts +15 -1
  46. package/src/service/index.ts +1 -0
@@ -34,6 +34,7 @@ const xsd = {
34
34
 
35
35
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
36
36
  /* harmony export */ "SPARQLDataDriver": () => (/* reexport safe */ _service__WEBPACK_IMPORTED_MODULE_0__.SPARQLDataDriver),
37
+ /* harmony export */ "SPARQLDriverBase": () => (/* reexport safe */ _service__WEBPACK_IMPORTED_MODULE_0__.SPARQLDriverBase),
37
38
  /* harmony export */ "SPARQLGenerator": () => (/* reexport safe */ _service__WEBPACK_IMPORTED_MODULE_0__.SPARQLGenerator)
38
39
  /* harmony export */ });
39
40
  /* harmony import */ var _service__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./service */ "./dist/esm/service/index.js");
@@ -756,29 +757,21 @@ function isObject(item) {
756
757
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
757
758
  /* harmony export */ "SPARQLDataDriver": () => (/* binding */ SPARQLDataDriver)
758
759
  /* harmony export */ });
759
- /* harmony import */ var _openhps_core__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @openhps/core */ "@openhps/core");
760
- /* harmony import */ var n3__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! n3 */ "./node_modules/n3/src/N3Store.js");
761
- /* harmony import */ var n3__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! n3 */ "./node_modules/n3/src/N3DataFactory.js");
762
- /* harmony import */ var _rdf__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../rdf */ "./dist/esm/rdf/RDFSerializer.js");
763
- /* harmony import */ var sparql_http_client__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! sparql-http-client */ "./node_modules/sparql-http-client/index.js");
764
- /* harmony import */ var sparql_http_client__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(sparql_http_client__WEBPACK_IMPORTED_MODULE_1__);
765
- /* harmony import */ var _vocab__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../vocab */ "./dist/esm/vocab/index.js");
766
- /* harmony import */ var _SPARQLGenerator__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./SPARQLGenerator */ "./dist/esm/service/SPARQLGenerator.js");
767
-
768
-
760
+ /* harmony import */ var n3__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! n3 */ "./node_modules/n3/src/N3Store.js");
761
+ /* harmony import */ var sparql_http_client__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! sparql-http-client */ "./node_modules/sparql-http-client/index.js");
762
+ /* harmony import */ var sparql_http_client__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(sparql_http_client__WEBPACK_IMPORTED_MODULE_0__);
763
+ /* harmony import */ var _SPARQLDriverBase__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./SPARQLDriverBase */ "./dist/esm/service/SPARQLDriverBase.js");
769
764
 
770
765
 
771
766
 
772
-
773
- class SPARQLDataDriver extends _openhps_core__WEBPACK_IMPORTED_MODULE_0__.DataServiceDriver {
767
+ class SPARQLDataDriver extends _SPARQLDriverBase__WEBPACK_IMPORTED_MODULE_1__.SPARQLDriverBase {
774
768
  constructor(dataType, options) {
775
769
  super(dataType, options);
776
- this.generator = new _SPARQLGenerator__WEBPACK_IMPORTED_MODULE_2__.SPARQLGenerator(this.dataType, this.options.baseUri);
777
770
  this.once('build', this._onBuild.bind(this));
778
771
  }
779
772
  _onBuild() {
780
773
  return new Promise((resolve) => {
781
- this.client = new (sparql_http_client__WEBPACK_IMPORTED_MODULE_1___default())({
774
+ this.client = new (sparql_http_client__WEBPACK_IMPORTED_MODULE_0___default())({
782
775
  endpointUrl: this.options.endpointUrl,
783
776
  storeUrl: this.options.storeUrl,
784
777
  updateUrl: this.options.updateUrl,
@@ -788,9 +781,89 @@ class SPARQLDataDriver extends _openhps_core__WEBPACK_IMPORTED_MODULE_0__.DataSe
788
781
  resolve();
789
782
  });
790
783
  }
784
+ findAllSerialized(query) {
785
+ return new Promise((resolve, reject) => {
786
+ this.client.query
787
+ .construct(this.generator.createFindAll(query))
788
+ .then((stream) => {
789
+ const store = new n3__WEBPACK_IMPORTED_MODULE_2__["default"]();
790
+ stream.on('data', (row) => {
791
+ store.addQuad(row);
792
+ });
793
+ stream.on('end', () => {
794
+ resolve(store);
795
+ });
796
+ })
797
+ .catch(reject);
798
+ });
799
+ }
800
+ insert(_, object) {
801
+ return new Promise((resolve, reject) => {
802
+ this.client.query
803
+ .update(this.generator.createInsert(object), {
804
+ headers: this.options.headers,
805
+ operation: this.options.operation,
806
+ })
807
+ .then(() => {
808
+ resolve(object);
809
+ })
810
+ .catch(reject);
811
+ });
812
+ }
813
+ delete(id) {
814
+ return new Promise((resolve, reject) => {
815
+ this.client.query
816
+ .update(this.generator.createDelete(id), {
817
+ headers: this.options.headers,
818
+ operation: this.options.operation,
819
+ })
820
+ .then(resolve)
821
+ .catch(reject);
822
+ });
823
+ }
824
+ deleteAll(query) {
825
+ return new Promise((resolve, reject) => {
826
+ this.client.query
827
+ .update(this.generator.createDeleteAll(query), {
828
+ headers: this.options.headers,
829
+ operation: this.options.operation,
830
+ })
831
+ .then(resolve)
832
+ .catch(reject);
833
+ });
834
+ }
835
+ }
836
+ //# sourceMappingURL=SPARQLDataDriver.js.map
837
+
838
+ /***/ }),
839
+
840
+ /***/ "./dist/esm/service/SPARQLDriverBase.js":
841
+ /*!**********************************************!*\
842
+ !*** ./dist/esm/service/SPARQLDriverBase.js ***!
843
+ \**********************************************/
844
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
845
+
846
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
847
+ /* harmony export */ "SPARQLDriverBase": () => (/* binding */ SPARQLDriverBase)
848
+ /* harmony export */ });
849
+ /* harmony import */ var _openhps_core__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @openhps/core */ "@openhps/core");
850
+ /* harmony import */ var n3__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! n3 */ "./node_modules/n3/src/N3DataFactory.js");
851
+ /* harmony import */ var _rdf__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../rdf */ "./dist/esm/rdf/RDFSerializer.js");
852
+ /* harmony import */ var _vocab__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../vocab */ "./dist/esm/vocab/index.js");
853
+ /* harmony import */ var _SPARQLGenerator__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./SPARQLGenerator */ "./dist/esm/service/SPARQLGenerator.js");
854
+
855
+
856
+
857
+
858
+
859
+ class SPARQLDriverBase extends _openhps_core__WEBPACK_IMPORTED_MODULE_0__.DataServiceDriver {
860
+ constructor(dataType, options) {
861
+ super(dataType, options);
862
+ this.generator = new _SPARQLGenerator__WEBPACK_IMPORTED_MODULE_1__.SPARQLGenerator(this.dataType, this.options.baseUri);
863
+ }
791
864
  findByUID(id) {
792
865
  return new Promise((resolve, reject) => {
793
- const identifierMember = _rdf__WEBPACK_IMPORTED_MODULE_3__.RDFSerializer.getUriMetadata(this.dataType);
866
+ const identifierMember = _rdf__WEBPACK_IMPORTED_MODULE_2__.RDFSerializer.getUriMetadata(this.dataType);
794
867
  this.findOne({
795
868
  [identifierMember.key]: id,
796
869
  })
@@ -810,22 +883,6 @@ class SPARQLDataDriver extends _openhps_core__WEBPACK_IMPORTED_MODULE_0__.DataSe
810
883
  .catch(reject);
811
884
  });
812
885
  }
813
- findAllSerialized(query) {
814
- return new Promise((resolve, reject) => {
815
- this.client.query
816
- .construct(this.generator.createFindAll(query))
817
- .then((stream) => {
818
- const store = new n3__WEBPACK_IMPORTED_MODULE_4__["default"]();
819
- stream.on('data', (row) => {
820
- store.addQuad(row);
821
- });
822
- stream.on('end', () => {
823
- resolve(store);
824
- });
825
- })
826
- .catch(reject);
827
- });
828
- }
829
886
  findAll(query, options = {}) {
830
887
  return new Promise((resolve, reject) => {
831
888
  this.findAllSerialized(query)
@@ -834,9 +891,11 @@ class SPARQLDataDriver extends _openhps_core__WEBPACK_IMPORTED_MODULE_0__.DataSe
834
891
  return resolve([]);
835
892
  }
836
893
  const subjects = store
837
- .getSubjects(n3__WEBPACK_IMPORTED_MODULE_5__["default"].namedNode(_vocab__WEBPACK_IMPORTED_MODULE_6__.rdf.type), null, null)
894
+ .getSubjects(n3__WEBPACK_IMPORTED_MODULE_3__["default"].namedNode(_vocab__WEBPACK_IMPORTED_MODULE_4__.rdf.type), null, null)
838
895
  .filter((subject) => subject.termType === 'NamedNode');
839
- let data = subjects.map((subject) => _rdf__WEBPACK_IMPORTED_MODULE_3__.RDFSerializer.deserializeFromStore(subject, store));
896
+ let data = subjects
897
+ .map((subject) => _rdf__WEBPACK_IMPORTED_MODULE_2__.RDFSerializer.deserializeFromStore(subject, store))
898
+ .filter((data) => data.constructor.name === this.dataType.name);
840
899
  if (options.sort) {
841
900
  data = data
842
901
  .sort((a, b) => options.sort
@@ -869,50 +928,15 @@ class SPARQLDataDriver extends _openhps_core__WEBPACK_IMPORTED_MODULE_0__.DataSe
869
928
  return resolve(0);
870
929
  }
871
930
  const subjects = store
872
- .getSubjects(n3__WEBPACK_IMPORTED_MODULE_5__["default"].namedNode(_vocab__WEBPACK_IMPORTED_MODULE_6__.rdf.type), null, null)
931
+ .getSubjects(n3__WEBPACK_IMPORTED_MODULE_3__["default"].namedNode(_vocab__WEBPACK_IMPORTED_MODULE_4__.rdf.type), null, null)
873
932
  .filter((subject) => subject.termType === 'NamedNode');
874
933
  resolve(subjects.length);
875
934
  })
876
935
  .catch(reject);
877
936
  });
878
937
  }
879
- insert(_, object) {
880
- return new Promise((resolve, reject) => {
881
- this.client.query
882
- .update(this.generator.createInsert(object), {
883
- headers: this.options.headers,
884
- operation: this.options.operation,
885
- })
886
- .then(() => {
887
- resolve(object);
888
- })
889
- .catch(reject);
890
- });
891
- }
892
- delete(id) {
893
- return new Promise((resolve, reject) => {
894
- this.client.query
895
- .update(this.generator.createDelete(id), {
896
- headers: this.options.headers,
897
- operation: this.options.operation,
898
- })
899
- .then(resolve)
900
- .catch(reject);
901
- });
902
- }
903
- deleteAll(query) {
904
- return new Promise((resolve, reject) => {
905
- this.client.query
906
- .update(this.generator.createDeleteAll(query), {
907
- headers: this.options.headers,
908
- operation: this.options.operation,
909
- })
910
- .then(resolve)
911
- .catch(reject);
912
- });
913
- }
914
938
  }
915
- //# sourceMappingURL=SPARQLDataDriver.js.map
939
+ //# sourceMappingURL=SPARQLDriverBase.js.map
916
940
 
917
941
  /***/ }),
918
942
 
@@ -1372,7 +1396,21 @@ class SPARQLGenerator {
1372
1396
  case '$nin':
1373
1397
  break;
1374
1398
  case '$elemMatch':
1375
- patterns.push(...this.createQuery(subquery[selector], dataType));
1399
+ patterns.push({
1400
+ type: 'group',
1401
+ patterns: [
1402
+ {
1403
+ type: 'bgp',
1404
+ triples: [
1405
+ {
1406
+ subject: n3__WEBPACK_IMPORTED_MODULE_3__["default"].variable('subject'),
1407
+ predicate: n3__WEBPACK_IMPORTED_MODULE_3__["default"].namedNode(predicate),
1408
+ object: n3__WEBPACK_IMPORTED_MODULE_3__["default"].namedNode(this.baseUri + 'dataobject_mvdewync'),
1409
+ },
1410
+ ],
1411
+ },
1412
+ ],
1413
+ });
1376
1414
  break;
1377
1415
  }
1378
1416
  return patterns;
@@ -1399,10 +1437,13 @@ class SPARQLGenerator {
1399
1437
 
1400
1438
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
1401
1439
  /* harmony export */ "SPARQLDataDriver": () => (/* reexport safe */ _SPARQLDataDriver__WEBPACK_IMPORTED_MODULE_0__.SPARQLDataDriver),
1440
+ /* harmony export */ "SPARQLDriverBase": () => (/* reexport safe */ _SPARQLDriverBase__WEBPACK_IMPORTED_MODULE_2__.SPARQLDriverBase),
1402
1441
  /* harmony export */ "SPARQLGenerator": () => (/* reexport safe */ _SPARQLGenerator__WEBPACK_IMPORTED_MODULE_1__.SPARQLGenerator)
1403
1442
  /* harmony export */ });
1404
1443
  /* harmony import */ var _SPARQLDataDriver__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./SPARQLDataDriver */ "./dist/esm/service/SPARQLDataDriver.js");
1405
1444
  /* harmony import */ var _SPARQLGenerator__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./SPARQLGenerator */ "./dist/esm/service/SPARQLGenerator.js");
1445
+ /* harmony import */ var _SPARQLDriverBase__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./SPARQLDriverBase */ "./dist/esm/service/SPARQLDriverBase.js");
1446
+
1406
1447
 
1407
1448
 
1408
1449
  //# sourceMappingURL=index.js.map
@@ -35570,8 +35611,9 @@ module.exports = x({ ["DataSerializer"]: () => __WEBPACK_EXTERNAL_MODULE__openhp
35570
35611
  /******/ // Load entry module and return exports
35571
35612
  /******/ var __webpack_exports__ = __webpack_require__(__webpack_require__.s = "./dist/esm/index.sparql.js");
35572
35613
  /******/ var __webpack_exports__SPARQLDataDriver = __webpack_exports__.SPARQLDataDriver;
35614
+ /******/ var __webpack_exports__SPARQLDriverBase = __webpack_exports__.SPARQLDriverBase;
35573
35615
  /******/ var __webpack_exports__SPARQLGenerator = __webpack_exports__.SPARQLGenerator;
35574
- /******/ export { __webpack_exports__SPARQLDataDriver as SPARQLDataDriver, __webpack_exports__SPARQLGenerator as SPARQLGenerator };
35616
+ /******/ export { __webpack_exports__SPARQLDataDriver as SPARQLDataDriver, __webpack_exports__SPARQLDriverBase as SPARQLDriverBase, __webpack_exports__SPARQLGenerator as SPARQLGenerator };
35575
35617
  /******/
35576
35618
 
35577
35619
  //# sourceMappingURL=openhps-rdf.sparql.es.js.map