glossarist 0.4.49 → 0.4.51

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 (700) hide show
  1. package/dist/compiled-format.d.ts +43 -0
  2. package/dist/compiled-format.d.ts.map +1 -0
  3. package/{src/compiled-format.ts → dist/compiled-format.js} +28 -46
  4. package/dist/compiled-format.js.map +1 -0
  5. package/dist/concept-collection.d.ts +39 -0
  6. package/dist/concept-collection.d.ts.map +1 -0
  7. package/dist/concept-collection.js +127 -0
  8. package/dist/concept-collection.js.map +1 -0
  9. package/dist/concept-diff.d.ts +14 -0
  10. package/dist/concept-diff.d.ts.map +1 -0
  11. package/{src/concept-diff.ts → dist/concept-diff.js} +2 -20
  12. package/dist/concept-diff.js.map +1 -0
  13. package/dist/concept-parser.d.ts +11 -0
  14. package/dist/concept-parser.d.ts.map +1 -0
  15. package/dist/concept-parser.js +209 -0
  16. package/dist/concept-parser.js.map +1 -0
  17. package/dist/concept-reader.d.ts +55 -0
  18. package/dist/concept-reader.d.ts.map +1 -0
  19. package/{src/concept-reader.ts → dist/concept-reader.js} +70 -76
  20. package/dist/concept-reader.js.map +1 -0
  21. package/dist/concept-serializer.d.ts +9 -0
  22. package/dist/concept-serializer.d.ts.map +1 -0
  23. package/dist/concept-serializer.js +87 -0
  24. package/dist/concept-serializer.js.map +1 -0
  25. package/dist/concept-writer.d.ts +10 -0
  26. package/dist/concept-writer.d.ts.map +1 -0
  27. package/dist/concept-writer.js +28 -0
  28. package/dist/concept-writer.js.map +1 -0
  29. package/dist/dataset-asset.d.ts +49 -0
  30. package/dist/dataset-asset.d.ts.map +1 -0
  31. package/{src/dataset-asset.ts → dist/dataset-asset.js} +16 -33
  32. package/dist/dataset-asset.js.map +1 -0
  33. package/dist/diff/canonical-json.d.ts +7 -0
  34. package/dist/diff/canonical-json.d.ts.map +1 -0
  35. package/dist/diff/canonical-json.js +28 -0
  36. package/dist/diff/canonical-json.js.map +1 -0
  37. package/dist/diff/change.d.ts +67 -0
  38. package/dist/diff/change.d.ts.map +1 -0
  39. package/dist/diff/change.js +131 -0
  40. package/dist/diff/change.js.map +1 -0
  41. package/dist/diff/collection-diff.d.ts +50 -0
  42. package/dist/diff/collection-diff.d.ts.map +1 -0
  43. package/dist/diff/collection-diff.js +182 -0
  44. package/dist/diff/collection-diff.js.map +1 -0
  45. package/dist/diff/concept-diff.d.ts +188 -0
  46. package/dist/diff/concept-diff.d.ts.map +1 -0
  47. package/dist/diff/concept-diff.js +624 -0
  48. package/dist/diff/concept-diff.js.map +1 -0
  49. package/dist/diff/diff-patch.d.ts +7 -0
  50. package/dist/diff/diff-patch.d.ts.map +1 -0
  51. package/dist/diff/diff-patch.js +225 -0
  52. package/dist/diff/diff-patch.js.map +1 -0
  53. package/dist/diff/diff-renderer.d.ts +44 -0
  54. package/dist/diff/diff-renderer.d.ts.map +1 -0
  55. package/dist/diff/diff-renderer.js +263 -0
  56. package/dist/diff/diff-renderer.js.map +1 -0
  57. package/dist/diff/identity.d.ts +2 -0
  58. package/dist/diff/identity.d.ts.map +1 -0
  59. package/dist/diff/identity.js +29 -0
  60. package/dist/diff/identity.js.map +1 -0
  61. package/dist/diff/index.d.ts +8 -0
  62. package/dist/diff/index.d.ts.map +1 -0
  63. package/dist/diff/index.js +8 -0
  64. package/dist/diff/index.js.map +1 -0
  65. package/dist/diff/list-diff.d.ts +36 -0
  66. package/dist/diff/list-diff.d.ts.map +1 -0
  67. package/dist/diff/list-diff.js +185 -0
  68. package/dist/diff/list-diff.js.map +1 -0
  69. package/dist/diff/similarity.d.ts +4 -0
  70. package/dist/diff/similarity.d.ts.map +1 -0
  71. package/dist/diff/similarity.js +20 -0
  72. package/dist/diff/similarity.js.map +1 -0
  73. package/dist/diff/text-diff.d.ts +42 -0
  74. package/dist/diff/text-diff.d.ts.map +1 -0
  75. package/dist/diff/text-diff.js +134 -0
  76. package/dist/diff/text-diff.js.map +1 -0
  77. package/dist/entity-directory.d.ts +13 -0
  78. package/dist/entity-directory.d.ts.map +1 -0
  79. package/dist/entity-directory.js +35 -0
  80. package/dist/entity-directory.js.map +1 -0
  81. package/dist/errors.d.ts +15 -0
  82. package/dist/errors.d.ts.map +1 -0
  83. package/dist/errors.js +23 -0
  84. package/dist/errors.js.map +1 -0
  85. package/dist/gcr-reader.d.ts +57 -0
  86. package/dist/gcr-reader.d.ts.map +1 -0
  87. package/dist/gcr-reader.js +264 -0
  88. package/dist/gcr-reader.js.map +1 -0
  89. package/dist/gcr-writer.d.ts +23 -0
  90. package/dist/gcr-writer.d.ts.map +1 -0
  91. package/dist/gcr-writer.js +84 -0
  92. package/dist/gcr-writer.js.map +1 -0
  93. package/dist/index.d.ts +21 -0
  94. package/dist/index.d.ts.map +1 -0
  95. package/{src/index.ts → dist/index.js} +6 -66
  96. package/dist/index.js.map +1 -0
  97. package/dist/managed-concept-collection.d.ts +31 -0
  98. package/dist/managed-concept-collection.d.ts.map +1 -0
  99. package/dist/managed-concept-collection.js +87 -0
  100. package/dist/managed-concept-collection.js.map +1 -0
  101. package/dist/migration/hyperedge-migrator.d.ts +33 -0
  102. package/dist/migration/hyperedge-migrator.d.ts.map +1 -0
  103. package/dist/migration/hyperedge-migrator.js +70 -0
  104. package/dist/migration/hyperedge-migrator.js.map +1 -0
  105. package/dist/models/abstract-hyperedge.d.ts +35 -0
  106. package/dist/models/abstract-hyperedge.d.ts.map +1 -0
  107. package/dist/models/abstract-hyperedge.js +112 -0
  108. package/dist/models/abstract-hyperedge.js.map +1 -0
  109. package/dist/models/base.d.ts +58 -0
  110. package/dist/models/base.d.ts.map +1 -0
  111. package/dist/models/base.js +77 -0
  112. package/dist/models/base.js.map +1 -0
  113. package/dist/models/bibliography-data.d.ts +20 -0
  114. package/dist/models/bibliography-data.d.ts.map +1 -0
  115. package/dist/models/bibliography-data.js +43 -0
  116. package/dist/models/bibliography-data.js.map +1 -0
  117. package/dist/models/bibliography-entry.d.ts +19 -0
  118. package/dist/models/bibliography-entry.d.ts.map +1 -0
  119. package/dist/models/bibliography-entry.js +34 -0
  120. package/dist/models/bibliography-entry.js.map +1 -0
  121. package/dist/models/citation.d.ts +40 -0
  122. package/dist/models/citation.d.ts.map +1 -0
  123. package/dist/models/citation.js +82 -0
  124. package/dist/models/citation.js.map +1 -0
  125. package/dist/models/completeness.d.ts +9 -0
  126. package/dist/models/completeness.d.ts.map +1 -0
  127. package/{src/models/completeness.ts → dist/models/completeness.js} +4 -9
  128. package/dist/models/completeness.js.map +1 -0
  129. package/dist/models/concept-date.d.ts +20 -0
  130. package/dist/models/concept-date.d.ts.map +1 -0
  131. package/dist/models/concept-date.js +36 -0
  132. package/dist/models/concept-date.js.map +1 -0
  133. package/dist/models/concept-ref.d.ts +32 -0
  134. package/dist/models/concept-ref.d.ts.map +1 -0
  135. package/dist/models/concept-ref.js +53 -0
  136. package/dist/models/concept-ref.js.map +1 -0
  137. package/dist/models/concept-reference.d.ts +22 -0
  138. package/dist/models/concept-reference.d.ts.map +1 -0
  139. package/dist/models/concept-reference.js +39 -0
  140. package/dist/models/concept-reference.js.map +1 -0
  141. package/dist/models/concept-source.d.ts +53 -0
  142. package/dist/models/concept-source.d.ts.map +1 -0
  143. package/dist/models/concept-source.js +66 -0
  144. package/dist/models/concept-source.js.map +1 -0
  145. package/dist/models/concept-system-type.d.ts +6 -0
  146. package/dist/models/concept-system-type.d.ts.map +1 -0
  147. package/dist/models/concept-system-type.js +22 -0
  148. package/dist/models/concept-system-type.js.map +1 -0
  149. package/dist/models/concept-system.d.ts +44 -0
  150. package/dist/models/concept-system.d.ts.map +1 -0
  151. package/dist/models/concept-system.js +115 -0
  152. package/dist/models/concept-system.js.map +1 -0
  153. package/dist/models/concept-type.d.ts +7 -0
  154. package/dist/models/concept-type.d.ts.map +1 -0
  155. package/{src/models/concept-type.ts → dist/models/concept-type.js} +8 -19
  156. package/dist/models/concept-type.js.map +1 -0
  157. package/dist/models/concept.d.ts +94 -0
  158. package/dist/models/concept.d.ts.map +1 -0
  159. package/dist/models/concept.js +368 -0
  160. package/dist/models/concept.js.map +1 -0
  161. package/dist/models/dataset-color.d.ts +28 -0
  162. package/dist/models/dataset-color.d.ts.map +1 -0
  163. package/dist/models/dataset-color.js +74 -0
  164. package/dist/models/dataset-color.js.map +1 -0
  165. package/dist/models/definition-type.d.ts +9 -0
  166. package/dist/models/definition-type.d.ts.map +1 -0
  167. package/{src/models/definition-type.ts → dist/models/definition-type.js} +6 -15
  168. package/dist/models/definition-type.js.map +1 -0
  169. package/dist/models/designation-relationship.d.ts +17 -0
  170. package/dist/models/designation-relationship.d.ts.map +1 -0
  171. package/dist/models/designation-relationship.js +30 -0
  172. package/dist/models/designation-relationship.js.map +1 -0
  173. package/dist/models/designation.d.ts +110 -0
  174. package/dist/models/designation.d.ts.map +1 -0
  175. package/dist/models/designation.js +224 -0
  176. package/dist/models/designation.js.map +1 -0
  177. package/dist/models/detailed-definition.d.ts +34 -0
  178. package/dist/models/detailed-definition.d.ts.map +1 -0
  179. package/dist/models/detailed-definition.js +63 -0
  180. package/dist/models/detailed-definition.js.map +1 -0
  181. package/dist/models/enum.d.ts +21 -0
  182. package/dist/models/enum.d.ts.map +1 -0
  183. package/dist/models/enum.js +39 -0
  184. package/dist/models/enum.js.map +1 -0
  185. package/dist/models/equivalence-degree.d.ts +7 -0
  186. package/dist/models/equivalence-degree.d.ts.map +1 -0
  187. package/dist/models/equivalence-degree.js +20 -0
  188. package/dist/models/equivalence-degree.js.map +1 -0
  189. package/dist/models/figure.d.ts +40 -0
  190. package/dist/models/figure.d.ts.map +1 -0
  191. package/dist/models/figure.js +82 -0
  192. package/dist/models/figure.js.map +1 -0
  193. package/dist/models/formula.d.ts +15 -0
  194. package/dist/models/formula.d.ts.map +1 -0
  195. package/dist/models/formula.js +27 -0
  196. package/dist/models/formula.js.map +1 -0
  197. package/dist/models/gcr-metadata.d.ts +62 -0
  198. package/dist/models/gcr-metadata.d.ts.map +1 -0
  199. package/dist/models/gcr-metadata.js +102 -0
  200. package/dist/models/gcr-metadata.js.map +1 -0
  201. package/dist/models/gcr-statistics.d.ts +30 -0
  202. package/dist/models/gcr-statistics.d.ts.map +1 -0
  203. package/dist/models/gcr-statistics.js +53 -0
  204. package/dist/models/gcr-statistics.js.map +1 -0
  205. package/dist/models/generic-hyperedge.d.ts +32 -0
  206. package/dist/models/generic-hyperedge.d.ts.map +1 -0
  207. package/dist/models/generic-hyperedge.js +51 -0
  208. package/dist/models/generic-hyperedge.js.map +1 -0
  209. package/dist/models/generic-member.d.ts +14 -0
  210. package/dist/models/generic-member.d.ts.map +1 -0
  211. package/dist/models/generic-member.js +51 -0
  212. package/dist/models/generic-member.js.map +1 -0
  213. package/dist/models/grammar-info.d.ts +34 -0
  214. package/dist/models/grammar-info.d.ts.map +1 -0
  215. package/dist/models/grammar-info.js +59 -0
  216. package/dist/models/grammar-info.js.map +1 -0
  217. package/dist/models/hyperedge-colors.d.ts +19 -0
  218. package/dist/models/hyperedge-colors.d.ts.map +1 -0
  219. package/dist/models/hyperedge-colors.js +61 -0
  220. package/dist/models/hyperedge-colors.js.map +1 -0
  221. package/dist/models/hyperedge-index.d.ts +34 -0
  222. package/dist/models/hyperedge-index.d.ts.map +1 -0
  223. package/dist/models/hyperedge-index.js +85 -0
  224. package/dist/models/hyperedge-index.js.map +1 -0
  225. package/dist/models/hyperedge-member.d.ts +28 -0
  226. package/dist/models/hyperedge-member.d.ts.map +1 -0
  227. package/dist/models/hyperedge-member.js +92 -0
  228. package/dist/models/hyperedge-member.js.map +1 -0
  229. package/dist/models/hyperedge-registry.d.ts +47 -0
  230. package/dist/models/hyperedge-registry.d.ts.map +1 -0
  231. package/dist/models/hyperedge-registry.js +118 -0
  232. package/dist/models/hyperedge-registry.js.map +1 -0
  233. package/dist/models/index.d.ts +53 -0
  234. package/dist/models/index.d.ts.map +1 -0
  235. package/{src/models/index.ts → dist/models/index.js} +11 -63
  236. package/dist/models/index.js.map +1 -0
  237. package/dist/models/locality.d.ts +17 -0
  238. package/dist/models/locality.d.ts.map +1 -0
  239. package/dist/models/locality.js +26 -0
  240. package/dist/models/locality.js.map +1 -0
  241. package/dist/models/localized-concept.d.ts +102 -0
  242. package/dist/models/localized-concept.d.ts.map +1 -0
  243. package/dist/models/localized-concept.js +195 -0
  244. package/dist/models/localized-concept.js.map +1 -0
  245. package/dist/models/localized-string.d.ts +5 -0
  246. package/dist/models/localized-string.d.ts.map +1 -0
  247. package/dist/models/localized-string.js +20 -0
  248. package/dist/models/localized-string.js.map +1 -0
  249. package/dist/models/multiplicity.d.ts +42 -0
  250. package/dist/models/multiplicity.d.ts.map +1 -0
  251. package/dist/models/multiplicity.js +84 -0
  252. package/dist/models/multiplicity.js.map +1 -0
  253. package/dist/models/non-verb-rep.d.ts +20 -0
  254. package/dist/models/non-verb-rep.d.ts.map +1 -0
  255. package/dist/models/non-verb-rep.js +32 -0
  256. package/dist/models/non-verb-rep.js.map +1 -0
  257. package/dist/models/non-verbal-entity.d.ts +30 -0
  258. package/dist/models/non-verbal-entity.d.ts.map +1 -0
  259. package/dist/models/non-verbal-entity.js +48 -0
  260. package/dist/models/non-verbal-entity.js.map +1 -0
  261. package/dist/models/non-verbal-reference.d.ts +23 -0
  262. package/dist/models/non-verbal-reference.d.ts.map +1 -0
  263. package/dist/models/non-verbal-reference.js +44 -0
  264. package/dist/models/non-verbal-reference.js.map +1 -0
  265. package/dist/models/non-verbal-references.d.ts +12 -0
  266. package/dist/models/non-verbal-references.d.ts.map +1 -0
  267. package/dist/models/non-verbal-references.js +20 -0
  268. package/dist/models/non-verbal-references.js.map +1 -0
  269. package/dist/models/partitive-count.d.ts +10 -0
  270. package/dist/models/partitive-count.d.ts.map +1 -0
  271. package/{src/models/partitive-count.ts → dist/models/partitive-count.js} +5 -9
  272. package/dist/models/partitive-count.js.map +1 -0
  273. package/dist/models/partitive-enumeration.d.ts +5 -0
  274. package/dist/models/partitive-enumeration.d.ts.map +1 -0
  275. package/dist/models/partitive-enumeration.js +16 -0
  276. package/dist/models/partitive-enumeration.js.map +1 -0
  277. package/dist/models/partitive-hyperedge.d.ts +43 -0
  278. package/dist/models/partitive-hyperedge.d.ts.map +1 -0
  279. package/dist/models/partitive-hyperedge.js +63 -0
  280. package/dist/models/partitive-hyperedge.js.map +1 -0
  281. package/dist/models/partitive-member.d.ts +14 -0
  282. package/dist/models/partitive-member.d.ts.map +1 -0
  283. package/dist/models/partitive-member.js +44 -0
  284. package/dist/models/partitive-member.js.map +1 -0
  285. package/dist/models/partitive-presence.d.ts +9 -0
  286. package/dist/models/partitive-presence.d.ts.map +1 -0
  287. package/{src/models/partitive-presence.ts → dist/models/partitive-presence.js} +4 -8
  288. package/dist/models/partitive-presence.js.map +1 -0
  289. package/dist/models/plurality-marker.d.ts +5 -0
  290. package/dist/models/plurality-marker.d.ts.map +1 -0
  291. package/dist/models/plurality-marker.js +20 -0
  292. package/dist/models/plurality-marker.js.map +1 -0
  293. package/dist/models/pronunciation.d.ts +19 -0
  294. package/dist/models/pronunciation.d.ts.map +1 -0
  295. package/dist/models/pronunciation.js +34 -0
  296. package/dist/models/pronunciation.js.map +1 -0
  297. package/dist/models/register.d.ts +104 -0
  298. package/dist/models/register.d.ts.map +1 -0
  299. package/dist/models/register.js +297 -0
  300. package/dist/models/register.js.map +1 -0
  301. package/dist/models/registrable.d.ts +25 -0
  302. package/dist/models/registrable.d.ts.map +1 -0
  303. package/dist/models/registrable.js +23 -0
  304. package/dist/models/registrable.js.map +1 -0
  305. package/dist/models/related-concept.d.ts +33 -0
  306. package/dist/models/related-concept.d.ts.map +1 -0
  307. package/dist/models/related-concept.js +95 -0
  308. package/dist/models/related-concept.js.map +1 -0
  309. package/dist/models/relation-categories.d.ts +38 -0
  310. package/dist/models/relation-categories.d.ts.map +1 -0
  311. package/dist/models/relation-categories.js +135 -0
  312. package/dist/models/relation-categories.js.map +1 -0
  313. package/dist/models/relation-colors.d.ts +35 -0
  314. package/dist/models/relation-colors.d.ts.map +1 -0
  315. package/dist/models/relation-colors.js +68 -0
  316. package/dist/models/relation-colors.js.map +1 -0
  317. package/dist/models/relation-loader.d.ts +41 -0
  318. package/dist/models/relation-loader.d.ts.map +1 -0
  319. package/dist/models/relation-loader.js +101 -0
  320. package/dist/models/relation-loader.js.map +1 -0
  321. package/dist/models/section.d.ts +22 -0
  322. package/dist/models/section.d.ts.map +1 -0
  323. package/dist/models/section.js +47 -0
  324. package/dist/models/section.js.map +1 -0
  325. package/dist/models/sequential-hyperedge.d.ts +32 -0
  326. package/dist/models/sequential-hyperedge.d.ts.map +1 -0
  327. package/dist/models/sequential-hyperedge.js +49 -0
  328. package/dist/models/sequential-hyperedge.js.map +1 -0
  329. package/dist/models/sequential-member.d.ts +8 -0
  330. package/dist/models/sequential-member.d.ts.map +1 -0
  331. package/{src/models/sequential-member.ts → dist/models/sequential-member.js} +4 -9
  332. package/dist/models/sequential-member.js.map +1 -0
  333. package/dist/models/shared-non-verbal-entity.d.ts +16 -0
  334. package/dist/models/shared-non-verbal-entity.d.ts.map +1 -0
  335. package/dist/models/shared-non-verbal-entity.js +28 -0
  336. package/dist/models/shared-non-verbal-entity.js.map +1 -0
  337. package/dist/models/table.d.ts +15 -0
  338. package/dist/models/table.d.ts.map +1 -0
  339. package/dist/models/table.js +27 -0
  340. package/dist/models/table.js.map +1 -0
  341. package/dist/rdf/agents-emitter.d.ts +37 -0
  342. package/dist/rdf/agents-emitter.d.ts.map +1 -0
  343. package/dist/rdf/agents-emitter.js +107 -0
  344. package/dist/rdf/agents-emitter.js.map +1 -0
  345. package/dist/rdf/bibliography-emitter.d.ts +16 -0
  346. package/dist/rdf/bibliography-emitter.d.ts.map +1 -0
  347. package/dist/rdf/bibliography-emitter.js +84 -0
  348. package/dist/rdf/bibliography-emitter.js.map +1 -0
  349. package/dist/rdf/bnode-id.d.ts +2 -0
  350. package/dist/rdf/bnode-id.d.ts.map +1 -0
  351. package/dist/rdf/bnode-id.js +57 -0
  352. package/dist/rdf/bnode-id.js.map +1 -0
  353. package/dist/rdf/build-activity-emitter.d.ts +42 -0
  354. package/dist/rdf/build-activity-emitter.d.ts.map +1 -0
  355. package/dist/rdf/build-activity-emitter.js +103 -0
  356. package/dist/rdf/build-activity-emitter.js.map +1 -0
  357. package/dist/rdf/curie.d.ts +7 -0
  358. package/dist/rdf/curie.d.ts.map +1 -0
  359. package/dist/rdf/curie.js +45 -0
  360. package/dist/rdf/curie.js.map +1 -0
  361. package/dist/rdf/dataset-emitter.d.ts +37 -0
  362. package/dist/rdf/dataset-emitter.d.ts.map +1 -0
  363. package/dist/rdf/dataset-emitter.js +126 -0
  364. package/dist/rdf/dataset-emitter.js.map +1 -0
  365. package/dist/rdf/deterministic-id.d.ts +3 -0
  366. package/dist/rdf/deterministic-id.d.ts.map +1 -0
  367. package/dist/rdf/deterministic-id.js +68 -0
  368. package/dist/rdf/deterministic-id.js.map +1 -0
  369. package/dist/rdf/document-writer.d.ts +11 -0
  370. package/dist/rdf/document-writer.d.ts.map +1 -0
  371. package/dist/rdf/document-writer.js +77 -0
  372. package/dist/rdf/document-writer.js.map +1 -0
  373. package/dist/rdf/gloss-concept.d.ts +27 -0
  374. package/dist/rdf/gloss-concept.d.ts.map +1 -0
  375. package/dist/rdf/gloss-concept.js +95 -0
  376. package/dist/rdf/gloss-concept.js.map +1 -0
  377. package/dist/rdf/gloss-designation.d.ts +17 -0
  378. package/dist/rdf/gloss-designation.d.ts.map +1 -0
  379. package/dist/rdf/gloss-designation.js +46 -0
  380. package/dist/rdf/gloss-designation.js.map +1 -0
  381. package/dist/rdf/gloss-detailed-definition.d.ts +14 -0
  382. package/dist/rdf/gloss-detailed-definition.d.ts.map +1 -0
  383. package/dist/rdf/gloss-detailed-definition.js +53 -0
  384. package/dist/rdf/gloss-detailed-definition.js.map +1 -0
  385. package/dist/rdf/gloss-generic-hyperedge.d.ts +27 -0
  386. package/dist/rdf/gloss-generic-hyperedge.d.ts.map +1 -0
  387. package/{src/rdf/gloss-generic-hyperedge.ts → dist/rdf/gloss-generic-hyperedge.js} +36 -50
  388. package/dist/rdf/gloss-generic-hyperedge.js.map +1 -0
  389. package/dist/rdf/gloss-localized-concept.d.ts +24 -0
  390. package/dist/rdf/gloss-localized-concept.d.ts.map +1 -0
  391. package/dist/rdf/gloss-localized-concept.js +71 -0
  392. package/dist/rdf/gloss-localized-concept.js.map +1 -0
  393. package/dist/rdf/gloss-non-verbal-rep.d.ts +33 -0
  394. package/dist/rdf/gloss-non-verbal-rep.d.ts.map +1 -0
  395. package/dist/rdf/gloss-non-verbal-rep.js +163 -0
  396. package/dist/rdf/gloss-non-verbal-rep.js.map +1 -0
  397. package/dist/rdf/gloss-partitive-member.d.ts +8 -0
  398. package/dist/rdf/gloss-partitive-member.d.ts.map +1 -0
  399. package/{src/rdf/gloss-partitive-member.ts → dist/rdf/gloss-partitive-member.js} +23 -41
  400. package/dist/rdf/gloss-partitive-member.js.map +1 -0
  401. package/dist/rdf/gloss-partitive-relation.d.ts +26 -0
  402. package/dist/rdf/gloss-partitive-relation.d.ts.map +1 -0
  403. package/dist/rdf/gloss-partitive-relation.js +73 -0
  404. package/dist/rdf/gloss-partitive-relation.js.map +1 -0
  405. package/dist/rdf/gloss-source.d.ts +23 -0
  406. package/dist/rdf/gloss-source.d.ts.map +1 -0
  407. package/dist/rdf/gloss-source.js +52 -0
  408. package/dist/rdf/gloss-source.js.map +1 -0
  409. package/dist/rdf/group-emitter.d.ts +46 -0
  410. package/dist/rdf/group-emitter.d.ts.map +1 -0
  411. package/dist/rdf/group-emitter.js +107 -0
  412. package/dist/rdf/group-emitter.js.map +1 -0
  413. package/dist/rdf/image-variant-emitter.d.ts +12 -0
  414. package/dist/rdf/image-variant-emitter.d.ts.map +1 -0
  415. package/dist/rdf/image-variant-emitter.js +55 -0
  416. package/dist/rdf/image-variant-emitter.js.map +1 -0
  417. package/dist/rdf/index.d.ts +26 -0
  418. package/dist/rdf/index.d.ts.map +1 -0
  419. package/{src/rdf/index.ts → dist/rdf/index.js} +8 -37
  420. package/dist/rdf/index.js.map +1 -0
  421. package/dist/rdf/normalize-enum.d.ts +3 -0
  422. package/dist/rdf/normalize-enum.d.ts.map +1 -0
  423. package/{src/rdf/normalize-enum.ts → dist/rdf/normalize-enum.js} +11 -10
  424. package/dist/rdf/normalize-enum.js.map +1 -0
  425. package/dist/rdf/predicates.d.ts +277 -0
  426. package/dist/rdf/predicates.d.ts.map +1 -0
  427. package/dist/rdf/predicates.js +279 -0
  428. package/dist/rdf/predicates.js.map +1 -0
  429. package/dist/rdf/prefixes.d.ts +16 -0
  430. package/dist/rdf/prefixes.d.ts.map +1 -0
  431. package/{src/rdf/prefixes.ts → dist/rdf/prefixes.js} +10 -12
  432. package/dist/rdf/prefixes.js.map +1 -0
  433. package/dist/rdf/provenance-emitter.d.ts +28 -0
  434. package/dist/rdf/provenance-emitter.d.ts.map +1 -0
  435. package/dist/rdf/provenance-emitter.js +74 -0
  436. package/dist/rdf/provenance-emitter.js.map +1 -0
  437. package/dist/rdf/sections-builder.d.ts +17 -0
  438. package/dist/rdf/sections-builder.d.ts.map +1 -0
  439. package/dist/rdf/sections-builder.js +137 -0
  440. package/dist/rdf/sections-builder.js.map +1 -0
  441. package/dist/rdf/shacl-entry.d.ts +2 -0
  442. package/dist/rdf/shacl-entry.d.ts.map +1 -0
  443. package/{src/rdf/shacl-entry.ts → dist/rdf/shacl-entry.js} +1 -1
  444. package/dist/rdf/shacl-entry.js.map +1 -0
  445. package/dist/rdf/shacl.d.ts +10 -0
  446. package/dist/rdf/shacl.d.ts.map +1 -0
  447. package/{src/rdf/shacl.ts → dist/rdf/shacl.js} +38 -56
  448. package/dist/rdf/shacl.js.map +1 -0
  449. package/dist/rdf/terms.d.ts +10 -0
  450. package/dist/rdf/terms.d.ts.map +1 -0
  451. package/{src/rdf/terms.ts → dist/rdf/terms.js} +6 -3
  452. package/dist/rdf/terms.js.map +1 -0
  453. package/dist/rdf/version-emitter.d.ts +57 -0
  454. package/dist/rdf/version-emitter.d.ts.map +1 -0
  455. package/dist/rdf/version-emitter.js +68 -0
  456. package/dist/rdf/version-emitter.js.map +1 -0
  457. package/dist/rdf/vocabulary-emitter.d.ts +32 -0
  458. package/dist/rdf/vocabulary-emitter.d.ts.map +1 -0
  459. package/dist/rdf/vocabulary-emitter.js +46 -0
  460. package/dist/rdf/vocabulary-emitter.js.map +1 -0
  461. package/dist/rdf/write-turtle-sync.d.ts +7 -0
  462. package/dist/rdf/write-turtle-sync.d.ts.map +1 -0
  463. package/dist/rdf/write-turtle-sync.js +130 -0
  464. package/dist/rdf/write-turtle-sync.js.map +1 -0
  465. package/dist/reference-mention.d.ts +49 -0
  466. package/dist/reference-mention.d.ts.map +1 -0
  467. package/dist/reference-mention.js +98 -0
  468. package/dist/reference-mention.js.map +1 -0
  469. package/dist/reference-resolver.d.ts +52 -0
  470. package/dist/reference-resolver.d.ts.map +1 -0
  471. package/dist/reference-resolver.js +311 -0
  472. package/dist/reference-resolver.js.map +1 -0
  473. package/dist/render-classification.d.ts +19 -0
  474. package/dist/render-classification.d.ts.map +1 -0
  475. package/dist/render-classification.js +82 -0
  476. package/dist/render-classification.js.map +1 -0
  477. package/dist/sort.d.ts +5 -0
  478. package/dist/sort.d.ts.map +1 -0
  479. package/dist/sort.js +25 -0
  480. package/dist/sort.js.map +1 -0
  481. package/dist/transforms/concept-to-gloss.transform.d.ts +32 -0
  482. package/dist/transforms/concept-to-gloss.transform.d.ts.map +1 -0
  483. package/dist/transforms/concept-to-gloss.transform.js +60 -0
  484. package/dist/transforms/concept-to-gloss.transform.js.map +1 -0
  485. package/dist/transforms/index.d.ts +2 -0
  486. package/dist/transforms/index.d.ts.map +1 -0
  487. package/{src/transforms/index.ts → dist/transforms/index.js} +1 -0
  488. package/dist/transforms/index.js.map +1 -0
  489. package/dist/utils/assertions.d.ts +4 -0
  490. package/dist/utils/assertions.d.ts.map +1 -0
  491. package/dist/utils/assertions.js +17 -0
  492. package/dist/utils/assertions.js.map +1 -0
  493. package/dist/uuid.d.ts +4 -0
  494. package/dist/uuid.d.ts.map +1 -0
  495. package/dist/uuid.js +23 -0
  496. package/dist/uuid.js.map +1 -0
  497. package/dist/v1-reader.d.ts +8 -0
  498. package/dist/v1-reader.d.ts.map +1 -0
  499. package/dist/v1-reader.js +56 -0
  500. package/dist/v1-reader.js.map +1 -0
  501. package/dist/validators/asset-index.d.ts +23 -0
  502. package/dist/validators/asset-index.d.ts.map +1 -0
  503. package/dist/validators/asset-index.js +58 -0
  504. package/dist/validators/asset-index.js.map +1 -0
  505. package/dist/validators/binary-has-part-redundancy-rule.d.ts +8 -0
  506. package/dist/validators/binary-has-part-redundancy-rule.d.ts.map +1 -0
  507. package/dist/validators/binary-has-part-redundancy-rule.js +57 -0
  508. package/dist/validators/binary-has-part-redundancy-rule.js.map +1 -0
  509. package/dist/validators/concept-validator.d.ts +21 -0
  510. package/dist/validators/concept-validator.d.ts.map +1 -0
  511. package/dist/validators/concept-validator.js +76 -0
  512. package/dist/validators/concept-validator.js.map +1 -0
  513. package/dist/validators/delimiting-coherence-rule.d.ts +8 -0
  514. package/dist/validators/delimiting-coherence-rule.d.ts.map +1 -0
  515. package/dist/validators/delimiting-coherence-rule.js +72 -0
  516. package/dist/validators/delimiting-coherence-rule.js.map +1 -0
  517. package/dist/validators/external-concept-shape-rule.d.ts +8 -0
  518. package/dist/validators/external-concept-shape-rule.d.ts.map +1 -0
  519. package/dist/validators/external-concept-shape-rule.js +48 -0
  520. package/dist/validators/external-concept-shape-rule.js.map +1 -0
  521. package/dist/validators/gcr-validator.d.ts +11 -0
  522. package/dist/validators/gcr-validator.d.ts.map +1 -0
  523. package/dist/validators/gcr-validator.js +76 -0
  524. package/dist/validators/gcr-validator.js.map +1 -0
  525. package/dist/validators/hyperedge-coherence-rule.d.ts +9 -0
  526. package/dist/validators/hyperedge-coherence-rule.d.ts.map +1 -0
  527. package/dist/validators/hyperedge-coherence-rule.js +78 -0
  528. package/dist/validators/hyperedge-coherence-rule.js.map +1 -0
  529. package/dist/validators/index.d.ts +21 -0
  530. package/dist/validators/index.d.ts.map +1 -0
  531. package/{src/validators/index.ts → dist/validators/index.js} +25 -51
  532. package/dist/validators/index.js.map +1 -0
  533. package/dist/validators/partitive-relation-coherence-rule.d.ts +2 -0
  534. package/dist/validators/partitive-relation-coherence-rule.d.ts.map +1 -0
  535. package/{src/validators/partitive-relation-coherence-rule.ts → dist/validators/partitive-relation-coherence-rule.js} +1 -1
  536. package/dist/validators/partitive-relation-coherence-rule.js.map +1 -0
  537. package/dist/validators/ref-keys.d.ts +8 -0
  538. package/dist/validators/ref-keys.d.ts.map +1 -0
  539. package/dist/validators/ref-keys.js +27 -0
  540. package/dist/validators/ref-keys.js.map +1 -0
  541. package/dist/validators/register-validator.d.ts +10 -0
  542. package/dist/validators/register-validator.d.ts.map +1 -0
  543. package/dist/validators/register-validator.js +18 -0
  544. package/dist/validators/register-validator.js.map +1 -0
  545. package/dist/validators/relationship-type-rule.d.ts +13 -0
  546. package/dist/validators/relationship-type-rule.d.ts.map +1 -0
  547. package/dist/validators/relationship-type-rule.js +34 -0
  548. package/dist/validators/relationship-type-rule.js.map +1 -0
  549. package/dist/validators/sourced-from-locality-rule.d.ts +8 -0
  550. package/dist/validators/sourced-from-locality-rule.d.ts.map +1 -0
  551. package/dist/validators/sourced-from-locality-rule.js +37 -0
  552. package/dist/validators/sourced-from-locality-rule.js.map +1 -0
  553. package/dist/validators/v3-rules.d.ts +60 -0
  554. package/dist/validators/v3-rules.d.ts.map +1 -0
  555. package/dist/validators/v3-rules.js +327 -0
  556. package/dist/validators/v3-rules.js.map +1 -0
  557. package/dist/validators/validation-error.d.ts +13 -0
  558. package/dist/validators/validation-error.d.ts.map +1 -0
  559. package/dist/validators/validation-error.js +17 -0
  560. package/dist/validators/validation-error.js.map +1 -0
  561. package/dist/validators/validation-result.d.ts +17 -0
  562. package/dist/validators/validation-result.d.ts.map +1 -0
  563. package/dist/validators/validation-result.js +47 -0
  564. package/dist/validators/validation-result.js.map +1 -0
  565. package/dist/validators/validation-rule.d.ts +10 -0
  566. package/dist/validators/validation-rule.d.ts.map +1 -0
  567. package/dist/validators/validation-rule.js +17 -0
  568. package/dist/validators/validation-rule.js.map +1 -0
  569. package/package.json +37 -42
  570. package/src/concept-collection.ts +0 -166
  571. package/src/concept-parser.ts +0 -229
  572. package/src/concept-reader.d.ts +0 -13
  573. package/src/concept-serializer.ts +0 -99
  574. package/src/concept-writer.d.ts +0 -7
  575. package/src/concept-writer.ts +0 -43
  576. package/src/diff/canonical-json.ts +0 -29
  577. package/src/diff/change.ts +0 -175
  578. package/src/diff/collection-diff.ts +0 -197
  579. package/src/diff/concept-diff.ts +0 -702
  580. package/src/diff/diff-patch.ts +0 -260
  581. package/src/diff/diff-renderer.ts +0 -293
  582. package/src/diff/identity.ts +0 -33
  583. package/src/diff/index.d.ts +0 -242
  584. package/src/diff/index.ts +0 -50
  585. package/src/diff/list-diff.ts +0 -231
  586. package/src/diff/similarity.ts +0 -20
  587. package/src/diff/text-diff.ts +0 -167
  588. package/src/entity-directory.ts +0 -43
  589. package/src/errors.d.ts +0 -11
  590. package/src/errors.ts +0 -24
  591. package/src/gcr-reader.d.ts +0 -65
  592. package/src/gcr-reader.ts +0 -487
  593. package/src/gcr-writer.d.ts +0 -22
  594. package/src/gcr-writer.ts +0 -97
  595. package/src/index.d.ts +0 -124
  596. package/src/managed-concept-collection.ts +0 -95
  597. package/src/migration/hyperedge-migrator.ts +0 -104
  598. package/src/models/abstract-hyperedge.ts +0 -164
  599. package/src/models/base.ts +0 -110
  600. package/src/models/bibliography-data.ts +0 -64
  601. package/src/models/bibliography-entry.ts +0 -40
  602. package/src/models/citation.ts +0 -98
  603. package/src/models/concept-date.ts +0 -48
  604. package/src/models/concept-ref.ts +0 -64
  605. package/src/models/concept-reference.ts +0 -50
  606. package/src/models/concept-source.ts +0 -96
  607. package/src/models/concept-system-type.ts +0 -39
  608. package/src/models/concept-system.ts +0 -152
  609. package/src/models/concept.ts +0 -499
  610. package/src/models/dataset-color.ts +0 -88
  611. package/src/models/designation-relationship.ts +0 -39
  612. package/src/models/designation.ts +0 -297
  613. package/src/models/detailed-definition.ts +0 -92
  614. package/src/models/enum.ts +0 -60
  615. package/src/models/equivalence-degree.ts +0 -34
  616. package/src/models/figure.ts +0 -110
  617. package/src/models/formula.ts +0 -36
  618. package/src/models/gcr-metadata.ts +0 -118
  619. package/src/models/gcr-statistics.ts +0 -76
  620. package/src/models/generic-hyperedge.ts +0 -72
  621. package/src/models/generic-member.ts +0 -80
  622. package/src/models/grammar-info.ts +0 -78
  623. package/src/models/hyperedge-colors.ts +0 -87
  624. package/src/models/hyperedge-index.ts +0 -101
  625. package/src/models/hyperedge-member.ts +0 -121
  626. package/src/models/hyperedge-registry.ts +0 -145
  627. package/src/models/index.d.ts +0 -586
  628. package/src/models/locality.ts +0 -34
  629. package/src/models/localized-concept.ts +0 -284
  630. package/src/models/localized-string.ts +0 -32
  631. package/src/models/multiplicity.ts +0 -134
  632. package/src/models/non-verb-rep.ts +0 -48
  633. package/src/models/non-verbal-entity.ts +0 -65
  634. package/src/models/non-verbal-reference.ts +0 -73
  635. package/src/models/non-verbal-references.ts +0 -29
  636. package/src/models/partitive-enumeration.ts +0 -27
  637. package/src/models/partitive-hyperedge.ts +0 -90
  638. package/src/models/partitive-member.ts +0 -56
  639. package/src/models/plurality-marker.ts +0 -31
  640. package/src/models/pronunciation.ts +0 -40
  641. package/src/models/register.ts +0 -315
  642. package/src/models/registrable.ts +0 -48
  643. package/src/models/related-concept.ts +0 -117
  644. package/src/models/relation-categories.ts +0 -167
  645. package/src/models/relation-colors.ts +0 -90
  646. package/src/models/relation-loader.ts +0 -115
  647. package/src/models/section.ts +0 -61
  648. package/src/models/sequential-hyperedge.ts +0 -70
  649. package/src/models/shared-non-verbal-entity.ts +0 -36
  650. package/src/models/table.ts +0 -36
  651. package/src/rdf/agents-emitter.ts +0 -134
  652. package/src/rdf/bibliography-emitter.ts +0 -126
  653. package/src/rdf/bnode-id.ts +0 -55
  654. package/src/rdf/build-activity-emitter.ts +0 -129
  655. package/src/rdf/curie.ts +0 -47
  656. package/src/rdf/dataset-emitter.ts +0 -170
  657. package/src/rdf/deterministic-id.ts +0 -69
  658. package/src/rdf/document-writer.ts +0 -87
  659. package/src/rdf/gloss-concept.ts +0 -115
  660. package/src/rdf/gloss-designation.ts +0 -72
  661. package/src/rdf/gloss-detailed-definition.ts +0 -69
  662. package/src/rdf/gloss-localized-concept.ts +0 -79
  663. package/src/rdf/gloss-non-verbal-rep.ts +0 -192
  664. package/src/rdf/gloss-partitive-relation.ts +0 -89
  665. package/src/rdf/gloss-source.ts +0 -56
  666. package/src/rdf/group-emitter.ts +0 -133
  667. package/src/rdf/image-variant-emitter.ts +0 -80
  668. package/src/rdf/index.d.ts +0 -371
  669. package/src/rdf/predicates.d.ts +0 -527
  670. package/src/rdf/predicates.ts +0 -287
  671. package/src/rdf/provenance-emitter.ts +0 -87
  672. package/src/rdf/sections-builder.ts +0 -178
  673. package/src/rdf/shacl-entry.d.ts +0 -6
  674. package/src/rdf/version-emitter.ts +0 -97
  675. package/src/rdf/vocabulary-emitter.ts +0 -67
  676. package/src/rdf/write-turtle-sync.ts +0 -167
  677. package/src/reference-mention.ts +0 -114
  678. package/src/reference-resolver.ts +0 -331
  679. package/src/render-classification.ts +0 -76
  680. package/src/sort.ts +0 -22
  681. package/src/transforms/concept-to-gloss.transform.ts +0 -81
  682. package/src/transforms/index.d.ts +0 -26
  683. package/src/uuid.ts +0 -32
  684. package/src/v1-reader.ts +0 -64
  685. package/src/validators/asset-index.ts +0 -67
  686. package/src/validators/binary-has-part-redundancy-rule.ts +0 -67
  687. package/src/validators/concept-validator.ts +0 -93
  688. package/src/validators/delimiting-coherence-rule.ts +0 -105
  689. package/src/validators/external-concept-shape-rule.ts +0 -60
  690. package/src/validators/gcr-validator.ts +0 -75
  691. package/src/validators/hyperedge-coherence-rule.ts +0 -98
  692. package/src/validators/index.d.ts +0 -43
  693. package/src/validators/ref-keys.ts +0 -31
  694. package/src/validators/register-validator.ts +0 -18
  695. package/src/validators/relationship-type-rule.ts +0 -39
  696. package/src/validators/sourced-from-locality-rule.ts +0 -53
  697. package/src/validators/v3-rules.ts +0 -378
  698. package/src/validators/validation-error.ts +0 -19
  699. package/src/validators/validation-result.ts +0 -52
  700. package/src/validators/validation-rule.ts +0 -21
@@ -1,117 +0,0 @@
1
- import { GlossaristModel } from './base.js';
2
- import { ConceptRef } from './concept-ref.js';
3
- import type { ConceptRefJson } from './concept-ref.js';
4
- import type { LocalizedString } from './generic-member.js';
5
-
6
- export const RELATIONSHIP_TYPES: ReadonlyArray<string> = Object.freeze([
7
- // Lifecycle (ISO 10241-1)
8
- 'deprecates', 'deprecated_by', 'supersedes', 'superseded_by',
9
- 'replaces', 'replaced_by', 'invalidates', 'invalidated_by',
10
- 'retires', 'retired_by',
11
- // Hierarchical (SKOS)
12
- 'broader', 'narrower',
13
- // ISO 25964 generic
14
- 'broader_generic', 'narrower_generic',
15
- // ISO 25964 partitive
16
- 'broader_partitive', 'narrower_partitive',
17
- // ISO 25964 instantial
18
- 'broader_instantial', 'narrower_instantial',
19
- // ISO 19135 concept-to-concept
20
- 'has_concept', 'is_concept_of', 'instance_of', 'has_instance',
21
- 'has_definition', 'definition_of', 'has_part', 'is_part_of',
22
- 'inherits', 'inherited_by',
23
- // ISO 19135 versioning
24
- 'has_version', 'version_of', 'current_version', 'current_version_of',
25
- // SKOS mapping
26
- 'equivalent', 'close_match', 'broad_match', 'narrow_match', 'related_match',
27
- // Associative (ISO 10241-1 / ISO 25964)
28
- 'see', 'related_concept', 'related_concept_broader', 'related_concept_narrower',
29
- 'references',
30
- // ExternalConcept resolution (Glossarist extension). Direction: real
31
- // concept `provides` substance for an external concept; external concept
32
- // `provided_by` real concept. Stored on the ExternalConcept.
33
- 'provides', 'provided_by',
34
- // Comparative (ISO 10241-1)
35
- 'compare', 'contrast',
36
- // Spatiotemporal (ISO 25964 / TBX)
37
- 'sequentially_related_concept', 'spatially_related_concept', 'temporally_related_concept',
38
- // Lexical (ISO 12620 / TBX)
39
- 'homograph', 'false_friend',
40
- ]);
41
-
42
- export type RelationshipType = string;
43
-
44
- export interface RelatedConceptJson {
45
- type?: RelationshipType;
46
- content?: LocalizedString | string | null;
47
- ref?: ConceptRefJson | ConceptRef | null;
48
- }
49
-
50
- export class RelatedConcept extends GlossaristModel {
51
- readonly type: RelationshipType;
52
- readonly content: LocalizedString | null;
53
- readonly ref: ConceptRef | null;
54
-
55
- constructor(data: RelatedConceptJson = {}) {
56
- super();
57
- this.type = data.type ?? 'see';
58
- this.content = _normalizeContent(data.content);
59
- this.ref = data.ref
60
- ? data.ref instanceof ConceptRef
61
- ? data.ref
62
- : new ConceptRef(data.ref)
63
- : null;
64
- }
65
-
66
- /**
67
- * Convenience reader: returns the first available string value from
68
- * the localized hash, or null if absent.
69
- */
70
- get contentString(): string | null {
71
- if (!this.content) return null;
72
- const values = Object.values(this.content);
73
- return values.length > 0 ? (values[0] ?? null) : null;
74
- }
75
-
76
- override toJSON(): RelatedConceptJson {
77
- const obj: RelatedConceptJson = { type: this.type };
78
- if (this.content != null) obj.content = this.content;
79
- if (this.ref != null) obj.ref = this.ref.toJSON();
80
- return obj;
81
- }
82
-
83
- static identityOf(
84
- value: {
85
- type?: string;
86
- ref?: { source?: string | null; id?: string | null } | null;
87
- } | null | undefined,
88
- ): string {
89
- const v = value ?? {};
90
- const ref = v.ref;
91
- return `${v.type ?? ''}|${ref?.source ?? ''}|${ref?.id ?? ''}`;
92
- }
93
-
94
- override identity(): string {
95
- return RelatedConcept.identityOf(this);
96
- }
97
-
98
- static override fromJSON(data: RelatedConceptJson): RelatedConcept {
99
- return new RelatedConcept(data);
100
- }
101
- }
102
-
103
- function _normalizeContent(
104
- value: LocalizedString | string | null | undefined,
105
- ): LocalizedString | null {
106
- if (value == null) return null;
107
- if (typeof value === 'string') return { default: value };
108
- if (typeof value === 'object') {
109
- const entries = Object.entries(value).filter(
110
- ([, v]) => typeof v === 'string',
111
- );
112
- return entries.length > 0
113
- ? (Object.fromEntries(entries) as LocalizedString)
114
- : null;
115
- }
116
- return null;
117
- }
@@ -1,167 +0,0 @@
1
- // Categorization SSOT for the 52 glossarist relationship types.
2
-
3
- import { RELATIONSHIP_TYPES } from './related-concept.js';
4
-
5
- export interface CategoryDefinition {
6
- label: string;
7
- description: string;
8
- types: ReadonlyArray<string>;
9
- }
10
-
11
- type CategoryKey =
12
- | 'lifecycle'
13
- | 'hierarchical'
14
- | 'associative'
15
- | 'comparative'
16
- | 'spatiotemporal'
17
- | 'lexical'
18
- | 'mapping'
19
- | 'definitional';
20
-
21
- /**
22
- * Each type in RELATIONSHIP_TYPES belongs to exactly one category. The
23
- * categories mirror the concept-model taxonomy. Adding a new type
24
- * means adding a taxonomy entry — no code changes here.
25
- */
26
- export const RELATION_CATEGORIES: Readonly<Record<CategoryKey, CategoryDefinition>> = Object.freeze({
27
- lifecycle: Object.freeze({
28
- label: 'Lifecycle',
29
- description: 'Concept lifecycle transitions: supersession, deprecation, replacement.',
30
- types: Object.freeze([
31
- 'deprecates', 'deprecated_by',
32
- 'supersedes', 'superseded_by',
33
- 'replaces', 'replaced_by',
34
- 'invalidates', 'invalidated_by',
35
- 'retires', 'retired_by',
36
- ]),
37
- }) as CategoryDefinition,
38
-
39
- hierarchical: Object.freeze({
40
- label: 'Hierarchical',
41
- description: 'Broader/narrower relations, including SKOS and ISO 25964 generic/partitive/instantial.',
42
- types: Object.freeze([
43
- 'broader', 'narrower',
44
- 'broader_generic', 'narrower_generic',
45
- 'broader_partitive', 'narrower_partitive',
46
- 'broader_instantial', 'narrower_instantial',
47
- ]),
48
- }) as CategoryDefinition,
49
-
50
- associative: Object.freeze({
51
- label: 'Associative',
52
- description: 'Generic see-also references between concepts.',
53
- types: Object.freeze([
54
- 'see', 'related_concept',
55
- 'related_concept_broader', 'related_concept_narrower',
56
- 'references',
57
- ]),
58
- }) as CategoryDefinition,
59
-
60
- comparative: Object.freeze({
61
- label: 'Comparative',
62
- description: 'Compare / contrast relations between concepts.',
63
- types: Object.freeze(['compare', 'contrast']),
64
- }) as CategoryDefinition,
65
-
66
- spatiotemporal: Object.freeze({
67
- label: 'Spatiotemporal',
68
- description: 'Sequential, spatial, and temporal relations.',
69
- types: Object.freeze([
70
- 'sequentially_related_concept',
71
- 'spatially_related_concept',
72
- 'temporally_related_concept',
73
- ]),
74
- }) as CategoryDefinition,
75
-
76
- lexical: Object.freeze({
77
- label: 'Lexical',
78
- description: 'Lexical relations between designations across languages.',
79
- types: Object.freeze(['homograph', 'false_friend']),
80
- }) as CategoryDefinition,
81
-
82
- mapping: Object.freeze({
83
- label: 'Mapping',
84
- description: 'SKOS mapping properties for cross-vocabulary alignment.',
85
- types: Object.freeze([
86
- 'equivalent', 'close_match',
87
- 'broad_match', 'narrow_match', 'related_match',
88
- ]),
89
- }) as CategoryDefinition,
90
-
91
- definitional: Object.freeze({
92
- label: 'Definitional',
93
- description: 'ISO 19135 concept-to-concept relations: definition, part, instance, inheritance, versioning.',
94
- types: Object.freeze([
95
- 'has_concept', 'is_concept_of',
96
- 'instance_of', 'has_instance',
97
- 'has_definition', 'definition_of',
98
- 'has_part', 'is_part_of',
99
- 'inherits', 'inherited_by',
100
- 'has_version', 'version_of',
101
- 'current_version', 'current_version_of',
102
- 'provides', 'provided_by',
103
- ]),
104
- }) as CategoryDefinition,
105
- });
106
-
107
- const _CATEGORY_BY_TYPE: ReadonlyMap<string, string> = (() => {
108
- const map = new Map<string, string>();
109
- for (const [cat, def] of Object.entries(RELATION_CATEGORIES)) {
110
- for (const t of def.types) map.set(t, cat);
111
- }
112
- return map;
113
- })();
114
-
115
- const _CATEGORY_ALIASES: Readonly<Record<string, string>> = {
116
- conceptInstance: 'definitional',
117
- versioning: 'definitional',
118
- };
119
-
120
- /**
121
- * Returns the category key for the given relationship type, or null
122
- * when the type is not categorized.
123
- */
124
- export function categoryOf(type: string): string | null {
125
- return _CATEGORY_BY_TYPE.get(type) ?? null;
126
- }
127
-
128
- /**
129
- * Returns the category definition for the given category key.
130
- * Accepts both canonical names (definitional) and aliases from
131
- * earlier glossarist-js versions.
132
- */
133
- export function categoryDefinition(categoryKey: string): CategoryDefinition | null {
134
- const canonical = _CATEGORY_ALIASES[categoryKey] ?? categoryKey;
135
- return (RELATION_CATEGORIES as Readonly<Record<string, CategoryDefinition>>)[canonical] ?? null;
136
- }
137
-
138
- /**
139
- * MECE sanity check. Returns the list of relationship types that are
140
- * NOT categorized.
141
- */
142
- export function uncategorizedTypes(): string[] {
143
- return RELATIONSHIP_TYPES.filter((t) => !_CATEGORY_BY_TYPE.has(t));
144
- }
145
-
146
- /**
147
- * MECE sanity check. Returns a list of { type, count } entries for any
148
- * type that appears in MORE than one category.
149
- */
150
- export function duplicatedTypes(): ReadonlyArray<{ type: string; count: number }> {
151
- const counts = new Map<string, number>();
152
- for (const def of Object.values(RELATION_CATEGORIES)) {
153
- for (const t of def.types) {
154
- counts.set(t, (counts.get(t) ?? 0) + 1);
155
- }
156
- }
157
- const out: { type: string; count: number }[] = [];
158
- for (const [type, count] of counts) {
159
- if (count > 1) out.push({ type, count });
160
- }
161
- return out;
162
- }
163
-
164
- export {
165
- RELATION_CATEGORIES as RELATION_CATEGORIES_READONLY,
166
- type CategoryKey as RelationCategoryKey,
167
- };
@@ -1,90 +0,0 @@
1
- // Default color palette for relation categories and individual types.
2
- //
3
- // The defaults mirror concept-browser/data/colors.json. Per-deployment
4
- // overrides pass through resolveRelationColor(type, { overrides, mode })
5
- // and take precedence over category defaults.
6
-
7
- import { categoryOf, categoryDefinition } from './relation-categories.js';
8
-
9
- export interface ColorPair {
10
- light: string;
11
- dark: string;
12
- }
13
-
14
- export interface RelationColorPalette {
15
- byCategory: Readonly<Record<string, ColorPair>>;
16
- byType: Readonly<Record<string, ColorPair>>;
17
- }
18
-
19
- export interface ResolveRelationColorOptions {
20
- overrides?: Partial<RelationColorPalette>;
21
- mode?: 'light' | 'dark';
22
- }
23
-
24
- /**
25
- * One { light, dark } pair per category. Keeping these in glossarist-js
26
- * lets the defaults ship with the library; consumers only need to
27
- * customize when they want to deviate.
28
- */
29
- export const RELATION_COLOR_DEFAULTS: RelationColorPalette = Object.freeze({
30
- byCategory: Object.freeze({
31
- lifecycle: { light: '#B43A2E', dark: '#F87171' },
32
- hierarchical: { light: '#1F6FEB', dark: '#6EA8FE' },
33
- associative: { light: '#6B7280', dark: '#9CA3AF' },
34
- comparative: { light: '#A855F7', dark: '#C4B5FD' },
35
- spatiotemporal: { light: '#0D9488', dark: '#5EEAD4' },
36
- lexical: { light: '#D97706', dark: '#FBBF24' },
37
- mapping: { light: '#2563EB', dark: '#93BBFD' },
38
- definitional: { light: '#65A30D', dark: '#A3E635' },
39
- }) as Readonly<Record<string, ColorPair>>,
40
- byType: Object.freeze({}) as Readonly<Record<string, ColorPair>>,
41
- });
42
-
43
- /**
44
- * Resolves the color for a relationship type. Resolution order:
45
- * 1. overrides.byType[type]
46
- * 2. RELATION_COLOR_DEFAULTS.byType[type]
47
- * 3. overrides.byCategory[category]
48
- * 4. RELATION_COLOR_DEFAULTS.byCategory[category]
49
- * 5. null (uncategorized or unrecognized type)
50
- */
51
- export function resolveRelationColor(
52
- type: string,
53
- options: ResolveRelationColorOptions = {},
54
- ): string | null {
55
- const mode = options.mode ?? 'light';
56
- const overrides = options.overrides ?? {};
57
- const typeOverride = overrides.byType?.[type] ?? RELATION_COLOR_DEFAULTS.byType[type];
58
- if (typeOverride) return pickMode(typeOverride, mode);
59
-
60
- const category = categoryOf(type);
61
- if (!category) return null;
62
-
63
- const categoryOverride =
64
- overrides.byCategory?.[category] ?? RELATION_COLOR_DEFAULTS.byCategory[category];
65
- if (!categoryOverride) return null;
66
-
67
- return pickMode(categoryOverride, mode);
68
- }
69
-
70
- /**
71
- * Returns the { light, dark } pair for a category, merging overrides
72
- * over defaults. Useful for UIs that want to render a legend.
73
- */
74
- export function categoryColorPair(
75
- categoryKey: string,
76
- overrides: { byCategory?: Record<string, Partial<ColorPair>> } = {},
77
- ): ColorPair | null {
78
- const def = categoryDefinition(categoryKey);
79
- if (!def) return null;
80
- const fromOverride = overrides.byCategory?.[categoryKey];
81
- const fromDefault = RELATION_COLOR_DEFAULTS.byCategory[categoryKey];
82
- if (!fromDefault && !fromOverride) return null;
83
- return { ...(fromDefault ?? { light: '', dark: '' }), ...(fromOverride ?? {}) } as ColorPair;
84
- }
85
-
86
- function pickMode(pair: ColorPair | string | null, mode: 'light' | 'dark'): string | null {
87
- if (pair == null) return null;
88
- if (typeof pair === 'string') return pair;
89
- return pair[mode] ?? pair.light ?? pair.dark ?? null;
90
- }
@@ -1,115 +0,0 @@
1
- // HyperedgeLoader — runtime loader for per-file hyperedge YAMLs.
2
- //
3
- // Walks a `relations/<comprehensive-id>/<slug>.yaml` directory and
4
- // dispatches each file to the appropriate class (PartitiveHyperedge,
5
- // GenericHyperedge, future leaves) based on its `type` field, via
6
- // HyperedgeRegistry.
7
-
8
- import { readdirSync, readFileSync, existsSync } from 'node:fs';
9
- import type { Dirent } from 'node:fs';
10
- import * as yaml from 'js-yaml';
11
- import { HyperedgeRegistry } from './hyperedge-registry.js';
12
- import type { HyperedgeClass } from './hyperedge-registry.js';
13
- import type { AbstractHyperedge } from './abstract-hyperedge.js';
14
-
15
- interface HyperedgeDocument {
16
- type: string;
17
- [key: string]: unknown;
18
- }
19
-
20
- interface HyperedgeClassWithFromJson extends HyperedgeClass {
21
- fromJSON(data: unknown): AbstractHyperedge;
22
- }
23
-
24
- /**
25
- * Backward-compat: snapshot of registered classes keyed by typeTag.
26
- * Prefer HyperedgeRegistry.forTypeTag() for new code — this snapshot
27
- * is frozen at module load and won't pick up runtime registrations
28
- * from tests (the OCP test in Phase 11 registers a mock type after
29
- * import).
30
- */
31
- export const TYPE_TO_CLASS = new Proxy(
32
- {} as Record<string, HyperedgeClass>,
33
- {
34
- get(_target: unknown, prop: string | symbol): HyperedgeClass | null {
35
- return typeof prop === 'string' ? HyperedgeRegistry.forTypeTag(prop) : null;
36
- },
37
- ownKeys(): string[] {
38
- return HyperedgeRegistry.allTypeTags();
39
- },
40
- getOwnPropertyDescriptor(): PropertyDescriptor {
41
- return { enumerable: true, configurable: true };
42
- },
43
- },
44
- );
45
-
46
- /**
47
- * Thrown by `loadAll` when a relation file has an unknown `type`,
48
- * malformed structure, or a class that fails to instantiate.
49
- */
50
- export class RelationLoadError extends Error {
51
- readonly path: string;
52
- constructor(path: string, message: string) {
53
- super(`relation-loader: ${path}: ${message}`);
54
- this.path = path;
55
- }
56
- }
57
-
58
- /**
59
- * Walk a `relations/` directory and load every relation file,
60
- * returning a Map keyed by comprehensive-id.
61
- *
62
- * Returns an empty Map if `relationsDir` doesn't exist or is empty.
63
- */
64
- export function loadAll(
65
- relationsDir: string | null | undefined,
66
- ): Map<string, AbstractHyperedge[]> {
67
- const result = new Map<string, AbstractHyperedge[]>();
68
- if (!relationsDir) return result;
69
- if (!existsSync(relationsDir)) return result;
70
-
71
- const entries = readdirSync(relationsDir, { withFileTypes: true });
72
- for (const compEntry of entries as Dirent[]) {
73
- if (!compEntry.isDirectory()) continue;
74
- const compId = compEntry.name;
75
- const compDir = `${relationsDir}/${compId}`;
76
- if (!result.has(compId)) result.set(compId, []);
77
- const files = readdirSync(compDir)
78
- .filter((f) => f.endsWith('.yaml') || f.endsWith('.yml'))
79
- .sort();
80
- for (const file of files) {
81
- const path = `${compDir}/${file}`;
82
- const rel = loadOne(path);
83
- if (rel) result.get(compId)?.push(rel);
84
- }
85
- }
86
- return result;
87
- }
88
-
89
- /**
90
- * Namespace bundle for the loader — callers import it as
91
- * `import { RelationLoader } from './relation-loader.js'` and call
92
- * `RelationLoader.loadAll(dir)`. The individual functions are also
93
- * exported directly for tree-shakeable single-call sites.
94
- */
95
- export const RelationLoader = Object.freeze({ loadAll, loadOne });
96
-
97
- /**
98
- * Load a single relation file. Returns null if the file is missing,
99
- * unreadable, or doesn't have a recognized `type` field. Throws
100
- * `RelationLoadError` on malformed content.
101
- */
102
- export function loadOne(path: string): AbstractHyperedge | null {
103
- let doc: unknown;
104
- try {
105
- doc = yaml.load(readFileSync(path, 'utf8'));
106
- } catch (e) {
107
- throw new RelationLoadError(path, `YAML parse failed: ${(e as Error).message}`);
108
- }
109
- if (!doc || typeof doc !== 'object') return null;
110
- const d = doc as HyperedgeDocument;
111
- if (!d.type) return null;
112
- const Cls = HyperedgeRegistry.forTypeTag(d.type) as HyperedgeClassWithFromJson | null;
113
- if (!Cls) return null;
114
- return Cls.fromJSON(d);
115
- }
@@ -1,61 +0,0 @@
1
- import { GlossaristModel } from './base.js';
2
- import type { LocalizedString } from './generic-member.js';
3
-
4
- export const ORDERING_METHODS: ReadonlyArray<string> = Object.freeze([
5
- 'systematic',
6
- 'mixed',
7
- 'alphabetical',
8
- ]);
9
-
10
- export type OrderingMethod = string;
11
-
12
- export interface SectionJson {
13
- id?: string | null;
14
- names?: LocalizedString;
15
- ordering?: OrderingMethod | null;
16
- children?: ReadonlyArray<SectionJson | Section>;
17
- }
18
-
19
- export class Section extends GlossaristModel {
20
- readonly id: string | null;
21
- readonly names: LocalizedString;
22
- readonly ordering: OrderingMethod | null;
23
- readonly children: ReadonlyArray<Section>;
24
-
25
- constructor(data: SectionJson = {}) {
26
- super();
27
- this.id = data.id ?? null;
28
- this.names = (data.names as LocalizedString) ?? {};
29
- this.ordering = data.ordering ?? null;
30
- this.children = (data.children ?? []).map((c) =>
31
- c instanceof Section ? c : new Section(c as SectionJson),
32
- );
33
- }
34
-
35
- name(lang: string): string | null {
36
- return this.names[lang] ?? this.names['eng'] ?? null;
37
- }
38
-
39
- descendantById(id: string): Section | null {
40
- for (const child of this.children) {
41
- if (child.id === id) return child;
42
- const found = child.descendantById(id);
43
- if (found) return found;
44
- }
45
- return null;
46
- }
47
-
48
- override toJSON(): SectionJson {
49
- const obj: SectionJson = { id: this.id };
50
- if (Object.keys(this.names).length > 0) obj.names = { ...this.names };
51
- if (this.ordering != null) obj.ordering = this.ordering;
52
- if (this.children.length > 0) {
53
- obj.children = this.children.map((c) => c.toJSON());
54
- }
55
- return obj;
56
- }
57
-
58
- static override fromJSON(data: SectionJson): Section {
59
- return new Section(data);
60
- }
61
- }
@@ -1,70 +0,0 @@
1
- // SequentialHyperedge — an ISO 12620 A.6.3 / ISO 704:2022 §5.5.5
2
- // sequential relation connecting a comprehensive concept to two or
3
- // more subordinate concepts in an ORDERED sequence (temporal,
4
- // spatial, causal, developmental).
5
- //
6
- // Mirror of PartitiveHyperedge and GenericHyperedge. Member array
7
- // order IS significant — reversing the array reverses the sequence.
8
- // Use cases: manufacturing process steps, biological life cycles,
9
- // software release lifecycles, supply chain stages, geological eras.
10
-
11
- import { AbstractHyperedge } from './abstract-hyperedge.js';
12
- import type { AbstractHyperedgeJson } from './abstract-hyperedge.js';
13
- import { SequentialMember } from './sequential-member.js';
14
- import type { SequentialMemberJson } from './sequential-member.js';
15
- import { HyperedgeRegistry } from './hyperedge-registry.js';
16
-
17
- export interface SequentialHyperedgeJson extends AbstractHyperedgeJson {
18
- members: ReadonlyArray<SequentialMemberJson | SequentialMember>;
19
- }
20
-
21
- export class SequentialHyperedge extends AbstractHyperedge {
22
- // Per-class metadata block — the OCP contract.
23
- static wireKey = 'sequential_relations' as const;
24
- static typeTag = 'sequential_relation' as const;
25
- static rdfType = 'gloss:SequentialRelation' as const;
26
- static memberClass = SequentialMember;
27
- static v1WireKeys: ReadonlyArray<string> = [];
28
- static kindLabel = 'SEQ';
29
-
30
- declare readonly members: ReadonlyArray<SequentialMember>;
31
-
32
- constructor(data: Partial<SequentialHyperedgeJson> = {}) {
33
- super({
34
- comprehensive: data.comprehensive ?? {},
35
- members: data.members ?? [],
36
- completeness: data.completeness ?? 'complete',
37
- criterion: data.criterion,
38
- sources: data.sources,
39
- notes: data.notes,
40
- status: data.status,
41
- });
42
- this.members = (Array.isArray(data.members) ? data.members : []).map((m) =>
43
- m instanceof SequentialMember ? m : new SequentialMember(m as SequentialMemberJson),
44
- );
45
- }
46
-
47
- static identityOf(
48
- value: {
49
- comprehensive?: { source?: string | null; id?: string | null } | null;
50
- members?: ReadonlyArray<{ ref?: { source?: string | null; id?: string | null } | null } | null>;
51
- } | null | undefined,
52
- ): string {
53
- const v = value ?? {};
54
- const c = v.comprehensive ?? {};
55
- // For sequential, member order IS significant — do NOT sort.
56
- const memberKeys = (v.members ?? []).map((m) => {
57
- const r = m?.ref ?? (m as { source?: string; id?: string } | null) ?? {};
58
- return `${r.source ?? ''}:${r.id ?? ''}`;
59
- });
60
- return `${c.source ?? ''}:${c.id ?? ''}|${memberKeys.join('|')}`;
61
- }
62
-
63
- static override fromJSON(data: SequentialHyperedgeJson): SequentialHyperedge {
64
- return new SequentialHyperedge(data);
65
- }
66
- }
67
-
68
- export default SequentialHyperedge;
69
-
70
- HyperedgeRegistry.register(SequentialHyperedge);
@@ -1,36 +0,0 @@
1
- import { NonVerbalEntity } from './non-verbal-entity.js';
2
- import type { NonVerbalEntityJson } from './non-verbal-entity.js';
3
-
4
- export interface SharedNonVerbalEntityJson extends NonVerbalEntityJson {
5
- id?: string | null;
6
- identifier?: string | null;
7
- }
8
-
9
- export class SharedNonVerbalEntity extends NonVerbalEntity {
10
- readonly id: string | null;
11
- readonly identifier: string | null;
12
-
13
- constructor(data: SharedNonVerbalEntityJson = {}) {
14
- super(data);
15
- this.id = data.id ?? null;
16
- this.identifier = data.identifier ?? null;
17
- }
18
-
19
- override findById(targetId: string): this | null {
20
- return this.id === targetId ? this : null;
21
- }
22
- override allIds(): string[] {
23
- return this.id != null ? [this.id] : [];
24
- }
25
-
26
- override toJSON(): SharedNonVerbalEntityJson {
27
- const obj = super.toJSON() as SharedNonVerbalEntityJson;
28
- if (this.id != null) obj.id = this.id;
29
- if (this.identifier != null) obj.identifier = this.identifier;
30
- return obj;
31
- }
32
-
33
- static override fromJSON(data: SharedNonVerbalEntityJson): SharedNonVerbalEntity {
34
- return SharedNonVerbalEntity.fromData(data);
35
- }
36
- }
@@ -1,36 +0,0 @@
1
- import { SharedNonVerbalEntity } from './shared-non-verbal-entity.js';
2
- import type { SharedNonVerbalEntityJson } from './shared-non-verbal-entity.js';
3
- import { NonVerbalEntity } from './non-verbal-entity.js';
4
-
5
- export interface TableJson extends SharedNonVerbalEntityJson {
6
- content?: string | null;
7
- format?: string | null;
8
- }
9
-
10
- export class Table extends SharedNonVerbalEntity {
11
- readonly content: string | null;
12
- readonly format: string | null;
13
-
14
- constructor(data: TableJson = {}) {
15
- super(data);
16
- this.content = data.content ?? null;
17
- this.format = data.format ?? null;
18
- }
19
-
20
- override rdfClass(): string {
21
- return 'Table';
22
- }
23
-
24
- override toJSON(): TableJson {
25
- const obj = super.toJSON() as TableJson;
26
- if (this.content != null) obj.content = this.content;
27
- if (this.format != null) obj.format = this.format;
28
- return obj;
29
- }
30
-
31
- static override fromJSON(data: TableJson): Table {
32
- return new Table(data);
33
- }
34
- }
35
-
36
- NonVerbalEntity.register('table', Table);