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,192 +0,0 @@
1
- // @ts-nocheck — TEMPORARY during TS migration. TODO(Phase 2e): remove and type fully.
2
- // NonVerbal entity → RDF quads. Mirrors the v3.1.0 concept-model
3
- // NonVerbal class hierarchy. Two distinct shapes:
4
- //
5
- // 1. Legacy `gloss:NonVerbalRepresentation` (NonVerbRep) — a child of
6
- // LocalizedConcept with a positional bnode subject. Carries
7
- // `representationType`, `representationRef`, `representationText`.
8
- //
9
- // 2. Dataset-level `gloss:Figure` / `gloss:Table` / `gloss:Formula`
10
- // (SharedNonVerbalEntity subtypes) — first-class resources with
11
- // their own URIs. Carries caption, description, altText, sources,
12
- // plus subtype-specific fields (Figure: images + subfigures;
13
- // Table: content + format; Formula: expression + notation +
14
- // latexForm).
15
- //
16
- // The dispatch on the entity's `rdfClass()` follows the same OCP
17
- // pattern as Designation — a new subtype registers without editing
18
- // this emitter.
19
- import { PRED, PREFIXES } from './predicates.js';
20
- import { WELL_KNOWN } from './prefixes.js';
21
- import { deterministicBnode } from './deterministic-id.js';
22
- import { namedNode, literal, quad } from './terms.js';
23
- import { conceptSourceToQuads } from './gloss-source.js';
24
-
25
- const DCTERMS_DESCRIPTION = `${PREFIXES.dcterms}description`;
26
- const DCTERMS_FORMAT = `${PREFIXES.dcterms}format`;
27
- const XSD_STRING = `${PREFIXES.xsd}string`;
28
-
29
- // ── Legacy NonVerbRep (concept-local, positional) ──────────────────────
30
-
31
- // Emits a `gloss:NonVerbalRepresentation` blank node linked from the
32
- // parent localized concept via `gloss:hasNonVerbalRep`. Mirrors the
33
- // Ruby `Rdf::GlossNonVerbalRep` shape: type/ref/text plus sources.
34
- export function* nonVerbalRepToQuads(nvr, { parentUri, index, language = null }) {
35
- const subject = deterministicBnode(parentUri, 'nvr', index);
36
-
37
- yield quad(namedNode(parentUri), namedNode(PRED.gloss.hasNonVerbalRep), namedNode(subject));
38
- yield quad(namedNode(subject), namedNode(WELL_KNOWN.rdfType), namedNode(`${PRED.gloss.$ns}${nvr.rdfClass()}`));
39
-
40
- if (nvr.type) {
41
- yield quad(namedNode(subject), namedNode(PRED.gloss.representationType), literal(nvr.type, XSD_STRING));
42
- }
43
- for (const image of nvr.images ?? []) {
44
- if (image.src) {
45
- yield quad(namedNode(subject), namedNode(PRED.gloss.image), literal(image.src, XSD_STRING));
46
- }
47
- }
48
- if (nvr.caption) {
49
- yield quad(namedNode(subject), namedNode(PRED.gloss.caption), literal(nvr.caption, language));
50
- }
51
- if (nvr.description) {
52
- yield quad(namedNode(subject), namedNode(DCTERMS_DESCRIPTION), literal(nvr.description, language));
53
- }
54
- if (nvr.alt) {
55
- yield quad(namedNode(subject), namedNode(PRED.gloss.altText), literal(nvr.alt, language));
56
- }
57
-
58
- let srcIndex = 0;
59
- for (const source of nvr.sources ?? []) {
60
- yield* conceptSourceToQuads(source, { subjectUri: subject, index: srcIndex });
61
- srcIndex += 1;
62
- }
63
- }
64
-
65
- // ── Dataset-level Figure / Table / Formula ────────────────────────────
66
-
67
- // URI scheme: `<uriBase>/<registerId>/<kind>/<id>` where `kind` is the
68
- // entity's rdfClass() lowercased (figure/table/formula). Stable across
69
- // runs and consumers.
70
- export function nonVerbalEntityUri(entity, { registerId, uriBase }) {
71
- const id = String(entity.id ?? entity.identifier ?? '');
72
- const kind = String(entity.rdfClass() ?? 'NonVerbalEntity').toLowerCase();
73
- const base = String(uriBase ?? '').replace(/\/+$/, '');
74
- return `${base}/${registerId}/${kind}/${id}`;
75
- }
76
-
77
- // Emits a dataset-level NonVerbalEntity (Figure/Table/Formula) as a
78
- // first-class resource. Calls into subtype-specific emitters via the
79
- // entity's class identity — OCP: a new subtype adds a branch in
80
- // `subtypeQuadsFor` without changing the public entry point.
81
- export function* nonVerbalEntityToQuads(entity, options) {
82
- const subjectUri = nonVerbalEntityUri(entity, options);
83
- const s = namedNode(subjectUri);
84
-
85
- yield quad(s, namedNode(WELL_KNOWN.rdfType), namedNode(`${PRED.gloss.$ns}${entity.rdfClass()}`));
86
-
87
- if (entity.caption) {
88
- yield quad(s, namedNode(PRED.gloss.caption), literal(entity.caption, null));
89
- }
90
- if (entity.description) {
91
- yield quad(s, namedNode(DCTERMS_DESCRIPTION), literal(entity.description, null));
92
- }
93
- if (entity.alt) {
94
- yield quad(s, namedNode(PRED.gloss.altText), literal(entity.alt, null));
95
- }
96
-
97
- yield* subtypeQuadsFor(entity, s, options);
98
-
99
- let srcIndex = 0;
100
- for (const source of entity.sources ?? []) {
101
- yield* conceptSourceToQuads(source, { subjectUri, index: srcIndex });
102
- srcIndex += 1;
103
- }
104
- }
105
-
106
- // Dispatch table: maps the entity's rdfClass() local name to a
107
- // subtype-specific quad generator. Adding a new subtype = adding a
108
- // branch here + an rdfClass() override on the model class.
109
- function* subtypeQuadsFor(entity, s, options) {
110
- switch (entity.rdfClass()) {
111
- case 'Figure': yield* figureQuads(entity, s, options); break;
112
- case 'Table': yield* tableQuads(entity, s); break;
113
- case 'Formula': yield* formulaQuads(entity, s); break;
114
- // NonVerbalEntity base or unknown — no subtype-specific quads.
115
- }
116
- }
117
-
118
- function* figureQuads(figure, s, options) {
119
- let imgIndex = 0;
120
- for (const image of figure.images ?? []) {
121
- const imgSubject = deterministicBnode(s.value, 'image', imgIndex);
122
- yield quad(s, namedNode(PRED.gloss.image), namedNode(imgSubject));
123
- yield quad(namedNode(imgSubject), namedNode(WELL_KNOWN.rdfType), namedNode(PRED.gloss.FigureImage));
124
- if (image.src) {
125
- yield quad(namedNode(imgSubject), namedNode(PRED.gloss.src), literal(image.src, XSD_STRING));
126
- }
127
- if (image.format) {
128
- yield quad(namedNode(imgSubject), namedNode(DCTERMS_FORMAT), literal(image.format, XSD_STRING));
129
- }
130
- if (image.role) {
131
- yield quad(namedNode(imgSubject), namedNode(PRED.gloss.role), literal(image.role, XSD_STRING));
132
- }
133
- imgIndex += 1;
134
- }
135
-
136
- let subIndex = 0;
137
- for (const sub of figure.subfigures ?? []) {
138
- const subSubject = deterministicBnode(s.value, 'subfig', subIndex);
139
- yield quad(s, namedNode(PRED.gloss.hasSubfigure), namedNode(subSubject));
140
- // Subfigures recurse as their own Figure bnodes — same shape,
141
- // different subject. We inline the base + subtype quads so the
142
- // subfigure's images also resolve.
143
- yield* subfigureQuads(sub, subSubject, options);
144
- subIndex += 1;
145
- }
146
- }
147
-
148
- // Sub-figure emitter — mirrors `nonVerbalEntityToQuads` but with a
149
- // pre-assigned bnode subject (subfigures don't get their own URI).
150
- function* subfigureQuads(figure, subjectUri, _options) {
151
- const s = namedNode(subjectUri);
152
- yield quad(s, namedNode(WELL_KNOWN.rdfType), namedNode(`${PRED.gloss.$ns}${figure.rdfClass()}`));
153
-
154
- if (figure.caption) {
155
- yield quad(s, namedNode(PRED.gloss.caption), literal(figure.caption, null));
156
- }
157
- if (figure.description) {
158
- yield quad(s, namedNode(DCTERMS_DESCRIPTION), literal(figure.description, null));
159
- }
160
- if (figure.alt) {
161
- yield quad(s, namedNode(PRED.gloss.altText), literal(figure.alt, null));
162
- }
163
-
164
- let imgIndex = 0;
165
- for (const image of figure.images ?? []) {
166
- const imgSubject = deterministicBnode(s.value, 'image', imgIndex);
167
- yield quad(s, namedNode(PRED.gloss.image), namedNode(imgSubject));
168
- yield quad(namedNode(imgSubject), namedNode(WELL_KNOWN.rdfType), namedNode(PRED.gloss.FigureImage));
169
- if (image.src) {
170
- yield quad(namedNode(imgSubject), namedNode(PRED.gloss.src), literal(image.src, XSD_STRING));
171
- }
172
- imgIndex += 1;
173
- }
174
- }
175
-
176
- function* tableQuads(table, s) {
177
- if (table.content) {
178
- yield quad(s, namedNode(PRED.gloss.content), literal(table.content, null));
179
- }
180
- if (table.format) {
181
- yield quad(s, namedNode(PRED.gloss.format), literal(table.format, XSD_STRING));
182
- }
183
- }
184
-
185
- function* formulaQuads(formula, s) {
186
- if (formula.expression) {
187
- yield quad(s, namedNode(PRED.gloss.expression), literal(formula.expression, null));
188
- }
189
- if (formula.notation) {
190
- yield quad(s, namedNode(PRED.gloss.latexForm), literal(formula.notation, XSD_STRING));
191
- }
192
- }
@@ -1,89 +0,0 @@
1
- // PartitiveHyperedge → RDF quads.
2
- //
3
- // Shape (per concept-model ontology, v3.2.0):
4
- //
5
- // <base>/partitive-relation/<carrying-id>/<comprehensive-id>
6
- // rdf:type gloss:PartitiveHyperedge
7
- // gloss:comprehensive <base>/concept/<comprehensive-id> (named node)
8
- // gloss:hasPartitive <base>/concept/<partitive-id> (named node, one per member)
9
- // gloss:completeness <.../completeness/complete|partial> (named node, SKOS)
10
- // gloss:criterion "..."@lang (literal, one per language)
11
- //
12
- // Per-member multiplicity + is_delimiting are emitted by the
13
- // `partitiveMemberToQuads` helper in `gloss-partitive-member.js`.
14
- //
15
- // The carrying concept links via `gloss:hasPartitiveRelation`.
16
- //
17
- // Per
18
- // TODO.partitive-relation-v2 item 01.
19
- // Cross-repo alignment with glossarist-ruby's Rdf::GlossPartitiveRelation.
20
- //
21
- // JSON-LD `@type: @id` invariant: `multiplicity` and `completeness`
22
- // are URI references into SKOS taxonomies (per
23
- // `data/concept-model/glossarist.context.jsonld`), not literals.
24
- // `criterion` is `@container: @language` (one literal per language).
25
- // `isDelimiting` is `xsd:boolean` literal.
26
-
27
- import { PRED } from './predicates.js';
28
- import { WELL_KNOWN } from './prefixes.js';
29
- import { partitiveMemberToQuads } from './gloss-partitive-member.js';
30
- import { namedNode, literal, quad } from './terms.js';
31
-
32
- const COMPLETENESS_NS = 'https://www.glossarist.org/ontologies/completeness/';
33
-
34
- export function* partitiveRelationToQuads(relation, { parentUri, index }) {
35
- const subjectUri = partitiveRelationSubjectUri(parentUri, relation, index);
36
- const s = namedNode(subjectUri);
37
-
38
- yield quad(s, namedNode(WELL_KNOWN.rdfType), namedNode(PRED.gloss.PartitiveHyperedge));
39
-
40
- const comp = relation.comprehensive;
41
- if (comp && (comp.source || comp.id)) {
42
- yield quad(s, namedNode(PRED.gloss.comprehensive),
43
- namedNode(conceptRefUri(comp, parentUri)));
44
- }
45
-
46
- const members = Array.isArray(relation.partitives) ? relation.partitives : [];
47
- for (const member of members) {
48
- const ref = member?.ref ?? member;
49
- if (!ref || (!ref.source && !ref.id)) continue;
50
- const memberUri = conceptRefUri(ref, parentUri);
51
- yield quad(s, namedNode(PRED.gloss.hasPartitive), namedNode(memberUri));
52
- yield* partitiveMemberToQuads(member, { memberUri });
53
- }
54
-
55
- if (relation.completeness) {
56
- yield quad(s, namedNode(PRED.gloss.completeness),
57
- namedNode(COMPLETENESS_NS + relation.completeness));
58
- }
59
-
60
- if (relation.criterion && typeof relation.criterion === 'object') {
61
- for (const [lang, text] of Object.entries(relation.criterion)) {
62
- if (typeof text !== 'string') continue;
63
- yield quad(s, namedNode(PRED.gloss.criterion), literal(text, lang));
64
- }
65
- }
66
- }
67
-
68
- // Subject URI scheme: `<base>/partitive-relation/<carrying-id>/<comprehensive-id>`.
69
- // Matches the Ruby emitter's scheme. Falls back to an index suffix if
70
- // the comprehensive has no id, so two relations on the same concept
71
- // never collide.
72
- export function partitiveRelationSubjectUri(parentUri, relation, index) {
73
- const base = parentUri.replace(/\/concept\/[^/]+$/, '');
74
- const carrierId = parentUri.split('/concept/')[1] ?? `carrier-${index}`;
75
- const compId = relation?.comprehensive?.id ?? `comp-${index}`;
76
- return `${base}/partitive-relation/${carrierId}/${compId}`;
77
- }
78
-
79
- // ConceptRef URI resolution: `<base>/concept/<id>` for any ref with an
80
- // id. Source is dropped (matches Ruby). Falls back to a stable urn:/
81
- // form for refs with only a source (rare).
82
- function conceptRefUri(ref, parentUri) {
83
- const id = ref?.id;
84
- if (id) {
85
- const base = parentUri.split('/concept/')[0];
86
- return `${base}/concept/${id}`;
87
- }
88
- return `urn:glossarist:${ref?.source ?? 'unknown'}:`;
89
- }
@@ -1,56 +0,0 @@
1
- // ConceptSource → RDF quads. Mirrors glossarist-ruby's
2
- // `Rdf::GlossConceptSource` + `Rdf::GlossCitation`. Sources are reified
3
- // resources linked from their parent (concept or localized concept or
4
- // definition) via `gloss:hasSource`.
5
- import { PRED } from './predicates.js';
6
- import { WELL_KNOWN } from './prefixes.js';
7
- import { deterministicBnode } from './deterministic-id.js';
8
- import { normalizeEnum } from './normalize-enum.js';
9
- import { namedNode, literal, quad } from './terms.js';
10
-
11
- export function* conceptSourceToQuads(source, { subjectUri, index }) {
12
- const srcSubject = deterministicBnode(subjectUri, 'source', index);
13
-
14
- yield quad(namedNode(subjectUri), namedNode(PRED.gloss.hasSource), namedNode(srcSubject));
15
- yield quad(namedNode(srcSubject), namedNode(WELL_KNOWN.rdfType), namedNode(PRED.gloss.ConceptSource));
16
-
17
- const statusToken = normalizeEnum(source.status);
18
- if (statusToken) {
19
- yield quad(namedNode(srcSubject), namedNode(PRED.gloss.sourceStatus), namedNode(`${PRED.gloss.$ns}srcstatus/${statusToken}`));
20
- }
21
- const typeToken = normalizeEnum(source.type);
22
- if (typeToken) {
23
- yield quad(namedNode(srcSubject), namedNode(PRED.gloss.sourceType), namedNode(`${PRED.gloss.$ns}srctype/${typeToken}`));
24
- }
25
- if (source.modification) {
26
- yield quad(namedNode(srcSubject), namedNode(PRED.gloss.modification), literal(source.modification));
27
- }
28
-
29
- if (source.origin) {
30
- yield* citationToQuads(source.origin, { subjectUri: srcSubject, predicate: PRED.gloss.sourceOrigin, bnodeKey: 'origin' });
31
- }
32
-
33
- const sourcedFrom = source.sourcedFrom ?? source.sourced_from ?? [];
34
- for (let i = 0; i < sourcedFrom.length; i++) {
35
- yield* citationToQuads(sourcedFrom[i], { subjectUri: srcSubject, predicate: PRED.gloss.sourcedFrom, bnodeKey: 'sourced_from', index: i });
36
- }
37
- }
38
-
39
- function* citationToQuads(citation, { subjectUri, predicate, bnodeKey, index = 0 }) {
40
- const citSubject = deterministicBnode(subjectUri, bnodeKey, index);
41
- yield quad(namedNode(subjectUri), namedNode(predicate), namedNode(citSubject));
42
- yield quad(namedNode(citSubject), namedNode(WELL_KNOWN.rdfType), namedNode(PRED.gloss.Citation));
43
-
44
- if (citation.original) {
45
- yield quad(namedNode(citSubject), namedNode(PRED.gloss.citationOriginal), literal(citation.original));
46
- }
47
- if (citation.link) {
48
- yield quad(namedNode(citSubject), namedNode(PRED.gloss.citationLink), literal(citation.link));
49
- }
50
-
51
- if (citation.ref) {
52
- if (citation.ref.source) yield quad(namedNode(citSubject), namedNode(PRED.gloss.citationRefSource), literal(citation.ref.source));
53
- if (citation.ref.id) yield quad(namedNode(citSubject), namedNode(PRED.gloss.citationRefId), literal(citation.ref.id));
54
- if (citation.ref.version) yield quad(namedNode(citSubject), namedNode(PRED.gloss.citationRefVersion), literal(citation.ref.version));
55
- }
56
- }
@@ -1,133 +0,0 @@
1
- // Group emitter — emits dcat:DatasetSeries (lineage) or dcat:Catalog
2
- // (topic/family/collection) for dataset groups. Mirrors concept-browser's
3
- // group-emitter.ts.
4
- //
5
- // A lineage group (editions of the same vocabulary) is rendered as
6
- // dcat:DatasetSeries with hasVersion links to each member edition.
7
- // The current edition is linked via hasCurrentVersion.
8
- //
9
- // Other group kinds (topic, family, collection) are rendered as
10
- // dcat:Catalog with dcat:dataset links to each member.
11
- //
12
- // Both kinds are also typed as skos:ConceptScheme for SKOS interop.
13
-
14
- import { namedNode, literal, quad } from './terms.js';
15
- import { PREFIXES } from './prefixes.js';
16
- import { RDF_TYPE } from './curie.js';
17
-
18
- // Namespace IRIs from canonical PREFIXES.
19
- const DCAT_NS = PREFIXES.dcat ?? 'http://www.w3.org/ns/dcat#';
20
- const DCTERMS_NS = PREFIXES.dcterms;
21
- const SKOS_NS = PREFIXES.skos;
22
- const PROV_NS = PREFIXES.prov;
23
-
24
- const DCAT = {
25
- DatasetSeries: `${DCAT_NS}DatasetSeries`,
26
- Catalog: `${DCAT_NS}Catalog`,
27
- ConceptScheme: `${SKOS_NS}ConceptScheme`,
28
- hasVersion: `${DCAT_NS}hasVersion`,
29
- hasCurrentVersion: `${DCAT_NS}hasCurrentVersion`,
30
- dataset: `${DCAT_NS}dataset`,
31
- theme: `${DCAT_NS}theme`,
32
- keyword: `${DCAT_NS}keyword`,
33
- contactPoint: `${DCAT_NS}contactPoint`,
34
- };
35
- const DCTERMS = {
36
- title: `${DCTERMS_NS}title`,
37
- description: `${DCTERMS_NS}description`,
38
- identifier: `${DCTERMS_NS}identifier`,
39
- subject: `${DCTERMS_NS}subject`,
40
- publisher: `${DCTERMS_NS}publisher`,
41
- };
42
- const PROV = {
43
- wasDerivedFrom: `${PROV_NS}wasDerivedFrom`,
44
- };
45
-
46
- /**
47
- * @typedef {'lineage' | 'topic' | 'family' | 'collection' | 'default'} DatasetGroupKind
48
- */
49
- /**
50
- * @typedef {Object} GroupEmitInput
51
- * @property {string} groupId
52
- * @property {string} groupIri
53
- * @property {DatasetGroupKind} kind
54
- * @property {string} title
55
- * @property {string} [description]
56
- * @property {readonly string[]} memberIris
57
- * @property {string} [currentMemberIri]
58
- * @property {string} [subject]
59
- * @property {readonly string[]} [themes]
60
- * @property {readonly string[]} [keywords]
61
- * @property {string} [publisher]
62
- * @property {string} [contact]
63
- * @property {string} [sourceRepo]
64
- */
65
-
66
- // Returns the RDF class IRIs for a group kind. Empty for 'default'
67
- // (no semantics — group is purely a presentation concern).
68
- function rdfClassesForKind(kind) {
69
- switch (kind) {
70
- case 'lineage': return [DCAT.DatasetSeries, DCAT.ConceptScheme];
71
- case 'topic':
72
- case 'family':
73
- case 'collection': return [DCAT.Catalog, DCAT.ConceptScheme];
74
- default: return [];
75
- }
76
- }
77
-
78
- /**
79
- * Emits dcat:DatasetSeries or dcat:Catalog quads for one group.
80
- *
81
- * Returns an empty generator (no quads) for 'default' kind — those
82
- * groups have no RDF semantics.
83
- *
84
- * @param {GroupEmitInput} input
85
- * @returns {Generator<Quad, void, unknown>}
86
- */
87
- export function* groupToQuads(input) {
88
- const classes = rdfClassesForKind(input.kind);
89
- if (classes.length === 0) return;
90
-
91
- const g = namedNode(input.groupIri);
92
-
93
- for (const cls of classes) {
94
- yield quad(g, namedNode(RDF_TYPE), namedNode(cls));
95
- }
96
-
97
- yield quad(g, namedNode(DCTERMS.title), literal(input.title));
98
- yield quad(g, namedNode(DCTERMS.identifier), literal(input.groupId));
99
- if (input.description) {
100
- yield quad(g, namedNode(DCTERMS.description), literal(input.description));
101
- }
102
- if (input.subject) {
103
- yield quad(g, namedNode(DCTERMS.subject), literal(input.subject));
104
- }
105
- for (const theme of input.themes ?? []) {
106
- yield quad(g, namedNode(DCAT.theme), namedNode(theme));
107
- }
108
- for (const kw of input.keywords ?? []) {
109
- yield quad(g, namedNode(DCAT.keyword), literal(kw));
110
- }
111
- if (input.publisher) {
112
- yield quad(g, namedNode(DCTERMS.publisher), namedNode(input.publisher));
113
- }
114
- if (input.contact) {
115
- yield quad(g, namedNode(DCAT.contactPoint), namedNode(input.contact));
116
- }
117
- if (input.sourceRepo) {
118
- yield quad(g, namedNode(PROV.wasDerivedFrom), namedNode(input.sourceRepo));
119
- }
120
-
121
- if (input.kind === 'lineage') {
122
- for (const memberIri of input.memberIris ?? []) {
123
- yield quad(g, namedNode(DCAT.hasVersion), namedNode(memberIri));
124
- }
125
- if (input.currentMemberIri) {
126
- yield quad(g, namedNode(DCAT.hasCurrentVersion), namedNode(input.currentMemberIri));
127
- }
128
- } else {
129
- for (const memberIri of input.memberIris ?? []) {
130
- yield quad(g, namedNode(DCAT.dataset), namedNode(memberIri));
131
- }
132
- }
133
- }
@@ -1,80 +0,0 @@
1
- // Image variant emitter — emits foaf:Image per format/language variant
2
- // of a dataset figure. Mirrors concept-browser's image-variant-emitter.ts.
3
- //
4
- // Each variant becomes a foaf:Image with:
5
- // - dcterms:format (MIME type)
6
- // - dcterms:language (when localized)
7
- // - dcat:byteSize (when known)
8
- // - dcat:downloadURL (canonical download)
9
-
10
- import { namedNode, literal, quad } from './terms.js';
11
- import { PREFIXES } from './prefixes.js';
12
- import { RDF_TYPE } from './curie.js';
13
-
14
- const FOAF_NS = PREFIXES.foaf ?? 'http://xmlns.com/foaf/0.1/';
15
- const DCTERMS_NS = PREFIXES.dcterms;
16
- const DCAT_NS = PREFIXES.dcat ?? 'http://www.w3.org/ns/dcat#';
17
- const XSD_NS = PREFIXES.xsd;
18
-
19
- const FOAF = {
20
- Image: `${FOAF_NS}Image`,
21
- };
22
- const DCTERMS = {
23
- format: `${DCTERMS_NS}format`,
24
- language: `${DCTERMS_NS}language`,
25
- };
26
- const DCAT = {
27
- byteSize: `${DCAT_NS}byteSize`,
28
- downloadURL: `${DCAT_NS}downloadURL`,
29
- };
30
- const XSD_INTEGER = `${XSD_NS}integer`;
31
-
32
- // No hardcoded default base URI. Callers MUST pass baseUri explicitly.
33
-
34
- /**
35
- * @typedef {'svg' | 'png' | 'webp' | 'jpg' | 'gif'} ImageFormat
36
- */
37
- /**
38
- * @typedef {Object} ImageVariantInput
39
- * @property {string} registerId
40
- * @property {string} figureId
41
- * @property {string} [lang]
42
- * @property {ImageFormat} format
43
- * @property {number} [byteSize]
44
- * @property {string} downloadUrl
45
- */
46
-
47
- const MIME_BY_FORMAT = Object.freeze({
48
- svg: 'image/svg+xml',
49
- png: 'image/png',
50
- webp: 'image/webp',
51
- jpg: 'image/jpeg',
52
- gif: 'image/gif',
53
- });
54
-
55
- /**
56
- * Returns the canonical IRI for an image variant. Includes the lang
57
- * segment when the variant is localized, otherwise omits it.
58
- */
59
- export function imageVariantIri(input, baseUri) {
60
- if (!baseUri) throw new Error('imageVariantIri requires baseUri — the deployment canonical URI root.');
61
- const langSuffix = input.lang ? `${input.lang}.` : '';
62
- return `${baseUri}/${input.registerId}/image/${input.figureId}/${langSuffix}${input.format}`;
63
- }
64
-
65
- /**
66
- * Emits foaf:Image quads for one image variant.
67
- */
68
- export function* imageVariantToQuads(input, baseUri) {
69
- if (!baseUri) throw new Error('imageVariantToQuads requires baseUri — the deployment canonical URI root.');
70
- const img = namedNode(imageVariantIri(input, baseUri));
71
- yield quad(img, namedNode(RDF_TYPE), namedNode(FOAF.Image));
72
- yield quad(img, namedNode(DCTERMS.format), literal(MIME_BY_FORMAT[input.format] ?? 'application/octet-stream'));
73
- if (input.lang) {
74
- yield quad(img, namedNode(DCTERMS.language), literal(input.lang));
75
- }
76
- if (input.byteSize != null) {
77
- yield quad(img, namedNode(DCAT.byteSize), literal(String(input.byteSize), namedNode(XSD_INTEGER)));
78
- }
79
- yield quad(img, namedNode(DCAT.downloadURL), namedNode(input.downloadUrl));
80
- }