@glossarist/concept-browser 0.7.26 → 0.7.28
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/package.json +1 -1
- package/scripts/generate-data.mjs +20 -1
- package/src/__tests__/annotations-bridge.test.ts +87 -0
- package/src/__tests__/dataset-adapter.test.ts +58 -0
- package/src/__tests__/designation-relationship.test.ts +211 -0
- package/src/__tests__/graph.test.ts +15 -0
- package/src/__tests__/relationship-comprehensive.test.ts +162 -0
- package/src/__tests__/taxonomy-colors.test.ts +71 -0
- package/src/adapters/model-bridge.ts +251 -27
- package/src/adapters/ontology-registry.ts +30 -2
- package/src/components/AppSidebar.vue +1 -1
- package/src/components/ConceptDetail.vue +32 -64
- package/src/components/DesignationList.vue +78 -0
- package/src/data/ontology-schema.json +66 -8
- package/src/data/taxonomies.json +261 -89
- package/src/i18n/locales/eng.yml +2 -0
- package/src/i18n/locales/fra.yml +2 -0
- package/src/stores/vocabulary.ts +3 -5
- package/src/style.css +8 -0
- package/src/utils/concept-helpers.ts +2 -20
- package/src/utils/designation-registry.ts +3 -26
- package/src/utils/relationship-categories.ts +68 -122
package/src/data/taxonomies.json
CHANGED
|
@@ -46,6 +46,15 @@
|
|
|
46
46
|
"prefLabel": "retired",
|
|
47
47
|
"definition": "The concept has been retired from active use."
|
|
48
48
|
}
|
|
49
|
+
},
|
|
50
|
+
"colors": {
|
|
51
|
+
"draft": "badge-yellow",
|
|
52
|
+
"submitted": "badge-blue",
|
|
53
|
+
"valid": "badge-green",
|
|
54
|
+
"not_valid": "bg-red-50 text-red-700",
|
|
55
|
+
"invalid": "bg-red-50 text-red-700",
|
|
56
|
+
"superseded": "bg-red-50 text-red-700",
|
|
57
|
+
"retired": "badge-gray"
|
|
49
58
|
}
|
|
50
59
|
},
|
|
51
60
|
"entryStatus": {
|
|
@@ -77,6 +86,14 @@
|
|
|
77
86
|
"prefLabel": "retired",
|
|
78
87
|
"definition": "The localized entry has been retired from active use."
|
|
79
88
|
}
|
|
89
|
+
},
|
|
90
|
+
"colors": {
|
|
91
|
+
"valid": "badge-green",
|
|
92
|
+
"not_valid": "bg-red-50 text-red-700",
|
|
93
|
+
"superseded": "bg-red-50 text-red-700",
|
|
94
|
+
"retired": "badge-gray",
|
|
95
|
+
"withdrawn": "bg-red-100 text-red-800",
|
|
96
|
+
"draft": "badge-yellow"
|
|
80
97
|
}
|
|
81
98
|
},
|
|
82
99
|
"normativeStatus": {
|
|
@@ -108,6 +125,12 @@
|
|
|
108
125
|
"prefLabel": "superseded",
|
|
109
126
|
"definition": "A superseded designation that has been replaced."
|
|
110
127
|
}
|
|
128
|
+
},
|
|
129
|
+
"colors": {
|
|
130
|
+
"preferred": "bg-emerald-50 text-emerald-700",
|
|
131
|
+
"admitted": "bg-amber-50 text-amber-700",
|
|
132
|
+
"deprecated": "bg-red-50 text-red-700",
|
|
133
|
+
"superseded": "bg-red-50 text-red-700"
|
|
111
134
|
}
|
|
112
135
|
},
|
|
113
136
|
"sourceType": {
|
|
@@ -127,6 +150,10 @@
|
|
|
127
150
|
"prefLabel": "lineage",
|
|
128
151
|
"definition": "The concept's lineage or historical reference."
|
|
129
152
|
}
|
|
153
|
+
},
|
|
154
|
+
"colors": {
|
|
155
|
+
"authoritative": "badge-purple",
|
|
156
|
+
"lineage": "badge-blue"
|
|
130
157
|
}
|
|
131
158
|
},
|
|
132
159
|
"sourceStatus": {
|
|
@@ -205,313 +232,451 @@
|
|
|
205
232
|
"id": "deprecates",
|
|
206
233
|
"iri": "gloss:rel/deprecates",
|
|
207
234
|
"prefLabel": "deprecates",
|
|
208
|
-
"definition": "This concept deprecates another concept."
|
|
235
|
+
"definition": "This concept deprecates another concept.",
|
|
236
|
+
"category": "lifecycle",
|
|
237
|
+
"inverseOf": "deprecated_by"
|
|
209
238
|
},
|
|
210
239
|
"supersedes": {
|
|
211
240
|
"id": "supersedes",
|
|
212
241
|
"iri": "gloss:rel/supersedes",
|
|
213
242
|
"prefLabel": "supersedes",
|
|
214
|
-
"definition": "This concept supersedes another concept."
|
|
243
|
+
"definition": "This concept supersedes another concept.",
|
|
244
|
+
"category": "lifecycle",
|
|
245
|
+
"inverseOf": "superseded_by"
|
|
215
246
|
},
|
|
216
247
|
"superseded_by": {
|
|
217
248
|
"id": "superseded_by",
|
|
218
249
|
"iri": "gloss:rel/superseded_by",
|
|
219
250
|
"prefLabel": "superseded by",
|
|
220
|
-
"definition": "This concept has been superseded by another concept."
|
|
251
|
+
"definition": "This concept has been superseded by another concept.",
|
|
252
|
+
"category": "lifecycle",
|
|
253
|
+
"inverseOf": "supersedes"
|
|
221
254
|
},
|
|
222
255
|
"compare": {
|
|
223
256
|
"id": "compare",
|
|
224
257
|
"iri": "gloss:rel/compare",
|
|
225
258
|
"prefLabel": "compare",
|
|
226
|
-
"definition": "This concept is compared to another concept (ISO 10241-1)."
|
|
259
|
+
"definition": "This concept is compared to another concept (ISO 10241-1).",
|
|
260
|
+
"category": "comparative",
|
|
261
|
+
"inverseOf": "compare"
|
|
227
262
|
},
|
|
228
263
|
"contrast": {
|
|
229
264
|
"id": "contrast",
|
|
230
265
|
"iri": "gloss:rel/contrast",
|
|
231
266
|
"prefLabel": "contrast",
|
|
232
|
-
"definition": "This concept contrasts with another concept (ISO 10241-1)."
|
|
267
|
+
"definition": "This concept contrasts with another concept (ISO 10241-1).",
|
|
268
|
+
"category": "comparative",
|
|
269
|
+
"inverseOf": "contrast"
|
|
233
270
|
},
|
|
234
271
|
"related_concept_broader": {
|
|
235
272
|
"id": "related_concept_broader",
|
|
236
273
|
"iri": "gloss:rel/related_concept_broader",
|
|
237
274
|
"prefLabel": "related concept (broader)",
|
|
238
|
-
"definition": "Associative relationship to a concept with broader scope (ISO 25964 / TBX)."
|
|
275
|
+
"definition": "Associative relationship to a concept with broader scope (ISO 25964 / TBX).",
|
|
276
|
+
"category": "associative",
|
|
277
|
+
"inverseOf": "related_concept_narrower"
|
|
239
278
|
},
|
|
240
279
|
"related_concept_narrower": {
|
|
241
280
|
"id": "related_concept_narrower",
|
|
242
281
|
"iri": "gloss:rel/related_concept_narrower",
|
|
243
282
|
"prefLabel": "related concept (narrower)",
|
|
244
|
-
"definition": "Associative relationship to a concept with narrower scope (ISO 25964 / TBX)."
|
|
283
|
+
"definition": "Associative relationship to a concept with narrower scope (ISO 25964 / TBX).",
|
|
284
|
+
"category": "associative",
|
|
285
|
+
"inverseOf": "related_concept_broader"
|
|
245
286
|
},
|
|
246
287
|
"homograph": {
|
|
247
288
|
"id": "homograph",
|
|
248
289
|
"iri": "gloss:rel/homograph",
|
|
249
290
|
"prefLabel": "homograph",
|
|
250
|
-
"definition": "This concept has a homograph in another entry (ISO 12620 / TBX)."
|
|
291
|
+
"definition": "This concept has a homograph in another entry (ISO 12620 / TBX).",
|
|
292
|
+
"category": "lexical",
|
|
293
|
+
"inverseOf": "homograph"
|
|
251
294
|
},
|
|
252
295
|
"false_friend": {
|
|
253
296
|
"id": "false_friend",
|
|
254
297
|
"iri": "gloss:rel/false_friend",
|
|
255
298
|
"prefLabel": "false friend",
|
|
256
|
-
"definition": "This concept has a false friend in another language (ISO 12620 / TBX)."
|
|
299
|
+
"definition": "This concept has a false friend in another language (ISO 12620 / TBX).",
|
|
300
|
+
"category": "lexical",
|
|
301
|
+
"inverseOf": "false_friend"
|
|
257
302
|
},
|
|
258
303
|
"abbreviated_form_for": {
|
|
259
304
|
"id": "abbreviated_form_for",
|
|
260
305
|
"iri": "gloss:rel/abbreviated_form_for",
|
|
261
306
|
"prefLabel": "abbreviated form for",
|
|
262
|
-
"definition": "This designation is an abbreviated form of another designation."
|
|
307
|
+
"definition": "This designation is an abbreviated form of another designation.",
|
|
308
|
+
"category": "designation"
|
|
263
309
|
},
|
|
264
310
|
"short_form_for": {
|
|
265
311
|
"id": "short_form_for",
|
|
266
312
|
"iri": "gloss:rel/short_form_for",
|
|
267
313
|
"prefLabel": "short form for",
|
|
268
|
-
"definition": "This designation is a short form of another designation."
|
|
314
|
+
"definition": "This designation is a short form of another designation.",
|
|
315
|
+
"category": "designation"
|
|
269
316
|
},
|
|
270
317
|
"deprecated_by": {
|
|
271
318
|
"id": "deprecated_by",
|
|
272
|
-
"iri": "
|
|
319
|
+
"iri": "gloss:rel/deprecated_by",
|
|
273
320
|
"prefLabel": "deprecated by",
|
|
274
|
-
"definition": "This concept has been deprecated by another concept (ISO 10241-1)."
|
|
321
|
+
"definition": "This concept has been deprecated by another concept (ISO 10241-1).",
|
|
322
|
+
"category": "lifecycle",
|
|
323
|
+
"inverseOf": "deprecates"
|
|
275
324
|
},
|
|
276
325
|
"replaces": {
|
|
277
326
|
"id": "replaces",
|
|
278
|
-
"iri": "
|
|
327
|
+
"iri": "gloss:rel/replaces",
|
|
279
328
|
"prefLabel": "replaces",
|
|
280
|
-
"definition": "This concept replaces another concept (ISO 10241-1)."
|
|
329
|
+
"definition": "This concept replaces another concept (ISO 10241-1).",
|
|
330
|
+
"category": "lifecycle",
|
|
331
|
+
"inverseOf": "replaced_by"
|
|
281
332
|
},
|
|
282
333
|
"replaced_by": {
|
|
283
334
|
"id": "replaced_by",
|
|
284
|
-
"iri": "
|
|
335
|
+
"iri": "gloss:rel/replaced_by",
|
|
285
336
|
"prefLabel": "replaced by",
|
|
286
|
-
"definition": "This concept has been replaced by another concept (ISO 10241-1)."
|
|
337
|
+
"definition": "This concept has been replaced by another concept (ISO 10241-1).",
|
|
338
|
+
"category": "lifecycle",
|
|
339
|
+
"inverseOf": "replaces"
|
|
287
340
|
},
|
|
288
341
|
"invalidates": {
|
|
289
342
|
"id": "invalidates",
|
|
290
|
-
"iri": "
|
|
343
|
+
"iri": "gloss:rel/invalidates",
|
|
291
344
|
"prefLabel": "invalidates",
|
|
292
|
-
"definition": "This concept invalidates another concept, indicating it contains a substantial error and should not be used (ISO 19135)."
|
|
345
|
+
"definition": "This concept invalidates another concept, indicating it contains a substantial error and should not be used (ISO 19135).",
|
|
346
|
+
"category": "lifecycle",
|
|
347
|
+
"inverseOf": "invalidated_by"
|
|
293
348
|
},
|
|
294
349
|
"invalidated_by": {
|
|
295
350
|
"id": "invalidated_by",
|
|
296
|
-
"iri": "
|
|
351
|
+
"iri": "gloss:rel/invalidated_by",
|
|
297
352
|
"prefLabel": "invalidated by",
|
|
298
|
-
"definition": "This concept has been invalidated by another concept due to a substantial error (ISO 19135)."
|
|
353
|
+
"definition": "This concept has been invalidated by another concept due to a substantial error (ISO 19135).",
|
|
354
|
+
"category": "lifecycle",
|
|
355
|
+
"inverseOf": "invalidates"
|
|
299
356
|
},
|
|
300
357
|
"retires": {
|
|
301
358
|
"id": "retires",
|
|
302
|
-
"iri": "
|
|
359
|
+
"iri": "gloss:rel/retires",
|
|
303
360
|
"prefLabel": "retires",
|
|
304
|
-
"definition": "This concept retires another concept, indicating it is no longer recommended for use (ISO 19135)."
|
|
361
|
+
"definition": "This concept retires another concept, indicating it is no longer recommended for use (ISO 19135).",
|
|
362
|
+
"category": "lifecycle",
|
|
363
|
+
"inverseOf": "retired_by"
|
|
305
364
|
},
|
|
306
365
|
"retired_by": {
|
|
307
366
|
"id": "retired_by",
|
|
308
|
-
"iri": "
|
|
367
|
+
"iri": "gloss:rel/retired_by",
|
|
309
368
|
"prefLabel": "retired by",
|
|
310
|
-
"definition": "This concept has been retired by another concept (ISO 19135)."
|
|
369
|
+
"definition": "This concept has been retired by another concept (ISO 19135).",
|
|
370
|
+
"category": "lifecycle",
|
|
371
|
+
"inverseOf": "retires"
|
|
311
372
|
},
|
|
312
373
|
"has_concept": {
|
|
313
374
|
"id": "has_concept",
|
|
314
|
-
"iri": "
|
|
375
|
+
"iri": "gloss:rel/has_concept",
|
|
315
376
|
"prefLabel": "has concept",
|
|
316
|
-
"definition": "This concept has the nominated concept as a specialisation of its definition (ISO 19135)."
|
|
377
|
+
"definition": "This concept has the nominated concept as a specialisation of its definition (ISO 19135).",
|
|
378
|
+
"category": "hierarchical",
|
|
379
|
+
"inverseOf": "is_concept_of"
|
|
317
380
|
},
|
|
318
381
|
"is_concept_of": {
|
|
319
382
|
"id": "is_concept_of",
|
|
320
|
-
"iri": "
|
|
383
|
+
"iri": "gloss:rel/is_concept_of",
|
|
321
384
|
"prefLabel": "is concept of",
|
|
322
|
-
"definition": "This concept is a specialisation of the source concept (ISO 19135)."
|
|
385
|
+
"definition": "This concept is a specialisation of the source concept (ISO 19135).",
|
|
386
|
+
"category": "hierarchical",
|
|
387
|
+
"inverseOf": "has_concept"
|
|
323
388
|
},
|
|
324
389
|
"instance_of": {
|
|
325
390
|
"id": "instance_of",
|
|
326
|
-
"iri": "
|
|
391
|
+
"iri": "gloss:rel/instance_of",
|
|
327
392
|
"prefLabel": "instance of",
|
|
328
|
-
"definition": "This concept is an instance of the nominated concept (ISO 19135)."
|
|
393
|
+
"definition": "This concept is an instance of the nominated concept (ISO 19135).",
|
|
394
|
+
"category": "hierarchical",
|
|
395
|
+
"inverseOf": "has_instance"
|
|
329
396
|
},
|
|
330
397
|
"has_instance": {
|
|
331
398
|
"id": "has_instance",
|
|
332
|
-
"iri": "
|
|
399
|
+
"iri": "gloss:rel/has_instance",
|
|
333
400
|
"prefLabel": "has instance",
|
|
334
|
-
"definition": "This concept has the nominated concept as an instance (ISO 19135)."
|
|
401
|
+
"definition": "This concept has the nominated concept as an instance (ISO 19135).",
|
|
402
|
+
"category": "hierarchical",
|
|
403
|
+
"inverseOf": "instance_of"
|
|
335
404
|
},
|
|
336
405
|
"has_definition": {
|
|
337
406
|
"id": "has_definition",
|
|
338
|
-
"iri": "
|
|
407
|
+
"iri": "gloss:rel/has_definition",
|
|
339
408
|
"prefLabel": "has definition",
|
|
340
|
-
"definition": "This concept has the nominated concept as its definition (ISO 19135)."
|
|
409
|
+
"definition": "This concept has the nominated concept as its definition (ISO 19135).",
|
|
410
|
+
"category": "definitional",
|
|
411
|
+
"inverseOf": "definition_of"
|
|
341
412
|
},
|
|
342
413
|
"definition_of": {
|
|
343
414
|
"id": "definition_of",
|
|
344
|
-
"iri": "
|
|
415
|
+
"iri": "gloss:rel/definition_of",
|
|
345
416
|
"prefLabel": "definition of",
|
|
346
|
-
"definition": "This concept is the definition of the source concept (ISO 19135)."
|
|
417
|
+
"definition": "This concept is the definition of the source concept (ISO 19135).",
|
|
418
|
+
"category": "definitional",
|
|
419
|
+
"inverseOf": "has_definition"
|
|
347
420
|
},
|
|
348
421
|
"has_part": {
|
|
349
422
|
"id": "has_part",
|
|
350
|
-
"iri": "
|
|
423
|
+
"iri": "gloss:rel/has_part",
|
|
351
424
|
"prefLabel": "has part",
|
|
352
|
-
"definition": "This concept has the nominated concept as a part of its composition (ISO 19135)."
|
|
425
|
+
"definition": "This concept has the nominated concept as a part of its composition (ISO 19135).",
|
|
426
|
+
"category": "hierarchical",
|
|
427
|
+
"inverseOf": "is_part_of"
|
|
353
428
|
},
|
|
354
429
|
"is_part_of": {
|
|
355
430
|
"id": "is_part_of",
|
|
356
|
-
"iri": "
|
|
431
|
+
"iri": "gloss:rel/is_part_of",
|
|
357
432
|
"prefLabel": "is part of",
|
|
358
|
-
"definition": "This concept is a part of the source concept (ISO 19135)."
|
|
433
|
+
"definition": "This concept is a part of the source concept (ISO 19135).",
|
|
434
|
+
"category": "hierarchical",
|
|
435
|
+
"inverseOf": "has_part"
|
|
359
436
|
},
|
|
360
437
|
"inherits": {
|
|
361
438
|
"id": "inherits",
|
|
362
|
-
"iri": "
|
|
439
|
+
"iri": "gloss:rel/inherits",
|
|
363
440
|
"prefLabel": "inherits",
|
|
364
|
-
"definition": "This concept inherits and extends properties from the nominated concept (ISO 19135)."
|
|
441
|
+
"definition": "This concept inherits and extends properties from the nominated concept (ISO 19135).",
|
|
442
|
+
"category": "hierarchical",
|
|
443
|
+
"inverseOf": "inherited_by"
|
|
365
444
|
},
|
|
366
445
|
"inherited_by": {
|
|
367
446
|
"id": "inherited_by",
|
|
368
|
-
"iri": "
|
|
447
|
+
"iri": "gloss:rel/inherited_by",
|
|
369
448
|
"prefLabel": "inherited by",
|
|
370
|
-
"definition": "This concept is inherited by the source concept (ISO 19135)."
|
|
449
|
+
"definition": "This concept is inherited by the source concept (ISO 19135).",
|
|
450
|
+
"category": "hierarchical",
|
|
451
|
+
"inverseOf": "inherits"
|
|
371
452
|
},
|
|
372
453
|
"has_version": {
|
|
373
454
|
"id": "has_version",
|
|
374
|
-
"iri": "
|
|
455
|
+
"iri": "gloss:rel/has_version",
|
|
375
456
|
"prefLabel": "has version",
|
|
376
|
-
"definition": "This concept has the nominated concept as a version (ISO 19135)."
|
|
457
|
+
"definition": "This concept has the nominated concept as a version (ISO 19135).",
|
|
458
|
+
"category": "definitional",
|
|
459
|
+
"inverseOf": "version_of"
|
|
377
460
|
},
|
|
378
461
|
"version_of": {
|
|
379
462
|
"id": "version_of",
|
|
380
|
-
"iri": "
|
|
463
|
+
"iri": "gloss:rel/version_of",
|
|
381
464
|
"prefLabel": "version of",
|
|
382
|
-
"definition": "This concept is a version of the source concept (ISO 19135)."
|
|
465
|
+
"definition": "This concept is a version of the source concept (ISO 19135).",
|
|
466
|
+
"category": "definitional",
|
|
467
|
+
"inverseOf": "has_version"
|
|
383
468
|
},
|
|
384
469
|
"current_version": {
|
|
385
470
|
"id": "current_version",
|
|
386
|
-
"iri": "
|
|
471
|
+
"iri": "gloss:rel/current_version",
|
|
387
472
|
"prefLabel": "current version",
|
|
388
|
-
"definition": "This concept has the nominated concept as its current version (ISO 19135)."
|
|
473
|
+
"definition": "This concept has the nominated concept as its current version (ISO 19135).",
|
|
474
|
+
"category": "definitional",
|
|
475
|
+
"inverseOf": "current_version_of"
|
|
389
476
|
},
|
|
390
477
|
"current_version_of": {
|
|
391
478
|
"id": "current_version_of",
|
|
392
|
-
"iri": "
|
|
479
|
+
"iri": "gloss:rel/current_version_of",
|
|
393
480
|
"prefLabel": "current version of",
|
|
394
|
-
"definition": "This concept is the current version of the source concept (ISO 19135)."
|
|
481
|
+
"definition": "This concept is the current version of the source concept (ISO 19135).",
|
|
482
|
+
"category": "definitional",
|
|
483
|
+
"inverseOf": "current_version"
|
|
395
484
|
},
|
|
396
485
|
"broader": {
|
|
397
486
|
"id": "broader",
|
|
398
|
-
"iri": "
|
|
487
|
+
"iri": "gloss:rel/broader",
|
|
399
488
|
"prefLabel": "broader",
|
|
400
|
-
"definition": "This concept has a broader (more general) scope (SKOS)."
|
|
489
|
+
"definition": "This concept has a broader (more general) scope (SKOS).",
|
|
490
|
+
"category": "hierarchical",
|
|
491
|
+
"inverseOf": "narrower"
|
|
401
492
|
},
|
|
402
493
|
"narrower": {
|
|
403
494
|
"id": "narrower",
|
|
404
|
-
"iri": "
|
|
495
|
+
"iri": "gloss:rel/narrower",
|
|
405
496
|
"prefLabel": "narrower",
|
|
406
|
-
"definition": "This concept has a narrower (more specific) scope (SKOS)."
|
|
497
|
+
"definition": "This concept has a narrower (more specific) scope (SKOS).",
|
|
498
|
+
"category": "hierarchical",
|
|
499
|
+
"inverseOf": "broader"
|
|
407
500
|
},
|
|
408
501
|
"broader_generic": {
|
|
409
502
|
"id": "broader_generic",
|
|
410
|
-
"iri": "
|
|
503
|
+
"iri": "gloss:rel/broader_generic",
|
|
411
504
|
"prefLabel": "broader (generic)",
|
|
412
|
-
"definition": "Generic (is-a) broader relationship (ISO 25964)."
|
|
505
|
+
"definition": "Generic (is-a) broader relationship (ISO 25964).",
|
|
506
|
+
"category": "hierarchical",
|
|
507
|
+
"inverseOf": "narrower_generic"
|
|
413
508
|
},
|
|
414
509
|
"narrower_generic": {
|
|
415
510
|
"id": "narrower_generic",
|
|
416
|
-
"iri": "
|
|
511
|
+
"iri": "gloss:rel/narrower_generic",
|
|
417
512
|
"prefLabel": "narrower (generic)",
|
|
418
|
-
"definition": "Generic (is-a) narrower relationship (ISO 25964)."
|
|
513
|
+
"definition": "Generic (is-a) narrower relationship (ISO 25964).",
|
|
514
|
+
"category": "hierarchical",
|
|
515
|
+
"inverseOf": "broader_generic"
|
|
419
516
|
},
|
|
420
517
|
"broader_partitive": {
|
|
421
518
|
"id": "broader_partitive",
|
|
422
|
-
"iri": "
|
|
519
|
+
"iri": "gloss:rel/broader_partitive",
|
|
423
520
|
"prefLabel": "broader (partitive)",
|
|
424
|
-
"definition": "Partitive (whole-of) broader relationship (ISO 25964)."
|
|
521
|
+
"definition": "Partitive (whole-of) broader relationship (ISO 25964).",
|
|
522
|
+
"category": "hierarchical",
|
|
523
|
+
"inverseOf": "narrower_partitive"
|
|
425
524
|
},
|
|
426
525
|
"narrower_partitive": {
|
|
427
526
|
"id": "narrower_partitive",
|
|
428
|
-
"iri": "
|
|
527
|
+
"iri": "gloss:rel/narrower_partitive",
|
|
429
528
|
"prefLabel": "narrower (partitive)",
|
|
430
|
-
"definition": "Partitive (part-of) narrower relationship (ISO 25964)."
|
|
529
|
+
"definition": "Partitive (part-of) narrower relationship (ISO 25964).",
|
|
530
|
+
"category": "hierarchical",
|
|
531
|
+
"inverseOf": "broader_partitive"
|
|
431
532
|
},
|
|
432
533
|
"broader_instantial": {
|
|
433
534
|
"id": "broader_instantial",
|
|
434
|
-
"iri": "
|
|
535
|
+
"iri": "gloss:rel/broader_instantial",
|
|
435
536
|
"prefLabel": "broader (instantial)",
|
|
436
|
-
"definition": "Instantial broader relationship (ISO 25964)."
|
|
537
|
+
"definition": "Instantial broader relationship (ISO 25964).",
|
|
538
|
+
"category": "hierarchical",
|
|
539
|
+
"inverseOf": "narrower_instantial"
|
|
437
540
|
},
|
|
438
541
|
"narrower_instantial": {
|
|
439
542
|
"id": "narrower_instantial",
|
|
440
|
-
"iri": "
|
|
543
|
+
"iri": "gloss:rel/narrower_instantial",
|
|
441
544
|
"prefLabel": "narrower (instantial)",
|
|
442
|
-
"definition": "Instantial narrower relationship (ISO 25964)."
|
|
545
|
+
"definition": "Instantial narrower relationship (ISO 25964).",
|
|
546
|
+
"category": "hierarchical",
|
|
547
|
+
"inverseOf": "broader_instantial"
|
|
443
548
|
},
|
|
444
549
|
"equivalent": {
|
|
445
550
|
"id": "equivalent",
|
|
446
|
-
"iri": "
|
|
551
|
+
"iri": "gloss:rel/equivalent",
|
|
447
552
|
"prefLabel": "equivalent",
|
|
448
|
-
"definition": "This concept is equivalent to another concept (SKOS)."
|
|
553
|
+
"definition": "This concept is equivalent to another concept (SKOS).",
|
|
554
|
+
"category": "mapping",
|
|
555
|
+
"inverseOf": "equivalent"
|
|
449
556
|
},
|
|
450
557
|
"close_match": {
|
|
451
558
|
"id": "close_match",
|
|
452
|
-
"iri": "
|
|
559
|
+
"iri": "gloss:rel/close_match",
|
|
453
560
|
"prefLabel": "close match",
|
|
454
|
-
"definition": "This concept is a close match to another concept (SKOS)."
|
|
561
|
+
"definition": "This concept is a close match to another concept (SKOS).",
|
|
562
|
+
"category": "mapping",
|
|
563
|
+
"inverseOf": "close_match"
|
|
455
564
|
},
|
|
456
565
|
"broad_match": {
|
|
457
566
|
"id": "broad_match",
|
|
458
|
-
"iri": "
|
|
567
|
+
"iri": "gloss:rel/broad_match",
|
|
459
568
|
"prefLabel": "broad match",
|
|
460
|
-
"definition": "This concept has a broader match to another concept (SKOS)."
|
|
569
|
+
"definition": "This concept has a broader match to another concept (SKOS).",
|
|
570
|
+
"category": "mapping",
|
|
571
|
+
"inverseOf": "narrow_match"
|
|
461
572
|
},
|
|
462
573
|
"narrow_match": {
|
|
463
574
|
"id": "narrow_match",
|
|
464
|
-
"iri": "
|
|
575
|
+
"iri": "gloss:rel/narrow_match",
|
|
465
576
|
"prefLabel": "narrow match",
|
|
466
|
-
"definition": "This concept has a narrower match to another concept (SKOS)."
|
|
577
|
+
"definition": "This concept has a narrower match to another concept (SKOS).",
|
|
578
|
+
"category": "mapping",
|
|
579
|
+
"inverseOf": "broad_match"
|
|
467
580
|
},
|
|
468
581
|
"related_match": {
|
|
469
582
|
"id": "related_match",
|
|
470
|
-
"iri": "
|
|
583
|
+
"iri": "gloss:rel/related_match",
|
|
471
584
|
"prefLabel": "related match",
|
|
472
|
-
"definition": "This concept has a related match to another concept (SKOS)."
|
|
585
|
+
"definition": "This concept has a related match to another concept (SKOS).",
|
|
586
|
+
"category": "mapping",
|
|
587
|
+
"inverseOf": "related_match"
|
|
473
588
|
},
|
|
474
589
|
"see": {
|
|
475
590
|
"id": "see",
|
|
476
|
-
"iri": "
|
|
591
|
+
"iri": "gloss:rel/see",
|
|
477
592
|
"prefLabel": "see",
|
|
478
|
-
"definition": "Reference to another concept (ISO 10241-1)."
|
|
593
|
+
"definition": "Reference to another concept (ISO 10241-1).",
|
|
594
|
+
"category": "associative"
|
|
479
595
|
},
|
|
480
596
|
"related_concept": {
|
|
481
597
|
"id": "related_concept",
|
|
482
|
-
"iri": "
|
|
598
|
+
"iri": "gloss:rel/related_concept",
|
|
483
599
|
"prefLabel": "related concept",
|
|
484
|
-
"definition": "Associative relationship to another concept (ISO 25964)."
|
|
600
|
+
"definition": "Associative relationship to another concept (ISO 25964).",
|
|
601
|
+
"category": "associative",
|
|
602
|
+
"inverseOf": "related_concept"
|
|
485
603
|
},
|
|
486
604
|
"references": {
|
|
487
605
|
"id": "references",
|
|
488
|
-
"iri": "
|
|
606
|
+
"iri": "gloss:rel/references",
|
|
489
607
|
"prefLabel": "references",
|
|
490
|
-
"definition": "This concept references another concept."
|
|
608
|
+
"definition": "This concept references another concept.",
|
|
609
|
+
"category": "associative"
|
|
491
610
|
},
|
|
492
611
|
"sequentially_related": {
|
|
493
612
|
"id": "sequentially_related",
|
|
494
613
|
"iri": "gloss:rel/sequentially_related",
|
|
495
614
|
"prefLabel": "sequentially related",
|
|
496
|
-
"definition": "Sequential spatiotemporal relationship (ISO 25964 / TBX)."
|
|
615
|
+
"definition": "Sequential spatiotemporal relationship (ISO 25964 / TBX).",
|
|
616
|
+
"category": "spatiotemporal",
|
|
617
|
+
"inverseOf": "sequentially_related"
|
|
497
618
|
},
|
|
498
619
|
"spatially_related": {
|
|
499
620
|
"id": "spatially_related",
|
|
500
621
|
"iri": "gloss:rel/spatially_related",
|
|
501
622
|
"prefLabel": "spatially related",
|
|
502
|
-
"definition": "Spatial relationship (ISO 25964 / TBX)."
|
|
623
|
+
"definition": "Spatial relationship (ISO 25964 / TBX).",
|
|
624
|
+
"category": "spatiotemporal",
|
|
625
|
+
"inverseOf": "spatially_related"
|
|
503
626
|
},
|
|
504
627
|
"temporally_related": {
|
|
505
628
|
"id": "temporally_related",
|
|
506
629
|
"iri": "gloss:rel/temporally_related",
|
|
507
630
|
"prefLabel": "temporally related",
|
|
508
|
-
"definition": "Temporal relationship (ISO 25964 / TBX)."
|
|
631
|
+
"definition": "Temporal relationship (ISO 25964 / TBX).",
|
|
632
|
+
"category": "spatiotemporal",
|
|
633
|
+
"inverseOf": "temporally_related"
|
|
509
634
|
},
|
|
510
635
|
"exact_match": {
|
|
511
636
|
"id": "exact_match",
|
|
512
637
|
"iri": "gloss:rel/exact_match",
|
|
513
638
|
"prefLabel": "exact match",
|
|
514
|
-
"definition": "Cross-vocabulary exact equivalence (SKOS skos:exactMatch)."
|
|
639
|
+
"definition": "Cross-vocabulary exact equivalence (SKOS skos:exactMatch).",
|
|
640
|
+
"category": "mapping",
|
|
641
|
+
"inverseOf": "exact_match"
|
|
642
|
+
}
|
|
643
|
+
},
|
|
644
|
+
"categories": {
|
|
645
|
+
"hierarchical": {
|
|
646
|
+
"label": "Hierarchy",
|
|
647
|
+
"color": "text-blue-600 bg-blue-50"
|
|
648
|
+
},
|
|
649
|
+
"mapping": {
|
|
650
|
+
"label": "Equivalence",
|
|
651
|
+
"color": "text-emerald-600 bg-emerald-50"
|
|
652
|
+
},
|
|
653
|
+
"associative": {
|
|
654
|
+
"label": "Associative",
|
|
655
|
+
"color": "text-violet-600 bg-violet-50"
|
|
656
|
+
},
|
|
657
|
+
"lifecycle": {
|
|
658
|
+
"label": "Lifecycle",
|
|
659
|
+
"color": "text-red-600 bg-red-50"
|
|
660
|
+
},
|
|
661
|
+
"comparative": {
|
|
662
|
+
"label": "Comparison",
|
|
663
|
+
"color": "text-amber-600 bg-amber-50"
|
|
664
|
+
},
|
|
665
|
+
"definitional": {
|
|
666
|
+
"label": "Definitional",
|
|
667
|
+
"color": "text-cyan-600 bg-cyan-50"
|
|
668
|
+
},
|
|
669
|
+
"spatiotemporal": {
|
|
670
|
+
"label": "Spatiotemporal",
|
|
671
|
+
"color": "text-teal-600 bg-teal-50"
|
|
672
|
+
},
|
|
673
|
+
"lexical": {
|
|
674
|
+
"label": "Lexical",
|
|
675
|
+
"color": "text-pink-600 bg-pink-50"
|
|
676
|
+
},
|
|
677
|
+
"designation": {
|
|
678
|
+
"label": "Designation",
|
|
679
|
+
"color": "text-gray-600 bg-gray-50"
|
|
515
680
|
}
|
|
516
681
|
}
|
|
517
682
|
},
|
|
@@ -553,6 +718,13 @@
|
|
|
553
718
|
"definition": "An iconic or graphical symbol.",
|
|
554
719
|
"broader": "symbol"
|
|
555
720
|
}
|
|
721
|
+
},
|
|
722
|
+
"colors": {
|
|
723
|
+
"expression": "bg-sky-50 text-sky-700",
|
|
724
|
+
"abbreviation": "bg-amber-50 text-amber-700",
|
|
725
|
+
"symbol": "bg-violet-50 text-violet-700",
|
|
726
|
+
"letter_symbol": "bg-violet-50 text-violet-700",
|
|
727
|
+
"graphical_symbol": "bg-violet-50 text-violet-700"
|
|
556
728
|
}
|
|
557
729
|
},
|
|
558
730
|
"termType": {
|
package/src/i18n/locales/eng.yml
CHANGED
package/src/i18n/locales/fra.yml
CHANGED
package/src/stores/vocabulary.ts
CHANGED
|
@@ -187,7 +187,9 @@ export const useVocabularyStore = defineStore('vocabulary', () => {
|
|
|
187
187
|
]);
|
|
188
188
|
currentConcept.value = concept;
|
|
189
189
|
|
|
190
|
-
|
|
190
|
+
// Note: edges are loaded from the pre-built edges.json via ensureEdgesForDataset.
|
|
191
|
+
// We do NOT call adapter.extractEdges(concept) here because that would duplicate
|
|
192
|
+
// edges already present in edges.json, causing double-rendering of relations.
|
|
191
193
|
const domainEdges = adapter.extractDomainEdges(concept);
|
|
192
194
|
const uriBase = adapter.manifest?.uriBase || 'https://glossarist.org';
|
|
193
195
|
const uri = conceptUri(concept, registerId, uriBase);
|
|
@@ -216,10 +218,6 @@ export const useVocabularyStore = defineStore('vocabulary', () => {
|
|
|
216
218
|
loaded: true,
|
|
217
219
|
});
|
|
218
220
|
|
|
219
|
-
for (const edge of edges) {
|
|
220
|
-
engine.addEdge(edge);
|
|
221
|
-
}
|
|
222
|
-
|
|
223
221
|
for (const edge of domainEdges) {
|
|
224
222
|
engine.addEdge(edge);
|
|
225
223
|
const existing = engine.getNode(edge.target);
|