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
@@ -0,0 +1 @@
1
+ {"version":3,"file":"binary-has-part-redundancy-rule.js","sourceRoot":"","sources":["../../src/validators/binary-has-part-redundancy-rule.ts"],"names":[],"mappings":"AAAA,8DAA8D;AAC9D,gEAAgE;AAChE,wEAAwE;AACxE,EAAE;AACF,2DAA2D;AAC3D,oEAAoE;AACpE,gEAAgE;AAChE,kEAAkE;AAClE,+DAA+D;AAC/D,gDAAgD;AAChD,EAAE;AACF,wCAAwC;AAExC,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAGtD,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAavC,MAAM,qBAAqB,GAAG,IAAI,GAAG,CAAC,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC,CAAC;AAElE,MAAM,OAAO,2BAA4B,SAAQ,cAAc;IAC7D,gBAAgB,KAAK,CAAC,4BAA4B,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC;IAExD,QAAQ,CAAC,OAAgB,EAAE,IAAY,EAAE,MAAwB;QACxE,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,EAAE,CAAC;QAE1C,kDAAkD;QAClD,MAAM,eAAe,GAAG,IAAI,GAAG,EAAU,CAAC;QAC1C,KAAK,MAAM,GAAG,IAAI,SAAgD,EAAE,CAAC;YACnE,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,EAAE,aAAa,IAAI,IAAI,CAAC,CAAC;YACnD,MAAM,OAAO,GAAG,GAAG,EAAE,UAAU,IAAI,GAAG,EAAE,KAAK,IAAI,EAAE,CAAC;YACpD,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;gBAC7B,MAAM,GAAG,GAAG,CAAC,MAAM,EAAE,GAAG,IAAI,MAAM,IAAI,IAAI,CAA4C,CAAC;gBACvF,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;gBACxB,IAAI,GAAG,IAAI,GAAG,KAAK,OAAO;oBAAE,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACvD,CAAC;QACH,CAAC;QAED,gCAAgC;QAChC,MAAM,aAAa,GAAG,IAAI,GAAG,EAAU,CAAC;QACxC,MAAM,OAAO,GAAG,OAAO,CAAC,eAAe,IAAI,EAAE,CAAC;QAC9C,KAAK,MAAM,EAAE,IAAI,OAA2C,EAAE,CAAC;YAC7D,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC;gBAAE,SAAS;YAClD,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,EAAE,EAAE,GAAG,IAAI,IAAI,CAA4C,CAAC,CAAC;YACjF,IAAI,GAAG;gBAAE,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAClC,CAAC;QAED,4BAA4B;QAC5B,KAAK,MAAM,MAAM,IAAI,eAAe,EAAE,CAAC;YACrC,IAAI,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC9B,IAAI,CAAC,QAAQ,CAAC,MAAM,EAClB,GAAG,IAAI,iBAAiB,EACxB,6BAA6B,MAAM,gCAAgC;oBACnE,kEAAkE,CACnE,CAAC;YACJ,CAAC;QACH,CAAC;QAED,2EAA2E;QAC3E,IAAI,aAAa,CAAC,IAAI,IAAI,CAAC,EAAE,CAAC;YAC5B,IAAI,CAAC,QAAQ,CAAC,MAAM,EAClB,GAAG,IAAI,iBAAiB,EACxB,GAAG,aAAa,CAAC,IAAI,0CAA0C;gBAC/D,+DAA+D;gBAC/D,qDAAqD,CACtD,CAAC;QACJ,CAAC;IACH,CAAC;CACF"}
@@ -0,0 +1,21 @@
1
+ import { ValidationRule } from './validation-rule.js';
2
+ import type { Concept } from '../models/concept.js';
3
+ import { ValidationResult } from './validation-result.js';
4
+ export declare class LanguageCodeRule extends ValidationRule {
5
+ constructor();
6
+ validate(concept: Concept, path: string, result: ValidationResult): void;
7
+ }
8
+ export declare class DesignationTypeRule extends ValidationRule {
9
+ constructor();
10
+ validate(concept: Concept, path: string, result: ValidationResult): void;
11
+ }
12
+ export declare class EntryStatusRule extends ValidationRule {
13
+ constructor();
14
+ validate(concept: Concept, path: string, result: ValidationResult): void;
15
+ }
16
+ export declare class ConceptValidator {
17
+ _rules: ValidationRule[];
18
+ addRule(rule: ValidationRule): this;
19
+ validate(concept: Concept): ValidationResult;
20
+ }
21
+ //# sourceMappingURL=concept-validator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"concept-validator.d.ts","sourceRoot":"","sources":["../../src/validators/concept-validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAU1D,qBAAa,gBAAiB,SAAQ,cAAc;;IAEzC,QAAQ,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,gBAAgB;CAS3E;AAED,qBAAa,mBAAoB,SAAQ,cAAc;;IAE5C,QAAQ,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,gBAAgB;CAc3E;AAED,qBAAa,eAAgB,SAAQ,cAAc;;IAExC,QAAQ,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,gBAAgB;CAW3E;AAED,qBAAa,gBAAgB;IAC3B,MAAM,EAAE,cAAc,EAAE,CAAM;IAE9B,OAAO,CAAC,IAAI,EAAE,cAAc;IAK5B,QAAQ,CAAC,OAAO,EAAE,OAAO;CAyB1B"}
@@ -0,0 +1,76 @@
1
+ import { ValidationRule } from './validation-rule.js';
2
+ import { ValidationResult } from './validation-result.js';
3
+ const VALID_DESIGNATION_TYPES = new Set([
4
+ 'expression', 'abbreviation', 'symbol', 'graphical symbol', 'graphical_symbol',
5
+ ]);
6
+ const VALID_ENTRY_STATUSES = new Set([
7
+ 'valid', 'draft', 'retired', 'notValid', 'superseded', 'withdrawn',
8
+ ]);
9
+ export class LanguageCodeRule extends ValidationRule {
10
+ constructor() { super('language-code'); }
11
+ validate(concept, path, result) {
12
+ for (const lang of concept.languages) {
13
+ if (!/^[a-z]{3}$/.test(lang)) {
14
+ this.addIssue(result, `${path}localizations.${lang}`, `Invalid language code '${lang}': expected ISO 639-3 (3 lowercase letters)`);
15
+ }
16
+ }
17
+ }
18
+ }
19
+ export class DesignationTypeRule extends ValidationRule {
20
+ constructor() { super('designation-type'); }
21
+ validate(concept, path, result) {
22
+ for (const lang of concept.languages) {
23
+ const lc = concept.localization(lang);
24
+ if (!lc)
25
+ continue;
26
+ for (let i = 0; i < lc.terms.length; i++) {
27
+ const type = lc.terms[i].type;
28
+ if (type && !VALID_DESIGNATION_TYPES.has(type)) {
29
+ this.addIssue(result, `${path}localizations.${lang}.terms[${i}].type`, `Unknown designation type '${type}'`);
30
+ }
31
+ }
32
+ }
33
+ }
34
+ }
35
+ export class EntryStatusRule extends ValidationRule {
36
+ constructor() { super('entry-status'); }
37
+ validate(concept, path, result) {
38
+ for (const lang of concept.languages) {
39
+ const lc = concept.localization(lang);
40
+ if (!lc)
41
+ continue;
42
+ if (lc.entryStatus && !VALID_ENTRY_STATUSES.has(lc.entryStatus)) {
43
+ this.addIssue(result, `${path}localizations.${lang}.entry_status`, `Unknown entry status '${lc.entryStatus}'`);
44
+ }
45
+ }
46
+ }
47
+ }
48
+ export class ConceptValidator {
49
+ _rules = [];
50
+ addRule(rule) {
51
+ this._rules.push(rule);
52
+ return this;
53
+ }
54
+ validate(concept) {
55
+ const result = new ValidationResult();
56
+ if (!concept.id) {
57
+ result.addError('id', 'Concept must have an id');
58
+ }
59
+ if (concept.languages.length === 0) {
60
+ result.addWarning('localizations', 'Concept must have at least one localization');
61
+ }
62
+ else {
63
+ for (const lang of concept.languages) {
64
+ const lc = concept.localization(lang);
65
+ if (!lc || lc.terms.length === 0) {
66
+ result.addWarning(`localizations.${lang}.terms`, `Localization '${lang}' must have at least one term`);
67
+ }
68
+ }
69
+ }
70
+ for (const rule of this._rules) {
71
+ rule.validate(concept, '', result);
72
+ }
73
+ return result;
74
+ }
75
+ }
76
+ //# sourceMappingURL=concept-validator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"concept-validator.js","sourceRoot":"","sources":["../../src/validators/concept-validator.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ import { ValidationRule } from './validation-rule.js';
2
+ import type { Concept } from '../models/concept.js';
3
+ import type { ValidationResult } from './validation-result.js';
4
+ export declare class DelimitingCoherenceRule extends ValidationRule {
5
+ constructor();
6
+ validate(concept: Concept, path: string, result: ValidationResult): void;
7
+ }
8
+ //# sourceMappingURL=delimiting-coherence-rule.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delimiting-coherence-rule.d.ts","sourceRoot":"","sources":["../../src/validators/delimiting-coherence-rule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAU/D,qBAAa,uBAAwB,SAAQ,cAAc;;IAGhD,QAAQ,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,gBAAgB;CAQ3E"}
@@ -0,0 +1,72 @@
1
+ import { ValidationRule } from './validation-rule.js';
2
+ import { refKey, criterionKey } from './ref-keys.js';
3
+ export class DelimitingCoherenceRule extends ValidationRule {
4
+ constructor() { super('delimiting-coherence'); }
5
+ validate(concept, path, result) {
6
+ const relations = concept.relations ?? [];
7
+ if (relations.length === 0)
8
+ return;
9
+ _checkOveruse(relations, path, result);
10
+ _checkInconsistentAcrossRelations(relations, path, result, this);
11
+ _checkDelimitingWithoutCriterion(relations, path, result);
12
+ }
13
+ }
14
+ function _checkOveruse(relations, path, result) {
15
+ for (let i = 0; i < relations.length; i++) {
16
+ const rel = relations[i];
17
+ const members = rel?.partitives ?? [];
18
+ if (members.length < 2)
19
+ continue;
20
+ const delimitingCount = members.filter(m => m?.is_delimiting === true).length;
21
+ if (delimitingCount === members.length) {
22
+ result.addWarning(`${path}partitiveRelations[${i}]`, `every partitive is marked is_delimiting=true; typically only ` +
23
+ `some parts distinguish the comprehensive from coordinate concepts`);
24
+ }
25
+ }
26
+ }
27
+ function _checkInconsistentAcrossRelations(relations, path, result, rule) {
28
+ const byCriterion = new Map();
29
+ for (let i = 0; i < relations.length; i++) {
30
+ const rel = relations[i];
31
+ const critKey = criterionKey(rel?.criterion ?? null);
32
+ if (critKey == null)
33
+ continue;
34
+ if (!byCriterion.has(critKey))
35
+ byCriterion.set(critKey, []);
36
+ byCriterion.get(critKey).push({ rel: rel, i });
37
+ }
38
+ for (const [, group] of byCriterion) {
39
+ const refDelimiting = new Map();
40
+ for (const { rel, i } of group) {
41
+ for (const m of rel?.partitives ?? []) {
42
+ const key = refKey(m?.ref ?? null);
43
+ if (key == null)
44
+ continue;
45
+ const delimiting = m?.is_delimiting === true;
46
+ const existing = refDelimiting.get(key);
47
+ if (existing != null && existing.delimiting !== delimiting) {
48
+ rule.addIssue(result, `${path}partitiveRelations[${i}].partitives`, `inconsistent is_delimiting for ref (${key}) across ` +
49
+ `relations ${existing.relIdx} and ${i} with the same ` +
50
+ `criterion; ISO 704 requires delimiting claims about the ` +
51
+ `same part to be consistent`);
52
+ }
53
+ else if (existing == null) {
54
+ refDelimiting.set(key, { delimiting, relIdx: i });
55
+ }
56
+ }
57
+ }
58
+ }
59
+ }
60
+ function _checkDelimitingWithoutCriterion(relations, path, result) {
61
+ for (let i = 0; i < relations.length; i++) {
62
+ const rel = relations[i];
63
+ if (rel?.criterion)
64
+ continue;
65
+ const anyDelimiting = (rel?.partitives ?? []).some(m => m?.is_delimiting === true);
66
+ if (anyDelimiting) {
67
+ result.addWarning(`${path}partitiveRelations[${i}].criterion`, `relation has is_delimiting=true on partitives but no criterion; ` +
68
+ `delimiting is meaningful only relative to a subdivision criterion`);
69
+ }
70
+ }
71
+ }
72
+ //# sourceMappingURL=delimiting-coherence-rule.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delimiting-coherence-rule.js","sourceRoot":"","sources":["../../src/validators/delimiting-coherence-rule.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ import { ValidationRule } from './validation-rule.js';
2
+ import type { Concept } from '../models/concept.js';
3
+ import type { ValidationResult } from './validation-result.js';
4
+ export declare class ExternalConceptShapeRule extends ValidationRule {
5
+ constructor();
6
+ validate(concept: Concept, path: string, result: ValidationResult): void;
7
+ }
8
+ //# sourceMappingURL=external-concept-shape-rule.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"external-concept-shape-rule.d.ts","sourceRoot":"","sources":["../../src/validators/external-concept-shape-rule.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE/D,qBAAa,wBAAyB,SAAQ,cAAc;;IAGjD,QAAQ,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,gBAAgB;CA0C3E"}
@@ -0,0 +1,48 @@
1
+ // Validates ExternalConcept shape (status: external).
2
+ //
3
+ // Per TODO.partitive-relation-v2 item 06, an ExternalConcept is a
4
+ // ManagedConcept with status: external. External concepts:
5
+ // - MUST have at least one designation (the name by which they're referenced)
6
+ // - MUST NOT have a definition (contradicts status: external)
7
+ // - MUST NOT have sources (we don't define them)
8
+ //
9
+ // Severity: error. An external concept with a definition or sources
10
+ // contradicts the semantic role of "external" and should be re-typed
11
+ // to a real concept status (valid, draft, etc.).
12
+ import { ValidationRule } from './validation-rule.js';
13
+ export class ExternalConceptShapeRule extends ValidationRule {
14
+ constructor() { super('external-concept-shape', 'error'); }
15
+ validate(concept, path, result) {
16
+ if (concept.status !== 'external')
17
+ return;
18
+ // Every concept — even an external one — needs at least one
19
+ // designation (the name by which it is referenced).
20
+ let designationCount = 0;
21
+ for (const lang of concept.languages ?? []) {
22
+ const lc = concept.localization?.(lang);
23
+ if (!lc)
24
+ continue;
25
+ designationCount += (lc.terms ?? []).length;
26
+ }
27
+ if (designationCount === 0) {
28
+ this.addIssue(result, `${path}localizations.*.terms`, 'ExternalConcept has no designations; every concept (including external) ' +
29
+ 'needs at least one designation (the name by which it is referenced)');
30
+ }
31
+ // External concepts must NOT have a definition or sources.
32
+ for (const lang of concept.languages ?? []) {
33
+ const lc = concept.localization?.(lang);
34
+ if (!lc)
35
+ continue;
36
+ if ((lc.definitions ?? []).length > 0) {
37
+ this.addIssue(result, `${path}localizations.${lang}.definitions`, `ExternalConcept has a definition in language '${lang}'; ` +
38
+ `external concepts are referenced but not defined here ` +
39
+ `(move the definition to the providing dataset and add a provided_by edge)`);
40
+ }
41
+ if ((lc.sources ?? []).length > 0) {
42
+ this.addIssue(result, `${path}localizations.${lang}.sources`, `ExternalConcept has sources in language '${lang}'; ` +
43
+ `external concepts should not carry sources (sources belong on the providing concept)`);
44
+ }
45
+ }
46
+ }
47
+ }
48
+ //# sourceMappingURL=external-concept-shape-rule.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"external-concept-shape-rule.js","sourceRoot":"","sources":["../../src/validators/external-concept-shape-rule.ts"],"names":[],"mappings":"AAAA,sDAAsD;AACtD,EAAE;AACF,kEAAkE;AAClE,2DAA2D;AAC3D,gFAAgF;AAChF,gEAAgE;AAChE,mDAAmD;AACnD,EAAE;AACF,oEAAoE;AACpE,qEAAqE;AACrE,iDAAiD;AAEjD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAItD,MAAM,OAAO,wBAAyB,SAAQ,cAAc;IAC1D,gBAAgB,KAAK,CAAC,wBAAwB,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;IAElD,QAAQ,CAAC,OAAgB,EAAE,IAAY,EAAE,MAAwB;QACxE,IAAI,OAAO,CAAC,MAAM,KAAK,UAAU;YAAE,OAAO;QAE1C,4DAA4D;QAC5D,oDAAoD;QACpD,IAAI,gBAAgB,GAAG,CAAC,CAAC;QACzB,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,SAAS,IAAI,EAAE,EAAE,CAAC;YAC3C,MAAM,EAAE,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,IAAI,CAAC,CAAC;YACxC,IAAI,CAAC,EAAE;gBAAE,SAAS;YAClB,gBAAgB,IAAI,CAAC,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC;QAC9C,CAAC;QACD,IAAI,gBAAgB,KAAK,CAAC,EAAE,CAAC;YAC3B,IAAI,CAAC,QAAQ,CAAC,MAAM,EAClB,GAAG,IAAI,uBAAuB,EAC9B,0EAA0E;gBAC1E,qEAAqE,CACtE,CAAC;QACJ,CAAC;QAED,2DAA2D;QAC3D,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,SAAS,IAAI,EAAE,EAAE,CAAC;YAC3C,MAAM,EAAE,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,IAAI,CAAC,CAAC;YACxC,IAAI,CAAC,EAAE;gBAAE,SAAS;YAElB,IAAI,CAAC,EAAE,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACtC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAClB,GAAG,IAAI,iBAAiB,IAAI,cAAc,EAC1C,iDAAiD,IAAI,KAAK;oBAC1D,wDAAwD;oBACxD,2EAA2E,CAC5E,CAAC;YACJ,CAAC;YAED,IAAI,CAAC,EAAE,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAClC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAClB,GAAG,IAAI,iBAAiB,IAAI,UAAU,EACtC,4CAA4C,IAAI,KAAK;oBACrD,sFAAsF,CACvF,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;CACF"}
@@ -0,0 +1,11 @@
1
+ import { ValidationResult } from './validation-result.js';
2
+ import type { GcrPackage } from '../gcr-reader.js';
3
+ export declare class GcrValidator {
4
+ validate(pkg: GcrPackage): Promise<ValidationResult>;
5
+ _validateMetadata(pkg: GcrPackage, result: ValidationResult): Promise<void>;
6
+ _validateConcepts(pkg: GcrPackage, result: ValidationResult): Promise<void>;
7
+ _validateAssets(pkg: GcrPackage, result: ValidationResult): Promise<void>;
8
+ _validateFileAsset(pkg: GcrPackage, path: string, result: ValidationResult): Promise<void>;
9
+ _validateDirectoryAsset(pkg: GcrPackage, dirPath: string, result: ValidationResult): void;
10
+ }
11
+ //# sourceMappingURL=gcr-validator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gcr-validator.d.ts","sourceRoot":"","sources":["../../src/validators/gcr-validator.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAInD,qBAAa,YAAY;IACjB,QAAQ,CAAC,GAAG,EAAE,UAAU,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAQpD,iBAAiB,CAAC,GAAG,EAAE,UAAU,EAAE,MAAM,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IAoB3E,iBAAiB,CAAC,GAAG,EAAE,UAAU,EAAE,MAAM,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IAO3E,eAAe,CAAC,GAAG,EAAE,UAAU,EAAE,MAAM,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IAUzE,kBAAkB,CAAC,GAAG,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IAWhG,uBAAuB,CAAC,GAAG,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,gBAAgB,GAAG,IAAI;CAa1F"}
@@ -0,0 +1,76 @@
1
+ import * as yaml from 'js-yaml';
2
+ import { DATASET_ASSETS } from '../dataset-asset.js';
3
+ import { ValidationResult } from './validation-result.js';
4
+ export class GcrValidator {
5
+ async validate(pkg) {
6
+ const result = new ValidationResult();
7
+ await this._validateMetadata(pkg, result);
8
+ await this._validateConcepts(pkg, result);
9
+ await this._validateAssets(pkg, result);
10
+ return result;
11
+ }
12
+ async _validateMetadata(pkg, result) {
13
+ const raw = await pkg.readText('metadata.yaml');
14
+ if (!raw) {
15
+ result.addError('metadata.yaml is missing');
16
+ return;
17
+ }
18
+ let meta;
19
+ try {
20
+ meta = yaml.load(raw);
21
+ }
22
+ catch (e) {
23
+ result.addError(`metadata.yaml: invalid YAML: ${e.message}`);
24
+ return;
25
+ }
26
+ if (!meta.shortname)
27
+ result.addError('metadata.yaml missing shortname');
28
+ if (!meta.version)
29
+ result.addError('metadata.yaml missing version');
30
+ if (meta.concept_count == null)
31
+ result.addError('metadata.yaml missing concept_count');
32
+ }
33
+ async _validateConcepts(pkg, result) {
34
+ const ids = await pkg.conceptIds();
35
+ if (ids.length === 0) {
36
+ result.addError('No concept files found in concepts/');
37
+ }
38
+ }
39
+ async _validateAssets(pkg, result) {
40
+ for (const asset of DATASET_ASSETS) {
41
+ if (asset.type === 'file') {
42
+ await this._validateFileAsset(pkg, asset.path, result);
43
+ }
44
+ else if (asset.type === 'directory') {
45
+ this._validateDirectoryAsset(pkg, asset.path, result);
46
+ }
47
+ }
48
+ }
49
+ async _validateFileAsset(pkg, path, result) {
50
+ const raw = await pkg.readText(path);
51
+ if (!raw)
52
+ return;
53
+ try {
54
+ yaml.load(raw);
55
+ }
56
+ catch (e) {
57
+ const err = e;
58
+ result.addError(`${path}: invalid YAML at line ${err.mark?.line ?? '?'}: ${err.message}`);
59
+ }
60
+ }
61
+ _validateDirectoryAsset(pkg, dirPath, result) {
62
+ let hasFiles = false;
63
+ let hasEntries = false;
64
+ for (const entry of pkg.entryPaths()) {
65
+ if (entry.path.startsWith(`${dirPath}/`)) {
66
+ hasEntries = true;
67
+ if (!entry.dir)
68
+ hasFiles = true;
69
+ }
70
+ }
71
+ if (hasEntries && !hasFiles) {
72
+ result.addWarning(`${dirPath}/ directory exists but is empty`);
73
+ }
74
+ }
75
+ }
76
+ //# sourceMappingURL=gcr-validator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gcr-validator.js","sourceRoot":"","sources":["../../src/validators/gcr-validator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAK1D,MAAM,OAAO,YAAY;IACvB,KAAK,CAAC,QAAQ,CAAC,GAAe;QAC5B,MAAM,MAAM,GAAG,IAAI,gBAAgB,EAAE,CAAC;QACtC,MAAM,IAAI,CAAC,iBAAiB,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;QAC1C,MAAM,IAAI,CAAC,iBAAiB,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;QAC1C,MAAM,IAAI,CAAC,eAAe,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;QACxC,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,GAAe,EAAE,MAAwB;QAC/D,MAAM,GAAG,GAAG,MAAM,GAAG,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;QAChD,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,MAAM,CAAC,QAAQ,CAAC,0BAA0B,CAAC,CAAC;YAC5C,OAAO;QACT,CAAC;QAED,IAAI,IAAyC,CAAC;QAC9C,IAAI,CAAC;YACH,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAA4B,CAAC;QACnD,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,MAAM,CAAC,QAAQ,CAAC,gCAAiC,CAAW,CAAC,OAAO,EAAE,CAAC,CAAC;YACxE,OAAO;QACT,CAAC;QAED,IAAI,CAAC,IAAK,CAAC,SAAS;YAAE,MAAM,CAAC,QAAQ,CAAC,iCAAiC,CAAC,CAAC;QACzE,IAAI,CAAC,IAAK,CAAC,OAAO;YAAE,MAAM,CAAC,QAAQ,CAAC,+BAA+B,CAAC,CAAC;QACrE,IAAI,IAAK,CAAC,aAAa,IAAI,IAAI;YAAE,MAAM,CAAC,QAAQ,CAAC,qCAAqC,CAAC,CAAC;IAC1F,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,GAAe,EAAE,MAAwB;QAC/D,MAAM,GAAG,GAAG,MAAM,GAAG,CAAC,UAAU,EAAE,CAAC;QACnC,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACrB,MAAM,CAAC,QAAQ,CAAC,qCAAqC,CAAC,CAAC;QACzD,CAAC;IACH,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,GAAe,EAAE,MAAwB;QAC7D,KAAK,MAAM,KAAK,IAAI,cAAyC,EAAE,CAAC;YAC9D,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;gBAC1B,MAAM,IAAI,CAAC,kBAAkB,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YACzD,CAAC;iBAAM,IAAI,KAAK,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;gBACtC,IAAI,CAAC,uBAAuB,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YACxD,CAAC;QACH,CAAC;IACH,CAAC;IAED,KAAK,CAAC,kBAAkB,CAAC,GAAe,EAAE,IAAY,EAAE,MAAwB;QAC9E,MAAM,GAAG,GAAG,MAAM,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACrC,IAAI,CAAC,GAAG;YAAE,OAAO;QACjB,IAAI,CAAC;YACH,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACjB,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,MAAM,GAAG,GAAG,CAAyC,CAAC;YACtD,MAAM,CAAC,QAAQ,CAAC,GAAG,IAAI,0BAA0B,GAAG,CAAC,IAAI,EAAE,IAAI,IAAI,GAAG,KAAK,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;QAC5F,CAAC;IACH,CAAC;IAED,uBAAuB,CAAC,GAAe,EAAE,OAAe,EAAE,MAAwB;QAChF,IAAI,QAAQ,GAAG,KAAK,CAAC;QACrB,IAAI,UAAU,GAAG,KAAK,CAAC;QACvB,KAAK,MAAM,KAAK,IAAI,GAAG,CAAC,UAAU,EAAE,EAAE,CAAC;YACrC,IAAI,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,OAAO,GAAG,CAAC,EAAE,CAAC;gBACzC,UAAU,GAAG,IAAI,CAAC;gBAClB,IAAI,CAAC,KAAK,CAAC,GAAG;oBAAE,QAAQ,GAAG,IAAI,CAAC;YAClC,CAAC;QACH,CAAC;QACD,IAAI,UAAU,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC5B,MAAM,CAAC,UAAU,CAAC,GAAG,OAAO,iCAAiC,CAAC,CAAC;QACjE,CAAC;IACH,CAAC;CACF"}
@@ -0,0 +1,9 @@
1
+ import { ValidationRule } from './validation-rule.js';
2
+ import type { Concept } from '../models/concept.js';
3
+ import type { ValidationResult } from './validation-result.js';
4
+ export declare class HyperedgeCoherenceRule extends ValidationRule {
5
+ constructor();
6
+ validate(concept: Concept, path: string, result: ValidationResult): void;
7
+ }
8
+ export declare const PartitiveRelationCoherenceRule: typeof HyperedgeCoherenceRule;
9
+ //# sourceMappingURL=hyperedge-coherence-rule.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hyperedge-coherence-rule.d.ts","sourceRoot":"","sources":["../../src/validators/hyperedge-coherence-rule.ts"],"names":[],"mappings":"AAwBA,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAW/D,qBAAa,sBAAuB,SAAQ,cAAc;;IAG/C,QAAQ,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,gBAAgB;CAsD3E;AAED,eAAO,MAAM,8BAA8B,+BAAyB,CAAC"}
@@ -0,0 +1,78 @@
1
+ // Validates hyperedge coherence per ISO 704 / ISO 12620.
2
+ //
3
+ // Applies to every AbstractHyperedge subclass (PartitiveHyperedge,
4
+ // GenericHyperedge, future TemporalHyperedge / AssociativeHyperedge /
5
+ // SequentialHyperedge). The ISO 704 / ISO 12620 invariants are
6
+ // type-blind:
7
+ //
8
+ // 1. ERROR: each hyperedge has ≥2 members (ISO 704 "two or more")
9
+ // 2. ERROR: no two hyperedges of the same type on the same concept
10
+ // share the same comprehensive + same criterion (duplicate
11
+ // decomposition — violates ISO 12620 coordinate-concept coherence)
12
+ // 3. WARNING: a concept with multiple hyperedges of the same type
13
+ // where any lacks criterion (cannot verify distinctness from
14
+ // siblings)
15
+ //
16
+ // Lives in the validator framework, not the model constructor, per
17
+ // invariant I8 (TODO.hyperedges-v2/00). Constructors enforce type-shape;
18
+ // validators enforce semantics.
19
+ //
20
+ // Per TODO Phase 7: rule renamed from PartitiveRelationCoherenceRule
21
+ // to HyperedgeCoherenceRule. The rule applies to all hyperedges; the
22
+ // duplicate check is scoped per type so a Partitive and a Generic with
23
+ // the same comprehensive+criterion don't false-positive.
24
+ import { ValidationRule } from './validation-rule.js';
25
+ import { refKey, criterionKey } from './ref-keys.js';
26
+ import { AbstractHyperedge } from '../models/abstract-hyperedge.js';
27
+ export class HyperedgeCoherenceRule extends ValidationRule {
28
+ constructor() { super('hyperedge-coherence'); }
29
+ validate(concept, path, result) {
30
+ const hyperedges = (concept.relations ?? []).filter(r => r instanceof AbstractHyperedge);
31
+ if (hyperedges.length === 0)
32
+ return;
33
+ for (let i = 0; i < hyperedges.length; i++) {
34
+ const memberCount = (hyperedges[i]?.members ?? []).length;
35
+ if (memberCount < 2) {
36
+ this.addIssue(result, `${path}relations[${i}].members`, `hyperedge ${i + 1} has ${memberCount} member(s); ` +
37
+ `ISO 704 requires ≥2 (use a binary edge for pairwise facts)`);
38
+ }
39
+ }
40
+ const seen = new Map();
41
+ for (let i = 0; i < hyperedges.length; i++) {
42
+ const rel = hyperedges[i];
43
+ const typeTag = rel.constructor?.typeTag ?? '';
44
+ const compKey = refKey(rel.comprehensive ?? null);
45
+ const critKey = criterionKey(rel.criterion ?? null);
46
+ if (compKey == null || critKey == null)
47
+ continue;
48
+ const key = `${typeTag}|${compKey}|${critKey}`;
49
+ if (seen.has(key)) {
50
+ this.addIssue(result, `${path}relations[${i}]`, `duplicate ${rel.constructor.name} (same comprehensive + same criterion ` +
51
+ `as relation ${(seen.get(key) ?? 0) + 1}); violates ISO 12620 coordinate-concept coherence`);
52
+ }
53
+ else {
54
+ seen.set(key, i);
55
+ }
56
+ }
57
+ const byType = new Map();
58
+ for (const rel of hyperedges) {
59
+ const typeTag = rel.constructor?.typeTag ?? '';
60
+ if (!byType.has(typeTag))
61
+ byType.set(typeTag, []);
62
+ byType.get(typeTag).push(rel);
63
+ }
64
+ for (const [typeTag, rels] of byType) {
65
+ if (rels.length <= 1)
66
+ continue;
67
+ for (const rel of rels) {
68
+ if (!rel.criterion) {
69
+ const idx = hyperedges.indexOf(rel);
70
+ result.addWarning(`${path}relations[${idx}].criterion`, `concept has multiple ${typeTag} hyperedges but this one ` +
71
+ `has no criterion; cannot verify distinctness from siblings`);
72
+ }
73
+ }
74
+ }
75
+ }
76
+ }
77
+ export const PartitiveRelationCoherenceRule = HyperedgeCoherenceRule;
78
+ //# sourceMappingURL=hyperedge-coherence-rule.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hyperedge-coherence-rule.js","sourceRoot":"","sources":["../../src/validators/hyperedge-coherence-rule.ts"],"names":[],"mappings":"AAAA,yDAAyD;AACzD,EAAE;AACF,mEAAmE;AACnE,sEAAsE;AACtE,+DAA+D;AAC/D,cAAc;AACd,EAAE;AACF,oEAAoE;AACpE,qEAAqE;AACrE,gEAAgE;AAChE,wEAAwE;AACxE,oEAAoE;AACpE,kEAAkE;AAClE,iBAAiB;AACjB,EAAE;AACF,mEAAmE;AACnE,yEAAyE;AACzE,gCAAgC;AAChC,EAAE;AACF,qEAAqE;AACrE,qEAAqE;AACrE,uEAAuE;AACvE,yDAAyD;AAEzD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAGtD,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AACrD,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AASpE,MAAM,OAAO,sBAAuB,SAAQ,cAAc;IACxD,gBAAgB,KAAK,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;IAEtC,QAAQ,CAAC,OAAgB,EAAE,IAAY,EAAE,MAAwB;QACxE,MAAM,UAAU,GAAG,CAAC,OAAO,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,YAAY,iBAAiB,CAA+B,CAAC;QACvH,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO;QAEpC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC3C,MAAM,WAAW,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,OAAO,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC;YAC1D,IAAI,WAAW,GAAG,CAAC,EAAE,CAAC;gBACpB,IAAI,CAAC,QAAQ,CAAC,MAAM,EAClB,GAAG,IAAI,aAAa,CAAC,WAAW,EAChC,aAAa,CAAC,GAAG,CAAC,QAAQ,WAAW,cAAc;oBACnD,4DAA4D,CAC7D,CAAC;YACJ,CAAC;QACH,CAAC;QAED,MAAM,IAAI,GAAG,IAAI,GAAG,EAAkB,CAAC;QACvC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC3C,MAAM,GAAG,GAAG,UAAU,CAAC,CAAC,CAAE,CAAC;YAC3B,MAAM,OAAO,GAAG,GAAG,CAAC,WAAW,EAAE,OAAO,IAAI,EAAE,CAAC;YAC/C,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC,aAAa,IAAI,IAAI,CAAC,CAAC;YAClD,MAAM,OAAO,GAAG,YAAY,CAAC,GAAG,CAAC,SAAS,IAAI,IAAI,CAAC,CAAC;YACpD,IAAI,OAAO,IAAI,IAAI,IAAI,OAAO,IAAI,IAAI;gBAAE,SAAS;YACjD,MAAM,GAAG,GAAG,GAAG,OAAO,IAAI,OAAO,IAAI,OAAO,EAAE,CAAC;YAC/C,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;gBAClB,IAAI,CAAC,QAAQ,CAAC,MAAM,EAClB,GAAG,IAAI,aAAa,CAAC,GAAG,EACxB,aAAa,GAAG,CAAC,WAAW,CAAC,IAAI,wCAAwC;oBACzE,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,oDAAoD,CAC5F,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;YACnB,CAAC;QACH,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,GAAG,EAA2B,CAAC;QAClD,KAAK,MAAM,GAAG,IAAI,UAAU,EAAE,CAAC;YAC7B,MAAM,OAAO,GAAG,GAAG,CAAC,WAAW,EAAE,OAAO,IAAI,EAAE,CAAC;YAC/C,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC;gBAAE,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;YAClD,MAAM,CAAC,GAAG,CAAC,OAAO,CAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACjC,CAAC;QACD,KAAK,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,MAAM,EAAE,CAAC;YACrC,IAAI,IAAI,CAAC,MAAM,IAAI,CAAC;gBAAE,SAAS;YAC/B,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;gBACvB,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC;oBACnB,MAAM,GAAG,GAAG,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;oBACpC,MAAM,CAAC,UAAU,CACf,GAAG,IAAI,aAAa,GAAG,aAAa,EACpC,wBAAwB,OAAO,2BAA2B;wBAC1D,4DAA4D,CAC7D,CAAC;gBACJ,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;CACF;AAED,MAAM,CAAC,MAAM,8BAA8B,GAAG,sBAAsB,CAAC"}
@@ -0,0 +1,21 @@
1
+ export { ValidationError } from './validation-error.js';
2
+ export { ValidationRule } from './validation-rule.js';
3
+ export { ValidationResult } from './validation-result.js';
4
+ export { ConceptValidator, LanguageCodeRule, DesignationTypeRule, EntryStatusRule } from './concept-validator.js';
5
+ export { RegisterValidator } from './register-validator.js';
6
+ export { GcrValidator } from './gcr-validator.js';
7
+ export { RelationshipTypeRule } from './relationship-type-rule.js';
8
+ export { RefShapeRule, LocalityCompletenessRule, LocalizationConsistencyRule, SchemaVersionRule, DomainRefRule, UuidFormatRule, SourceUrnFormatRule, CiteRefIntegrityRule, NonVerbalRefIntegrityRule, OrphanedImagesRule, } from './v3-rules.js';
9
+ export { SourcedFromLocalityRule } from './sourced-from-locality-rule.js';
10
+ export { PartitiveRelationCoherenceRule, HyperedgeCoherenceRule } from './hyperedge-coherence-rule.js';
11
+ export { ExternalConceptShapeRule } from './external-concept-shape-rule.js';
12
+ export { BinaryHasPartRedundancyRule } from './binary-has-part-redundancy-rule.js';
13
+ export { DelimitingCoherenceRule } from './delimiting-coherence-rule.js';
14
+ import type { Concept } from '../models/concept.js';
15
+ import type { GcrPackage } from '../gcr-reader.js';
16
+ import { ConceptValidator } from './concept-validator.js';
17
+ export declare function validateConcept(concept: Concept): import("./validation-result.js").ValidationResult;
18
+ export declare function createConceptValidator(): ConceptValidator;
19
+ export declare function validateRegister(register: unknown): import("./validation-result.js").ValidationResult;
20
+ export declare function validateGcrPackage(pkg: GcrPackage): Promise<import("./validation-result.js").ValidationResult>;
21
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/validators/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAClH,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,EACL,YAAY,EACZ,wBAAwB,EACxB,2BAA2B,EAC3B,iBAAiB,EACjB,aAAa,EACb,cAAc,EACd,mBAAmB,EACnB,oBAAoB,EACpB,yBAAyB,EACzB,kBAAkB,GACnB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,uBAAuB,EAAE,MAAM,iCAAiC,CAAC;AAC1E,OAAO,EAAE,8BAA8B,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AACvG,OAAO,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AAC5E,OAAO,EAAE,2BAA2B,EAAE,MAAM,sCAAsC,CAAC;AACnF,OAAO,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AAEzE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EAAE,gBAAgB,EAA0D,MAAM,wBAAwB,CAAC;AAyClH,wBAAgB,eAAe,CAAC,OAAO,EAAE,OAAO,qDAE/C;AAED,wBAAgB,sBAAsB,qBAErC;AAED,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,OAAO,qDAEjD;AAED,wBAAsB,kBAAkB,CAAC,GAAG,EAAE,UAAU,8DAEvD"}
@@ -5,77 +5,51 @@ export { ConceptValidator, LanguageCodeRule, DesignationTypeRule, EntryStatusRul
5
5
  export { RegisterValidator } from './register-validator.js';
6
6
  export { GcrValidator } from './gcr-validator.js';
7
7
  export { RelationshipTypeRule } from './relationship-type-rule.js';
8
- export {
9
- RefShapeRule,
10
- LocalityCompletenessRule,
11
- LocalizationConsistencyRule,
12
- SchemaVersionRule,
13
- DomainRefRule,
14
- UuidFormatRule,
15
- SourceUrnFormatRule,
16
- CiteRefIntegrityRule,
17
- NonVerbalRefIntegrityRule,
18
- OrphanedImagesRule,
19
- } from './v3-rules.js';
8
+ export { RefShapeRule, LocalityCompletenessRule, LocalizationConsistencyRule, SchemaVersionRule, DomainRefRule, UuidFormatRule, SourceUrnFormatRule, CiteRefIntegrityRule, NonVerbalRefIntegrityRule, OrphanedImagesRule, } from './v3-rules.js';
20
9
  export { SourcedFromLocalityRule } from './sourced-from-locality-rule.js';
21
10
  export { PartitiveRelationCoherenceRule, HyperedgeCoherenceRule } from './hyperedge-coherence-rule.js';
22
11
  export { ExternalConceptShapeRule } from './external-concept-shape-rule.js';
23
12
  export { BinaryHasPartRedundancyRule } from './binary-has-part-redundancy-rule.js';
24
13
  export { DelimitingCoherenceRule } from './delimiting-coherence-rule.js';
25
-
26
14
  import { ConceptValidator, LanguageCodeRule, DesignationTypeRule, EntryStatusRule } from './concept-validator.js';
27
15
  import { RegisterValidator } from './register-validator.js';
28
16
  import { GcrValidator } from './gcr-validator.js';
29
17
  import { RelationshipTypeRule } from './relationship-type-rule.js';
30
- import {
31
- RefShapeRule,
32
- LocalityCompletenessRule,
33
- LocalizationConsistencyRule,
34
- SchemaVersionRule,
35
- DomainRefRule,
36
- UuidFormatRule,
37
- SourceUrnFormatRule,
38
- CiteRefIntegrityRule,
39
- NonVerbalRefIntegrityRule,
40
- } from './v3-rules.js';
18
+ import { RefShapeRule, LocalityCompletenessRule, LocalizationConsistencyRule, SchemaVersionRule, DomainRefRule, UuidFormatRule, SourceUrnFormatRule, CiteRefIntegrityRule, NonVerbalRefIntegrityRule, } from './v3-rules.js';
41
19
  import { SourcedFromLocalityRule } from './sourced-from-locality-rule.js';
42
20
  import { HyperedgeCoherenceRule } from './hyperedge-coherence-rule.js';
43
21
  import { ExternalConceptShapeRule } from './external-concept-shape-rule.js';
44
22
  import { BinaryHasPartRedundancyRule } from './binary-has-part-redundancy-rule.js';
45
23
  import { DelimitingCoherenceRule } from './delimiting-coherence-rule.js';
46
-
47
24
  const _default = new ConceptValidator()
48
- .addRule(new LanguageCodeRule())
49
- .addRule(new DesignationTypeRule())
50
- .addRule(new EntryStatusRule())
51
- .addRule(new RefShapeRule())
52
- .addRule(new LocalityCompletenessRule())
53
- .addRule(new LocalizationConsistencyRule())
54
- .addRule(new SchemaVersionRule())
55
- .addRule(new DomainRefRule())
56
- .addRule(new UuidFormatRule())
57
- .addRule(new SourceUrnFormatRule())
58
- .addRule(new RelationshipTypeRule())
59
- .addRule(new CiteRefIntegrityRule())
60
- .addRule(new NonVerbalRefIntegrityRule())
61
- .addRule(new SourcedFromLocalityRule())
62
- .addRule(new HyperedgeCoherenceRule())
63
- .addRule(new ExternalConceptShapeRule())
64
- .addRule(new BinaryHasPartRedundancyRule())
65
- .addRule(new DelimitingCoherenceRule());
66
-
25
+ .addRule(new LanguageCodeRule())
26
+ .addRule(new DesignationTypeRule())
27
+ .addRule(new EntryStatusRule())
28
+ .addRule(new RefShapeRule())
29
+ .addRule(new LocalityCompletenessRule())
30
+ .addRule(new LocalizationConsistencyRule())
31
+ .addRule(new SchemaVersionRule())
32
+ .addRule(new DomainRefRule())
33
+ .addRule(new UuidFormatRule())
34
+ .addRule(new SourceUrnFormatRule())
35
+ .addRule(new RelationshipTypeRule())
36
+ .addRule(new CiteRefIntegrityRule())
37
+ .addRule(new NonVerbalRefIntegrityRule())
38
+ .addRule(new SourcedFromLocalityRule())
39
+ .addRule(new HyperedgeCoherenceRule())
40
+ .addRule(new ExternalConceptShapeRule())
41
+ .addRule(new BinaryHasPartRedundancyRule())
42
+ .addRule(new DelimitingCoherenceRule());
67
43
  export function validateConcept(concept) {
68
- return _default.validate(concept);
44
+ return _default.validate(concept);
69
45
  }
70
-
71
46
  export function createConceptValidator() {
72
- return new ConceptValidator();
47
+ return new ConceptValidator();
73
48
  }
74
-
75
49
  export function validateRegister(register) {
76
- return new RegisterValidator().validate(register);
50
+ return new RegisterValidator().validate(register);
77
51
  }
78
-
79
52
  export async function validateGcrPackage(pkg) {
80
- return new GcrValidator().validate(pkg);
53
+ return new GcrValidator().validate(pkg);
81
54
  }
55
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/validators/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export { HyperedgeCoherenceRule, PartitiveRelationCoherenceRule } from './hyperedge-coherence-rule.js';
2
+ //# sourceMappingURL=partitive-relation-coherence-rule.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"partitive-relation-coherence-rule.d.ts","sourceRoot":"","sources":["../../src/validators/partitive-relation-coherence-rule.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,sBAAsB,EAAE,8BAA8B,EAAE,MAAM,+BAA+B,CAAC"}