@faubulous/mentor-rdf 0.1.18 → 0.1.20
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/out/rdf/property-repository.d.ts +5 -0
- package/out/rdf/property-repository.js +18 -0
- package/out/rdf/property-repository.js.map +1 -1
- package/package.json +1 -1
- package/out/rdf/parsing/rdf-syntax.d.ts +0 -11
- package/out/rdf/parsing/rdf-syntax.js +0 -16
- package/out/rdf/parsing/rdf-syntax.js.map +0 -1
- package/out/rdf/parsing/tokenizer.d.ts +0 -11
- package/out/rdf/parsing/tokenizer.js +0 -31
- package/out/rdf/parsing/tokenizer.js.map +0 -1
- package/out/rdf/parsing/trig-syntax-parser.d.ts +0 -10
- package/out/rdf/parsing/trig-syntax-parser.js +0 -26
- package/out/rdf/parsing/trig-syntax-parser.js.map +0 -1
- package/out/rdf/reasoning/owl-reasoner.d.ts +0 -9
- package/out/rdf/reasoning/owl-reasoner.js +0 -109
- package/out/rdf/reasoning/owl-reasoner.js.map +0 -1
- package/out/rdf/reasoning/rdfs-reasoner.d.ts +0 -12
- package/out/rdf/reasoning/rdfs-reasoner.js +0 -112
- package/out/rdf/reasoning/rdfs-reasoner.js.map +0 -1
- package/out/rdf/reasoning/reasoner.d.ts +0 -10
- package/out/rdf/reasoning/reasoner.js +0 -3
- package/out/rdf/reasoning/reasoner.js.map +0 -1
- package/out/rdf/test/ontologies/gist.d.ts +0 -1067
- package/out/rdf/test/ontologies/gist.js +0 -1072
- package/out/rdf/test/ontologies/gist.js.map +0 -1
- package/out/rdf/test/ontologies/index.d.ts +0 -2
- package/out/rdf/test/ontologies/index.js +0 -6
- package/out/rdf/test/ontologies/index.js.map +0 -1
- package/out/rdf/test/ontologies/schema.d.ts +0 -12075
- package/out/rdf/test/ontologies/schema.js +0 -12080
- package/out/rdf/test/ontologies/schema.js.map +0 -1
|
@@ -91,5 +91,10 @@ export declare class PropertyRepository extends ResourceRepository {
|
|
|
91
91
|
* @returns The URI of the range of the given property. If no range is specified, rdfs:Resource is returned.
|
|
92
92
|
*/
|
|
93
93
|
getRange(uri: string): string;
|
|
94
|
+
/**
|
|
95
|
+
* Get all asserted and inferred property types.
|
|
96
|
+
* @returns A list of all property types in the repository.
|
|
97
|
+
*/
|
|
98
|
+
getPropertyTypes(): string[];
|
|
94
99
|
}
|
|
95
100
|
export {};
|
|
@@ -192,6 +192,24 @@ class PropertyRepository extends resource_repository_1.ResourceRepository {
|
|
|
192
192
|
}
|
|
193
193
|
return ontologies_1.rdfs.Resource.value;
|
|
194
194
|
}
|
|
195
|
+
/**
|
|
196
|
+
* Get all asserted and inferred property types.
|
|
197
|
+
* @returns A list of all property types in the repository.
|
|
198
|
+
*/
|
|
199
|
+
getPropertyTypes() {
|
|
200
|
+
const result = new Set();
|
|
201
|
+
for (let p of this.getProperties().map(p => new n3.NamedNode(p))) {
|
|
202
|
+
const types = new Set(Array.from(this.store.match(p, ontologies_1.rdf.type, null)).map(t => t.object.value));
|
|
203
|
+
for (let t of types) {
|
|
204
|
+
// Do not assert rdf:Property for properties that have multiple types.
|
|
205
|
+
if (t == ontologies_1.rdf.Property.value && types.size > 1) {
|
|
206
|
+
continue;
|
|
207
|
+
}
|
|
208
|
+
result.add(t);
|
|
209
|
+
}
|
|
210
|
+
}
|
|
211
|
+
return Array.from(result);
|
|
212
|
+
}
|
|
195
213
|
}
|
|
196
214
|
exports.PropertyRepository = PropertyRepository;
|
|
197
215
|
//# sourceMappingURL=property-repository.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"property-repository.js","sourceRoot":"","sources":["../../src/rdf/property-repository.ts"],"names":[],"mappings":";;;;AAAA,+CAAyB;AAEzB,8CAA+C;AAC/C,+DAA2D;AAc3D;;GAEG;AACH,MAAa,kBAAmB,SAAQ,wCAAkB;IAWtD,YAAY,KAAe;QAAI,KAAK,CAAC,KAAK,CAAC,CAAC;QAV5C;;WAEG;QACI,oBAAe,GAAG,iBAAI,CAAC,MAAM,CAAC;QAErC;;WAEG;QACI,mBAAc,GAAG,iBAAI,CAAC,KAAK,CAAC;IAEU,CAAC;IAEtC,KAAK,CAAC,IAAwC,EAAE,OAAkC;QACtF,IAAI,IAAI,CAAC,QAAQ,IAAI,WAAW,EAAE;YAC9B,OAAO,IAAI,CAAC;SACf;QAED,IAAI,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,SAAS,MAAI,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,MAAM,CAAA,EAAE;YACvC,MAAM,CAAC,GAAG,EAAE,CAAC,WAAW,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC/C,MAAM,CAAC,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,WAAW,CAAC,SAAS,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YACtF,MAAM,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,WAAW,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YAEhF,
|
|
1
|
+
{"version":3,"file":"property-repository.js","sourceRoot":"","sources":["../../src/rdf/property-repository.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.RdfSyntax = void 0;
|
|
4
|
-
var RdfSyntax;
|
|
5
|
-
(function (RdfSyntax) {
|
|
6
|
-
RdfSyntax["N3"] = "n3";
|
|
7
|
-
RdfSyntax["NTriples"] = "ntriples";
|
|
8
|
-
RdfSyntax["NQuads"] = "nquads";
|
|
9
|
-
RdfSyntax["Turtle"] = "turtle";
|
|
10
|
-
RdfSyntax["TriG"] = "trig";
|
|
11
|
-
RdfSyntax["TriX"] = "trix";
|
|
12
|
-
RdfSyntax["JsonLd"] = "jsonld";
|
|
13
|
-
RdfSyntax["RdfXml"] = "rdfxml";
|
|
14
|
-
RdfSyntax["Sparql"] = "sparql";
|
|
15
|
-
})(RdfSyntax || (exports.RdfSyntax = RdfSyntax = {}));
|
|
16
|
-
//# sourceMappingURL=rdf-syntax.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"rdf-syntax.js","sourceRoot":"","sources":["../../../src/rdf/parsing/rdf-syntax.ts"],"names":[],"mappings":";;;AAAA,IAAY,SAUX;AAVD,WAAY,SAAS;IACjB,sBAAS,CAAA;IACT,kCAAqB,CAAA;IACrB,8BAAiB,CAAA;IACjB,8BAAiB,CAAA;IACjB,0BAAa,CAAA;IACb,0BAAa,CAAA;IACb,8BAAiB,CAAA;IACjB,8BAAiB,CAAA;IACjB,8BAAiB,CAAA;AACrB,CAAC,EAVW,SAAS,yBAAT,SAAS,QAUpB"}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { IRecognitionException } from "chevrotain";
|
|
2
|
-
import { IToken } from "millan";
|
|
3
|
-
import { RdfSyntax } from "./rdf-syntax";
|
|
4
|
-
export interface TokenizerResult {
|
|
5
|
-
tokens: IToken[];
|
|
6
|
-
syntaxErrors: IRecognitionException[];
|
|
7
|
-
semanticErrors: IRecognitionException[];
|
|
8
|
-
}
|
|
9
|
-
export declare class Tokenizer {
|
|
10
|
-
static parseData(data: string, syntax: RdfSyntax): Promise<TokenizerResult>;
|
|
11
|
-
}
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.Tokenizer = void 0;
|
|
4
|
-
const tslib_1 = require("tslib");
|
|
5
|
-
const millan_1 = require("millan");
|
|
6
|
-
const rdf_syntax_1 = require("./rdf-syntax");
|
|
7
|
-
const trig_syntax_parser_1 = require("./trig-syntax-parser");
|
|
8
|
-
class Tokenizer {
|
|
9
|
-
// static async parseFile(filePath: string, syntax: RdfSyntax): Promise<TokenizerResult> {
|
|
10
|
-
// const data = fs.readFileSync(filePath).toString();
|
|
11
|
-
// return this.parseData(data, syntax);
|
|
12
|
-
// }
|
|
13
|
-
static parseData(data, syntax) {
|
|
14
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
15
|
-
if (syntax === rdf_syntax_1.RdfSyntax.Sparql) {
|
|
16
|
-
const parser = new millan_1.W3SpecSparqlParser();
|
|
17
|
-
const { errors, comments } = parser.parse(data);
|
|
18
|
-
const tokens = comments ? [...parser.input, ...comments] : parser.input;
|
|
19
|
-
return { tokens, syntaxErrors: errors, semanticErrors: [] };
|
|
20
|
-
}
|
|
21
|
-
else {
|
|
22
|
-
const parser = new trig_syntax_parser_1.TrigSyntaxParser();
|
|
23
|
-
const { errors, semanticErrors, comments } = parser.parse(data);
|
|
24
|
-
const tokens = [...parser.input, ...comments];
|
|
25
|
-
return { tokens, syntaxErrors: errors, semanticErrors };
|
|
26
|
-
}
|
|
27
|
-
});
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
exports.Tokenizer = Tokenizer;
|
|
31
|
-
//# sourceMappingURL=tokenizer.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tokenizer.js","sourceRoot":"","sources":["../../../src/rdf/parsing/tokenizer.ts"],"names":[],"mappings":";;;;AAEA,mCAAoD;AACpD,6CAAyC;AACzC,6DAAwD;AAQxD,MAAa,SAAS;IAClB,0FAA0F;IAC1F,yDAAyD;IAEzD,2CAA2C;IAE3C,IAAI;IAEJ,MAAM,CAAO,SAAS,CAAC,IAAY,EAAE,MAAiB;;YAClD,IAAI,MAAM,KAAK,sBAAS,CAAC,MAAM,EAAE;gBAC7B,MAAM,MAAM,GAAG,IAAI,2BAAkB,EAAE,CAAC;gBAExC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBAChD,MAAM,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,KAAK,EAAE,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;gBAExE,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,cAAc,EAAE,EAAE,EAAE,CAAC;aAC/D;iBAAM;gBACH,MAAM,MAAM,GAAG,IAAI,qCAAgB,EAAE,CAAC;gBAEtC,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,QAAQ,EAAE,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBAChE,MAAM,MAAM,GAAG,CAAC,GAAG,MAAM,CAAC,KAAK,EAAE,GAAG,QAAQ,CAAC,CAAC;gBAE9C,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,cAAc,EAAE,CAAC;aAC3D;QACL,CAAC;KAAA;CACJ;AAzBD,8BAyBC"}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import { IRecognitionException, IToken } from "chevrotain";
|
|
2
|
-
import { TrigParser } from "millan";
|
|
3
|
-
export declare class TrigSyntaxParser extends TrigParser {
|
|
4
|
-
parse: (document: string) => {
|
|
5
|
-
errors: IRecognitionException[];
|
|
6
|
-
semanticErrors: IRecognitionException[];
|
|
7
|
-
comments: IToken[];
|
|
8
|
-
cst: any;
|
|
9
|
-
};
|
|
10
|
-
}
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.TrigSyntaxParser = void 0;
|
|
4
|
-
const millan_1 = require("millan");
|
|
5
|
-
class TrigSyntaxParser extends millan_1.TrigParser {
|
|
6
|
-
constructor() {
|
|
7
|
-
super(...arguments);
|
|
8
|
-
this.parse = (document) => {
|
|
9
|
-
const result = this.lexer.tokenize(document);
|
|
10
|
-
this.input = result.tokens;
|
|
11
|
-
const cst = this.turtleDoc(0, ['standard']);
|
|
12
|
-
const errors = [...this.errors];
|
|
13
|
-
const semanticErrors = [...this.semanticErrors];
|
|
14
|
-
const comments = result.groups.comments || [];
|
|
15
|
-
this.resetManagedState();
|
|
16
|
-
return {
|
|
17
|
-
errors,
|
|
18
|
-
semanticErrors,
|
|
19
|
-
comments,
|
|
20
|
-
cst,
|
|
21
|
-
};
|
|
22
|
-
};
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
exports.TrigSyntaxParser = TrigSyntaxParser;
|
|
26
|
-
//# sourceMappingURL=trig-syntax-parser.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"trig-syntax-parser.js","sourceRoot":"","sources":["../../../src/rdf/parsing/trig-syntax-parser.ts"],"names":[],"mappings":";;;AACA,mCAAoC;AAEpC,MAAa,gBAAiB,SAAQ,mBAAU;IAAhD;;QACW,UAAK,GAAG,CAAC,QAAgB,EAK9B,EAAE;YACA,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YAE7C,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC;YAE3B,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;YAC5C,MAAM,MAAM,GAA4B,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;YACzD,MAAM,cAAc,GAA4B,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC,CAAC;YACzE,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,QAAQ,IAAI,EAAE,CAAC;YAE9C,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAEzB,OAAO;gBACH,MAAM;gBACN,cAAc;gBACd,QAAQ;gBACR,GAAG;aACN,CAAC;QACN,CAAC,CAAC;IACN,CAAC;CAAA;AAzBD,4CAyBC"}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import * as n3 from "n3";
|
|
2
|
-
import { RdfsReasoner } from "./rdfs-reasoner";
|
|
3
|
-
/**
|
|
4
|
-
* A simple OWL reasoner that expands the graph with inferred triples.
|
|
5
|
-
*/
|
|
6
|
-
export declare class OwlReasoner extends RdfsReasoner {
|
|
7
|
-
protected inferClassAxioms(store: n3.Store, targetGraph: n3.Quad_Graph, lists: Record<string, n3.Term[]>, quad: n3.Quad): void;
|
|
8
|
-
protected inferPropertyAxioms(store: n3.Store, targetGraph: n3.Quad_Graph, lists: Record<string, n3.Term[]>, quad: n3.Quad): void;
|
|
9
|
-
}
|
|
@@ -1,109 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.OwlReasoner = void 0;
|
|
4
|
-
const ontologies_1 = require("../../ontologies");
|
|
5
|
-
const rdfs_reasoner_1 = require("./rdfs-reasoner");
|
|
6
|
-
/**
|
|
7
|
-
* A simple OWL reasoner that expands the graph with inferred triples.
|
|
8
|
-
*/
|
|
9
|
-
class OwlReasoner extends rdfs_reasoner_1.RdfsReasoner {
|
|
10
|
-
inferClassAxioms(store, targetGraph, lists, quad) {
|
|
11
|
-
super.inferClassAxioms(store, targetGraph, lists, quad);
|
|
12
|
-
let s = quad.subject;
|
|
13
|
-
let p = quad.predicate;
|
|
14
|
-
let o = quad.object.termType != "Literal" ? quad.object : undefined;
|
|
15
|
-
if (!o) {
|
|
16
|
-
return;
|
|
17
|
-
}
|
|
18
|
-
// See: https://www.w3.org/TR/owl2-profiles/#Reasoning_in_OWL_2_RL_and_RDF_Graphs_using_Rules
|
|
19
|
-
switch (p.id) {
|
|
20
|
-
case ontologies_1.owl.equivalentClass.id:
|
|
21
|
-
case ontologies_1.owl.complementOf.id:
|
|
22
|
-
case ontologies_1.owl.disjointWith.id: {
|
|
23
|
-
store.addQuad(s, ontologies_1.rdf.type, ontologies_1.rdfs.Class, targetGraph);
|
|
24
|
-
if (o && !o.value.startsWith("http://www.w3.org")) {
|
|
25
|
-
store.addQuad(o, ontologies_1.rdf.type, ontologies_1.rdfs.Class, targetGraph);
|
|
26
|
-
}
|
|
27
|
-
// The opposite is also true.
|
|
28
|
-
if (o.termType == "NamedNode") {
|
|
29
|
-
store.addQuad(o, ontologies_1.owl.equivalentClass, s, targetGraph);
|
|
30
|
-
}
|
|
31
|
-
break;
|
|
32
|
-
}
|
|
33
|
-
case ontologies_1.owl.intersectionOf.id: {
|
|
34
|
-
let equivalentSubjects = [...store.match(null, ontologies_1.owl.equivalentClass, s)]
|
|
35
|
-
.map(q => q.subject)
|
|
36
|
-
.filter(q => q.termType == "NamedNode");
|
|
37
|
-
// Rule #scm-int
|
|
38
|
-
for (let c of lists[o.value]) {
|
|
39
|
-
if (c.termType != "NamedNode") {
|
|
40
|
-
continue;
|
|
41
|
-
}
|
|
42
|
-
store.addQuad(s, ontologies_1.rdfs.subClassOf, c, targetGraph);
|
|
43
|
-
for (let es of equivalentSubjects) {
|
|
44
|
-
store.addQuad(es, ontologies_1.rdfs.subClassOf, c, targetGraph);
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
break;
|
|
48
|
-
}
|
|
49
|
-
case ontologies_1.owl.unionOf.id: {
|
|
50
|
-
let equivalentSubjects = [...store.match(null, ontologies_1.owl.equivalentClass, s)]
|
|
51
|
-
.map(q => q.subject)
|
|
52
|
-
.filter(q => q.termType == "NamedNode");
|
|
53
|
-
// Rule #scm-uni
|
|
54
|
-
for (let c of lists[o.value]) {
|
|
55
|
-
if (c.termType != "NamedNode") {
|
|
56
|
-
continue;
|
|
57
|
-
}
|
|
58
|
-
store.addQuad(c, ontologies_1.rdfs.subClassOf, s, targetGraph);
|
|
59
|
-
for (let es of equivalentSubjects) {
|
|
60
|
-
store.addQuad(c, ontologies_1.rdfs.subClassOf, es, targetGraph);
|
|
61
|
-
}
|
|
62
|
-
}
|
|
63
|
-
break;
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
}
|
|
67
|
-
inferPropertyAxioms(store, targetGraph, lists, quad) {
|
|
68
|
-
super.inferPropertyAxioms(store, targetGraph, lists, quad);
|
|
69
|
-
let s = quad.subject;
|
|
70
|
-
let p = quad.predicate;
|
|
71
|
-
let o = quad.object.termType != "Literal" ? quad.object : undefined;
|
|
72
|
-
if (!o) {
|
|
73
|
-
return;
|
|
74
|
-
}
|
|
75
|
-
switch (p.id) {
|
|
76
|
-
case ontologies_1.owl.equivalentProperty.id: {
|
|
77
|
-
store.addQuad(s, ontologies_1.rdf.type, ontologies_1.rdf.Property, targetGraph);
|
|
78
|
-
store.addQuad(o, ontologies_1.rdf.type, ontologies_1.rdf.Property, targetGraph);
|
|
79
|
-
// The opposite is also true.
|
|
80
|
-
if (o.termType == "NamedNode") {
|
|
81
|
-
store.addQuad(o, ontologies_1.owl.equivalentProperty, s, targetGraph);
|
|
82
|
-
}
|
|
83
|
-
break;
|
|
84
|
-
}
|
|
85
|
-
case ontologies_1.rdf.type.id: {
|
|
86
|
-
switch (o.id) {
|
|
87
|
-
case ontologies_1.owl.AnnotationProperty.id:
|
|
88
|
-
case ontologies_1.owl.AsymmetricProperty.id:
|
|
89
|
-
case ontologies_1.owl.DatatypeProperty.id:
|
|
90
|
-
case ontologies_1.owl.DeprecatedProperty.id:
|
|
91
|
-
case ontologies_1.owl.FunctionalProperty.id:
|
|
92
|
-
case ontologies_1.owl.InverseFunctionalProperty.id:
|
|
93
|
-
case ontologies_1.owl.IrreflexiveProperty.id:
|
|
94
|
-
case ontologies_1.owl.ObjectProperty.id:
|
|
95
|
-
case ontologies_1.owl.OntologyProperty.id:
|
|
96
|
-
case ontologies_1.owl.ReflexiveProperty.id:
|
|
97
|
-
case ontologies_1.owl.SymmetricProperty.id:
|
|
98
|
-
case ontologies_1.owl.TransitiveProperty.id: {
|
|
99
|
-
store.addQuad(s, ontologies_1.rdf.type, ontologies_1.rdf.Property, targetGraph);
|
|
100
|
-
break;
|
|
101
|
-
}
|
|
102
|
-
}
|
|
103
|
-
break;
|
|
104
|
-
}
|
|
105
|
-
}
|
|
106
|
-
}
|
|
107
|
-
}
|
|
108
|
-
exports.OwlReasoner = OwlReasoner;
|
|
109
|
-
//# sourceMappingURL=owl-reasoner.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"owl-reasoner.js","sourceRoot":"","sources":["../../../src/rdf/reasoning/owl-reasoner.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import * as n3 from "n3";
|
|
2
|
-
import { IReasoner } from "./reasoner";
|
|
3
|
-
/**
|
|
4
|
-
* A simple RDFS reasoner that expands the graph with inferred triples.
|
|
5
|
-
*/
|
|
6
|
-
export declare class RdfsReasoner implements IReasoner {
|
|
7
|
-
expand(store: n3.Store, sourceGraph: string | n3.Quad_Graph, targetGraph: string | n3.Quad_Graph): n3.Store;
|
|
8
|
-
protected getGraphNode(graph: string | n3.Quad_Graph): n3.Quad_Graph;
|
|
9
|
-
protected inferClassAxioms(store: n3.Store, graph: n3.Quad_Graph, lists: Record<string, n3.Term[]>, quad: n3.Quad): void;
|
|
10
|
-
protected inferPropertyAxioms(store: n3.Store, targetGraph: n3.Quad_Graph, lists: Record<string, n3.Term[]>, quad: n3.Quad): void;
|
|
11
|
-
protected inferNamedIndividualAxioms(store: n3.Store, targetGraph: n3.Quad_Graph, lists: Record<string, n3.Term[]>, quad: n3.Quad): void;
|
|
12
|
-
}
|
|
@@ -1,112 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.RdfsReasoner = void 0;
|
|
4
|
-
const tslib_1 = require("tslib");
|
|
5
|
-
const n3 = tslib_1.__importStar(require("n3"));
|
|
6
|
-
const ontologies_1 = require("../../ontologies");
|
|
7
|
-
/**
|
|
8
|
-
* A simple RDFS reasoner that expands the graph with inferred triples.
|
|
9
|
-
*/
|
|
10
|
-
class RdfsReasoner {
|
|
11
|
-
expand(store, sourceGraph, targetGraph) {
|
|
12
|
-
let s = this.getGraphNode(sourceGraph);
|
|
13
|
-
let t = this.getGraphNode(targetGraph);
|
|
14
|
-
const lists = store.extractLists();
|
|
15
|
-
// Todo: Add the inferred triples to a new subgraph.
|
|
16
|
-
for (let q of store.match(null, null, null, s)) {
|
|
17
|
-
this.inferClassAxioms(store, t, lists, q);
|
|
18
|
-
this.inferPropertyAxioms(store, t, lists, q);
|
|
19
|
-
this.inferNamedIndividualAxioms(store, t, lists, q);
|
|
20
|
-
}
|
|
21
|
-
return store;
|
|
22
|
-
}
|
|
23
|
-
getGraphNode(graph) {
|
|
24
|
-
if (typeof graph == "string") {
|
|
25
|
-
return new n3.NamedNode(graph);
|
|
26
|
-
}
|
|
27
|
-
else {
|
|
28
|
-
return graph;
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
inferClassAxioms(store, graph, lists, quad) {
|
|
32
|
-
let s = quad.subject;
|
|
33
|
-
let p = quad.predicate;
|
|
34
|
-
let o = quad.object.termType != "Literal" ? quad.object : undefined;
|
|
35
|
-
if (!o) {
|
|
36
|
-
return;
|
|
37
|
-
}
|
|
38
|
-
switch (p.id) {
|
|
39
|
-
case ontologies_1.rdf.type.id: {
|
|
40
|
-
if (o.equals(ontologies_1.owl.Class)) {
|
|
41
|
-
store.addQuad(s, ontologies_1.rdf.type, ontologies_1.rdfs.Class, graph);
|
|
42
|
-
}
|
|
43
|
-
else if (!o.value.startsWith("http://www.w3.org")) {
|
|
44
|
-
store.addQuad(o, ontologies_1.rdf.type, ontologies_1.rdfs.Class, graph);
|
|
45
|
-
}
|
|
46
|
-
break;
|
|
47
|
-
}
|
|
48
|
-
case ontologies_1.rdfs.subClassOf.id: {
|
|
49
|
-
store.addQuad(s, ontologies_1.rdf.type, ontologies_1.rdfs.Class, graph);
|
|
50
|
-
if (!o.value.startsWith("http://www.w3.org")) {
|
|
51
|
-
store.addQuad(o, ontologies_1.rdf.type, ontologies_1.rdfs.Class, graph);
|
|
52
|
-
}
|
|
53
|
-
else if (o.equals(ontologies_1.rdfs.Resource)) {
|
|
54
|
-
store.addQuad(ontologies_1.rdfs.Resource, ontologies_1.rdf.type, ontologies_1.rdfs.Class, graph);
|
|
55
|
-
}
|
|
56
|
-
else if (o.equals(ontologies_1.rdfs.Class)) {
|
|
57
|
-
store.addQuad(ontologies_1.rdfs.Class, ontologies_1.rdf.type, ontologies_1.rdfs.Class, graph);
|
|
58
|
-
store.addQuad(ontologies_1.rdfs.Class, ontologies_1.rdfs.subClassOf, ontologies_1.rdfs.Resource, graph);
|
|
59
|
-
}
|
|
60
|
-
else if (o.equals(ontologies_1.rdfs.Datatype)) {
|
|
61
|
-
store.addQuad(ontologies_1.rdfs.Datatype, ontologies_1.rdf.type, ontologies_1.rdfs.Class, graph);
|
|
62
|
-
store.addQuad(ontologies_1.rdfs.Datatype, ontologies_1.rdfs.subClassOf, ontologies_1.rdfs.Class, graph);
|
|
63
|
-
}
|
|
64
|
-
else if (o.equals(ontologies_1.owl.Class)) {
|
|
65
|
-
store.addQuad(ontologies_1.owl.Class, ontologies_1.rdf.type, ontologies_1.rdfs.Class, graph);
|
|
66
|
-
store.addQuad(ontologies_1.owl.Class, ontologies_1.rdfs.subClassOf, ontologies_1.rdfs.Class, graph);
|
|
67
|
-
}
|
|
68
|
-
break;
|
|
69
|
-
}
|
|
70
|
-
case ontologies_1.rdfs.range.id:
|
|
71
|
-
case ontologies_1.rdfs.domain.id: {
|
|
72
|
-
if (!o.value.startsWith("http://www.w3.org")) {
|
|
73
|
-
store.addQuad(o, ontologies_1.rdf.type, ontologies_1.rdfs.Class, graph);
|
|
74
|
-
}
|
|
75
|
-
break;
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
}
|
|
79
|
-
inferPropertyAxioms(store, targetGraph, lists, quad) {
|
|
80
|
-
let s = quad.subject;
|
|
81
|
-
let p = quad.predicate;
|
|
82
|
-
let o = quad.object.termType != "Literal" ? quad.object : undefined;
|
|
83
|
-
if (!o) {
|
|
84
|
-
return;
|
|
85
|
-
}
|
|
86
|
-
switch (p.id) {
|
|
87
|
-
case ontologies_1.rdfs.range.id:
|
|
88
|
-
case ontologies_1.rdfs.domain.id: {
|
|
89
|
-
store.addQuad(s, ontologies_1.rdf.type, ontologies_1.rdf.Property, targetGraph);
|
|
90
|
-
break;
|
|
91
|
-
}
|
|
92
|
-
}
|
|
93
|
-
}
|
|
94
|
-
inferNamedIndividualAxioms(store, targetGraph, lists, quad) {
|
|
95
|
-
let s = quad.subject;
|
|
96
|
-
let p = quad.predicate;
|
|
97
|
-
let o = quad.object.termType != "Literal" ? quad.object : undefined;
|
|
98
|
-
if (!o || o.equals(ontologies_1.rdfs.Class) || o.equals(ontologies_1.owl.Class)) {
|
|
99
|
-
return;
|
|
100
|
-
}
|
|
101
|
-
switch (p.id) {
|
|
102
|
-
case ontologies_1.rdf.type.id: {
|
|
103
|
-
for (let q of store.match(o, ontologies_1.rdf.type, ontologies_1.rdfs.Class)) {
|
|
104
|
-
store.addQuad(s, ontologies_1.rdf.type, ontologies_1.owl.NamedIndividual, targetGraph);
|
|
105
|
-
break;
|
|
106
|
-
}
|
|
107
|
-
}
|
|
108
|
-
}
|
|
109
|
-
}
|
|
110
|
-
}
|
|
111
|
-
exports.RdfsReasoner = RdfsReasoner;
|
|
112
|
-
//# sourceMappingURL=rdfs-reasoner.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"rdfs-reasoner.js","sourceRoot":"","sources":["../../../src/rdf/reasoning/rdfs-reasoner.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import * as n3 from 'n3';
|
|
2
|
-
export interface IReasoner {
|
|
3
|
-
/**
|
|
4
|
-
* Apply inference on the source graph and store the inferred triples in the target graph.
|
|
5
|
-
* @param store The store to be inferenced.
|
|
6
|
-
* @param sourceGraph The source graph where to find the triples to be inferenced.
|
|
7
|
-
* @param targetGraph The target graph where to store the inferred triples.
|
|
8
|
-
*/
|
|
9
|
-
expand(store: n3.Store, sourceGraph: string | n3.NamedNode, targetGraph: string | n3.NamedNode): n3.Store;
|
|
10
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"reasoner.js","sourceRoot":"","sources":["../../../src/rdf/reasoning/reasoner.ts"],"names":[],"mappings":""}
|