@glossarist/concept-browser 0.7.58 → 0.7.59

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.
@@ -0,0 +1,36 @@
1
+ {
2
+ "_comment": "Single source of truth for colorable semantic categories. Each entry has explicit light + dark variants. Override per-deployment via site-config.json `colors` block.",
3
+ "relationshipCategory": {
4
+ "lifecycle": { "light": "#B43A2E", "dark": "#F87171" },
5
+ "mapping": { "light": "#0E7C5A", "dark": "#34D399" },
6
+ "hierarchical": { "light": "#1E5FA0", "dark": "#60A5FA" },
7
+ "associative": { "light": "#6B4FBB", "dark": "#A78BFA" },
8
+ "comparative": { "light": "#B57A0E", "dark": "#FBBF24" },
9
+ "definitional": { "light": "#1F7A8C", "dark": "#22D3EE" },
10
+ "spatiotemporal": { "light": "#4A6E7A", "dark": "#67E8F9" },
11
+ "lexical": { "light": "#B5377B", "dark": "#F472B6" },
12
+ "designation": { "light": "#6B6E7D", "dark": "#9CA3AF" }
13
+ },
14
+ "relationshipType": {
15
+ "see": { "light": "#D946A8", "dark": "#F9A8D4" },
16
+ "supersedes": { "light": "#B43A2E", "dark": "#F87171" },
17
+ "superseded_by": { "light": "#8C2A1F", "dark": "#FCA5A5" },
18
+ "references": { "light": "#6B4FBB", "dark": "#A78BFA" },
19
+ "compare": { "light": "#B57A0E", "dark": "#FBBF24" },
20
+ "contrast": { "light": "#7C2D12", "dark": "#FB923C" }
21
+ },
22
+ "conceptStatus": {
23
+ "valid": { "light": "#059669", "dark": "#34D399" },
24
+ "superseded": { "light": "#B57A0E", "dark": "#FBBF24" },
25
+ "withdrawn": { "light": "#6B6E7D", "dark": "#9CA3AF" },
26
+ "draft": { "light": "#6366F1", "dark": "#818CF8" }
27
+ },
28
+ "groupKind": {
29
+ "lineage": { "light": "#B8935A", "dark": "#D4AF6E" },
30
+ "topic": { "light": "#1E5FA0", "dark": "#60A5FA" },
31
+ "family": { "light": "#6B4FBB", "dark": "#A78BFA" },
32
+ "collection": { "light": "#0E7C5A", "dark": "#34D399" },
33
+ "default": { "light": "#6B6E7D", "dark": "#9CA3AF" }
34
+ },
35
+ "_note": "Per-relation-type colors default to the category color. Per-dataset colors default to the palette in src/utils/dataset-style.ts. Both can be overridden via site-config.json colors.dataset[id] and colors.relationshipType[type]."
36
+ }
@@ -0,0 +1,34 @@
1
+ # data/concept-model — vendored data artifacts from concept-model repo
2
+
3
+ This directory holds **data-only** artifacts copied from
4
+ [glossarist/concept-model](https://github.com/glossarist/concept-model).
5
+
6
+ concept-model is a *model* repo (TTL, JSON-LD, YAML schemas). It holds no
7
+ code, no npm package, no Ruby gem. concept-browser vendors the small set
8
+ of data files its build scripts need at runtime. There is no runtime
9
+ dependency on concept-model.
10
+
11
+ ## Files
12
+
13
+ | File | Purpose |
14
+ |------|---------|
15
+ | `glossarist.context.jsonld` | JSON-LD term map — reference |
16
+ | `glossarist.ttl` | OWL ontology — input for `scripts/generate-ontology-schema.mjs` |
17
+ | `prefixes.ttl` | Canonical prefix bindings (SSOT) — input for `scripts/generate-prefixes.mjs` |
18
+ | `shapes/glossarist.shacl.ttl` | SHACL shapes — input for `scripts/validate-shacl.mjs` (build-time CI gate) |
19
+
20
+ ## Syncing
21
+
22
+ Update these files from the latest concept-model tag:
23
+
24
+ ```bash
25
+ npm run sync:model # fetches latest from glossarist/concept-model
26
+ npm run sync:model -- v3.0.0 # pin to a specific tag
27
+ ```
28
+
29
+ ## Why vendor instead of `npm install`?
30
+
31
+ Because concept-model is not an npm package. Treating it as one would
32
+ require bolting codegen + packaging onto a repo that should only hold
33
+ data. Vendoring the small data files we need keeps the model repo clean
34
+ and lets this repo's build scripts evolve independently.
@@ -0,0 +1,6 @@
1
+ {
2
+ "repo": "glossarist/concept-model",
3
+ "ref": "v3.1.0",
4
+ "commit": "49e4dc40dca52ebd783c92a9ff534a62439b236e",
5
+ "syncedAt": "2026-07-05T15:10:00Z"
6
+ }
@@ -0,0 +1,261 @@
1
+ {
2
+ "@context": {
3
+ "@version": 1.1,
4
+
5
+ "gloss": "https://www.glossarist.org/ontologies/",
6
+ "skos": "http://www.w3.org/2004/02/skos/core#",
7
+ "skosxl": "http://www.w3.org/2008/05/skos-xl#",
8
+ "iso-thes": "http://purl.org/iso25964/skos-thes#",
9
+ "dcterms": "http://purl.org/dc/terms/",
10
+ "prov": "http://www.w3.org/ns/prov#",
11
+ "owl": "http://www.w3.org/2002/07/owl#",
12
+ "rdf": "http://www.w3.org/1999/02/22-rdf-syntax-ns#",
13
+ "rdfs": "http://www.w3.org/2000/01/rdf-schema#",
14
+ "xsd": "http://www.w3.org/2001/XMLSchema#",
15
+ "vann": "http://purl.org/vocab/vann/",
16
+
17
+ "Concept": "gloss:Concept",
18
+ "ConceptCollection": "gloss:ConceptCollection",
19
+ "LocalizedConcept": "gloss:LocalizedConcept",
20
+ "Designation": "gloss:Designation",
21
+ "Expression": "gloss:Expression",
22
+ "Abbreviation": "gloss:Abbreviation",
23
+ "Symbol": "gloss:Symbol",
24
+ "LetterSymbol": "gloss:LetterSymbol",
25
+ "GraphicalSymbol": "gloss:GraphicalSymbol",
26
+ "Prefix": "gloss:Prefix",
27
+ "Suffix": "gloss:Suffix",
28
+ "Pronunciation": "gloss:Pronunciation",
29
+ "GrammarInfo": "gloss:GrammarInfo",
30
+ "DetailedDefinition": "gloss:DetailedDefinition",
31
+ "ConceptSource": "gloss:ConceptSource",
32
+ "Citation": "gloss:Citation",
33
+ "CitationRef": "gloss:CitationRef",
34
+ "ConceptRef": "gloss:ConceptRef",
35
+ "Reference": "gloss:Reference",
36
+ "RelatedConcept": "gloss:RelatedConcept",
37
+ "DesignationRelationship": "gloss:DesignationRelationship",
38
+ "ConceptDate": "gloss:ConceptDate",
39
+ "NonVerbalRepresentation": "gloss:NonVerbalRepresentation",
40
+ "NonVerbalEntity": "gloss:NonVerbalEntity",
41
+ "SharedNonVerbalEntity": "gloss:SharedNonVerbalEntity",
42
+ "Figure": "gloss:Figure",
43
+ "Table": "gloss:Table",
44
+ "Formula": "gloss:Formula",
45
+ "FigureImage": "gloss:FigureImage",
46
+ "CustomLocality": "gloss:CustomLocality",
47
+ "Locality": "gloss:Locality",
48
+ "DatasetRegister": "gloss:DatasetRegister",
49
+ "Section": "gloss:Section",
50
+
51
+ "identifier": { "@id": "gloss:identifier", "@type": "xsd:string" },
52
+ "uri": { "@id": "gloss:uri", "@type": "xsd:anyURI" },
53
+ "hasLocalization": { "@id": "gloss:hasLocalization", "@type": "@id" },
54
+ "isLocalizationOf": { "@id": "gloss:isLocalizationOf", "@type": "@id" },
55
+ "hasStatus": { "@id": "gloss:hasStatus", "@type": "@id" },
56
+ "hasDomain": { "@id": "gloss:hasDomain", "@type": "@id" },
57
+ "hasRelatedConcept": { "@id": "gloss:hasRelatedConcept", "@type": "@id" },
58
+ "hasDate": { "@id": "gloss:hasDate", "@type": "@id" },
59
+ "hasSource": { "@id": "gloss:hasSource", "@type": "@id" },
60
+
61
+ "hasEntryStatus": { "@id": "gloss:hasEntryStatus", "@type": "@id" },
62
+ "hasDesignation": { "@id": "gloss:hasDesignation", "@type": "@id" },
63
+ "hasDefinition": { "@id": "gloss:hasDefinition", "@type": "@id" },
64
+ "hasNote": { "@id": "gloss:hasNote", "@type": "@id" },
65
+ "hasExample": { "@id": "gloss:hasExample", "@type": "@id" },
66
+ "hasScopedExample": { "@id": "gloss:hasScopedExample", "@type": "@id" },
67
+ "hasAnnotation": { "@id": "gloss:hasAnnotation", "@type": "@id" },
68
+ "hasNonVerbalRep": { "@id": "gloss:hasNonVerbalRep", "@type": "@id" },
69
+ "domain": { "@id": "gloss:domain", "@type": "xsd:anyURI" },
70
+ "release": { "@id": "gloss:release", "@type": "xsd:string" },
71
+ "lineageSimilarity": { "@id": "gloss:lineageSimilarity", "@type": "xsd:integer" },
72
+ "reviewType": { "@id": "gloss:reviewType", "@type": "xsd:string" },
73
+
74
+ "normativeStatus": { "@id": "gloss:normativeStatus", "@type": "@id" },
75
+ "hasPronunciation": { "@id": "gloss:hasPronunciation", "@type": "@id" },
76
+ "hasTermType": { "@id": "gloss:hasTermType", "@type": "@id" },
77
+ "classification": { "@id": "gloss:classification", "@type": "xsd:string" },
78
+ "hasReference": { "@id": "gloss:hasReference", "@type": "@id" },
79
+ "hasGrammarInfo": { "@id": "gloss:hasGrammarInfo", "@type": "@id" },
80
+ "geographicalArea": { "@id": "gloss:geographicalArea", "@type": "xsd:string" },
81
+ "isInternational": { "@id": "gloss:isInternational", "@type": "xsd:boolean" },
82
+ "isAbsent": { "@id": "gloss:isAbsent", "@type": "xsd:boolean" },
83
+ "register": { "@id": "gloss:register", "@type": "xsd:string" },
84
+
85
+ "prefix": { "@id": "gloss:prefix", "@type": "xsd:string" },
86
+ "usageInfo": { "@id": "gloss:usageInfo", "@type": "xsd:string" },
87
+ "fieldOfApplication": { "@id": "gloss:fieldOfApplication", "@type": "xsd:string" },
88
+
89
+ "isAcronym": { "@id": "gloss:isAcronym", "@type": "xsd:boolean" },
90
+ "isInitialism": { "@id": "gloss:isInitialism", "@type": "xsd:boolean" },
91
+ "isTruncation": { "@id": "gloss:isTruncation", "@type": "xsd:boolean" },
92
+
93
+ "text": { "@id": "gloss:text", "@type": "xsd:string" },
94
+ "image": { "@id": "gloss:image", "@type": "xsd:anyURI" },
95
+ "caption": { "@id": "gloss:caption", "@type": "xsd:string" },
96
+ "altText": { "@id": "gloss:altText", "@type": "xsd:string" },
97
+ "description": { "@id": "gloss:description", "@type": "xsd:string" },
98
+ "expression": { "@id": "gloss:expression", "@type": "xsd:string" },
99
+ "latexForm": { "@id": "gloss:latexForm", "@type": "xsd:string" },
100
+ "content": { "@id": "gloss:content", "@type": "xsd:string" },
101
+ "hasSubfigure": { "@id": "gloss:hasSubfigure", "@type": "@id" },
102
+ "src": { "@id": "gloss:src", "@type": "xsd:string" },
103
+ "format": { "@id": "gloss:format", "@type": "xsd:string" },
104
+ "role": { "@id": "gloss:role", "@type": "xsd:string" },
105
+
106
+ "pronunciationContent": { "@id": "gloss:pronunciationContent", "@type": "xsd:string" },
107
+ "pronunciationLanguage": { "@id": "gloss:pronunciationLanguage", "@type": "xsd:string" },
108
+ "pronunciationScript": { "@id": "gloss:pronunciationScript", "@type": "xsd:string" },
109
+ "pronunciationCountry": { "@id": "gloss:pronunciationCountry", "@type": "xsd:string" },
110
+ "pronunciationSystem": { "@id": "gloss:pronunciationSystem", "@type": "xsd:string" },
111
+
112
+ "relationshipType": { "@id": "gloss:relationshipType", "@type": "@id" },
113
+ "relationshipContent": { "@id": "gloss:relationshipContent", "@type": "xsd:string" },
114
+ "relationshipRef": { "@id": "gloss:relationshipRef", "@type": "@id" },
115
+
116
+ "refType": { "@id": "gloss:refType", "@type": "xsd:string" },
117
+ "urn": { "@id": "gloss:urn", "@type": "xsd:anyURI" },
118
+ "term": { "@id": "gloss:term", "@type": "xsd:string" },
119
+ "refId": { "@id": "gloss:refId", "@type": "xsd:string" },
120
+ "refVersion": { "@id": "gloss:refVersion", "@type": "xsd:string" },
121
+ "refLink": { "@id": "gloss:refLink", "@type": "xsd:anyURI" },
122
+
123
+ "sourceType": { "@id": "gloss:sourceType", "@type": "@id" },
124
+ "sourceStatus": { "@id": "gloss:sourceStatus", "@type": "@id" },
125
+ "sourceId": { "@id": "gloss:sourceId", "@type": "xsd:string" },
126
+ "sourceOrigin": { "@id": "gloss:sourceOrigin", "@type": "@id" },
127
+ "modification": { "@id": "gloss:modification", "@type": "xsd:string" },
128
+
129
+ "hasCitationRef": { "@id": "gloss:hasCitationRef", "@type": "@id" },
130
+ "hasCitationLocality": { "@id": "gloss:hasCitationLocality", "@type": "@id" },
131
+ "citationOriginal": { "@id": "gloss:citationOriginal", "@type": "xsd:string" },
132
+ "hasCustomLocality": { "@id": "gloss:hasCustomLocality", "@type": "@id" },
133
+
134
+ "citationRefSource": { "@id": "gloss:citationRefSource", "@type": "xsd:string" },
135
+ "citationRefId": { "@id": "gloss:citationRefId", "@type": "xsd:string" },
136
+ "citationRefVersion": { "@id": "gloss:citationRefVersion", "@type": "xsd:string" },
137
+
138
+ "conceptRefSource": { "@id": "gloss:conceptRefSource", "@type": "xsd:string" },
139
+ "conceptRefId": { "@id": "gloss:conceptRefId", "@type": "xsd:string" },
140
+ "conceptRefText": { "@id": "gloss:conceptRefText", "@type": "xsd:string" },
141
+
142
+ "customLocalityName": { "@id": "gloss:customLocalityName", "@type": "xsd:string" },
143
+ "customLocalityValue": { "@id": "gloss:customLocalityValue", "@type": "xsd:string" },
144
+
145
+ "citationLink": { "@id": "gloss:citationLink", "@type": "xsd:anyURI" },
146
+ "hasLocality": { "@id": "gloss:hasLocality", "@type": "@id" },
147
+
148
+ "dateValue": { "@id": "gloss:dateValue", "@type": "xsd:dateTime" },
149
+ "dateType": { "@id": "gloss:dateType", "@type": "@id" },
150
+ "eventDescription": { "@id": "gloss:eventDescription", "@type": "xsd:string" },
151
+
152
+ "representationType": { "@id": "gloss:representationType", "@type": "xsd:string" },
153
+ "representationRef": { "@id": "gloss:representationRef", "@type": "xsd:anyURI" },
154
+ "representationText": { "@id": "gloss:representationText", "@type": "xsd:string" },
155
+
156
+ "localityType": { "@id": "gloss:localityType", "@type": "xsd:string" },
157
+ "referenceFrom": { "@id": "gloss:referenceFrom", "@type": "xsd:string" },
158
+ "referenceTo": { "@id": "gloss:referenceTo", "@type": "xsd:string" },
159
+
160
+ "gender": { "@id": "gloss:gender", "@type": "@id" },
161
+ "number": { "@id": "gloss:number", "@type": "@id" },
162
+ "isNoun": { "@id": "gloss:isNoun", "@type": "xsd:boolean" },
163
+ "isVerb": { "@id": "gloss:isVerb", "@type": "xsd:boolean" },
164
+ "isAdjective": { "@id": "gloss:isAdjective", "@type": "xsd:boolean" },
165
+ "isAdverb": { "@id": "gloss:isAdverb", "@type": "xsd:boolean" },
166
+ "isPreposition": { "@id": "gloss:isPreposition", "@type": "xsd:boolean" },
167
+ "isParticiple": { "@id": "gloss:isParticiple", "@type": "xsd:boolean" },
168
+ "partOfSpeech": { "@id": "gloss:partOfSpeech", "@type": "xsd:string" },
169
+
170
+ "script": { "@id": "gloss:script", "@type": "xsd:string" },
171
+ "conversionSystem": { "@id": "gloss:conversionSystem", "@type": "xsd:string" },
172
+
173
+ "deprecates": { "@id": "gloss:deprecates", "@type": "@id" },
174
+ "deprecatedBy": { "@id": "gloss:deprecatedBy", "@type": "@id" },
175
+ "supersedes": { "@id": "gloss:supersedes", "@type": "@id" },
176
+ "supersededBy": { "@id": "gloss:supersededBy", "@type": "@id" },
177
+ "compares": { "@id": "gloss:compares", "@type": "@id" },
178
+ "contrasts": { "@id": "gloss:contrasts", "@type": "@id" },
179
+ "sequentiallyRelated": { "@id": "gloss:sequentiallyRelated", "@type": "@id" },
180
+ "spatiallyRelated": { "@id": "gloss:spatiallyRelated", "@type": "@id" },
181
+ "temporallyRelated": { "@id": "gloss:temporallyRelated", "@type": "@id" },
182
+ "hasHomograph": { "@id": "gloss:hasHomograph", "@type": "@id" },
183
+ "hasFalseFriend": { "@id": "gloss:hasFalseFriend", "@type": "@id" },
184
+ "abbreviatedFormFor": { "@id": "gloss:abbreviatedFormFor", "@type": "@id" },
185
+ "shortFormFor": { "@id": "gloss:shortFormFor", "@type": "@id" },
186
+
187
+ "hasDesignationRelationship": { "@id": "gloss:hasDesignationRelationship", "@type": "@id" },
188
+ "designationRelationshipType": { "@id": "gloss:designationRelationshipType", "@type": "@id" },
189
+ "designationRelationshipContent": { "@id": "gloss:designationRelationshipContent", "@type": "xsd:string" },
190
+ "relationshipTarget": { "@id": "gloss:relationshipTarget", "@type": "xsd:string" },
191
+
192
+ "prefLabel": "skos:prefLabel",
193
+ "altLabel": "skos:altLabel",
194
+ "hiddenLabel": "skos:hiddenLabel",
195
+ "definition": "skos:definition",
196
+ "scopeNote": "skos:scopeNote",
197
+ "note": "skos:note",
198
+ "example": "skos:example",
199
+ "notation": "skos:notation",
200
+ "inScheme": { "@id": "skos:inScheme", "@type": "@id" },
201
+ "hasTopConcept": { "@id": "skos:hasTopConcept", "@type": "@id" },
202
+ "broader": { "@id": "skos:broader", "@type": "@id" },
203
+ "narrower": { "@id": "skos:narrower", "@type": "@id" },
204
+ "related": { "@id": "skos:related", "@type": "@id" },
205
+ "exactMatch": { "@id": "skos:exactMatch", "@type": "@id" },
206
+ "closeMatch": { "@id": "skos:closeMatch", "@type": "@id" },
207
+ "broadMatch": { "@id": "skos:broadMatch", "@type": "@id" },
208
+ "narrowMatch": { "@id": "skos:narrowMatch", "@type": "@id" },
209
+ "relatedMatch": { "@id": "skos:relatedMatch", "@type": "@id" },
210
+
211
+ "literalForm": "skosxl:literalForm",
212
+ "labelRelation": "skosxl:labelRelation",
213
+
214
+ "broaderGeneric": { "@id": "iso-thes:broaderGeneric", "@type": "@id" },
215
+ "narrowerGeneric": { "@id": "iso-thes:narrowerGeneric", "@type": "@id" },
216
+ "broaderPartitive": { "@id": "iso-thes:broaderPartitive", "@type": "@id" },
217
+ "narrowerPartitive": { "@id": "iso-thes:narrowerPartitive", "@type": "@id" },
218
+ "broaderInstantial": { "@id": "iso-thes:broaderInstantial", "@type": "@id" },
219
+ "narrowerInstantial": { "@id": "iso-thes:narrowerInstantial", "@type": "@id" },
220
+
221
+ "language": { "@id": "gloss:language", "@type": "xsd:string" },
222
+ "bibliographicCitation": { "@id": "dcterms:bibliographicCitation", "@type": "xsd:string" },
223
+
224
+ "wasDerivedFrom": { "@id": "prov:wasDerivedFrom", "@type": "@id" },
225
+ "hadDerivation": { "@id": "prov:hadDerivation", "@type": "@id" },
226
+ "qualifiedDerivation": { "@id": "prov:qualifiedDerivation", "@type": "@id" },
227
+
228
+ "label": "rdfs:label",
229
+ "comment": "rdfs:comment",
230
+ "seeAlso": { "@id": "rdfs:seeAlso", "@type": "@id" },
231
+ "subClassOf": { "@id": "rdfs:subClassOf", "@type": "@id" },
232
+
233
+ "type": { "@id": "@type", "@container": "@set" },
234
+ "id": "@id",
235
+ "value": "rdf:value",
236
+
237
+ "datasetId": { "@id": "gloss:datasetId", "@type": "xsd:string" },
238
+ "datasetRef": { "@id": "gloss:datasetRef", "@type": "xsd:string" },
239
+ "datasetYear": { "@id": "gloss:datasetYear", "@type": "xsd:integer" },
240
+ "datasetUrn": { "@id": "gloss:datasetUrn", "@type": "xsd:anyURI" },
241
+ "datasetUrnAlias": { "@id": "gloss:datasetUrnAlias", "@type": "xsd:anyURI" },
242
+ "datasetRefAlias": { "@id": "gloss:datasetRefAlias", "@type": "xsd:string" },
243
+ "datasetStatus": { "@id": "gloss:datasetStatus", "@type": "xsd:string" },
244
+ "supersedesDataset": { "@id": "gloss:supersedesDataset","@type": "xsd:string" },
245
+ "owner": { "@id": "gloss:owner", "@type": "xsd:string" },
246
+ "sourceRepo": { "@id": "gloss:sourceRepo", "@type": "xsd:anyURI" },
247
+ "datasetLanguage": { "@id": "gloss:datasetLanguage", "@type": "xsd:string" },
248
+ "languageOrder": { "@id": "gloss:languageOrder", "@type": "xsd:string" },
249
+ "hasSection": { "@id": "gloss:hasSection", "@type": "@id" },
250
+ "hasDefaultOrdering": { "@id": "gloss:hasDefaultOrdering", "@type": "@id" },
251
+ "datasetDescription": { "@id": "gloss:datasetDescription", "@type": "xsd:string" },
252
+ "aboutPath": { "@id": "gloss:aboutPath", "@type": "xsd:string" },
253
+ "logo": { "@id": "gloss:logo", "@type": "xsd:anyURI" },
254
+
255
+ "sectionId": { "@id": "gloss:sectionId", "@type": "xsd:string" },
256
+ "sectionName": { "@id": "gloss:sectionName", "@type": "xsd:string" },
257
+ "hasChildSection": { "@id": "gloss:hasChildSection", "@type": "@id" },
258
+ "hasParentSection": { "@id": "gloss:hasParentSection", "@type": "@id" },
259
+ "sectionOrdering": { "@id": "gloss:sectionOrdering", "@type": "@id" }
260
+ }
261
+ }