rdflib 2.2.31 → 2.2.32-2f2a2f3c

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 (54) hide show
  1. package/dist/670.rdflib.min.js +1 -0
  2. package/dist/730.rdflib.min.js +3 -0
  3. package/dist/730.rdflib.min.js.LICENSE.txt +58 -0
  4. package/dist/730.rdflib.min.js.map +1 -0
  5. package/dist/rdflib.min.js +1 -1
  6. package/dist/rdflib.min.js.LICENSE.txt +0 -59
  7. package/dist/rdflib.min.js.map +1 -1
  8. package/esm/blank-node.js +10 -6
  9. package/esm/collection.js +3 -4
  10. package/esm/factories/factory-types.js +10 -10
  11. package/esm/fetcher.js +64 -35
  12. package/esm/formula.js +10 -13
  13. package/esm/jsonldparser.js +4 -3
  14. package/esm/lists.js +2 -1
  15. package/esm/literal.js +6 -8
  16. package/esm/node-internal.js +5 -10
  17. package/esm/rdfxmlparser.js +3 -0
  18. package/esm/serializer.js +2 -3
  19. package/esm/statement.js +7 -11
  20. package/esm/store.js +39 -32
  21. package/esm/types.js +18 -1
  22. package/esm/update-manager.js +150 -83
  23. package/esm/utils.js +0 -1
  24. package/esm/variable.js +2 -4
  25. package/lib/blank-node.js +10 -6
  26. package/lib/collection.js +3 -4
  27. package/lib/factories/factory-types.js +10 -10
  28. package/lib/fetcher.js +88 -36
  29. package/lib/formula.js +10 -13
  30. package/lib/index.d.ts +1 -1
  31. package/lib/jsonldparser.js +9 -3
  32. package/lib/lists.js +15 -1
  33. package/lib/literal.js +6 -8
  34. package/lib/node-internal.js +5 -10
  35. package/lib/query.d.ts +1 -1
  36. package/lib/rdfxmlparser.js +3 -0
  37. package/lib/serializer.d.ts +1 -1
  38. package/lib/serializer.js +2 -3
  39. package/lib/sparql-to-query.d.ts +1 -1
  40. package/lib/statement.js +7 -11
  41. package/lib/store.d.ts +1 -1
  42. package/lib/store.js +55 -34
  43. package/lib/types.js +22 -0
  44. package/lib/update-manager.d.ts +25 -5
  45. package/lib/update-manager.js +154 -82
  46. package/lib/utils-js.d.ts +3 -3
  47. package/lib/variable.js +2 -4
  48. package/lib/xsd-internal.d.ts +1 -1
  49. package/package.json +20 -19
  50. package/src/fetcher.ts +13 -0
  51. package/src/jsonldparser.js +2 -4
  52. package/src/serializer.js +1 -1
  53. package/src/store.ts +18 -1
  54. package/src/update-manager.ts +243 -163
package/lib/fetcher.js CHANGED
@@ -32,8 +32,34 @@ var _termValue = require("./utils/termValue");
32
32
  var _jsonldparser = _interopRequireDefault(require("./jsonldparser"));
33
33
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
34
34
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
35
+ function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
36
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
37
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
35
38
  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
36
- function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
39
+ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } } /* global $SolidTestEnvironment */ /**
40
+ *
41
+ * Project: rdflib.js
42
+ *
43
+ * @file: fetcher.js
44
+ *
45
+ * Description: contains functions for requesting/fetching/retracting
46
+ * This implements quite a lot of the web architecture.
47
+ * A fetcher is bound to a specific quad store, into which
48
+ * it loads stuff and into which it writes its metadata
49
+ * @@ The metadata could be optionally a separate graph
50
+ *
51
+ * - implements semantics of HTTP headers, Internet Content Types
52
+ * - selects parsers for rdf/xml, n3, rdfa, grddl
53
+ *
54
+ * TO do:
55
+ * - Implement a runtime registry for parsers and serializers
56
+ * -
57
+ */ /**
58
+ * Things to test: callbacks on request, refresh, retract
59
+ * loading from HTTP, HTTPS, FTP, FILE, others?
60
+ * To do:
61
+ * Firing up a mail client for mid: (message:) URLs
62
+ */
37
63
  var Parsable = {
38
64
  'text/n3': true,
39
65
  'text/turtle': true,
@@ -73,14 +99,19 @@ var getNS = function getNS(factory) {
73
99
  };
74
100
  };
75
101
  var ns = getNS();
76
- var Handler = /*#__PURE__*/(0, _createClass2.default)(
77
- // TODO: Document, type
78
102
 
79
- // TODO: Document, type
103
+ /** An extended interface of Response, since RDFlib.js adds some properties. */
80
104
 
81
- function Handler(response, dom) {
105
+ /** tell typescript that a 'panes' child may exist on Window */
106
+
107
+ /** All valid inputs for initFetchOptions */
108
+
109
+ /** Initiated by initFetchOptions, which runs on load */
110
+ var Handler = /*#__PURE__*/(0, _createClass2.default)(function Handler(response, dom) {
82
111
  (0, _classCallCheck2.default)(this, Handler);
112
+ // TODO: Document, type
83
113
  (0, _defineProperty2.default)(this, "response", void 0);
114
+ // TODO: Document, type
84
115
  (0, _defineProperty2.default)(this, "dom", void 0);
85
116
  this.response = response;
86
117
  // The type assertion operator here might need to be removed.
@@ -516,6 +547,10 @@ function isXMLNS(responseText) {
516
547
  var match = responseText.match(/[^(<html)]*<html\s+[^<]*xmlns=['"]http:\/\/www.w3.org\/1999\/xhtml["'][^<]*>/);
517
548
  return !!match;
518
549
  }
550
+
551
+ // Not sure about the shapes of this. Response? FetchError?
552
+
553
+ /** Differs from normal Fetch, has an extended Response type */
519
554
  /** Fetcher
520
555
  *
521
556
  * The Fetcher object is a helper object for a quadstore
@@ -525,34 +560,6 @@ function isXMLNS(responseText) {
525
560
  * and put back the data to the web.
526
561
  */
527
562
  var Fetcher = /*#__PURE__*/function () {
528
- /** Denoting this session */
529
-
530
- /**
531
- * this.requested[uri] states:
532
- * undefined no record of web access or records reset
533
- * true has been requested, fetch in progress
534
- * 'done' received, Ok
535
- * 401 Not logged in
536
- * 403 HTTP status unauthorized
537
- * 404 Resource does not exist. Can be created etc.
538
- * 'redirected' In attempt to counter CORS problems retried.
539
- * 'parse_error' Parse error
540
- * 'unsupported_protocol' URI is not a protocol Fetcher can deal with
541
- * other strings mean various other errors.
542
- */
543
-
544
- /** List of timeouts associated with a requested URL */
545
-
546
- /** Redirected from *key uri* to *value uri* */
547
-
548
- /** fetchCallbacks[uri].push(callback) */
549
-
550
- /** Keep track of explicit 404s -> we can overwrite etc */
551
-
552
- // TODO: Document this
553
-
554
- /** Methods added by calling Util.callbackify in the constructor*/
555
-
556
563
  function Fetcher(store) {
557
564
  var _this = this;
558
565
  var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
@@ -561,16 +568,35 @@ var Fetcher = /*#__PURE__*/function () {
561
568
  (0, _defineProperty2.default)(this, "timeout", void 0);
562
569
  (0, _defineProperty2.default)(this, "_fetch", void 0);
563
570
  (0, _defineProperty2.default)(this, "mediatypes", void 0);
571
+ /** Denoting this session */
564
572
  (0, _defineProperty2.default)(this, "appNode", void 0);
573
+ /**
574
+ * this.requested[uri] states:
575
+ * undefined no record of web access or records reset
576
+ * true has been requested, fetch in progress
577
+ * 'done' received, Ok
578
+ * 401 Not logged in
579
+ * 403 HTTP status unauthorized
580
+ * 404 Resource does not exist. Can be created etc.
581
+ * 'redirected' In attempt to counter CORS problems retried.
582
+ * 'parse_error' Parse error
583
+ * 'unsupported_protocol' URI is not a protocol Fetcher can deal with
584
+ * other strings mean various other errors.
585
+ */
565
586
  (0, _defineProperty2.default)(this, "requested", void 0);
587
+ /** List of timeouts associated with a requested URL */
566
588
  (0, _defineProperty2.default)(this, "timeouts", void 0);
589
+ /** Redirected from *key uri* to *value uri* */
567
590
  (0, _defineProperty2.default)(this, "redirectedTo", void 0);
568
591
  (0, _defineProperty2.default)(this, "fetchQueue", void 0);
592
+ /** fetchCallbacks[uri].push(callback) */
569
593
  (0, _defineProperty2.default)(this, "fetchCallbacks", void 0);
594
+ /** Keep track of explicit 404s -> we can overwrite etc */
570
595
  (0, _defineProperty2.default)(this, "nonexistent", void 0);
571
596
  (0, _defineProperty2.default)(this, "lookedUp", void 0);
572
597
  (0, _defineProperty2.default)(this, "handlers", void 0);
573
598
  (0, _defineProperty2.default)(this, "ns", void 0);
599
+ /** Methods added by calling Util.callbackify in the constructor*/
574
600
  (0, _defineProperty2.default)(this, "fireCallbacks", void 0);
575
601
  this.store = store || new _store.default();
576
602
  this.ns = getNS(this.store.rdfFactory);
@@ -671,6 +697,31 @@ var Fetcher = /*#__PURE__*/function () {
671
697
  var docuri = (0, _termValue.termValue)(uriIn);
672
698
  docuri = docuri.split('#')[0];
673
699
  options = this.initFetchOptions(docuri, options);
700
+ // if metadata flaged clear cache and removeDocument
701
+ var meta = this.appNode;
702
+ var kb = this.store;
703
+ var requests = kb.statementsMatching(undefined, this.ns.link('requestedURI'), kb.sym(docuri), meta).map(function (st) {
704
+ return st.subject;
705
+ });
706
+ var _iterator = _createForOfIteratorHelper(requests),
707
+ _step;
708
+ try {
709
+ for (_iterator.s(); !(_step = _iterator.n()).done;) {
710
+ var request = _step.value;
711
+ var _response = kb.any(request, this.ns.link('response'), null, meta);
712
+ if (_response !== undefined) {
713
+ // ts
714
+ var quad = kb.statementsMatching(_response, this.ns.link('outOfDate'), true, meta);
715
+ kb.remove(quad);
716
+ options.force = true;
717
+ options.clearPreviousData = true;
718
+ }
719
+ }
720
+ } catch (err) {
721
+ _iterator.e(err);
722
+ } finally {
723
+ _iterator.f();
724
+ }
674
725
  var initialisedOptions = this.initFetchOptions(docuri, options);
675
726
  return this.pendingFetchPromise(docuri, initialisedOptions.baseURI, initialisedOptions);
676
727
  }
@@ -1373,10 +1424,10 @@ var Fetcher = /*#__PURE__*/function () {
1373
1424
  for (var r = 0; r < requests.length; r++) {
1374
1425
  var request = requests[r];
1375
1426
  if (request !== undefined) {
1376
- var _response = kb.any(request, this.ns.link('response'));
1377
- if (_response !== undefined && kb.anyValue(_response, this.ns.http('status')) && kb.anyValue(_response, this.ns.http('status')).startsWith('2')) {
1427
+ var _response2 = kb.any(request, this.ns.link('response'));
1428
+ if (_response2 !== undefined && kb.anyValue(_response2, this.ns.http('status')) && kb.anyValue(_response2, this.ns.http('status')).startsWith('2')) {
1378
1429
  // Only look at success returns - not 401 error messagess etc
1379
- var results = kb.each(_response, this.ns.httph(header.toLowerCase()));
1430
+ var results = kb.each(_response2, this.ns.httph(header.toLowerCase()));
1380
1431
  if (results.length) {
1381
1432
  return results.map(function (v) {
1382
1433
  return v.value;
@@ -1939,6 +1990,7 @@ var Fetcher = /*#__PURE__*/function () {
1939
1990
  exports.default = Fetcher;
1940
1991
  (0, _defineProperty2.default)(Fetcher, "HANDLERS", void 0);
1941
1992
  (0, _defineProperty2.default)(Fetcher, "CONTENT_TYPE_BY_EXT", void 0);
1993
+ // TODO: Document this
1942
1994
  (0, _defineProperty2.default)(Fetcher, "crossSiteProxyTemplate", void 0);
1943
1995
  Fetcher.HANDLERS = defaultHandlers;
1944
1996
  Fetcher.CONTENT_TYPE_BY_EXT = CONTENT_TYPE_BY_EXT;
package/lib/formula.js CHANGED
@@ -35,19 +35,6 @@ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Re
35
35
  var Formula = /*#__PURE__*/function (_Node) {
36
36
  (0, _inherits2.default)(Formula, _Node);
37
37
  var _super = _createSuper(Formula);
38
- /**
39
- * The accompanying fetcher instance.
40
- *
41
- * Is set by the fetcher when initialized.
42
- */
43
-
44
- /**
45
- * A namespace for the specified namespace's URI
46
- * @param nsuri The URI for the namespace
47
- */
48
-
49
- /** The factory used to generate statements and terms */
50
-
51
38
  /**
52
39
  * Initializes this formula
53
40
  * @constructor
@@ -73,9 +60,19 @@ var Formula = /*#__PURE__*/function (_Node) {
73
60
  _this.optional = optional;
74
61
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "termType", _types.GraphTermType);
75
62
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "classOrder", _classOrder.default.Graph);
63
+ /**
64
+ * The accompanying fetcher instance.
65
+ *
66
+ * Is set by the fetcher when initialized.
67
+ */
76
68
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "fetcher", void 0);
77
69
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "isVar", 0);
70
+ /**
71
+ * A namespace for the specified namespace's URI
72
+ * @param nsuri The URI for the namespace
73
+ */
78
74
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "ns", _namespace.default);
75
+ /** The factory used to generate statements and terms */
79
76
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "rdfFactory", void 0);
80
77
  _this.rdfFactory = opts && opts.rdfFactory || _canonicalDataFactory.default;
81
78
  // Enable default factory methods on this while preserving factory context.
package/lib/index.d.ts CHANGED
@@ -30,7 +30,7 @@ import Variable from './variable';
30
30
  import DataFactory from './factories/rdflib-data-factory';
31
31
  declare const fetcher: (store: Store, options: any) => Fetcher, graph: (features?: any, opts?: any) => Store, lit: (val: string, lang?: string | undefined, dt?: import("./tf-types").NamedNode | undefined) => Literal, st: (subject: import("./tf-types").Quad_Subject, predicate: import("./tf-types").Quad_Predicate, object: import("./tf-types").Quad_Object, graph?: import("./tf-types").Quad_Graph | undefined) => Statement<import("./types").SubjectType, import("./types").PredicateType, import("./types").ObjectType, import("./types").GraphType>, namedNode: (value: string) => NamedNode, variable: (value: string) => Variable, blankNode: (value?: string | undefined) => BlankNode, defaultGraph: () => import("./default-graph").default, literal: (value: string, languageOrDatatype?: string | import("./tf-types").NamedNode | undefined) => Literal, quad: (subject: import("./tf-types").Term, predicate: import("./tf-types").Term, object: import("./tf-types").Term, graph?: import("./tf-types").Term | undefined) => Statement<import("./types").SubjectType, import("./types").PredicateType, import("./types").ObjectType, import("./types").GraphType>, triple: (subject: import("./tf-types").Term, predicate: import("./tf-types").Term, object: import("./tf-types").Term, graph?: import("./tf-types").Term | undefined) => import("./tf-types").Quad<any, any, any, any>;
32
32
  declare const fromNT: (str: any) => any;
33
- declare const term: <T extends import("./types").FromValueReturns<any>>(value: import("./types").ValueType) => T;
33
+ declare const term: <T extends import("./types").FromValueReturns>(value: import("./types").ValueType) => T;
34
34
  declare const NextId: number;
35
35
  export * from './utils/terms';
36
36
  export type { AutoInitOptions, ExtendedResponse, FetchError } from './fetcher';
@@ -6,8 +6,10 @@ Object.defineProperty(exports, "__esModule", {
6
6
  });
7
7
  exports.default = jsonldParser;
8
8
  exports.jsonldObjectToTerm = jsonldObjectToTerm;
9
- var _jsonld = _interopRequireDefault(require("jsonld"));
9
+ var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
10
10
  var _utils = require("./utils");
11
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
12
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || (0, _typeof2.default)(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
11
13
  /**
12
14
  * Parses json-ld formatted JS objects to a rdf Term.
13
15
  * @param kb - The DataFactory to use.
@@ -67,8 +69,12 @@ function listToCollection(kb, obj) {
67
69
  */
68
70
  function jsonldParser(str, kb, base, callback) {
69
71
  var baseString = base && Object.prototype.hasOwnProperty.call(base, 'termType') ? base.value : base;
70
- return _jsonld.default.flatten(JSON.parse(str), null, {
71
- base: baseString
72
+ return Promise.resolve().then(function () {
73
+ return _interopRequireWildcard(require('jsonld'));
74
+ }).then(function (jsonld) {
75
+ return jsonld.flatten(JSON.parse(str), null, {
76
+ base: baseString
77
+ });
72
78
  }).then(function (flattened) {
73
79
  return flattened.reduce(function (store, flatResource) {
74
80
  kb = processResource(kb, base, flatResource);
package/lib/lists.js CHANGED
@@ -12,7 +12,21 @@ var _statement = _interopRequireDefault(require("./statement"));
12
12
  var _namespace = _interopRequireDefault(require("./namespace"));
13
13
  function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
14
14
  function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
15
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
15
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; } /* Lists form conversion
16
+ */ // import DataFactory from './factories/extended-term-factory'
17
+ // import jsonldParser from './jsonldparser'
18
+ // @ts-ignore is this injected?
19
+ // @@ Goal: remove this dependency
20
+ // import N3Parser from './n3parser'
21
+ // import { parseRDFaDOM } from './rdfaparser'
22
+ // import RDFParser from './rdfxmlparser'
23
+ // import sparqlUpdateParser from './patch-parser'
24
+ // import * as Util from './utils-js'
25
+ // import BlankNode from './blank-node'
26
+ // import NamedNode from './named-node'
27
+ // import Formula from './formula'
28
+ // import { ContentType, TurtleContentType, N3ContentType, RDFXMLContentType, XHTMLContentType, HTMLContentType, SPARQLUpdateContentType, SPARQLUpdateSingleMatchContentType, JSONLDContentType, NQuadsContentType, NQuadsAltContentType } from './types'
29
+ // import { Quad } from './tf-types'
16
30
  var RDF = (0, _namespace.default)('http://www.w3.org/1999/02/22-rdf-syntax-ns#');
17
31
 
18
32
  /* Replace a given node with another node throughout a given document
package/lib/literal.js CHANGED
@@ -28,14 +28,6 @@ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Re
28
28
  var Literal = /*#__PURE__*/function (_Node) {
29
29
  (0, _inherits2.default)(Literal, _Node);
30
30
  var _super = _createSuper(Literal);
31
- /**
32
- * The literal's datatype as a named node
33
- */
34
-
35
- /**
36
- * The language for the literal
37
- */
38
-
39
31
  /**
40
32
  * Initializes a literal
41
33
  * @param value - The literal's lexical value
@@ -48,8 +40,14 @@ var Literal = /*#__PURE__*/function (_Node) {
48
40
  _this = _super.call(this, value);
49
41
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "termType", _types.LiteralTermType);
50
42
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "classOrder", _classOrder.default.Literal);
43
+ /**
44
+ * The literal's datatype as a named node
45
+ */
51
46
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "datatype", _xsdInternal.default.string);
52
47
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "isVar", 0);
48
+ /**
49
+ * The language for the literal
50
+ */
53
51
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "language", '');
54
52
  if (language) {
55
53
  _this.language = language;
@@ -17,20 +17,13 @@ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/de
17
17
  * @class Node
18
18
  */
19
19
  var Node = /*#__PURE__*/function () {
20
- // Specified in './node.ts' to prevent circular dependency
21
-
22
- // Specified in './node.ts' to prevent circular dependency
23
-
24
- /** The type of node */
25
-
26
- /** The class order for this node */
27
-
28
- /** The node's value */
29
-
30
20
  function Node(value) {
31
21
  (0, _classCallCheck2.default)(this, Node);
22
+ /** The type of node */
32
23
  (0, _defineProperty2.default)(this, "termType", void 0);
24
+ /** The class order for this node */
33
25
  (0, _defineProperty2.default)(this, "classOrder", void 0);
26
+ /** The node's value */
34
27
  (0, _defineProperty2.default)(this, "value", void 0);
35
28
  this.value = value;
36
29
  }
@@ -140,5 +133,7 @@ var Node = /*#__PURE__*/function () {
140
133
  return Node;
141
134
  }();
142
135
  exports.default = Node;
136
+ // Specified in './node.ts' to prevent circular dependency
143
137
  (0, _defineProperty2.default)(Node, "fromValue", void 0);
138
+ // Specified in './node.ts' to prevent circular dependency
144
139
  (0, _defineProperty2.default)(Node, "toJS", void 0);
package/lib/query.d.ts CHANGED
@@ -24,4 +24,4 @@ export class Query {
24
24
  name: any;
25
25
  id: any;
26
26
  }
27
- import IndexedFormula from "./store";
27
+ import IndexedFormula from './store';
@@ -485,6 +485,9 @@ exports.default = RDFParser;
485
485
  'RDF': 'http://www.w3.org/1999/02/22-rdf-syntax-ns#',
486
486
  'RDFS': 'http://www.w3.org/2000/01/rdf-schema#'
487
487
  });
488
+ /** DOM Level 2 node type magic numbers @final
489
+ * @member RDFParser
490
+ */
488
491
  (0, _defineProperty2.default)(RDFParser, "nodeType", {
489
492
  'ELEMENT': 1,
490
493
  'ATTRIBUTE': 2,
@@ -65,4 +65,4 @@ export class Serializer {
65
65
  statementsToXML(sts: any): string;
66
66
  statementsToJsonld(sts: any): string;
67
67
  }
68
- import NamedNode from "./named-node";
68
+ import NamedNode from './named-node';
package/lib/serializer.js CHANGED
@@ -37,6 +37,7 @@ var Serializer = /*#__PURE__*/function () {
37
37
  (0, _classCallCheck2.default)(this, Serializer);
38
38
  (0, _defineProperty2.default)(this, "_notQNameChars", '\t\r\n !"#$%&\'()*.,+/;<=>?@[\\]^`{|}~');
39
39
  (0, _defineProperty2.default)(this, "_notNameChars", this._notQNameChars + ':');
40
+ // stringToN3: String escaping for N3
40
41
  (0, _defineProperty2.default)(this, "validPrefix", new RegExp(/^[a-zA-Z][a-zA-Z0-9]*$/));
41
42
  (0, _defineProperty2.default)(this, "forbidden1", new RegExp(/[\\"\b\f\r\v\t\n\u0080-\uffff]/gm));
42
43
  (0, _defineProperty2.default)(this, "forbidden3", new RegExp(/[\\"\b\f\r\v\u0080-\uffff]/gm));
@@ -294,7 +295,7 @@ var Serializer = /*#__PURE__*/function () {
294
295
  // Unicode encoding NTriples style
295
296
  uri = backslashUify(uri);
296
297
  } else {
297
- uri = hexify(uri);
298
+ uri = hexify(decodeURI(uri));
298
299
  }
299
300
  return '<' + uri + '>';
300
301
  }
@@ -600,8 +601,6 @@ var Serializer = /*#__PURE__*/function () {
600
601
  throw new Error('Internal: atomicTermToN3 cannot handle ' + expr + ' of termType: ' + expr.termType);
601
602
  }
602
603
  }
603
-
604
- // stringToN3: String escaping for N3
605
604
  }, {
606
605
  key: "stringToN3",
607
606
  value: function stringToN3(str, flags) {
@@ -3,4 +3,4 @@
3
3
  * @testMode: testing flag. Prevents loading of sources.
4
4
  */
5
5
  export default function SPARQLToQuery(SPARQL: any, testMode: any, kb: any): false | Query;
6
- import { Query } from "./query";
6
+ import { Query } from './query';
package/lib/statement.js CHANGED
@@ -18,17 +18,6 @@ var defaultGraph = new _defaultGraph.default();
18
18
 
19
19
  /** A Statement represents an RDF Triple or Quad. */
20
20
  var Statement = /*#__PURE__*/function () {
21
- /** The subject of the triple. What the Statement is about. */
22
-
23
- /** The relationship which is asserted between the subject and object */
24
-
25
- /** The thing or data value which is asserted to be related to the subject */
26
-
27
- /**
28
- * The graph param is a named node of the document in which the triple when
29
- * it is stored on the web.
30
- */
31
-
32
21
  /**
33
22
  * Construct a new statement
34
23
  *
@@ -48,9 +37,16 @@ var Statement = /*#__PURE__*/function () {
48
37
  */
49
38
  function Statement(subject, predicate, object, graph) {
50
39
  (0, _classCallCheck2.default)(this, Statement);
40
+ /** The subject of the triple. What the Statement is about. */
51
41
  (0, _defineProperty2.default)(this, "subject", void 0);
42
+ /** The relationship which is asserted between the subject and object */
52
43
  (0, _defineProperty2.default)(this, "predicate", void 0);
44
+ /** The thing or data value which is asserted to be related to the subject */
53
45
  (0, _defineProperty2.default)(this, "object", void 0);
46
+ /**
47
+ * The graph param is a named node of the document in which the triple when
48
+ * it is stored on the web.
49
+ */
54
50
  (0, _defineProperty2.default)(this, "graph", void 0);
55
51
  this.subject = _nodeInternal.default.fromValue(subject);
56
52
  this.predicate = _nodeInternal.default.fromValue(predicate);
package/lib/store.d.ts CHANGED
@@ -233,7 +233,7 @@ export default class IndexedFormula extends Formula {
233
233
  */
234
234
  remove(st: Quad | Quad[]): IndexedFormula;
235
235
  /**
236
- * Removes all statements in a doc
236
+ * Removes all statements in a doc, along with the related metadata including request/response
237
237
  * @param doc - The document / graph
238
238
  */
239
239
  removeDocument(doc: Quad_Graph): IndexedFormula;
package/lib/store.js CHANGED
@@ -40,10 +40,24 @@ function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol
40
40
  function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
41
41
  function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
42
42
  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
43
- function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
43
+ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } } /* Identity management and indexing for RDF
44
+ *
45
+ * This file provides IndexedFormula a formula (set of triples) which
46
+ * indexed by predicate, subject and object.
47
+ *
48
+ * It "smushes" (merges into a single node) things which are identical
49
+ * according to owl:sameAs or an owl:InverseFunctionalProperty
50
+ * or an owl:FunctionalProperty
51
+ *
52
+ *
53
+ * 2005-10 Written Tim Berners-Lee
54
+ * 2007 Changed so as not to munge statements from documents when smushing
55
+ * 2019 Converted to typescript
56
+ *
57
+ *
58
+ */ /** @module store */
44
59
  var owlNamespaceURI = 'http://www.w3.org/2002/07/owl#';
45
60
  // var link_ns = 'http://www.w3.org/2007/ont/link#'
46
-
47
61
  // Handle Functional Property
48
62
  function handleFP(formula, subj, pred, obj) {
49
63
  var o1 = formula.any(subj, pred, undefined);
@@ -87,37 +101,6 @@ function handleRDFType(formula, subj, pred, obj, why) {
87
101
  var IndexedFormula = /*#__PURE__*/function (_Formula) {
88
102
  (0, _inherits2.default)(IndexedFormula, _Formula);
89
103
  var _super = _createSuper(IndexedFormula);
90
- // IN future - allow pass array of statements to constructor
91
- /**
92
- * An UpdateManager initialised to this store
93
- */
94
-
95
- /**
96
- * Dictionary of namespace prefixes
97
- */
98
-
99
- /** Map of iri predicates to functions to call when adding { s type X } */
100
-
101
- /** Map of iri predicates to functions to call when getting statement with {s X o} */
102
-
103
- /** Redirect to lexically smaller equivalent symbol */
104
-
105
- /** Reverse mapping to redirection: aliases for this */
106
-
107
- /** Redirections we got from HTTP */
108
-
109
- /** Array of statements with this X as subject */
110
-
111
- /** Array of statements with this X as predicate */
112
-
113
- /** Array of statements with this X as object */
114
-
115
- /** Array of statements with X as provenance */
116
-
117
- /** Function to remove quads from the store arrays with */
118
-
119
- /** Callbacks which are triggered after a statement has been added to the store */
120
-
121
104
  /**
122
105
  * Creates a new formula
123
106
  * @param features - What sort of automatic processing to do? Array of string
@@ -132,22 +115,40 @@ var IndexedFormula = /*#__PURE__*/function (_Formula) {
132
115
  var opts = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
133
116
  (0, _classCallCheck2.default)(this, IndexedFormula);
134
117
  _this = _super.call(this, undefined, undefined, undefined, undefined, opts);
118
+ // IN future - allow pass array of statements to constructor
119
+ /**
120
+ * An UpdateManager initialised to this store
121
+ */
135
122
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "updater", void 0);
123
+ /**
124
+ * Dictionary of namespace prefixes
125
+ */
136
126
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "namespaces", void 0);
127
+ /** Map of iri predicates to functions to call when adding { s type X } */
137
128
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "classActions", void 0);
129
+ /** Map of iri predicates to functions to call when getting statement with {s X o} */
138
130
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "propertyActions", void 0);
131
+ /** Redirect to lexically smaller equivalent symbol */
139
132
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "redirections", void 0);
133
+ /** Reverse mapping to redirection: aliases for this */
140
134
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "aliases", void 0);
135
+ /** Redirections we got from HTTP */
141
136
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "HTTPRedirects", void 0);
137
+ /** Array of statements with this X as subject */
142
138
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "subjectIndex", void 0);
139
+ /** Array of statements with this X as predicate */
143
140
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "predicateIndex", void 0);
141
+ /** Array of statements with this X as object */
144
142
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "objectIndex", void 0);
143
+ /** Array of statements with X as provenance */
145
144
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "whyIndex", void 0);
146
145
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "index", void 0);
147
146
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "features", void 0);
148
147
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "_universalVariables", void 0);
149
148
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "_existentialVariables", void 0);
149
+ /** Function to remove quads from the store arrays with */
150
150
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "rdfArrayRemove", void 0);
151
+ /** Callbacks which are triggered after a statement has been added to the store */
151
152
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "dataCallbacks", void 0);
152
153
  _this.propertyActions = {};
153
154
  _this.classActions = {};
@@ -827,12 +828,32 @@ var IndexedFormula = /*#__PURE__*/function (_Formula) {
827
828
  }
828
829
 
829
830
  /**
830
- * Removes all statements in a doc
831
+ * Removes all statements in a doc, along with the related metadata including request/response
831
832
  * @param doc - The document / graph
832
833
  */
833
834
  }, {
834
835
  key: "removeDocument",
835
836
  value: function removeDocument(doc) {
837
+ var meta = this.sym('chrome://TheCurrentSession'); // or this.rdfFactory.namedNode('chrome://TheCurrentSession')
838
+ var linkNamespaceURI = 'http://www.w3.org/2007/ont/link#'; // alain
839
+ // remove request/response and metadata
840
+ var requests = this.statementsMatching(undefined, this.sym("".concat(linkNamespaceURI, "requestedURI")), this.rdfFactory.literal(doc.value), meta).map(function (st) {
841
+ return st.subject;
842
+ });
843
+ for (var r = 0; r < requests.length; r++) {
844
+ var request = requests[r];
845
+ if (request !== undefined) {
846
+ this.removeMatches(request, null, null, meta);
847
+ var response = this.any(request, this.sym("".concat(linkNamespaceURI, "response")), null, meta);
848
+ if (response !== undefined) {
849
+ // ts
850
+ this.removeMatches(response, null, null, meta);
851
+ }
852
+ }
853
+ }
854
+ this.removeMatches(this.sym(doc.value), null, null, meta); // content-type
855
+
856
+ // remove document
836
857
  var sts = this.statementsMatching(undefined, undefined, undefined, doc).slice(); // Take a copy as this is the actual index
837
858
  for (var i = 0; i < sts.length; i++) {
838
859
  this.removeStatement(sts[i]);