rdflib 2.2.26 → 2.2.27
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.
- package/dist/rdflib.min.js +1 -1
- package/dist/rdflib.min.js.map +1 -1
- package/esm/collection.js +3 -4
- package/esm/convert.js +60 -0
- package/esm/store.js +4 -4
- package/lib/collection.js +3 -4
- package/lib/convert.d.ts +2 -0
- package/lib/convert.js +71 -0
- package/lib/store.d.ts +1 -1
- package/lib/store.js +4 -4
- package/package.json +2 -2
- package/src/collection.ts +3 -3
- package/src/store.ts +5 -6
package/esm/collection.js
CHANGED
|
@@ -109,11 +109,10 @@ var Collection = /*#__PURE__*/function (_Node) {
|
|
|
109
109
|
}, {
|
|
110
110
|
key: "substitute",
|
|
111
111
|
value: function substitute(bindings) {
|
|
112
|
-
var
|
|
113
|
-
|
|
114
|
-
collection.append(ea.substitute(bindings));
|
|
112
|
+
var elementsCopy = this.elements.map(function (ea) {
|
|
113
|
+
return ea.substitute(bindings);
|
|
115
114
|
});
|
|
116
|
-
return
|
|
115
|
+
return new Collection(elementsCopy);
|
|
117
116
|
}
|
|
118
117
|
}, {
|
|
119
118
|
key: "toNT",
|
package/esm/convert.js
ADDED
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import asyncLib from 'async'; // @@ Goal: remove this dependency
|
|
2
|
+
import jsonld from 'jsonld';
|
|
3
|
+
import { Parser, Writer } from 'n3'; // @@ Goal: remove this dependency
|
|
4
|
+
|
|
5
|
+
export function convertToJson(n3String, jsonCallback) {
|
|
6
|
+
var jsonString;
|
|
7
|
+
var n3Parser = new Parser();
|
|
8
|
+
var n3Writer = new Writer({
|
|
9
|
+
format: 'N-Quads'
|
|
10
|
+
});
|
|
11
|
+
asyncLib.waterfall([function (callback) {
|
|
12
|
+
n3Parser.parse(n3String, function (error, quad, prefixes) {
|
|
13
|
+
if (error) {
|
|
14
|
+
callback(error);
|
|
15
|
+
} else if (quad !== null) {
|
|
16
|
+
n3Writer.addQuad(quad);
|
|
17
|
+
} else {
|
|
18
|
+
n3Writer.end(callback);
|
|
19
|
+
}
|
|
20
|
+
});
|
|
21
|
+
}, function (result, callback) {
|
|
22
|
+
try {
|
|
23
|
+
jsonld.fromRDF(result, {
|
|
24
|
+
format: 'application/nquads'
|
|
25
|
+
}).then(result => {
|
|
26
|
+
callback(null, result);
|
|
27
|
+
});
|
|
28
|
+
} catch (err) {
|
|
29
|
+
callback(err);
|
|
30
|
+
}
|
|
31
|
+
}, function (json, callback) {
|
|
32
|
+
jsonString = JSON.stringify(json);
|
|
33
|
+
jsonCallback(null, jsonString);
|
|
34
|
+
}], function (err, result) {
|
|
35
|
+
jsonCallback(err, jsonString);
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
export function convertToNQuads(n3String, nquadCallback) {
|
|
39
|
+
var nquadString;
|
|
40
|
+
var n3Parser = new Parser();
|
|
41
|
+
var n3Writer = new Writer({
|
|
42
|
+
format: 'N-Quads'
|
|
43
|
+
});
|
|
44
|
+
asyncLib.waterfall([function (callback) {
|
|
45
|
+
n3Parser.parse(n3String, function (error, triple, prefixes) {
|
|
46
|
+
if (error) {
|
|
47
|
+
callback(error);
|
|
48
|
+
} else if (quad !== null) {
|
|
49
|
+
n3Writer.addQuad(quad);
|
|
50
|
+
} else {
|
|
51
|
+
n3Writer.end(callback);
|
|
52
|
+
}
|
|
53
|
+
});
|
|
54
|
+
}, function (result, callback) {
|
|
55
|
+
nquadString = result;
|
|
56
|
+
nquadCallback(null, nquadString);
|
|
57
|
+
}], function (err, result) {
|
|
58
|
+
nquadCallback(err, nquadString);
|
|
59
|
+
});
|
|
60
|
+
}
|
package/esm/store.js
CHANGED
|
@@ -237,9 +237,9 @@ var IndexedFormula = /*#__PURE__*/function (_Formula) {
|
|
|
237
237
|
// console.log('ds before substitute: ' + ds)
|
|
238
238
|
if (binding) ds = ds.substitute(binding);
|
|
239
239
|
// console.log('applyPatch: delete: ' + ds)
|
|
240
|
-
|
|
240
|
+
ds = ds.statements;
|
|
241
241
|
var bad = [];
|
|
242
|
-
var ds2 = ds.
|
|
242
|
+
var ds2 = ds.map(function (st) {
|
|
243
243
|
// Find the actual statements in the store
|
|
244
244
|
var sts = targetKB.statementsMatching(st.subject, st.predicate, st.object, target);
|
|
245
245
|
if (sts.length === 0) {
|
|
@@ -264,7 +264,8 @@ var IndexedFormula = /*#__PURE__*/function (_Formula) {
|
|
|
264
264
|
// log.info("doPatch insert "+patch['insert'])
|
|
265
265
|
ds = patch['insert'];
|
|
266
266
|
if (binding) ds = ds.substitute(binding);
|
|
267
|
-
ds
|
|
267
|
+
ds = ds.statements;
|
|
268
|
+
ds.map(function (st) {
|
|
268
269
|
st.graph = target;
|
|
269
270
|
targetKB.add(st.subject, st.predicate, st.object, st.graph);
|
|
270
271
|
});
|
|
@@ -281,7 +282,6 @@ var IndexedFormula = /*#__PURE__*/function (_Formula) {
|
|
|
281
282
|
//@ts-ignore TODO: add sync property to Query when converting Query to typescript
|
|
282
283
|
query.sync = true;
|
|
283
284
|
var bindingsFound = [];
|
|
284
|
-
query.pat.initBindings = [];
|
|
285
285
|
targetKB.query(query, function onBinding(binding) {
|
|
286
286
|
bindingsFound.push(binding);
|
|
287
287
|
// console.log(' got a binding: ' + bindingDebug(binding))
|
package/lib/collection.js
CHANGED
|
@@ -117,11 +117,10 @@ var Collection = /*#__PURE__*/function (_Node) {
|
|
|
117
117
|
}, {
|
|
118
118
|
key: "substitute",
|
|
119
119
|
value: function substitute(bindings) {
|
|
120
|
-
var
|
|
121
|
-
|
|
122
|
-
collection.append(ea.substitute(bindings));
|
|
120
|
+
var elementsCopy = this.elements.map(function (ea) {
|
|
121
|
+
return ea.substitute(bindings);
|
|
123
122
|
});
|
|
124
|
-
return
|
|
123
|
+
return new Collection(elementsCopy);
|
|
125
124
|
}
|
|
126
125
|
}, {
|
|
127
126
|
key: "toNT",
|
package/lib/convert.d.ts
ADDED
package/lib/convert.js
ADDED
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.convertToJson = convertToJson;
|
|
8
|
+
exports.convertToNQuads = convertToNQuads;
|
|
9
|
+
var _async = _interopRequireDefault(require("async"));
|
|
10
|
+
var _jsonld = _interopRequireDefault(require("jsonld"));
|
|
11
|
+
var _n = require("n3");
|
|
12
|
+
// @@ Goal: remove this dependency
|
|
13
|
+
|
|
14
|
+
// @@ Goal: remove this dependency
|
|
15
|
+
|
|
16
|
+
function convertToJson(n3String, jsonCallback) {
|
|
17
|
+
var jsonString;
|
|
18
|
+
var n3Parser = new _n.Parser();
|
|
19
|
+
var n3Writer = new _n.Writer({
|
|
20
|
+
format: 'N-Quads'
|
|
21
|
+
});
|
|
22
|
+
_async.default.waterfall([function (callback) {
|
|
23
|
+
n3Parser.parse(n3String, function (error, quad, prefixes) {
|
|
24
|
+
if (error) {
|
|
25
|
+
callback(error);
|
|
26
|
+
} else if (quad !== null) {
|
|
27
|
+
n3Writer.addQuad(quad);
|
|
28
|
+
} else {
|
|
29
|
+
n3Writer.end(callback);
|
|
30
|
+
}
|
|
31
|
+
});
|
|
32
|
+
}, function (result, callback) {
|
|
33
|
+
try {
|
|
34
|
+
_jsonld.default.fromRDF(result, {
|
|
35
|
+
format: 'application/nquads'
|
|
36
|
+
}).then(result => {
|
|
37
|
+
callback(null, result);
|
|
38
|
+
});
|
|
39
|
+
} catch (err) {
|
|
40
|
+
callback(err);
|
|
41
|
+
}
|
|
42
|
+
}, function (json, callback) {
|
|
43
|
+
jsonString = JSON.stringify(json);
|
|
44
|
+
jsonCallback(null, jsonString);
|
|
45
|
+
}], function (err, result) {
|
|
46
|
+
jsonCallback(err, jsonString);
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
function convertToNQuads(n3String, nquadCallback) {
|
|
50
|
+
var nquadString;
|
|
51
|
+
var n3Parser = new _n.Parser();
|
|
52
|
+
var n3Writer = new _n.Writer({
|
|
53
|
+
format: 'N-Quads'
|
|
54
|
+
});
|
|
55
|
+
_async.default.waterfall([function (callback) {
|
|
56
|
+
n3Parser.parse(n3String, function (error, triple, prefixes) {
|
|
57
|
+
if (error) {
|
|
58
|
+
callback(error);
|
|
59
|
+
} else if (quad !== null) {
|
|
60
|
+
n3Writer.addQuad(quad);
|
|
61
|
+
} else {
|
|
62
|
+
n3Writer.end(callback);
|
|
63
|
+
}
|
|
64
|
+
});
|
|
65
|
+
}, function (result, callback) {
|
|
66
|
+
nquadString = result;
|
|
67
|
+
nquadCallback(null, nquadString);
|
|
68
|
+
}], function (err, result) {
|
|
69
|
+
nquadCallback(err, nquadString);
|
|
70
|
+
});
|
|
71
|
+
}
|
package/lib/store.d.ts
CHANGED
|
@@ -95,7 +95,7 @@ export default class IndexedFormula extends Formula {
|
|
|
95
95
|
*/
|
|
96
96
|
applyPatch(patch: {
|
|
97
97
|
delete?: ReadonlyArray<Statement>;
|
|
98
|
-
|
|
98
|
+
patch?: ReadonlyArray<Statement>;
|
|
99
99
|
where?: any;
|
|
100
100
|
}, target: TFNamedNode, patchCallback: (errorString?: string) => void): void;
|
|
101
101
|
/**
|
package/lib/store.js
CHANGED
|
@@ -226,9 +226,9 @@ var IndexedFormula = /*#__PURE__*/function (_Formula) {
|
|
|
226
226
|
// console.log('ds before substitute: ' + ds)
|
|
227
227
|
if (binding) ds = ds.substitute(binding);
|
|
228
228
|
// console.log('applyPatch: delete: ' + ds)
|
|
229
|
-
|
|
229
|
+
ds = ds.statements;
|
|
230
230
|
var bad = [];
|
|
231
|
-
var ds2 = ds.
|
|
231
|
+
var ds2 = ds.map(function (st) {
|
|
232
232
|
// Find the actual statements in the store
|
|
233
233
|
var sts = targetKB.statementsMatching(st.subject, st.predicate, st.object, target);
|
|
234
234
|
if (sts.length === 0) {
|
|
@@ -253,7 +253,8 @@ var IndexedFormula = /*#__PURE__*/function (_Formula) {
|
|
|
253
253
|
// log.info("doPatch insert "+patch['insert'])
|
|
254
254
|
ds = patch['insert'];
|
|
255
255
|
if (binding) ds = ds.substitute(binding);
|
|
256
|
-
ds
|
|
256
|
+
ds = ds.statements;
|
|
257
|
+
ds.map(function (st) {
|
|
257
258
|
st.graph = target;
|
|
258
259
|
targetKB.add(st.subject, st.predicate, st.object, st.graph);
|
|
259
260
|
});
|
|
@@ -270,7 +271,6 @@ var IndexedFormula = /*#__PURE__*/function (_Formula) {
|
|
|
270
271
|
//@ts-ignore TODO: add sync property to Query when converting Query to typescript
|
|
271
272
|
query.sync = true;
|
|
272
273
|
var bindingsFound = [];
|
|
273
|
-
query.pat.initBindings = [];
|
|
274
274
|
targetKB.query(query, function onBinding(binding) {
|
|
275
275
|
bindingsFound.push(binding);
|
|
276
276
|
// console.log(' got a binding: ' + bindingDebug(binding))
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "rdflib",
|
|
3
3
|
"description": "an RDF library for node.js. Suitable for client and server side.",
|
|
4
|
-
"version": "2.2.
|
|
4
|
+
"version": "2.2.27",
|
|
5
5
|
"private": false,
|
|
6
6
|
"browserslist": [
|
|
7
7
|
"> 0.5%"
|
|
@@ -94,7 +94,7 @@
|
|
|
94
94
|
"build:types": "tsc --emitDeclarationOnly -d --moduleResolution node --declarationDir lib",
|
|
95
95
|
"build:all": "npm run build && npm run build:types && npm run build:browser && npm run build:esm",
|
|
96
96
|
"doc": "typedoc --out ./doc ./src/index.ts --excludePrivate --excludeInternal --tsconfig ./tsconfig.json",
|
|
97
|
-
"
|
|
97
|
+
"prepublishOnly": "npm ci && npm run build:all && npm run doc && npm run test",
|
|
98
98
|
"postversion": "git push --follow-tags",
|
|
99
99
|
"start": "webpack serve --port 4800",
|
|
100
100
|
"test": "npm run test:unit && npm run test:serialize && npm run test:types",
|
package/src/collection.ts
CHANGED
|
@@ -102,9 +102,9 @@ export default class Collection<
|
|
|
102
102
|
* @param bindings - The bindings to substitute
|
|
103
103
|
*/
|
|
104
104
|
substitute (bindings: Bindings) {
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
return
|
|
105
|
+
const elementsCopy = this.elements.map((ea) => ea.substitute(bindings))
|
|
106
|
+
|
|
107
|
+
return new Collection(elementsCopy) as Collection<Node | Collection<any> | Literal | Variable>
|
|
108
108
|
}
|
|
109
109
|
|
|
110
110
|
toNT () {
|
package/src/store.ts
CHANGED
|
@@ -253,7 +253,7 @@ export default class IndexedFormula extends Formula { // IN future - allow pass
|
|
|
253
253
|
applyPatch(
|
|
254
254
|
patch: {
|
|
255
255
|
delete?: ReadonlyArray<Statement>,
|
|
256
|
-
|
|
256
|
+
patch?: ReadonlyArray<Statement>,
|
|
257
257
|
where?: any
|
|
258
258
|
},
|
|
259
259
|
target: TFNamedNode,
|
|
@@ -270,9 +270,9 @@ export default class IndexedFormula extends Formula { // IN future - allow pass
|
|
|
270
270
|
// console.log('ds before substitute: ' + ds)
|
|
271
271
|
if (binding) ds = ds.substitute(binding)
|
|
272
272
|
// console.log('applyPatch: delete: ' + ds)
|
|
273
|
-
|
|
273
|
+
ds = ds.statements as Statement[]
|
|
274
274
|
var bad: Quad[] = []
|
|
275
|
-
var ds2 = ds.
|
|
275
|
+
var ds2 = ds.map(function (st: Quad) { // Find the actual statements in the store
|
|
276
276
|
var sts = targetKB.statementsMatching(st.subject, st.predicate, st.object, target)
|
|
277
277
|
if (sts.length === 0) {
|
|
278
278
|
// log.info("NOT FOUND deletable " + st)
|
|
@@ -296,8 +296,8 @@ export default class IndexedFormula extends Formula { // IN future - allow pass
|
|
|
296
296
|
// log.info("doPatch insert "+patch['insert'])
|
|
297
297
|
ds = patch['insert']
|
|
298
298
|
if (binding) ds = ds.substitute(binding)
|
|
299
|
-
|
|
300
|
-
ds.
|
|
299
|
+
ds = ds.statements
|
|
300
|
+
ds.map(function (st: Quad) {
|
|
301
301
|
st.graph = target
|
|
302
302
|
targetKB.add(st.subject, st.predicate, st.object, st.graph)
|
|
303
303
|
})
|
|
@@ -315,7 +315,6 @@ export default class IndexedFormula extends Formula { // IN future - allow pass
|
|
|
315
315
|
query.sync = true
|
|
316
316
|
|
|
317
317
|
var bindingsFound: Bindings[] = []
|
|
318
|
-
query.pat.initBindings = [];
|
|
319
318
|
|
|
320
319
|
targetKB.query(
|
|
321
320
|
query,
|