@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
@@ -307,6 +307,7 @@ __webpack_require__.r(__webpack_exports__);
307
307
  /* harmony export */ "QuantityValue": () => (/* reexport safe */ _index_serialization__WEBPACK_IMPORTED_MODULE_0__.QuantityValue),
308
308
  /* harmony export */ "RDFSerializer": () => (/* reexport safe */ _index_serialization__WEBPACK_IMPORTED_MODULE_0__.RDFSerializer),
309
309
  /* harmony export */ "SPARQLDataDriver": () => (/* reexport safe */ _index_sparql__WEBPACK_IMPORTED_MODULE_1__.SPARQLDataDriver),
310
+ /* harmony export */ "SPARQLDriverBase": () => (/* reexport safe */ _index_sparql__WEBPACK_IMPORTED_MODULE_1__.SPARQLDriverBase),
310
311
  /* harmony export */ "SPARQLGenerator": () => (/* reexport safe */ _index_sparql__WEBPACK_IMPORTED_MODULE_1__.SPARQLGenerator),
311
312
  /* harmony export */ "dcmi": () => (/* reexport safe */ _index_vocab__WEBPACK_IMPORTED_MODULE_2__.dcmi),
312
313
  /* harmony export */ "dcterms": () => (/* reexport safe */ _index_vocab__WEBPACK_IMPORTED_MODULE_2__.dcterms),
@@ -374,6 +375,7 @@ __webpack_require__.r(__webpack_exports__);
374
375
  "use strict";
375
376
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
376
377
  /* harmony export */ "SPARQLDataDriver": () => (/* reexport safe */ _service__WEBPACK_IMPORTED_MODULE_0__.SPARQLDataDriver),
378
+ /* harmony export */ "SPARQLDriverBase": () => (/* reexport safe */ _service__WEBPACK_IMPORTED_MODULE_0__.SPARQLDriverBase),
377
379
  /* harmony export */ "SPARQLGenerator": () => (/* reexport safe */ _service__WEBPACK_IMPORTED_MODULE_0__.SPARQLGenerator)
378
380
  /* harmony export */ });
379
381
  /* harmony import */ var _service__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./service */ "./dist/esm/service/index.js");
@@ -1156,30 +1158,21 @@ function isObject(item) {
1156
1158
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
1157
1159
  /* harmony export */ "SPARQLDataDriver": () => (/* binding */ SPARQLDataDriver)
1158
1160
  /* harmony export */ });
1159
- /* harmony import */ var _openhps_core__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @openhps/core */ "@openhps/core");
1160
- /* harmony import */ var _openhps_core__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_openhps_core__WEBPACK_IMPORTED_MODULE_0__);
1161
- /* harmony import */ var n3__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! n3 */ "./node_modules/n3/src/N3Store.js");
1162
- /* harmony import */ var n3__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! n3 */ "./node_modules/n3/src/N3DataFactory.js");
1163
- /* harmony import */ var _rdf__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../rdf */ "./dist/esm/rdf/RDFSerializer.js");
1164
- /* harmony import */ var sparql_http_client__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! sparql-http-client */ "./node_modules/sparql-http-client/index.js");
1165
- /* harmony import */ var sparql_http_client__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(sparql_http_client__WEBPACK_IMPORTED_MODULE_1__);
1166
- /* harmony import */ var _vocab__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../vocab */ "./dist/esm/vocab/index.js");
1167
- /* harmony import */ var _SPARQLGenerator__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./SPARQLGenerator */ "./dist/esm/service/SPARQLGenerator.js");
1168
-
1169
-
1170
-
1161
+ /* harmony import */ var n3__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! n3 */ "./node_modules/n3/src/N3Store.js");
1162
+ /* harmony import */ var sparql_http_client__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! sparql-http-client */ "./node_modules/sparql-http-client/index.js");
1163
+ /* harmony import */ var sparql_http_client__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(sparql_http_client__WEBPACK_IMPORTED_MODULE_0__);
1164
+ /* harmony import */ var _SPARQLDriverBase__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./SPARQLDriverBase */ "./dist/esm/service/SPARQLDriverBase.js");
1171
1165
 
1172
1166
 
1173
1167
 
1174
- class SPARQLDataDriver extends _openhps_core__WEBPACK_IMPORTED_MODULE_0__.DataServiceDriver {
1168
+ class SPARQLDataDriver extends _SPARQLDriverBase__WEBPACK_IMPORTED_MODULE_1__.SPARQLDriverBase {
1175
1169
  constructor(dataType, options) {
1176
1170
  super(dataType, options);
1177
- this.generator = new _SPARQLGenerator__WEBPACK_IMPORTED_MODULE_2__.SPARQLGenerator(this.dataType, this.options.baseUri);
1178
1171
  this.once('build', this._onBuild.bind(this));
1179
1172
  }
1180
1173
  _onBuild() {
1181
1174
  return new Promise((resolve) => {
1182
- this.client = new (sparql_http_client__WEBPACK_IMPORTED_MODULE_1___default())({
1175
+ this.client = new (sparql_http_client__WEBPACK_IMPORTED_MODULE_0___default())({
1183
1176
  endpointUrl: this.options.endpointUrl,
1184
1177
  storeUrl: this.options.storeUrl,
1185
1178
  updateUrl: this.options.updateUrl,
@@ -1189,9 +1182,91 @@ class SPARQLDataDriver extends _openhps_core__WEBPACK_IMPORTED_MODULE_0__.DataSe
1189
1182
  resolve();
1190
1183
  });
1191
1184
  }
1185
+ findAllSerialized(query) {
1186
+ return new Promise((resolve, reject) => {
1187
+ this.client.query
1188
+ .construct(this.generator.createFindAll(query))
1189
+ .then((stream) => {
1190
+ const store = new n3__WEBPACK_IMPORTED_MODULE_2__["default"]();
1191
+ stream.on('data', (row) => {
1192
+ store.addQuad(row);
1193
+ });
1194
+ stream.on('end', () => {
1195
+ resolve(store);
1196
+ });
1197
+ })
1198
+ .catch(reject);
1199
+ });
1200
+ }
1201
+ insert(_, object) {
1202
+ return new Promise((resolve, reject) => {
1203
+ this.client.query
1204
+ .update(this.generator.createInsert(object), {
1205
+ headers: this.options.headers,
1206
+ operation: this.options.operation,
1207
+ })
1208
+ .then(() => {
1209
+ resolve(object);
1210
+ })
1211
+ .catch(reject);
1212
+ });
1213
+ }
1214
+ delete(id) {
1215
+ return new Promise((resolve, reject) => {
1216
+ this.client.query
1217
+ .update(this.generator.createDelete(id), {
1218
+ headers: this.options.headers,
1219
+ operation: this.options.operation,
1220
+ })
1221
+ .then(resolve)
1222
+ .catch(reject);
1223
+ });
1224
+ }
1225
+ deleteAll(query) {
1226
+ return new Promise((resolve, reject) => {
1227
+ this.client.query
1228
+ .update(this.generator.createDeleteAll(query), {
1229
+ headers: this.options.headers,
1230
+ operation: this.options.operation,
1231
+ })
1232
+ .then(resolve)
1233
+ .catch(reject);
1234
+ });
1235
+ }
1236
+ }
1237
+ //# sourceMappingURL=SPARQLDataDriver.js.map
1238
+
1239
+ /***/ }),
1240
+
1241
+ /***/ "./dist/esm/service/SPARQLDriverBase.js":
1242
+ /*!**********************************************!*\
1243
+ !*** ./dist/esm/service/SPARQLDriverBase.js ***!
1244
+ \**********************************************/
1245
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
1246
+
1247
+ "use strict";
1248
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
1249
+ /* harmony export */ "SPARQLDriverBase": () => (/* binding */ SPARQLDriverBase)
1250
+ /* harmony export */ });
1251
+ /* harmony import */ var _openhps_core__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @openhps/core */ "@openhps/core");
1252
+ /* harmony import */ var _openhps_core__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_openhps_core__WEBPACK_IMPORTED_MODULE_0__);
1253
+ /* harmony import */ var n3__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! n3 */ "./node_modules/n3/src/N3DataFactory.js");
1254
+ /* harmony import */ var _rdf__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../rdf */ "./dist/esm/rdf/RDFSerializer.js");
1255
+ /* harmony import */ var _vocab__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../vocab */ "./dist/esm/vocab/index.js");
1256
+ /* harmony import */ var _SPARQLGenerator__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./SPARQLGenerator */ "./dist/esm/service/SPARQLGenerator.js");
1257
+
1258
+
1259
+
1260
+
1261
+
1262
+ class SPARQLDriverBase extends _openhps_core__WEBPACK_IMPORTED_MODULE_0__.DataServiceDriver {
1263
+ constructor(dataType, options) {
1264
+ super(dataType, options);
1265
+ this.generator = new _SPARQLGenerator__WEBPACK_IMPORTED_MODULE_1__.SPARQLGenerator(this.dataType, this.options.baseUri);
1266
+ }
1192
1267
  findByUID(id) {
1193
1268
  return new Promise((resolve, reject) => {
1194
- const identifierMember = _rdf__WEBPACK_IMPORTED_MODULE_3__.RDFSerializer.getUriMetadata(this.dataType);
1269
+ const identifierMember = _rdf__WEBPACK_IMPORTED_MODULE_2__.RDFSerializer.getUriMetadata(this.dataType);
1195
1270
  this.findOne({
1196
1271
  [identifierMember.key]: id,
1197
1272
  })
@@ -1211,22 +1286,6 @@ class SPARQLDataDriver extends _openhps_core__WEBPACK_IMPORTED_MODULE_0__.DataSe
1211
1286
  .catch(reject);
1212
1287
  });
1213
1288
  }
1214
- findAllSerialized(query) {
1215
- return new Promise((resolve, reject) => {
1216
- this.client.query
1217
- .construct(this.generator.createFindAll(query))
1218
- .then((stream) => {
1219
- const store = new n3__WEBPACK_IMPORTED_MODULE_4__["default"]();
1220
- stream.on('data', (row) => {
1221
- store.addQuad(row);
1222
- });
1223
- stream.on('end', () => {
1224
- resolve(store);
1225
- });
1226
- })
1227
- .catch(reject);
1228
- });
1229
- }
1230
1289
  findAll(query, options = {}) {
1231
1290
  return new Promise((resolve, reject) => {
1232
1291
  this.findAllSerialized(query)
@@ -1235,9 +1294,11 @@ class SPARQLDataDriver extends _openhps_core__WEBPACK_IMPORTED_MODULE_0__.DataSe
1235
1294
  return resolve([]);
1236
1295
  }
1237
1296
  const subjects = store
1238
- .getSubjects(n3__WEBPACK_IMPORTED_MODULE_5__["default"].namedNode(_vocab__WEBPACK_IMPORTED_MODULE_6__.rdf.type), null, null)
1297
+ .getSubjects(n3__WEBPACK_IMPORTED_MODULE_3__["default"].namedNode(_vocab__WEBPACK_IMPORTED_MODULE_4__.rdf.type), null, null)
1239
1298
  .filter((subject) => subject.termType === 'NamedNode');
1240
- let data = subjects.map((subject) => _rdf__WEBPACK_IMPORTED_MODULE_3__.RDFSerializer.deserializeFromStore(subject, store));
1299
+ let data = subjects
1300
+ .map((subject) => _rdf__WEBPACK_IMPORTED_MODULE_2__.RDFSerializer.deserializeFromStore(subject, store))
1301
+ .filter((data) => data.constructor.name === this.dataType.name);
1241
1302
  if (options.sort) {
1242
1303
  data = data
1243
1304
  .sort((a, b) => options.sort
@@ -1270,50 +1331,15 @@ class SPARQLDataDriver extends _openhps_core__WEBPACK_IMPORTED_MODULE_0__.DataSe
1270
1331
  return resolve(0);
1271
1332
  }
1272
1333
  const subjects = store
1273
- .getSubjects(n3__WEBPACK_IMPORTED_MODULE_5__["default"].namedNode(_vocab__WEBPACK_IMPORTED_MODULE_6__.rdf.type), null, null)
1334
+ .getSubjects(n3__WEBPACK_IMPORTED_MODULE_3__["default"].namedNode(_vocab__WEBPACK_IMPORTED_MODULE_4__.rdf.type), null, null)
1274
1335
  .filter((subject) => subject.termType === 'NamedNode');
1275
1336
  resolve(subjects.length);
1276
1337
  })
1277
1338
  .catch(reject);
1278
1339
  });
1279
1340
  }
1280
- insert(_, object) {
1281
- return new Promise((resolve, reject) => {
1282
- this.client.query
1283
- .update(this.generator.createInsert(object), {
1284
- headers: this.options.headers,
1285
- operation: this.options.operation,
1286
- })
1287
- .then(() => {
1288
- resolve(object);
1289
- })
1290
- .catch(reject);
1291
- });
1292
- }
1293
- delete(id) {
1294
- return new Promise((resolve, reject) => {
1295
- this.client.query
1296
- .update(this.generator.createDelete(id), {
1297
- headers: this.options.headers,
1298
- operation: this.options.operation,
1299
- })
1300
- .then(resolve)
1301
- .catch(reject);
1302
- });
1303
- }
1304
- deleteAll(query) {
1305
- return new Promise((resolve, reject) => {
1306
- this.client.query
1307
- .update(this.generator.createDeleteAll(query), {
1308
- headers: this.options.headers,
1309
- operation: this.options.operation,
1310
- })
1311
- .then(resolve)
1312
- .catch(reject);
1313
- });
1314
- }
1315
1341
  }
1316
- //# sourceMappingURL=SPARQLDataDriver.js.map
1342
+ //# sourceMappingURL=SPARQLDriverBase.js.map
1317
1343
 
1318
1344
  /***/ }),
1319
1345
 
@@ -1775,7 +1801,21 @@ class SPARQLGenerator {
1775
1801
  case '$nin':
1776
1802
  break;
1777
1803
  case '$elemMatch':
1778
- patterns.push(...this.createQuery(subquery[selector], dataType));
1804
+ patterns.push({
1805
+ type: 'group',
1806
+ patterns: [
1807
+ {
1808
+ type: 'bgp',
1809
+ triples: [
1810
+ {
1811
+ subject: n3__WEBPACK_IMPORTED_MODULE_3__["default"].variable('subject'),
1812
+ predicate: n3__WEBPACK_IMPORTED_MODULE_3__["default"].namedNode(predicate),
1813
+ object: n3__WEBPACK_IMPORTED_MODULE_3__["default"].namedNode(this.baseUri + 'dataobject_mvdewync'),
1814
+ },
1815
+ ],
1816
+ },
1817
+ ],
1818
+ });
1779
1819
  break;
1780
1820
  }
1781
1821
  return patterns;
@@ -1803,10 +1843,13 @@ class SPARQLGenerator {
1803
1843
  "use strict";
1804
1844
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
1805
1845
  /* harmony export */ "SPARQLDataDriver": () => (/* reexport safe */ _SPARQLDataDriver__WEBPACK_IMPORTED_MODULE_0__.SPARQLDataDriver),
1846
+ /* harmony export */ "SPARQLDriverBase": () => (/* reexport safe */ _SPARQLDriverBase__WEBPACK_IMPORTED_MODULE_2__.SPARQLDriverBase),
1806
1847
  /* harmony export */ "SPARQLGenerator": () => (/* reexport safe */ _SPARQLGenerator__WEBPACK_IMPORTED_MODULE_1__.SPARQLGenerator)
1807
1848
  /* harmony export */ });
1808
1849
  /* harmony import */ var _SPARQLDataDriver__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./SPARQLDataDriver */ "./dist/esm/service/SPARQLDataDriver.js");
1809
1850
  /* harmony import */ var _SPARQLGenerator__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./SPARQLGenerator */ "./dist/esm/service/SPARQLGenerator.js");
1851
+ /* harmony import */ var _SPARQLDriverBase__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./SPARQLDriverBase */ "./dist/esm/service/SPARQLDriverBase.js");
1852
+
1810
1853
 
1811
1854
 
1812
1855
  //# sourceMappingURL=index.js.map