@nahisaho/musubix-ontology-mcp 1.0.0

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 (45) hide show
  1. package/dist/index.d.ts +12 -0
  2. package/dist/index.d.ts.map +1 -0
  3. package/dist/index.js +17 -0
  4. package/dist/index.js.map +1 -0
  5. package/dist/inference/index.d.ts +6 -0
  6. package/dist/inference/index.d.ts.map +1 -0
  7. package/dist/inference/index.js +6 -0
  8. package/dist/inference/index.js.map +1 -0
  9. package/dist/inference/rule-engine.d.ts +149 -0
  10. package/dist/inference/rule-engine.d.ts.map +1 -0
  11. package/dist/inference/rule-engine.js +478 -0
  12. package/dist/inference/rule-engine.js.map +1 -0
  13. package/dist/integration/index.d.ts +6 -0
  14. package/dist/integration/index.d.ts.map +1 -0
  15. package/dist/integration/index.js +6 -0
  16. package/dist/integration/index.js.map +1 -0
  17. package/dist/integration/pattern-bridge.d.ts +146 -0
  18. package/dist/integration/pattern-bridge.d.ts.map +1 -0
  19. package/dist/integration/pattern-bridge.js +517 -0
  20. package/dist/integration/pattern-bridge.js.map +1 -0
  21. package/dist/privacy/index.d.ts +6 -0
  22. package/dist/privacy/index.d.ts.map +1 -0
  23. package/dist/privacy/index.js +6 -0
  24. package/dist/privacy/index.js.map +1 -0
  25. package/dist/privacy/privacy-guard.d.ts +43 -0
  26. package/dist/privacy/privacy-guard.d.ts.map +1 -0
  27. package/dist/privacy/privacy-guard.js +59 -0
  28. package/dist/privacy/privacy-guard.js.map +1 -0
  29. package/dist/store/index.d.ts +7 -0
  30. package/dist/store/index.d.ts.map +1 -0
  31. package/dist/store/index.js +7 -0
  32. package/dist/store/index.js.map +1 -0
  33. package/dist/store/n3-store.d.ts +115 -0
  34. package/dist/store/n3-store.d.ts.map +1 -0
  35. package/dist/store/n3-store.js +344 -0
  36. package/dist/store/n3-store.js.map +1 -0
  37. package/dist/store/ontology-store.d.ts +59 -0
  38. package/dist/store/ontology-store.d.ts.map +1 -0
  39. package/dist/store/ontology-store.js +135 -0
  40. package/dist/store/ontology-store.js.map +1 -0
  41. package/dist/types.d.ts +81 -0
  42. package/dist/types.d.ts.map +1 -0
  43. package/dist/types.js +6 -0
  44. package/dist/types.js.map +1 -0
  45. package/package.json +50 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/store/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,OAAO,EAAE,KAAK,YAAY,EAAE,KAAK,aAAa,EAAE,KAAK,aAAa,EAAE,MAAM,eAAe,CAAC"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * @fileoverview Ontology store module
3
+ * @traceability TSK-ONTO-001
4
+ */
5
+ export { OntologyStore } from './ontology-store.js';
6
+ export { N3Store } from './n3-store.js';
7
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/store/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,OAAO,EAA6D,MAAM,eAAe,CAAC"}
@@ -0,0 +1,115 @@
1
+ /**
2
+ * @fileoverview N3.js-based RDF triple store
3
+ * @traceability TSK-ONTO-001, REQ-ONTO-001-F001
4
+ */
5
+ import type { Triple, OntologyStoreConfig } from '../types.js';
6
+ /**
7
+ * Query pattern for SPARQL-like queries
8
+ */
9
+ export interface QueryPattern {
10
+ subject?: string;
11
+ predicate?: string;
12
+ object?: string;
13
+ graph?: string;
14
+ }
15
+ /**
16
+ * N3 Query result (different from types.ts QueryResult)
17
+ */
18
+ export interface N3QueryResult {
19
+ subject: string;
20
+ predicate: string;
21
+ object: string;
22
+ graph?: string;
23
+ }
24
+ /**
25
+ * Inference rule
26
+ */
27
+ export interface InferenceRule {
28
+ id: string;
29
+ name: string;
30
+ pattern: QueryPattern;
31
+ conclusion: (bindings: Record<string, string>) => Triple[];
32
+ }
33
+ /**
34
+ * N3.js-based RDF store with inference support
35
+ *
36
+ * @description
37
+ * Provides a high-performance RDF triple store using N3.js.
38
+ * Supports:
39
+ * - Turtle/N-Triples/N-Quads parsing and serialization
40
+ * - Pattern-based querying
41
+ * - Basic RDFS inference
42
+ * - Named graphs
43
+ */
44
+ export declare class N3Store {
45
+ private store;
46
+ private config;
47
+ private dirty;
48
+ private inferenceRules;
49
+ constructor(config?: Partial<OntologyStoreConfig>);
50
+ /**
51
+ * Initialize RDFS inference rules
52
+ */
53
+ private initializeInferenceRules;
54
+ /**
55
+ * Load store from Turtle file
56
+ */
57
+ load(): Promise<void>;
58
+ /**
59
+ * Save store to Turtle file
60
+ */
61
+ save(): Promise<void>;
62
+ /**
63
+ * Add a triple to the store
64
+ */
65
+ addTriple(triple: Triple, graph?: string): boolean;
66
+ /**
67
+ * Add multiple triples
68
+ */
69
+ addTriples(triples: Triple[], graph?: string): number;
70
+ /**
71
+ * Remove a triple from the store
72
+ */
73
+ removeTriple(triple: Triple, graph?: string): boolean;
74
+ /**
75
+ * Query triples by pattern
76
+ */
77
+ query(pattern: QueryPattern): N3QueryResult[];
78
+ /**
79
+ * Check if a triple exists
80
+ */
81
+ has(triple: Triple, graph?: string): boolean;
82
+ /**
83
+ * Get all subjects of a given type
84
+ */
85
+ getSubjectsOfType(typeUri: string): string[];
86
+ /**
87
+ * Get all properties of a subject
88
+ */
89
+ getProperties(subject: string): N3QueryResult[];
90
+ /**
91
+ * Parse and import Turtle content
92
+ */
93
+ importTurtle(content: string): Promise<number>;
94
+ /**
95
+ * Export store as Turtle
96
+ */
97
+ exportTurtle(prefixes?: Record<string, string>): Promise<string>;
98
+ /**
99
+ * Apply inference rules for a triple
100
+ */
101
+ private applyInference;
102
+ /**
103
+ * Clear all triples
104
+ */
105
+ clear(): void;
106
+ /**
107
+ * Get triple count
108
+ */
109
+ get size(): number;
110
+ /**
111
+ * Get all named graphs
112
+ */
113
+ getGraphs(): string[];
114
+ }
115
+ //# sourceMappingURL=n3-store.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"n3-store.d.ts","sourceRoot":"","sources":["../../src/store/n3-store.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,OAAO,KAAK,EAAE,MAAM,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAK/D;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,YAAY,CAAC;IACtB,UAAU,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,MAAM,EAAE,CAAC;CAC5D;AAED;;;;;;;;;;GAUG;AACH,qBAAa,OAAO;IAClB,OAAO,CAAC,KAAK,CAAW;IACxB,OAAO,CAAC,MAAM,CAAsB;IACpC,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,cAAc,CAAuB;gBAEjC,MAAM,GAAE,OAAO,CAAC,mBAAmB,CAAM;IAarD;;OAEG;IACH,OAAO,CAAC,wBAAwB;IAkEhC;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAa3B;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAsC3B;;OAEG;IACH,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO;IAuBlD;;OAEG;IACH,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM;IAUrD;;OAEG;IACH,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO;IAkBrD;;OAEG;IACH,KAAK,CAAC,OAAO,EAAE,YAAY,GAAG,aAAa,EAAE;IAoB7C;;OAEG;IACH,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO;IAW5C;;OAEG;IACH,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE;IAM5C;;OAEG;IACH,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,aAAa,EAAE;IAU/C;;OAEG;IACG,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAepD;;OAEG;IACH,YAAY,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC;IAwBhE;;OAEG;IACH,OAAO,CAAC,cAAc;IA6BtB;;OAEG;IACH,KAAK,IAAI,IAAI;IAKb;;OAEG;IACH,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED;;OAEG;IACH,SAAS,IAAI,MAAM,EAAE;CAUtB"}
@@ -0,0 +1,344 @@
1
+ /**
2
+ * @fileoverview N3.js-based RDF triple store
3
+ * @traceability TSK-ONTO-001, REQ-ONTO-001-F001
4
+ */
5
+ import * as N3 from 'n3';
6
+ import { readFile, writeFile, mkdir } from 'node:fs/promises';
7
+ import { dirname } from 'node:path';
8
+ const { DataFactory, Store, Writer, Parser } = N3;
9
+ const { namedNode, literal, quad } = DataFactory;
10
+ /**
11
+ * N3.js-based RDF store with inference support
12
+ *
13
+ * @description
14
+ * Provides a high-performance RDF triple store using N3.js.
15
+ * Supports:
16
+ * - Turtle/N-Triples/N-Quads parsing and serialization
17
+ * - Pattern-based querying
18
+ * - Basic RDFS inference
19
+ * - Named graphs
20
+ */
21
+ export class N3Store {
22
+ store;
23
+ config;
24
+ dirty = false;
25
+ inferenceRules = [];
26
+ constructor(config = {}) {
27
+ this.store = new Store();
28
+ this.config = {
29
+ storagePath: config.storagePath ?? './storage/ontology/n3-store.ttl',
30
+ enableInference: config.enableInference ?? true,
31
+ maxTriples: config.maxTriples ?? 100000,
32
+ };
33
+ if (this.config.enableInference) {
34
+ this.initializeInferenceRules();
35
+ }
36
+ }
37
+ /**
38
+ * Initialize RDFS inference rules
39
+ */
40
+ initializeInferenceRules() {
41
+ // rdfs:subClassOf transitivity
42
+ this.inferenceRules.push({
43
+ id: 'rdfs-subclass-transitivity',
44
+ name: 'RDFS SubClass Transitivity',
45
+ pattern: {
46
+ predicate: 'http://www.w3.org/2000/01/rdf-schema#subClassOf',
47
+ },
48
+ conclusion: (bindings) => {
49
+ // A subClassOf B, B subClassOf C => A subClassOf C
50
+ const results = [];
51
+ const subClassOf = 'http://www.w3.org/2000/01/rdf-schema#subClassOf';
52
+ // Find all superclasses of bindings.object
53
+ const superQuads = this.store.getQuads(namedNode(bindings.object), namedNode(subClassOf), null, null);
54
+ for (const superQuad of superQuads) {
55
+ results.push({
56
+ subject: bindings.subject,
57
+ predicate: subClassOf,
58
+ object: superQuad.object.value,
59
+ });
60
+ }
61
+ return results;
62
+ },
63
+ });
64
+ // rdf:type propagation via rdfs:subClassOf
65
+ this.inferenceRules.push({
66
+ id: 'rdfs-type-subclass',
67
+ name: 'RDFS Type via SubClass',
68
+ pattern: {
69
+ predicate: 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type',
70
+ },
71
+ conclusion: (bindings) => {
72
+ const results = [];
73
+ const rdfType = 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type';
74
+ const subClassOf = 'http://www.w3.org/2000/01/rdf-schema#subClassOf';
75
+ // Find all superclasses of bindings.object
76
+ const superQuads = this.store.getQuads(namedNode(bindings.object), namedNode(subClassOf), null, null);
77
+ for (const superQuad of superQuads) {
78
+ results.push({
79
+ subject: bindings.subject,
80
+ predicate: rdfType,
81
+ object: superQuad.object.value,
82
+ });
83
+ }
84
+ return results;
85
+ },
86
+ });
87
+ }
88
+ /**
89
+ * Load store from Turtle file
90
+ */
91
+ async load() {
92
+ try {
93
+ const data = await readFile(this.config.storagePath, 'utf-8');
94
+ const parser = new Parser();
95
+ const quads = parser.parse(data);
96
+ this.store = new Store(quads);
97
+ this.dirty = false;
98
+ }
99
+ catch {
100
+ // File doesn't exist - start with empty store
101
+ this.store = new Store();
102
+ }
103
+ }
104
+ /**
105
+ * Save store to Turtle file
106
+ */
107
+ async save() {
108
+ if (!this.dirty)
109
+ return;
110
+ const dir = dirname(this.config.storagePath);
111
+ await mkdir(dir, { recursive: true });
112
+ const writer = new Writer({
113
+ prefixes: {
114
+ rdf: 'http://www.w3.org/1999/02/22-rdf-syntax-ns#',
115
+ rdfs: 'http://www.w3.org/2000/01/rdf-schema#',
116
+ owl: 'http://www.w3.org/2002/07/owl#',
117
+ xsd: 'http://www.w3.org/2001/XMLSchema#',
118
+ sdd: 'https://musubix.dev/ontology/sdd#',
119
+ pattern: 'https://musubix.dev/ontology/pattern#',
120
+ },
121
+ });
122
+ const quads = this.store.getQuads(null, null, null, null);
123
+ for (const q of quads) {
124
+ writer.addQuad(q);
125
+ }
126
+ return new Promise((resolve, reject) => {
127
+ writer.end((error, result) => {
128
+ if (error) {
129
+ reject(error);
130
+ }
131
+ else {
132
+ writeFile(this.config.storagePath, result, 'utf-8')
133
+ .then(() => {
134
+ this.dirty = false;
135
+ resolve();
136
+ })
137
+ .catch(reject);
138
+ }
139
+ });
140
+ });
141
+ }
142
+ /**
143
+ * Add a triple to the store
144
+ */
145
+ addTriple(triple, graph) {
146
+ if (this.store.size >= this.config.maxTriples) {
147
+ return false;
148
+ }
149
+ const subject = namedNode(triple.subject);
150
+ const predicate = namedNode(triple.predicate);
151
+ const object = triple.object.startsWith('http://') || triple.object.startsWith('https://')
152
+ ? namedNode(triple.object)
153
+ : literal(triple.object);
154
+ const graphNode = graph ? namedNode(graph) : DataFactory.defaultGraph();
155
+ this.store.addQuad(quad(subject, predicate, object, graphNode));
156
+ this.dirty = true;
157
+ // Apply inference if enabled
158
+ if (this.config.enableInference) {
159
+ this.applyInference(triple);
160
+ }
161
+ return true;
162
+ }
163
+ /**
164
+ * Add multiple triples
165
+ */
166
+ addTriples(triples, graph) {
167
+ let added = 0;
168
+ for (const triple of triples) {
169
+ if (this.addTriple(triple, graph)) {
170
+ added++;
171
+ }
172
+ }
173
+ return added;
174
+ }
175
+ /**
176
+ * Remove a triple from the store
177
+ */
178
+ removeTriple(triple, graph) {
179
+ const subject = namedNode(triple.subject);
180
+ const predicate = namedNode(triple.predicate);
181
+ const object = triple.object.startsWith('http://') || triple.object.startsWith('https://')
182
+ ? namedNode(triple.object)
183
+ : literal(triple.object);
184
+ const graphNode = graph ? namedNode(graph) : null;
185
+ const quads = this.store.getQuads(subject, predicate, object, graphNode);
186
+ if (quads.length === 0)
187
+ return false;
188
+ for (const q of quads) {
189
+ this.store.removeQuad(q);
190
+ }
191
+ this.dirty = true;
192
+ return true;
193
+ }
194
+ /**
195
+ * Query triples by pattern
196
+ */
197
+ query(pattern) {
198
+ const subject = pattern.subject ? namedNode(pattern.subject) : null;
199
+ const predicate = pattern.predicate ? namedNode(pattern.predicate) : null;
200
+ const object = pattern.object
201
+ ? pattern.object.startsWith('http://') || pattern.object.startsWith('https://')
202
+ ? namedNode(pattern.object)
203
+ : literal(pattern.object)
204
+ : null;
205
+ const graph = pattern.graph ? namedNode(pattern.graph) : null;
206
+ const quads = this.store.getQuads(subject, predicate, object, graph);
207
+ return quads.map((q) => ({
208
+ subject: q.subject.value,
209
+ predicate: q.predicate.value,
210
+ object: q.object.value,
211
+ graph: q.graph.value || undefined,
212
+ }));
213
+ }
214
+ /**
215
+ * Check if a triple exists
216
+ */
217
+ has(triple, graph) {
218
+ const subject = namedNode(triple.subject);
219
+ const predicate = namedNode(triple.predicate);
220
+ const object = triple.object.startsWith('http://') || triple.object.startsWith('https://')
221
+ ? namedNode(triple.object)
222
+ : literal(triple.object);
223
+ const graphNode = graph ? namedNode(graph) : null;
224
+ return this.store.getQuads(subject, predicate, object, graphNode).length > 0;
225
+ }
226
+ /**
227
+ * Get all subjects of a given type
228
+ */
229
+ getSubjectsOfType(typeUri) {
230
+ const rdfType = 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type';
231
+ const quads = this.store.getQuads(null, namedNode(rdfType), namedNode(typeUri), null);
232
+ return quads.map((q) => q.subject.value);
233
+ }
234
+ /**
235
+ * Get all properties of a subject
236
+ */
237
+ getProperties(subject) {
238
+ const quads = this.store.getQuads(namedNode(subject), null, null, null);
239
+ return quads.map((q) => ({
240
+ subject: q.subject.value,
241
+ predicate: q.predicate.value,
242
+ object: q.object.value,
243
+ graph: q.graph.value || undefined,
244
+ }));
245
+ }
246
+ /**
247
+ * Parse and import Turtle content
248
+ */
249
+ async importTurtle(content) {
250
+ const parser = new Parser();
251
+ const quads = parser.parse(content);
252
+ let added = 0;
253
+ for (const q of quads) {
254
+ if (this.store.size >= this.config.maxTriples)
255
+ break;
256
+ this.store.addQuad(q);
257
+ added++;
258
+ }
259
+ this.dirty = true;
260
+ return added;
261
+ }
262
+ /**
263
+ * Export store as Turtle
264
+ */
265
+ exportTurtle(prefixes) {
266
+ const writer = new Writer({
267
+ prefixes: prefixes ?? {
268
+ rdf: 'http://www.w3.org/1999/02/22-rdf-syntax-ns#',
269
+ rdfs: 'http://www.w3.org/2000/01/rdf-schema#',
270
+ owl: 'http://www.w3.org/2002/07/owl#',
271
+ sdd: 'https://musubix.dev/ontology/sdd#',
272
+ pattern: 'https://musubix.dev/ontology/pattern#',
273
+ },
274
+ });
275
+ const quads = this.store.getQuads(null, null, null, null);
276
+ for (const q of quads) {
277
+ writer.addQuad(q);
278
+ }
279
+ return new Promise((resolve, reject) => {
280
+ writer.end((error, result) => {
281
+ if (error)
282
+ reject(error);
283
+ else
284
+ resolve(result);
285
+ });
286
+ });
287
+ }
288
+ /**
289
+ * Apply inference rules for a triple
290
+ */
291
+ applyInference(triple) {
292
+ const bindings = {
293
+ subject: triple.subject,
294
+ predicate: triple.predicate,
295
+ object: triple.object,
296
+ };
297
+ for (const rule of this.inferenceRules) {
298
+ // Check if pattern matches
299
+ if (rule.pattern.predicate && rule.pattern.predicate !== triple.predicate) {
300
+ continue;
301
+ }
302
+ if (rule.pattern.subject && rule.pattern.subject !== triple.subject) {
303
+ continue;
304
+ }
305
+ if (rule.pattern.object && rule.pattern.object !== triple.object) {
306
+ continue;
307
+ }
308
+ // Apply rule and add inferred triples
309
+ const inferred = rule.conclusion(bindings);
310
+ for (const inferredTriple of inferred) {
311
+ if (!this.has(inferredTriple)) {
312
+ this.addTriple(inferredTriple);
313
+ }
314
+ }
315
+ }
316
+ }
317
+ /**
318
+ * Clear all triples
319
+ */
320
+ clear() {
321
+ this.store = new Store();
322
+ this.dirty = true;
323
+ }
324
+ /**
325
+ * Get triple count
326
+ */
327
+ get size() {
328
+ return this.store.size;
329
+ }
330
+ /**
331
+ * Get all named graphs
332
+ */
333
+ getGraphs() {
334
+ const graphs = new Set();
335
+ const quads = this.store.getQuads(null, null, null, null);
336
+ for (const q of quads) {
337
+ if (q.graph.value) {
338
+ graphs.add(q.graph.value);
339
+ }
340
+ }
341
+ return Array.from(graphs);
342
+ }
343
+ }
344
+ //# sourceMappingURL=n3-store.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"n3-store.js","sourceRoot":"","sources":["../../src/store/n3-store.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AACzB,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGpC,MAAM,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;AAClD,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,WAAW,CAAC;AAgCjD;;;;;;;;;;GAUG;AACH,MAAM,OAAO,OAAO;IACV,KAAK,CAAW;IAChB,MAAM,CAAsB;IAC5B,KAAK,GAAG,KAAK,CAAC;IACd,cAAc,GAAoB,EAAE,CAAC;IAE7C,YAAY,SAAuC,EAAE;QACnD,IAAI,CAAC,KAAK,GAAG,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,CAAC,MAAM,GAAG;YACZ,WAAW,EAAE,MAAM,CAAC,WAAW,IAAI,iCAAiC;YACpE,eAAe,EAAE,MAAM,CAAC,eAAe,IAAI,IAAI;YAC/C,UAAU,EAAE,MAAM,CAAC,UAAU,IAAI,MAAM;SACxC,CAAC;QAEF,IAAI,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE,CAAC;YAChC,IAAI,CAAC,wBAAwB,EAAE,CAAC;QAClC,CAAC;IACH,CAAC;IAED;;OAEG;IACK,wBAAwB;QAC9B,+BAA+B;QAC/B,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC;YACvB,EAAE,EAAE,4BAA4B;YAChC,IAAI,EAAE,4BAA4B;YAClC,OAAO,EAAE;gBACP,SAAS,EAAE,iDAAiD;aAC7D;YACD,UAAU,EAAE,CAAC,QAAQ,EAAE,EAAE;gBACvB,mDAAmD;gBACnD,MAAM,OAAO,GAAa,EAAE,CAAC;gBAC7B,MAAM,UAAU,GAAG,iDAAiD,CAAC;gBAErE,2CAA2C;gBAC3C,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CACpC,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,EAC1B,SAAS,CAAC,UAAU,CAAC,EACrB,IAAI,EACJ,IAAI,CACL,CAAC;gBAEF,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;oBACnC,OAAO,CAAC,IAAI,CAAC;wBACX,OAAO,EAAE,QAAQ,CAAC,OAAO;wBACzB,SAAS,EAAE,UAAU;wBACrB,MAAM,EAAE,SAAS,CAAC,MAAM,CAAC,KAAK;qBAC/B,CAAC,CAAC;gBACL,CAAC;gBAED,OAAO,OAAO,CAAC;YACjB,CAAC;SACF,CAAC,CAAC;QAEH,2CAA2C;QAC3C,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC;YACvB,EAAE,EAAE,oBAAoB;YACxB,IAAI,EAAE,wBAAwB;YAC9B,OAAO,EAAE;gBACP,SAAS,EAAE,iDAAiD;aAC7D;YACD,UAAU,EAAE,CAAC,QAAQ,EAAE,EAAE;gBACvB,MAAM,OAAO,GAAa,EAAE,CAAC;gBAC7B,MAAM,OAAO,GAAG,iDAAiD,CAAC;gBAClE,MAAM,UAAU,GAAG,iDAAiD,CAAC;gBAErE,2CAA2C;gBAC3C,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CACpC,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,EAC1B,SAAS,CAAC,UAAU,CAAC,EACrB,IAAI,EACJ,IAAI,CACL,CAAC;gBAEF,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;oBACnC,OAAO,CAAC,IAAI,CAAC;wBACX,OAAO,EAAE,QAAQ,CAAC,OAAO;wBACzB,SAAS,EAAE,OAAO;wBAClB,MAAM,EAAE,SAAS,CAAC,MAAM,CAAC,KAAK;qBAC/B,CAAC,CAAC;gBACL,CAAC;gBAED,OAAO,OAAO,CAAC;YACjB,CAAC;SACF,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,IAAI;QACR,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;YAC9D,MAAM,MAAM,GAAG,IAAI,MAAM,EAAE,CAAC;YAC5B,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACjC,IAAI,CAAC,KAAK,GAAG,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC;YAC9B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACrB,CAAC;QAAC,MAAM,CAAC;YACP,8CAA8C;YAC9C,IAAI,CAAC,KAAK,GAAG,IAAI,KAAK,EAAE,CAAC;QAC3B,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,IAAI;QACR,IAAI,CAAC,IAAI,CAAC,KAAK;YAAE,OAAO;QAExB,MAAM,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QAC7C,MAAM,KAAK,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAEtC,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC;YACxB,QAAQ,EAAE;gBACR,GAAG,EAAE,6CAA6C;gBAClD,IAAI,EAAE,uCAAuC;gBAC7C,GAAG,EAAE,gCAAgC;gBACrC,GAAG,EAAE,mCAAmC;gBACxC,GAAG,EAAE,mCAAmC;gBACxC,OAAO,EAAE,uCAAuC;aACjD;SACF,CAAC,CAAC;QAEH,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QAC1D,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;YACtB,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QACpB,CAAC;QAED,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;gBAC3B,IAAI,KAAK,EAAE,CAAC;oBACV,MAAM,CAAC,KAAK,CAAC,CAAC;gBAChB,CAAC;qBAAM,CAAC;oBACN,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,CAAC;yBAChD,IAAI,CAAC,GAAG,EAAE;wBACT,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;wBACnB,OAAO,EAAE,CAAC;oBACZ,CAAC,CAAC;yBACD,KAAK,CAAC,MAAM,CAAC,CAAC;gBACnB,CAAC;YACH,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,SAAS,CAAC,MAAc,EAAE,KAAc;QACtC,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;YAC9C,OAAO,KAAK,CAAC;QACf,CAAC;QAED,MAAM,OAAO,GAAG,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAC1C,MAAM,SAAS,GAAG,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAC9C,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,UAAU,CAAC;YACxF,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC;YAC1B,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAC3B,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,YAAY,EAAE,CAAC;QAExE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC;QAChE,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAElB,6BAA6B;QAC7B,IAAI,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE,CAAC;YAChC,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;QAC9B,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;OAEG;IACH,UAAU,CAAC,OAAiB,EAAE,KAAc;QAC1C,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC7B,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC;gBAClC,KAAK,EAAE,CAAC;YACV,CAAC;QACH,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;OAEG;IACH,YAAY,CAAC,MAAc,EAAE,KAAc;QACzC,MAAM,OAAO,GAAG,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAC1C,MAAM,SAAS,GAAG,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAC9C,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,UAAU,CAAC;YACxF,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC;YAC1B,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAC3B,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAElD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC;QACzE,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,KAAK,CAAC;QAErC,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;YACtB,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;QAC3B,CAAC;QACD,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAClB,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,OAAqB;QACzB,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QACpE,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAC1E,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM;YAC3B,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,UAAU,CAAC;gBAC7E,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC;gBAC3B,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC;YAC3B,CAAC,CAAC,IAAI,CAAC;QACT,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAE9D,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;QAErE,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACvB,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK;YACxB,SAAS,EAAE,CAAC,CAAC,SAAS,CAAC,KAAK;YAC5B,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK;YACtB,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,KAAK,IAAI,SAAS;SAClC,CAAC,CAAC,CAAC;IACN,CAAC;IAED;;OAEG;IACH,GAAG,CAAC,MAAc,EAAE,KAAc;QAChC,MAAM,OAAO,GAAG,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAC1C,MAAM,SAAS,GAAG,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAC9C,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,UAAU,CAAC;YACxF,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC;YAC1B,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAC3B,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAElD,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;IAC/E,CAAC;IAED;;OAEG;IACH,iBAAiB,CAAC,OAAe;QAC/B,MAAM,OAAO,GAAG,iDAAiD,CAAC;QAClE,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC,OAAO,CAAC,EAAE,SAAS,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,CAAC;QACtF,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAC3C,CAAC;IAED;;OAEG;IACH,aAAa,CAAC,OAAe;QAC3B,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QACxE,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACvB,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK;YACxB,SAAS,EAAE,CAAC,CAAC,SAAS,CAAC,KAAK;YAC5B,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK;YACtB,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,KAAK,IAAI,SAAS;SAClC,CAAC,CAAC,CAAC;IACN,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,YAAY,CAAC,OAAe;QAChC,MAAM,MAAM,GAAG,IAAI,MAAM,EAAE,CAAC;QAC5B,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAEpC,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;YACtB,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,UAAU;gBAAE,MAAM;YACrD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;YACtB,KAAK,EAAE,CAAC;QACV,CAAC;QAED,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAClB,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;OAEG;IACH,YAAY,CAAC,QAAiC;QAC5C,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC;YACxB,QAAQ,EAAE,QAAQ,IAAI;gBACpB,GAAG,EAAE,6CAA6C;gBAClD,IAAI,EAAE,uCAAuC;gBAC7C,GAAG,EAAE,gCAAgC;gBACrC,GAAG,EAAE,mCAAmC;gBACxC,OAAO,EAAE,uCAAuC;aACjD;SACF,CAAC,CAAC;QAEH,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QAC1D,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;YACtB,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QACpB,CAAC;QAED,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;gBAC3B,IAAI,KAAK;oBAAE,MAAM,CAAC,KAAK,CAAC,CAAC;;oBACpB,OAAO,CAAC,MAAM,CAAC,CAAC;YACvB,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACK,cAAc,CAAC,MAAc;QACnC,MAAM,QAAQ,GAAG;YACf,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,SAAS,EAAE,MAAM,CAAC,SAAS;YAC3B,MAAM,EAAE,MAAM,CAAC,MAAM;SACtB,CAAC;QAEF,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACvC,2BAA2B;YAC3B,IAAI,IAAI,CAAC,OAAO,CAAC,SAAS,IAAI,IAAI,CAAC,OAAO,CAAC,SAAS,KAAK,MAAM,CAAC,SAAS,EAAE,CAAC;gBAC1E,SAAS;YACX,CAAC;YACD,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,KAAK,MAAM,CAAC,OAAO,EAAE,CAAC;gBACpE,SAAS;YACX,CAAC;YACD,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,KAAK,MAAM,CAAC,MAAM,EAAE,CAAC;gBACjE,SAAS;YACX,CAAC;YAED,sCAAsC;YACtC,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;YAC3C,KAAK,MAAM,cAAc,IAAI,QAAQ,EAAE,CAAC;gBACtC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE,CAAC;oBAC9B,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;gBACjC,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK;QACH,IAAI,CAAC,KAAK,GAAG,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;IACpB,CAAC;IAED;;OAEG;IACH,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;IACzB,CAAC;IAED;;OAEG;IACH,SAAS;QACP,MAAM,MAAM,GAAG,IAAI,GAAG,EAAU,CAAC;QACjC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QAC1D,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;YACtB,IAAI,CAAC,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;gBAClB,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAC5B,CAAC;QACH,CAAC;QACD,OAAO,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC5B,CAAC;CACF"}
@@ -0,0 +1,59 @@
1
+ /**
2
+ * @fileoverview Ontology store with local persistence
3
+ * @traceability TSK-ONTO-001, REQ-ONTO-001-F001
4
+ */
5
+ import type { Ontology, Triple, OntologyStoreConfig } from '../types.js';
6
+ /**
7
+ * Ontology store with local JSON persistence
8
+ *
9
+ * @description
10
+ * Manages ontology storage locally (no external communication).
11
+ * Supports CRUD operations on ontologies and triples.
12
+ */
13
+ export declare class OntologyStore {
14
+ private ontologies;
15
+ private config;
16
+ private dirty;
17
+ constructor(config?: Partial<OntologyStoreConfig>);
18
+ /**
19
+ * Load store from disk
20
+ */
21
+ load(): Promise<void>;
22
+ /**
23
+ * Save store to disk
24
+ */
25
+ save(): Promise<void>;
26
+ /**
27
+ * Create new ontology
28
+ */
29
+ create(id: string, namespace: string, prefixes?: Record<string, string>): Ontology;
30
+ /**
31
+ * Get ontology by ID
32
+ */
33
+ get(id: string): Ontology | undefined;
34
+ /**
35
+ * Delete ontology
36
+ */
37
+ delete(id: string): boolean;
38
+ /**
39
+ * Add triple to ontology
40
+ */
41
+ addTriple(ontologyId: string, triple: Triple): boolean;
42
+ /**
43
+ * Get all triples from ontology
44
+ */
45
+ getTriples(ontologyId: string): Triple[];
46
+ /**
47
+ * List all ontologies
48
+ */
49
+ list(): Ontology[];
50
+ /**
51
+ * Get total triple count
52
+ */
53
+ get tripleCount(): number;
54
+ /**
55
+ * Get ontology count
56
+ */
57
+ get size(): number;
58
+ }
59
+ //# sourceMappingURL=ontology-store.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ontology-store.d.ts","sourceRoot":"","sources":["../../src/store/ontology-store.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAEzE;;;;;;GAMG;AACH,qBAAa,aAAa;IACxB,OAAO,CAAC,UAAU,CAAoC;IACtD,OAAO,CAAC,MAAM,CAAsB;IACpC,OAAO,CAAC,KAAK,CAAS;gBAEV,MAAM,GAAE,OAAO,CAAC,mBAAmB,CAAM;IAQrD;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAe3B;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAgB3B;;OAEG;IACH,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,GAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAM,GAAG,QAAQ;IAetF;;OAEG;IACH,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,QAAQ,GAAG,SAAS;IAIrC;;OAEG;IACH,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;IAQ3B;;OAEG;IACH,SAAS,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO;IAiBtD;;OAEG;IACH,UAAU,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE;IAIxC;;OAEG;IACH,IAAI,IAAI,QAAQ,EAAE;IAIlB;;OAEG;IACH,IAAI,WAAW,IAAI,MAAM,CAGxB;IAED;;OAEG;IACH,IAAI,IAAI,IAAI,MAAM,CAEjB;CACF"}