@faubulous/mentor-rdf 0.2.30 → 0.2.31
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.js +12 -5
- package/out/rdf/property-repository.js.map +1 -1
- package/out/rdf/resource-repository.js +15 -4
- package/out/rdf/resource-repository.js.map +1 -1
- package/out/rdf/vocabulary-repository.d.ts +2 -1
- package/out/rdf/vocabulary-repository.js +20 -7
- package/out/rdf/vocabulary-repository.js.map +1 -1
- package/package.json +1 -1
|
@@ -219,14 +219,21 @@ class PropertyRepository extends class_repository_1.ClassRepository {
|
|
|
219
219
|
*/
|
|
220
220
|
getPropertyTypes(graphUris, options) {
|
|
221
221
|
const result = new Set();
|
|
222
|
-
|
|
222
|
+
const properties = this.getProperties(graphUris, options).map(p => new n3.NamedNode(p));
|
|
223
|
+
for (let p of properties) {
|
|
223
224
|
const types = new Set(Array.from(this.store.match(graphUris, p, ontologies_1.rdf.type, null, false)).map(t => t.object.value));
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
225
|
+
if (types.size > 0) {
|
|
226
|
+
for (let t of types) {
|
|
227
|
+
// Do not assert rdf:Property for properties that have multiple types.
|
|
228
|
+
if (t !== ontologies_1.RDF.Property || types.size == 1) {
|
|
229
|
+
result.add(t);
|
|
230
|
+
}
|
|
228
231
|
}
|
|
229
232
|
}
|
|
233
|
+
else {
|
|
234
|
+
// If there are no asserted types, we need to infer rdf:Property.
|
|
235
|
+
result.add(ontologies_1.RDF.Property);
|
|
236
|
+
}
|
|
230
237
|
}
|
|
231
238
|
return Array.from(result);
|
|
232
239
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"property-repository.js","sourceRoot":"","sources":["../../src/rdf/property-repository.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"property-repository.js","sourceRoot":"","sources":["../../src/rdf/property-repository.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,6 +4,7 @@ exports.ResourceRepository = void 0;
|
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
5
|
const n3 = tslib_1.__importStar(require("n3"));
|
|
6
6
|
const ontologies_1 = require("../ontologies");
|
|
7
|
+
const uri_1 = require("./uri");
|
|
7
8
|
/**
|
|
8
9
|
* A repository for retrieving resources from graphs.
|
|
9
10
|
*/
|
|
@@ -77,12 +78,22 @@ class ResourceRepository {
|
|
|
77
78
|
if (node.value.startsWith(definedBy)) {
|
|
78
79
|
return true;
|
|
79
80
|
}
|
|
80
|
-
|
|
81
|
-
//
|
|
82
|
-
//
|
|
83
|
-
|
|
81
|
+
// If the ontology is something like <http://purl.obolibrary.org/obo/bfo.owl> or <http://www.w3.org/ns/prov#>
|
|
82
|
+
// and the subject is <http://purl.obolibrary.org/obo/BFO_0000001> or <http://www.w3.org/ns/prov#Entity>
|
|
83
|
+
// then we assume that it is defined by the ontology. The OBO case shows that we need to remove the file
|
|
84
|
+
// name in oder to be able to compare the namespace URIs.
|
|
85
|
+
const ontologyNamespace = uri_1.Uri.getNormalizedUri(uri_1.Uri.getNamespaceUri(definedBy));
|
|
86
|
+
const subjectNamespace = uri_1.Uri.getNormalizedUri(uri_1.Uri.getNamespaceUri(node.value));
|
|
87
|
+
if (subjectNamespace === ontologyNamespace) {
|
|
84
88
|
return true;
|
|
85
89
|
}
|
|
90
|
+
const o = n3.DataFactory.namedNode(uri_1.Uri.getNormalizedUri(definedBy));
|
|
91
|
+
// The explicit annotation of the definition source has precedence over heuristic checks.
|
|
92
|
+
for (let q of this.store.match(graphUris, s, ontologies_1.rdfs.isDefinedBy, null)) {
|
|
93
|
+
if (uri_1.Uri.getNormalizedUri(q.object.value) === o.value) {
|
|
94
|
+
return true;
|
|
95
|
+
}
|
|
96
|
+
}
|
|
86
97
|
}
|
|
87
98
|
return false;
|
|
88
99
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resource-repository.js","sourceRoot":"","sources":["../../src/rdf/resource-repository.ts"],"names":[],"mappings":";;;;AAAA,+CAAyB;AAGzB,8CAAqC;
|
|
1
|
+
{"version":3,"file":"resource-repository.js","sourceRoot":"","sources":["../../src/rdf/resource-repository.ts"],"names":[],"mappings":"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"}
|
|
@@ -36,7 +36,8 @@ export declare class VocabularyRepository extends IndividualRepository {
|
|
|
36
36
|
getOntologyVersionInfo(graphUris: string | string[] | undefined, ontologyUri: string): string | undefined;
|
|
37
37
|
/**
|
|
38
38
|
* Get the sources of definitions for a given graph. These are ontology definitions
|
|
39
|
-
* or the objects of `rdfs:isDefinedBy` triples.
|
|
39
|
+
* or the objects of `rdfs:isDefinedBy` triples. If the rdfs:isDefinedBy object can be
|
|
40
|
+
* matched with an ontology definition, the ontology URI is returned.
|
|
40
41
|
* @param graphUris URIs of the graphs to search.
|
|
41
42
|
* @returns A list of sources of definitions for the given graph.
|
|
42
43
|
*/
|
|
@@ -5,6 +5,7 @@ const tslib_1 = require("tslib");
|
|
|
5
5
|
const n3 = tslib_1.__importStar(require("n3"));
|
|
6
6
|
const ontologies_1 = require("../ontologies");
|
|
7
7
|
const individual_repository_1 = require("./individual-repository");
|
|
8
|
+
const uri_1 = require("./uri");
|
|
8
9
|
/**
|
|
9
10
|
* A repository for retrieving ontologies and ontology concepts from graphs.
|
|
10
11
|
*/
|
|
@@ -78,12 +79,21 @@ class VocabularyRepository extends individual_repository_1.IndividualRepository
|
|
|
78
79
|
}
|
|
79
80
|
/**
|
|
80
81
|
* Get the sources of definitions for a given graph. These are ontology definitions
|
|
81
|
-
* or the objects of `rdfs:isDefinedBy` triples.
|
|
82
|
+
* or the objects of `rdfs:isDefinedBy` triples. If the rdfs:isDefinedBy object can be
|
|
83
|
+
* matched with an ontology definition, the ontology URI is returned.
|
|
82
84
|
* @param graphUris URIs of the graphs to search.
|
|
83
85
|
* @returns A list of sources of definitions for the given graph.
|
|
84
86
|
*/
|
|
85
87
|
getDefinitionSources(graphUris, includeOntologies = false) {
|
|
86
88
|
const result = new Set();
|
|
89
|
+
// Load all ontologies in the graph in a normalized form.
|
|
90
|
+
const ontologies = {};
|
|
91
|
+
// Store the normalized versions of the ontology URI so that we can detect
|
|
92
|
+
// equality even if different namespace seperators ('#' and '/') are used.
|
|
93
|
+
for (let o of this.getOntologies(graphUris)) {
|
|
94
|
+
const uri = uri_1.Uri.getNormalizedUri(o);
|
|
95
|
+
ontologies[uri] = o;
|
|
96
|
+
}
|
|
87
97
|
for (const q of this.store.match(graphUris, null, ontologies_1.rdfs.isDefinedBy, null)) {
|
|
88
98
|
const s = q.subject;
|
|
89
99
|
const o = q.object;
|
|
@@ -92,13 +102,16 @@ class VocabularyRepository extends individual_repository_1.IndividualRepository
|
|
|
92
102
|
}
|
|
93
103
|
// Do not include ontologies in the list of sources. However, if there are other
|
|
94
104
|
// terms defined by the object it will be included by subsequent iterations.
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
break;
|
|
99
|
-
}
|
|
105
|
+
const s_ = uri_1.Uri.getNormalizedUri(s.value);
|
|
106
|
+
const o_ = uri_1.Uri.getNormalizedUri(o.value);
|
|
107
|
+
let isOntology = s_ in ontologies;
|
|
100
108
|
if (!isOntology || includeOntologies) {
|
|
101
|
-
|
|
109
|
+
if (o_ in ontologies) {
|
|
110
|
+
result.add(ontologies[o_]);
|
|
111
|
+
}
|
|
112
|
+
else {
|
|
113
|
+
result.add(o.value);
|
|
114
|
+
}
|
|
102
115
|
}
|
|
103
116
|
}
|
|
104
117
|
return Array.from(result);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vocabulary-repository.js","sourceRoot":"","sources":["../../src/rdf/vocabulary-repository.ts"],"names":[],"mappings":";;;;AAAA,+CAAyB;AACzB,8CAAqD;AACrD,mEAA+D;
|
|
1
|
+
{"version":3,"file":"vocabulary-repository.js","sourceRoot":"","sources":["../../src/rdf/vocabulary-repository.ts"],"names":[],"mappings":"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"}
|