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.
- package/dist/compiled-format.d.ts +43 -0
- package/dist/compiled-format.d.ts.map +1 -0
- package/{src/compiled-format.ts → dist/compiled-format.js} +28 -46
- package/dist/compiled-format.js.map +1 -0
- package/dist/concept-collection.d.ts +39 -0
- package/dist/concept-collection.d.ts.map +1 -0
- package/dist/concept-collection.js +127 -0
- package/dist/concept-collection.js.map +1 -0
- package/dist/concept-diff.d.ts +14 -0
- package/dist/concept-diff.d.ts.map +1 -0
- package/{src/concept-diff.ts → dist/concept-diff.js} +2 -20
- package/dist/concept-diff.js.map +1 -0
- package/dist/concept-parser.d.ts +11 -0
- package/dist/concept-parser.d.ts.map +1 -0
- package/dist/concept-parser.js +209 -0
- package/dist/concept-parser.js.map +1 -0
- package/dist/concept-reader.d.ts +55 -0
- package/dist/concept-reader.d.ts.map +1 -0
- package/{src/concept-reader.ts → dist/concept-reader.js} +70 -76
- package/dist/concept-reader.js.map +1 -0
- package/dist/concept-serializer.d.ts +9 -0
- package/dist/concept-serializer.d.ts.map +1 -0
- package/dist/concept-serializer.js +87 -0
- package/dist/concept-serializer.js.map +1 -0
- package/dist/concept-writer.d.ts +10 -0
- package/dist/concept-writer.d.ts.map +1 -0
- package/dist/concept-writer.js +28 -0
- package/dist/concept-writer.js.map +1 -0
- package/dist/dataset-asset.d.ts +49 -0
- package/dist/dataset-asset.d.ts.map +1 -0
- package/{src/dataset-asset.ts → dist/dataset-asset.js} +16 -33
- package/dist/dataset-asset.js.map +1 -0
- package/dist/diff/canonical-json.d.ts +7 -0
- package/dist/diff/canonical-json.d.ts.map +1 -0
- package/dist/diff/canonical-json.js +28 -0
- package/dist/diff/canonical-json.js.map +1 -0
- package/dist/diff/change.d.ts +67 -0
- package/dist/diff/change.d.ts.map +1 -0
- package/dist/diff/change.js +131 -0
- package/dist/diff/change.js.map +1 -0
- package/dist/diff/collection-diff.d.ts +50 -0
- package/dist/diff/collection-diff.d.ts.map +1 -0
- package/dist/diff/collection-diff.js +182 -0
- package/dist/diff/collection-diff.js.map +1 -0
- package/dist/diff/concept-diff.d.ts +188 -0
- package/dist/diff/concept-diff.d.ts.map +1 -0
- package/dist/diff/concept-diff.js +624 -0
- package/dist/diff/concept-diff.js.map +1 -0
- package/dist/diff/diff-patch.d.ts +7 -0
- package/dist/diff/diff-patch.d.ts.map +1 -0
- package/dist/diff/diff-patch.js +225 -0
- package/dist/diff/diff-patch.js.map +1 -0
- package/dist/diff/diff-renderer.d.ts +44 -0
- package/dist/diff/diff-renderer.d.ts.map +1 -0
- package/dist/diff/diff-renderer.js +263 -0
- package/dist/diff/diff-renderer.js.map +1 -0
- package/dist/diff/identity.d.ts +2 -0
- package/dist/diff/identity.d.ts.map +1 -0
- package/dist/diff/identity.js +29 -0
- package/dist/diff/identity.js.map +1 -0
- package/dist/diff/index.d.ts +8 -0
- package/dist/diff/index.d.ts.map +1 -0
- package/dist/diff/index.js +8 -0
- package/dist/diff/index.js.map +1 -0
- package/dist/diff/list-diff.d.ts +36 -0
- package/dist/diff/list-diff.d.ts.map +1 -0
- package/dist/diff/list-diff.js +185 -0
- package/dist/diff/list-diff.js.map +1 -0
- package/dist/diff/similarity.d.ts +4 -0
- package/dist/diff/similarity.d.ts.map +1 -0
- package/dist/diff/similarity.js +20 -0
- package/dist/diff/similarity.js.map +1 -0
- package/dist/diff/text-diff.d.ts +42 -0
- package/dist/diff/text-diff.d.ts.map +1 -0
- package/dist/diff/text-diff.js +134 -0
- package/dist/diff/text-diff.js.map +1 -0
- package/dist/entity-directory.d.ts +13 -0
- package/dist/entity-directory.d.ts.map +1 -0
- package/dist/entity-directory.js +35 -0
- package/dist/entity-directory.js.map +1 -0
- package/dist/errors.d.ts +15 -0
- package/dist/errors.d.ts.map +1 -0
- package/dist/errors.js +23 -0
- package/dist/errors.js.map +1 -0
- package/dist/gcr-reader.d.ts +57 -0
- package/dist/gcr-reader.d.ts.map +1 -0
- package/dist/gcr-reader.js +264 -0
- package/dist/gcr-reader.js.map +1 -0
- package/dist/gcr-writer.d.ts +23 -0
- package/dist/gcr-writer.d.ts.map +1 -0
- package/dist/gcr-writer.js +84 -0
- package/dist/gcr-writer.js.map +1 -0
- package/dist/index.d.ts +21 -0
- package/dist/index.d.ts.map +1 -0
- package/{src/index.ts → dist/index.js} +6 -66
- package/dist/index.js.map +1 -0
- package/dist/managed-concept-collection.d.ts +31 -0
- package/dist/managed-concept-collection.d.ts.map +1 -0
- package/dist/managed-concept-collection.js +87 -0
- package/dist/managed-concept-collection.js.map +1 -0
- package/dist/migration/hyperedge-migrator.d.ts +33 -0
- package/dist/migration/hyperedge-migrator.d.ts.map +1 -0
- package/dist/migration/hyperedge-migrator.js +70 -0
- package/dist/migration/hyperedge-migrator.js.map +1 -0
- package/dist/models/abstract-hyperedge.d.ts +35 -0
- package/dist/models/abstract-hyperedge.d.ts.map +1 -0
- package/dist/models/abstract-hyperedge.js +112 -0
- package/dist/models/abstract-hyperedge.js.map +1 -0
- package/dist/models/base.d.ts +58 -0
- package/dist/models/base.d.ts.map +1 -0
- package/dist/models/base.js +77 -0
- package/dist/models/base.js.map +1 -0
- package/dist/models/bibliography-data.d.ts +20 -0
- package/dist/models/bibliography-data.d.ts.map +1 -0
- package/dist/models/bibliography-data.js +43 -0
- package/dist/models/bibliography-data.js.map +1 -0
- package/dist/models/bibliography-entry.d.ts +19 -0
- package/dist/models/bibliography-entry.d.ts.map +1 -0
- package/dist/models/bibliography-entry.js +34 -0
- package/dist/models/bibliography-entry.js.map +1 -0
- package/dist/models/citation.d.ts +40 -0
- package/dist/models/citation.d.ts.map +1 -0
- package/dist/models/citation.js +82 -0
- package/dist/models/citation.js.map +1 -0
- package/dist/models/completeness.d.ts +9 -0
- package/dist/models/completeness.d.ts.map +1 -0
- package/{src/models/completeness.ts → dist/models/completeness.js} +4 -9
- package/dist/models/completeness.js.map +1 -0
- package/dist/models/concept-date.d.ts +20 -0
- package/dist/models/concept-date.d.ts.map +1 -0
- package/dist/models/concept-date.js +36 -0
- package/dist/models/concept-date.js.map +1 -0
- package/dist/models/concept-ref.d.ts +32 -0
- package/dist/models/concept-ref.d.ts.map +1 -0
- package/dist/models/concept-ref.js +53 -0
- package/dist/models/concept-ref.js.map +1 -0
- package/dist/models/concept-reference.d.ts +22 -0
- package/dist/models/concept-reference.d.ts.map +1 -0
- package/dist/models/concept-reference.js +39 -0
- package/dist/models/concept-reference.js.map +1 -0
- package/dist/models/concept-source.d.ts +53 -0
- package/dist/models/concept-source.d.ts.map +1 -0
- package/dist/models/concept-source.js +66 -0
- package/dist/models/concept-source.js.map +1 -0
- package/dist/models/concept-system-type.d.ts +6 -0
- package/dist/models/concept-system-type.d.ts.map +1 -0
- package/dist/models/concept-system-type.js +22 -0
- package/dist/models/concept-system-type.js.map +1 -0
- package/dist/models/concept-system.d.ts +44 -0
- package/dist/models/concept-system.d.ts.map +1 -0
- package/dist/models/concept-system.js +115 -0
- package/dist/models/concept-system.js.map +1 -0
- package/dist/models/concept-type.d.ts +7 -0
- package/dist/models/concept-type.d.ts.map +1 -0
- package/{src/models/concept-type.ts → dist/models/concept-type.js} +8 -19
- package/dist/models/concept-type.js.map +1 -0
- package/dist/models/concept.d.ts +94 -0
- package/dist/models/concept.d.ts.map +1 -0
- package/dist/models/concept.js +368 -0
- package/dist/models/concept.js.map +1 -0
- package/dist/models/dataset-color.d.ts +28 -0
- package/dist/models/dataset-color.d.ts.map +1 -0
- package/dist/models/dataset-color.js +74 -0
- package/dist/models/dataset-color.js.map +1 -0
- package/dist/models/definition-type.d.ts +9 -0
- package/dist/models/definition-type.d.ts.map +1 -0
- package/{src/models/definition-type.ts → dist/models/definition-type.js} +6 -15
- package/dist/models/definition-type.js.map +1 -0
- package/dist/models/designation-relationship.d.ts +17 -0
- package/dist/models/designation-relationship.d.ts.map +1 -0
- package/dist/models/designation-relationship.js +30 -0
- package/dist/models/designation-relationship.js.map +1 -0
- package/dist/models/designation.d.ts +110 -0
- package/dist/models/designation.d.ts.map +1 -0
- package/dist/models/designation.js +224 -0
- package/dist/models/designation.js.map +1 -0
- package/dist/models/detailed-definition.d.ts +34 -0
- package/dist/models/detailed-definition.d.ts.map +1 -0
- package/dist/models/detailed-definition.js +63 -0
- package/dist/models/detailed-definition.js.map +1 -0
- package/dist/models/enum.d.ts +21 -0
- package/dist/models/enum.d.ts.map +1 -0
- package/dist/models/enum.js +39 -0
- package/dist/models/enum.js.map +1 -0
- package/dist/models/equivalence-degree.d.ts +7 -0
- package/dist/models/equivalence-degree.d.ts.map +1 -0
- package/dist/models/equivalence-degree.js +20 -0
- package/dist/models/equivalence-degree.js.map +1 -0
- package/dist/models/figure.d.ts +40 -0
- package/dist/models/figure.d.ts.map +1 -0
- package/dist/models/figure.js +82 -0
- package/dist/models/figure.js.map +1 -0
- package/dist/models/formula.d.ts +15 -0
- package/dist/models/formula.d.ts.map +1 -0
- package/dist/models/formula.js +27 -0
- package/dist/models/formula.js.map +1 -0
- package/dist/models/gcr-metadata.d.ts +62 -0
- package/dist/models/gcr-metadata.d.ts.map +1 -0
- package/dist/models/gcr-metadata.js +102 -0
- package/dist/models/gcr-metadata.js.map +1 -0
- package/dist/models/gcr-statistics.d.ts +30 -0
- package/dist/models/gcr-statistics.d.ts.map +1 -0
- package/dist/models/gcr-statistics.js +53 -0
- package/dist/models/gcr-statistics.js.map +1 -0
- package/dist/models/generic-hyperedge.d.ts +32 -0
- package/dist/models/generic-hyperedge.d.ts.map +1 -0
- package/dist/models/generic-hyperedge.js +51 -0
- package/dist/models/generic-hyperedge.js.map +1 -0
- package/dist/models/generic-member.d.ts +14 -0
- package/dist/models/generic-member.d.ts.map +1 -0
- package/dist/models/generic-member.js +51 -0
- package/dist/models/generic-member.js.map +1 -0
- package/dist/models/grammar-info.d.ts +34 -0
- package/dist/models/grammar-info.d.ts.map +1 -0
- package/dist/models/grammar-info.js +59 -0
- package/dist/models/grammar-info.js.map +1 -0
- package/dist/models/hyperedge-colors.d.ts +19 -0
- package/dist/models/hyperedge-colors.d.ts.map +1 -0
- package/dist/models/hyperedge-colors.js +61 -0
- package/dist/models/hyperedge-colors.js.map +1 -0
- package/dist/models/hyperedge-index.d.ts +34 -0
- package/dist/models/hyperedge-index.d.ts.map +1 -0
- package/dist/models/hyperedge-index.js +85 -0
- package/dist/models/hyperedge-index.js.map +1 -0
- package/dist/models/hyperedge-member.d.ts +28 -0
- package/dist/models/hyperedge-member.d.ts.map +1 -0
- package/dist/models/hyperedge-member.js +92 -0
- package/dist/models/hyperedge-member.js.map +1 -0
- package/dist/models/hyperedge-registry.d.ts +47 -0
- package/dist/models/hyperedge-registry.d.ts.map +1 -0
- package/dist/models/hyperedge-registry.js +118 -0
- package/dist/models/hyperedge-registry.js.map +1 -0
- package/dist/models/index.d.ts +53 -0
- package/dist/models/index.d.ts.map +1 -0
- package/{src/models/index.ts → dist/models/index.js} +11 -63
- package/dist/models/index.js.map +1 -0
- package/dist/models/locality.d.ts +17 -0
- package/dist/models/locality.d.ts.map +1 -0
- package/dist/models/locality.js +26 -0
- package/dist/models/locality.js.map +1 -0
- package/dist/models/localized-concept.d.ts +102 -0
- package/dist/models/localized-concept.d.ts.map +1 -0
- package/dist/models/localized-concept.js +195 -0
- package/dist/models/localized-concept.js.map +1 -0
- package/dist/models/localized-string.d.ts +5 -0
- package/dist/models/localized-string.d.ts.map +1 -0
- package/dist/models/localized-string.js +20 -0
- package/dist/models/localized-string.js.map +1 -0
- package/dist/models/multiplicity.d.ts +42 -0
- package/dist/models/multiplicity.d.ts.map +1 -0
- package/dist/models/multiplicity.js +84 -0
- package/dist/models/multiplicity.js.map +1 -0
- package/dist/models/non-verb-rep.d.ts +20 -0
- package/dist/models/non-verb-rep.d.ts.map +1 -0
- package/dist/models/non-verb-rep.js +32 -0
- package/dist/models/non-verb-rep.js.map +1 -0
- package/dist/models/non-verbal-entity.d.ts +30 -0
- package/dist/models/non-verbal-entity.d.ts.map +1 -0
- package/dist/models/non-verbal-entity.js +48 -0
- package/dist/models/non-verbal-entity.js.map +1 -0
- package/dist/models/non-verbal-reference.d.ts +23 -0
- package/dist/models/non-verbal-reference.d.ts.map +1 -0
- package/dist/models/non-verbal-reference.js +44 -0
- package/dist/models/non-verbal-reference.js.map +1 -0
- package/dist/models/non-verbal-references.d.ts +12 -0
- package/dist/models/non-verbal-references.d.ts.map +1 -0
- package/dist/models/non-verbal-references.js +20 -0
- package/dist/models/non-verbal-references.js.map +1 -0
- package/dist/models/partitive-count.d.ts +10 -0
- package/dist/models/partitive-count.d.ts.map +1 -0
- package/{src/models/partitive-count.ts → dist/models/partitive-count.js} +5 -9
- package/dist/models/partitive-count.js.map +1 -0
- package/dist/models/partitive-enumeration.d.ts +5 -0
- package/dist/models/partitive-enumeration.d.ts.map +1 -0
- package/dist/models/partitive-enumeration.js +16 -0
- package/dist/models/partitive-enumeration.js.map +1 -0
- package/dist/models/partitive-hyperedge.d.ts +43 -0
- package/dist/models/partitive-hyperedge.d.ts.map +1 -0
- package/dist/models/partitive-hyperedge.js +63 -0
- package/dist/models/partitive-hyperedge.js.map +1 -0
- package/dist/models/partitive-member.d.ts +14 -0
- package/dist/models/partitive-member.d.ts.map +1 -0
- package/dist/models/partitive-member.js +44 -0
- package/dist/models/partitive-member.js.map +1 -0
- package/dist/models/partitive-presence.d.ts +9 -0
- package/dist/models/partitive-presence.d.ts.map +1 -0
- package/{src/models/partitive-presence.ts → dist/models/partitive-presence.js} +4 -8
- package/dist/models/partitive-presence.js.map +1 -0
- package/dist/models/plurality-marker.d.ts +5 -0
- package/dist/models/plurality-marker.d.ts.map +1 -0
- package/dist/models/plurality-marker.js +20 -0
- package/dist/models/plurality-marker.js.map +1 -0
- package/dist/models/pronunciation.d.ts +19 -0
- package/dist/models/pronunciation.d.ts.map +1 -0
- package/dist/models/pronunciation.js +34 -0
- package/dist/models/pronunciation.js.map +1 -0
- package/dist/models/register.d.ts +104 -0
- package/dist/models/register.d.ts.map +1 -0
- package/dist/models/register.js +297 -0
- package/dist/models/register.js.map +1 -0
- package/dist/models/registrable.d.ts +25 -0
- package/dist/models/registrable.d.ts.map +1 -0
- package/dist/models/registrable.js +23 -0
- package/dist/models/registrable.js.map +1 -0
- package/dist/models/related-concept.d.ts +33 -0
- package/dist/models/related-concept.d.ts.map +1 -0
- package/dist/models/related-concept.js +95 -0
- package/dist/models/related-concept.js.map +1 -0
- package/dist/models/relation-categories.d.ts +38 -0
- package/dist/models/relation-categories.d.ts.map +1 -0
- package/dist/models/relation-categories.js +135 -0
- package/dist/models/relation-categories.js.map +1 -0
- package/dist/models/relation-colors.d.ts +35 -0
- package/dist/models/relation-colors.d.ts.map +1 -0
- package/dist/models/relation-colors.js +68 -0
- package/dist/models/relation-colors.js.map +1 -0
- package/dist/models/relation-loader.d.ts +41 -0
- package/dist/models/relation-loader.d.ts.map +1 -0
- package/dist/models/relation-loader.js +101 -0
- package/dist/models/relation-loader.js.map +1 -0
- package/dist/models/section.d.ts +22 -0
- package/dist/models/section.d.ts.map +1 -0
- package/dist/models/section.js +47 -0
- package/dist/models/section.js.map +1 -0
- package/dist/models/sequential-hyperedge.d.ts +32 -0
- package/dist/models/sequential-hyperedge.d.ts.map +1 -0
- package/dist/models/sequential-hyperedge.js +49 -0
- package/dist/models/sequential-hyperedge.js.map +1 -0
- package/dist/models/sequential-member.d.ts +8 -0
- package/dist/models/sequential-member.d.ts.map +1 -0
- package/{src/models/sequential-member.ts → dist/models/sequential-member.js} +4 -9
- package/dist/models/sequential-member.js.map +1 -0
- package/dist/models/shared-non-verbal-entity.d.ts +16 -0
- package/dist/models/shared-non-verbal-entity.d.ts.map +1 -0
- package/dist/models/shared-non-verbal-entity.js +28 -0
- package/dist/models/shared-non-verbal-entity.js.map +1 -0
- package/dist/models/table.d.ts +15 -0
- package/dist/models/table.d.ts.map +1 -0
- package/dist/models/table.js +27 -0
- package/dist/models/table.js.map +1 -0
- package/dist/rdf/agents-emitter.d.ts +37 -0
- package/dist/rdf/agents-emitter.d.ts.map +1 -0
- package/dist/rdf/agents-emitter.js +107 -0
- package/dist/rdf/agents-emitter.js.map +1 -0
- package/dist/rdf/bibliography-emitter.d.ts +16 -0
- package/dist/rdf/bibliography-emitter.d.ts.map +1 -0
- package/dist/rdf/bibliography-emitter.js +84 -0
- package/dist/rdf/bibliography-emitter.js.map +1 -0
- package/dist/rdf/bnode-id.d.ts +2 -0
- package/dist/rdf/bnode-id.d.ts.map +1 -0
- package/dist/rdf/bnode-id.js +57 -0
- package/dist/rdf/bnode-id.js.map +1 -0
- package/dist/rdf/build-activity-emitter.d.ts +42 -0
- package/dist/rdf/build-activity-emitter.d.ts.map +1 -0
- package/dist/rdf/build-activity-emitter.js +103 -0
- package/dist/rdf/build-activity-emitter.js.map +1 -0
- package/dist/rdf/curie.d.ts +7 -0
- package/dist/rdf/curie.d.ts.map +1 -0
- package/dist/rdf/curie.js +45 -0
- package/dist/rdf/curie.js.map +1 -0
- package/dist/rdf/dataset-emitter.d.ts +37 -0
- package/dist/rdf/dataset-emitter.d.ts.map +1 -0
- package/dist/rdf/dataset-emitter.js +126 -0
- package/dist/rdf/dataset-emitter.js.map +1 -0
- package/dist/rdf/deterministic-id.d.ts +3 -0
- package/dist/rdf/deterministic-id.d.ts.map +1 -0
- package/dist/rdf/deterministic-id.js +68 -0
- package/dist/rdf/deterministic-id.js.map +1 -0
- package/dist/rdf/document-writer.d.ts +11 -0
- package/dist/rdf/document-writer.d.ts.map +1 -0
- package/dist/rdf/document-writer.js +77 -0
- package/dist/rdf/document-writer.js.map +1 -0
- package/dist/rdf/gloss-concept.d.ts +27 -0
- package/dist/rdf/gloss-concept.d.ts.map +1 -0
- package/dist/rdf/gloss-concept.js +95 -0
- package/dist/rdf/gloss-concept.js.map +1 -0
- package/dist/rdf/gloss-designation.d.ts +17 -0
- package/dist/rdf/gloss-designation.d.ts.map +1 -0
- package/dist/rdf/gloss-designation.js +46 -0
- package/dist/rdf/gloss-designation.js.map +1 -0
- package/dist/rdf/gloss-detailed-definition.d.ts +14 -0
- package/dist/rdf/gloss-detailed-definition.d.ts.map +1 -0
- package/dist/rdf/gloss-detailed-definition.js +53 -0
- package/dist/rdf/gloss-detailed-definition.js.map +1 -0
- package/dist/rdf/gloss-generic-hyperedge.d.ts +27 -0
- package/dist/rdf/gloss-generic-hyperedge.d.ts.map +1 -0
- package/{src/rdf/gloss-generic-hyperedge.ts → dist/rdf/gloss-generic-hyperedge.js} +36 -50
- package/dist/rdf/gloss-generic-hyperedge.js.map +1 -0
- package/dist/rdf/gloss-localized-concept.d.ts +24 -0
- package/dist/rdf/gloss-localized-concept.d.ts.map +1 -0
- package/dist/rdf/gloss-localized-concept.js +71 -0
- package/dist/rdf/gloss-localized-concept.js.map +1 -0
- package/dist/rdf/gloss-non-verbal-rep.d.ts +33 -0
- package/dist/rdf/gloss-non-verbal-rep.d.ts.map +1 -0
- package/dist/rdf/gloss-non-verbal-rep.js +163 -0
- package/dist/rdf/gloss-non-verbal-rep.js.map +1 -0
- package/dist/rdf/gloss-partitive-member.d.ts +8 -0
- package/dist/rdf/gloss-partitive-member.d.ts.map +1 -0
- package/{src/rdf/gloss-partitive-member.ts → dist/rdf/gloss-partitive-member.js} +23 -41
- package/dist/rdf/gloss-partitive-member.js.map +1 -0
- package/dist/rdf/gloss-partitive-relation.d.ts +26 -0
- package/dist/rdf/gloss-partitive-relation.d.ts.map +1 -0
- package/dist/rdf/gloss-partitive-relation.js +73 -0
- package/dist/rdf/gloss-partitive-relation.js.map +1 -0
- package/dist/rdf/gloss-source.d.ts +23 -0
- package/dist/rdf/gloss-source.d.ts.map +1 -0
- package/dist/rdf/gloss-source.js +52 -0
- package/dist/rdf/gloss-source.js.map +1 -0
- package/dist/rdf/group-emitter.d.ts +46 -0
- package/dist/rdf/group-emitter.d.ts.map +1 -0
- package/dist/rdf/group-emitter.js +107 -0
- package/dist/rdf/group-emitter.js.map +1 -0
- package/dist/rdf/image-variant-emitter.d.ts +12 -0
- package/dist/rdf/image-variant-emitter.d.ts.map +1 -0
- package/dist/rdf/image-variant-emitter.js +55 -0
- package/dist/rdf/image-variant-emitter.js.map +1 -0
- package/dist/rdf/index.d.ts +26 -0
- package/dist/rdf/index.d.ts.map +1 -0
- package/{src/rdf/index.ts → dist/rdf/index.js} +8 -37
- package/dist/rdf/index.js.map +1 -0
- package/dist/rdf/normalize-enum.d.ts +3 -0
- package/dist/rdf/normalize-enum.d.ts.map +1 -0
- package/{src/rdf/normalize-enum.ts → dist/rdf/normalize-enum.js} +11 -10
- package/dist/rdf/normalize-enum.js.map +1 -0
- package/dist/rdf/predicates.d.ts +277 -0
- package/dist/rdf/predicates.d.ts.map +1 -0
- package/dist/rdf/predicates.js +279 -0
- package/dist/rdf/predicates.js.map +1 -0
- package/dist/rdf/prefixes.d.ts +16 -0
- package/dist/rdf/prefixes.d.ts.map +1 -0
- package/{src/rdf/prefixes.ts → dist/rdf/prefixes.js} +10 -12
- package/dist/rdf/prefixes.js.map +1 -0
- package/dist/rdf/provenance-emitter.d.ts +28 -0
- package/dist/rdf/provenance-emitter.d.ts.map +1 -0
- package/dist/rdf/provenance-emitter.js +74 -0
- package/dist/rdf/provenance-emitter.js.map +1 -0
- package/dist/rdf/sections-builder.d.ts +17 -0
- package/dist/rdf/sections-builder.d.ts.map +1 -0
- package/dist/rdf/sections-builder.js +137 -0
- package/dist/rdf/sections-builder.js.map +1 -0
- package/dist/rdf/shacl-entry.d.ts +2 -0
- package/dist/rdf/shacl-entry.d.ts.map +1 -0
- package/{src/rdf/shacl-entry.ts → dist/rdf/shacl-entry.js} +1 -1
- package/dist/rdf/shacl-entry.js.map +1 -0
- package/dist/rdf/shacl.d.ts +10 -0
- package/dist/rdf/shacl.d.ts.map +1 -0
- package/{src/rdf/shacl.ts → dist/rdf/shacl.js} +38 -56
- package/dist/rdf/shacl.js.map +1 -0
- package/dist/rdf/terms.d.ts +10 -0
- package/dist/rdf/terms.d.ts.map +1 -0
- package/{src/rdf/terms.ts → dist/rdf/terms.js} +6 -3
- package/dist/rdf/terms.js.map +1 -0
- package/dist/rdf/version-emitter.d.ts +57 -0
- package/dist/rdf/version-emitter.d.ts.map +1 -0
- package/dist/rdf/version-emitter.js +68 -0
- package/dist/rdf/version-emitter.js.map +1 -0
- package/dist/rdf/vocabulary-emitter.d.ts +32 -0
- package/dist/rdf/vocabulary-emitter.d.ts.map +1 -0
- package/dist/rdf/vocabulary-emitter.js +46 -0
- package/dist/rdf/vocabulary-emitter.js.map +1 -0
- package/dist/rdf/write-turtle-sync.d.ts +7 -0
- package/dist/rdf/write-turtle-sync.d.ts.map +1 -0
- package/dist/rdf/write-turtle-sync.js +130 -0
- package/dist/rdf/write-turtle-sync.js.map +1 -0
- package/dist/reference-mention.d.ts +49 -0
- package/dist/reference-mention.d.ts.map +1 -0
- package/dist/reference-mention.js +98 -0
- package/dist/reference-mention.js.map +1 -0
- package/dist/reference-resolver.d.ts +52 -0
- package/dist/reference-resolver.d.ts.map +1 -0
- package/dist/reference-resolver.js +311 -0
- package/dist/reference-resolver.js.map +1 -0
- package/dist/render-classification.d.ts +19 -0
- package/dist/render-classification.d.ts.map +1 -0
- package/dist/render-classification.js +82 -0
- package/dist/render-classification.js.map +1 -0
- package/dist/sort.d.ts +5 -0
- package/dist/sort.d.ts.map +1 -0
- package/dist/sort.js +25 -0
- package/dist/sort.js.map +1 -0
- package/dist/transforms/concept-to-gloss.transform.d.ts +32 -0
- package/dist/transforms/concept-to-gloss.transform.d.ts.map +1 -0
- package/dist/transforms/concept-to-gloss.transform.js +60 -0
- package/dist/transforms/concept-to-gloss.transform.js.map +1 -0
- package/dist/transforms/index.d.ts +2 -0
- package/dist/transforms/index.d.ts.map +1 -0
- package/{src/transforms/index.ts → dist/transforms/index.js} +1 -0
- package/dist/transforms/index.js.map +1 -0
- package/dist/utils/assertions.d.ts +4 -0
- package/dist/utils/assertions.d.ts.map +1 -0
- package/dist/utils/assertions.js +17 -0
- package/dist/utils/assertions.js.map +1 -0
- package/dist/uuid.d.ts +4 -0
- package/dist/uuid.d.ts.map +1 -0
- package/dist/uuid.js +23 -0
- package/dist/uuid.js.map +1 -0
- package/dist/v1-reader.d.ts +8 -0
- package/dist/v1-reader.d.ts.map +1 -0
- package/dist/v1-reader.js +56 -0
- package/dist/v1-reader.js.map +1 -0
- package/dist/validators/asset-index.d.ts +23 -0
- package/dist/validators/asset-index.d.ts.map +1 -0
- package/dist/validators/asset-index.js +58 -0
- package/dist/validators/asset-index.js.map +1 -0
- package/dist/validators/binary-has-part-redundancy-rule.d.ts +8 -0
- package/dist/validators/binary-has-part-redundancy-rule.d.ts.map +1 -0
- package/dist/validators/binary-has-part-redundancy-rule.js +57 -0
- package/dist/validators/binary-has-part-redundancy-rule.js.map +1 -0
- package/dist/validators/concept-validator.d.ts +21 -0
- package/dist/validators/concept-validator.d.ts.map +1 -0
- package/dist/validators/concept-validator.js +76 -0
- package/dist/validators/concept-validator.js.map +1 -0
- package/dist/validators/delimiting-coherence-rule.d.ts +8 -0
- package/dist/validators/delimiting-coherence-rule.d.ts.map +1 -0
- package/dist/validators/delimiting-coherence-rule.js +72 -0
- package/dist/validators/delimiting-coherence-rule.js.map +1 -0
- package/dist/validators/external-concept-shape-rule.d.ts +8 -0
- package/dist/validators/external-concept-shape-rule.d.ts.map +1 -0
- package/dist/validators/external-concept-shape-rule.js +48 -0
- package/dist/validators/external-concept-shape-rule.js.map +1 -0
- package/dist/validators/gcr-validator.d.ts +11 -0
- package/dist/validators/gcr-validator.d.ts.map +1 -0
- package/dist/validators/gcr-validator.js +76 -0
- package/dist/validators/gcr-validator.js.map +1 -0
- package/dist/validators/hyperedge-coherence-rule.d.ts +9 -0
- package/dist/validators/hyperedge-coherence-rule.d.ts.map +1 -0
- package/dist/validators/hyperedge-coherence-rule.js +78 -0
- package/dist/validators/hyperedge-coherence-rule.js.map +1 -0
- package/dist/validators/index.d.ts +21 -0
- package/dist/validators/index.d.ts.map +1 -0
- package/{src/validators/index.ts → dist/validators/index.js} +25 -51
- package/dist/validators/index.js.map +1 -0
- package/dist/validators/partitive-relation-coherence-rule.d.ts +2 -0
- package/dist/validators/partitive-relation-coherence-rule.d.ts.map +1 -0
- package/{src/validators/partitive-relation-coherence-rule.ts → dist/validators/partitive-relation-coherence-rule.js} +1 -1
- package/dist/validators/partitive-relation-coherence-rule.js.map +1 -0
- package/dist/validators/ref-keys.d.ts +8 -0
- package/dist/validators/ref-keys.d.ts.map +1 -0
- package/dist/validators/ref-keys.js +27 -0
- package/dist/validators/ref-keys.js.map +1 -0
- package/dist/validators/register-validator.d.ts +10 -0
- package/dist/validators/register-validator.d.ts.map +1 -0
- package/dist/validators/register-validator.js +18 -0
- package/dist/validators/register-validator.js.map +1 -0
- package/dist/validators/relationship-type-rule.d.ts +13 -0
- package/dist/validators/relationship-type-rule.d.ts.map +1 -0
- package/dist/validators/relationship-type-rule.js +34 -0
- package/dist/validators/relationship-type-rule.js.map +1 -0
- package/dist/validators/sourced-from-locality-rule.d.ts +8 -0
- package/dist/validators/sourced-from-locality-rule.d.ts.map +1 -0
- package/dist/validators/sourced-from-locality-rule.js +37 -0
- package/dist/validators/sourced-from-locality-rule.js.map +1 -0
- package/dist/validators/v3-rules.d.ts +60 -0
- package/dist/validators/v3-rules.d.ts.map +1 -0
- package/dist/validators/v3-rules.js +327 -0
- package/dist/validators/v3-rules.js.map +1 -0
- package/dist/validators/validation-error.d.ts +13 -0
- package/dist/validators/validation-error.d.ts.map +1 -0
- package/dist/validators/validation-error.js +17 -0
- package/dist/validators/validation-error.js.map +1 -0
- package/dist/validators/validation-result.d.ts +17 -0
- package/dist/validators/validation-result.d.ts.map +1 -0
- package/dist/validators/validation-result.js +47 -0
- package/dist/validators/validation-result.js.map +1 -0
- package/dist/validators/validation-rule.d.ts +10 -0
- package/dist/validators/validation-rule.d.ts.map +1 -0
- package/dist/validators/validation-rule.js +17 -0
- package/dist/validators/validation-rule.js.map +1 -0
- package/package.json +37 -42
- package/src/concept-collection.ts +0 -166
- package/src/concept-parser.ts +0 -229
- package/src/concept-reader.d.ts +0 -13
- package/src/concept-serializer.ts +0 -99
- package/src/concept-writer.d.ts +0 -7
- package/src/concept-writer.ts +0 -43
- package/src/diff/canonical-json.ts +0 -29
- package/src/diff/change.ts +0 -175
- package/src/diff/collection-diff.ts +0 -197
- package/src/diff/concept-diff.ts +0 -702
- package/src/diff/diff-patch.ts +0 -260
- package/src/diff/diff-renderer.ts +0 -293
- package/src/diff/identity.ts +0 -33
- package/src/diff/index.d.ts +0 -242
- package/src/diff/index.ts +0 -50
- package/src/diff/list-diff.ts +0 -231
- package/src/diff/similarity.ts +0 -20
- package/src/diff/text-diff.ts +0 -167
- package/src/entity-directory.ts +0 -43
- package/src/errors.d.ts +0 -11
- package/src/errors.ts +0 -24
- package/src/gcr-reader.d.ts +0 -65
- package/src/gcr-reader.ts +0 -487
- package/src/gcr-writer.d.ts +0 -22
- package/src/gcr-writer.ts +0 -97
- package/src/index.d.ts +0 -124
- package/src/managed-concept-collection.ts +0 -95
- package/src/migration/hyperedge-migrator.ts +0 -104
- package/src/models/abstract-hyperedge.ts +0 -164
- package/src/models/base.ts +0 -110
- package/src/models/bibliography-data.ts +0 -64
- package/src/models/bibliography-entry.ts +0 -40
- package/src/models/citation.ts +0 -98
- package/src/models/concept-date.ts +0 -48
- package/src/models/concept-ref.ts +0 -64
- package/src/models/concept-reference.ts +0 -50
- package/src/models/concept-source.ts +0 -96
- package/src/models/concept-system-type.ts +0 -39
- package/src/models/concept-system.ts +0 -152
- package/src/models/concept.ts +0 -499
- package/src/models/dataset-color.ts +0 -88
- package/src/models/designation-relationship.ts +0 -39
- package/src/models/designation.ts +0 -297
- package/src/models/detailed-definition.ts +0 -92
- package/src/models/enum.ts +0 -60
- package/src/models/equivalence-degree.ts +0 -34
- package/src/models/figure.ts +0 -110
- package/src/models/formula.ts +0 -36
- package/src/models/gcr-metadata.ts +0 -118
- package/src/models/gcr-statistics.ts +0 -76
- package/src/models/generic-hyperedge.ts +0 -72
- package/src/models/generic-member.ts +0 -80
- package/src/models/grammar-info.ts +0 -78
- package/src/models/hyperedge-colors.ts +0 -87
- package/src/models/hyperedge-index.ts +0 -101
- package/src/models/hyperedge-member.ts +0 -121
- package/src/models/hyperedge-registry.ts +0 -145
- package/src/models/index.d.ts +0 -586
- package/src/models/locality.ts +0 -34
- package/src/models/localized-concept.ts +0 -284
- package/src/models/localized-string.ts +0 -32
- package/src/models/multiplicity.ts +0 -134
- package/src/models/non-verb-rep.ts +0 -48
- package/src/models/non-verbal-entity.ts +0 -65
- package/src/models/non-verbal-reference.ts +0 -73
- package/src/models/non-verbal-references.ts +0 -29
- package/src/models/partitive-enumeration.ts +0 -27
- package/src/models/partitive-hyperedge.ts +0 -90
- package/src/models/partitive-member.ts +0 -56
- package/src/models/plurality-marker.ts +0 -31
- package/src/models/pronunciation.ts +0 -40
- package/src/models/register.ts +0 -315
- package/src/models/registrable.ts +0 -48
- package/src/models/related-concept.ts +0 -117
- package/src/models/relation-categories.ts +0 -167
- package/src/models/relation-colors.ts +0 -90
- package/src/models/relation-loader.ts +0 -115
- package/src/models/section.ts +0 -61
- package/src/models/sequential-hyperedge.ts +0 -70
- package/src/models/shared-non-verbal-entity.ts +0 -36
- package/src/models/table.ts +0 -36
- package/src/rdf/agents-emitter.ts +0 -134
- package/src/rdf/bibliography-emitter.ts +0 -126
- package/src/rdf/bnode-id.ts +0 -55
- package/src/rdf/build-activity-emitter.ts +0 -129
- package/src/rdf/curie.ts +0 -47
- package/src/rdf/dataset-emitter.ts +0 -170
- package/src/rdf/deterministic-id.ts +0 -69
- package/src/rdf/document-writer.ts +0 -87
- package/src/rdf/gloss-concept.ts +0 -115
- package/src/rdf/gloss-designation.ts +0 -72
- package/src/rdf/gloss-detailed-definition.ts +0 -69
- package/src/rdf/gloss-localized-concept.ts +0 -79
- package/src/rdf/gloss-non-verbal-rep.ts +0 -192
- package/src/rdf/gloss-partitive-relation.ts +0 -89
- package/src/rdf/gloss-source.ts +0 -56
- package/src/rdf/group-emitter.ts +0 -133
- package/src/rdf/image-variant-emitter.ts +0 -80
- package/src/rdf/index.d.ts +0 -371
- package/src/rdf/predicates.d.ts +0 -527
- package/src/rdf/predicates.ts +0 -287
- package/src/rdf/provenance-emitter.ts +0 -87
- package/src/rdf/sections-builder.ts +0 -178
- package/src/rdf/shacl-entry.d.ts +0 -6
- package/src/rdf/version-emitter.ts +0 -97
- package/src/rdf/vocabulary-emitter.ts +0 -67
- package/src/rdf/write-turtle-sync.ts +0 -167
- package/src/reference-mention.ts +0 -114
- package/src/reference-resolver.ts +0 -331
- package/src/render-classification.ts +0 -76
- package/src/sort.ts +0 -22
- package/src/transforms/concept-to-gloss.transform.ts +0 -81
- package/src/transforms/index.d.ts +0 -26
- package/src/uuid.ts +0 -32
- package/src/v1-reader.ts +0 -64
- package/src/validators/asset-index.ts +0 -67
- package/src/validators/binary-has-part-redundancy-rule.ts +0 -67
- package/src/validators/concept-validator.ts +0 -93
- package/src/validators/delimiting-coherence-rule.ts +0 -105
- package/src/validators/external-concept-shape-rule.ts +0 -60
- package/src/validators/gcr-validator.ts +0 -75
- package/src/validators/hyperedge-coherence-rule.ts +0 -98
- package/src/validators/index.d.ts +0 -43
- package/src/validators/ref-keys.ts +0 -31
- package/src/validators/register-validator.ts +0 -18
- package/src/validators/relationship-type-rule.ts +0 -39
- package/src/validators/sourced-from-locality-rule.ts +0 -53
- package/src/validators/v3-rules.ts +0 -378
- package/src/validators/validation-error.ts +0 -19
- package/src/validators/validation-result.ts +0 -52
- package/src/validators/validation-rule.ts +0 -21
|
@@ -1,69 +0,0 @@
|
|
|
1
|
-
// Stable ID helpers for RDF emission. Mirrors glossarist-ruby's
|
|
2
|
-
// Digest::MD5.hexdigest(content)[0..11] for cross-runtime stability.
|
|
3
|
-
//
|
|
4
|
-
// Browser safety: node:crypto is loaded lazily so bundlers don't
|
|
5
|
-
// tree-shake the import into browser bundles. The runtime check uses
|
|
6
|
-
// `createRequire` from `node:module` (also lazy) which is the
|
|
7
|
-
// documented way to use CommonJS `require` from ESM.
|
|
8
|
-
|
|
9
|
-
let nodeCreateHash: ((alg: string) => { update(data: string): { digest(enc: string): string } }) | null = null;
|
|
10
|
-
let nodeCryptoChecked = false;
|
|
11
|
-
|
|
12
|
-
function getNodeCreateHash() {
|
|
13
|
-
if (nodeCryptoChecked) return nodeCreateHash;
|
|
14
|
-
nodeCryptoChecked = true;
|
|
15
|
-
try {
|
|
16
|
-
// Lazy require — works in both CJS and ESM (Node ≥ 12).
|
|
17
|
-
// Wrapped in Function() so bundlers don't statically resolve it.
|
|
18
|
-
let requireFn;
|
|
19
|
-
try {
|
|
20
|
-
// ESM: use createRequire from node:module
|
|
21
|
-
const mod = (Function('m', 'return require(m)'))('node:module');
|
|
22
|
-
requireFn = mod.createRequire(import.meta.url);
|
|
23
|
-
} catch {
|
|
24
|
-
// CJS or already-require-available environment
|
|
25
|
-
requireFn = (m: string) => (Function('m', 'return require(m)'))(m);
|
|
26
|
-
}
|
|
27
|
-
const crypto = requireFn('node:crypto');
|
|
28
|
-
nodeCreateHash = crypto.createHash.bind(crypto);
|
|
29
|
-
} catch {
|
|
30
|
-
nodeCreateHash = null;
|
|
31
|
-
}
|
|
32
|
-
return nodeCreateHash;
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
// 12-char hex prefix, mirroring glossarist-ruby's
|
|
36
|
-
// `Digest::MD5.hexdigest(content)[0..11]`. Same content → same ID across
|
|
37
|
-
// processes, machines, and language runtimes (Ruby vs JS) when MD5 is
|
|
38
|
-
// available. Falls back to a 12-char FNV-1a hash in the browser.
|
|
39
|
-
export function deterministicId(...parts: ReadonlyArray<unknown>): string {
|
|
40
|
-
const seed = parts.filter(p => p !== null && p !== undefined).join('|');
|
|
41
|
-
const createHash = getNodeCreateHash();
|
|
42
|
-
if (createHash) {
|
|
43
|
-
return createHash('md5').update(seed).digest('hex').slice(0, 12);
|
|
44
|
-
}
|
|
45
|
-
return fnv1a12(seed);
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
// Stable blank-node label for an RDF fragment identified by its parent
|
|
49
|
-
// subject + role + index.
|
|
50
|
-
export function deterministicBnode(subject: string, role: string, index: number): string {
|
|
51
|
-
return `_:b${deterministicId(subject, role, index)}`;
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
// 12-char FNV-1a hash.
|
|
55
|
-
function fnv1a12(seed: string): string {
|
|
56
|
-
let h1 = 0x811c9dc5;
|
|
57
|
-
for (let i = 0; i < seed.length; i++) {
|
|
58
|
-
h1 ^= seed.charCodeAt(i);
|
|
59
|
-
h1 = Math.imul(h1, 0x01000193);
|
|
60
|
-
}
|
|
61
|
-
const seed2 = `${seed}|fnv2`;
|
|
62
|
-
let h2 = 0x811c9dc5;
|
|
63
|
-
for (let i = 0; i < seed2.length; i++) {
|
|
64
|
-
h2 ^= seed2.charCodeAt(i);
|
|
65
|
-
h2 = Math.imul(h2, 0x01000193);
|
|
66
|
-
}
|
|
67
|
-
return ((h1 >>> 0).toString(16).padStart(8, '0')
|
|
68
|
-
+ (h2 >>> 0).toString(16).padStart(8, '0')).slice(0, 12);
|
|
69
|
-
}
|
|
@@ -1,87 +0,0 @@
|
|
|
1
|
-
// Quads → canonical Turtle / N-Triples / JSON-LD document.
|
|
2
|
-
//
|
|
3
|
-
// Turtle is produced via N3.Writer. JSON-LD via the `jsonld` package
|
|
4
|
-
// (fromRDF + compact against the canonical context). N-Triples is provided
|
|
5
|
-
// as a stable fallback that doesn't depend on prefix maps.
|
|
6
|
-
import { Writer as N3Writer } from 'n3';
|
|
7
|
-
import jsonld from 'jsonld';
|
|
8
|
-
import { PREFIXES } from './prefixes.js';
|
|
9
|
-
|
|
10
|
-
// Collects all quads yielded by an emitter into an array. Useful for tests
|
|
11
|
-
// and for callers that want to inspect the quad stream directly.
|
|
12
|
-
export function collectQuads(quadsIterable) {
|
|
13
|
-
const out: unknown[] = [];
|
|
14
|
-
for (const q of quadsIterable) out.push(q);
|
|
15
|
-
return out;
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
// Returns a Turtle serialization of `quads` using the canonical prefix map
|
|
19
|
-
// generated from the vendored concept-model JSON-LD context. Quads are
|
|
20
|
-
// sorted deterministically so the same input always produces byte-equivalent
|
|
21
|
-
// output across runs.
|
|
22
|
-
export function writeTurtle(quads, { prefixes = PREFIXES } = {}) {
|
|
23
|
-
const sorted = sortQuads(quads);
|
|
24
|
-
return new Promise((resolve, reject) => {
|
|
25
|
-
const writer = new N3Writer({ prefixes, format: 'Turtle' });
|
|
26
|
-
for (const q of sorted) writer.addQuad(q);
|
|
27
|
-
writer.end((err, result) => {
|
|
28
|
-
if (err) reject(err);
|
|
29
|
-
else resolve(result);
|
|
30
|
-
});
|
|
31
|
-
});
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
// Returns an N-Triples serialization of `quads` — no prefixes, no bnode
|
|
35
|
-
// shortening. Useful when consumers need a totally stable wire format.
|
|
36
|
-
export function writeNTriples(quads) {
|
|
37
|
-
const sorted = sortQuads(quads);
|
|
38
|
-
return new Promise((resolve, reject) => {
|
|
39
|
-
const writer = new N3Writer({ format: 'N-Triples' });
|
|
40
|
-
for (const q of sorted) writer.addQuad(q);
|
|
41
|
-
writer.end((err, result) => {
|
|
42
|
-
if (err) reject(err);
|
|
43
|
-
else resolve(result);
|
|
44
|
-
});
|
|
45
|
-
});
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
// Returns a compacted JSON-LD serialization of `quads`. The context defaults
|
|
49
|
-
// to the canonical glossarist JSON-LD context derived from the vendored
|
|
50
|
-
// PREFIXES. Quads are sorted first for deterministic output.
|
|
51
|
-
export async function writeJsonld(quads, { context = defaultJsonldContext() } = {}) {
|
|
52
|
-
const sorted = sortQuads(quads);
|
|
53
|
-
const nquads = await writeNTriples(sorted);
|
|
54
|
-
const expanded = await jsonld.fromRDF(nquads, { format: 'application/n-quads' });
|
|
55
|
-
const compacted = await jsonld.compact(expanded, context);
|
|
56
|
-
return JSON.stringify(compacted, null, 2);
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
function defaultJsonldContext() {
|
|
60
|
-
const ctx = {};
|
|
61
|
-
for (const [prefix, uri] of Object.entries(PREFIXES)) {
|
|
62
|
-
ctx[prefix] = uri;
|
|
63
|
-
}
|
|
64
|
-
return ctx;
|
|
65
|
-
}
|
|
66
|
-
|
|
67
|
-
// Sort by (subject.value, predicate.value, object.termType, object.value,
|
|
68
|
-
// graph.value). Bnodes sort by their generated ID which is deterministic
|
|
69
|
-
// because we use content-addressed IDs.
|
|
70
|
-
export function sortQuads(quads) {
|
|
71
|
-
return [...quads].sort(compareQuad);
|
|
72
|
-
}
|
|
73
|
-
|
|
74
|
-
function compareQuad(a, b) {
|
|
75
|
-
let cmp = cmpTerm(a.subject, b.subject);
|
|
76
|
-
if (cmp !== 0) return cmp;
|
|
77
|
-
cmp = cmpTerm(a.predicate, b.predicate);
|
|
78
|
-
if (cmp !== 0) return cmp;
|
|
79
|
-
cmp = cmpTerm(a.object, b.object);
|
|
80
|
-
if (cmp !== 0) return cmp;
|
|
81
|
-
return cmpTerm(a.graph, b.graph);
|
|
82
|
-
}
|
|
83
|
-
|
|
84
|
-
function cmpTerm(a, b) {
|
|
85
|
-
if (a.termType !== b.termType) return a.termType.localeCompare(b.termType);
|
|
86
|
-
return String(a.value).localeCompare(String(b.value));
|
|
87
|
-
}
|
package/src/rdf/gloss-concept.ts
DELETED
|
@@ -1,115 +0,0 @@
|
|
|
1
|
-
// @ts-nocheck — TEMPORARY during TS migration. TODO(Phase 2e): remove and type fully.
|
|
2
|
-
// Concept → RDF quads. Mirrors glossarist-ruby's `Rdf::GlossConcept`.
|
|
3
|
-
//
|
|
4
|
-
// URI shape: `<uriBase>/<registerId>/concept/<conceptId>`.
|
|
5
|
-
// Localized concepts: `<uriBase>/<registerId>/concept/<conceptId>/<lang>`.
|
|
6
|
-
// Figure/Table/Formula references: `<uriBase>/<registerId>/<kind>/<entityId>`.
|
|
7
|
-
import { PRED } from './predicates.js';
|
|
8
|
-
import { WELL_KNOWN } from './prefixes.js';
|
|
9
|
-
import { localizedConceptToQuads } from './gloss-localized-concept.js';
|
|
10
|
-
import { conceptSourceToQuads } from './gloss-source.js';
|
|
11
|
-
import { partitiveRelationToQuads, partitiveRelationSubjectUri } from './gloss-partitive-relation.js';
|
|
12
|
-
import { genericHyperedgeToQuads, genericHyperedgeSubjectUri, GENERIC_HYPEREDGE_LINK_PREDICATE } from './gloss-generic-hyperedge.js';
|
|
13
|
-
import { PartitiveHyperedge } from '../models/partitive-hyperedge.js';
|
|
14
|
-
import { GenericHyperedge } from '../models/generic-hyperedge.js';
|
|
15
|
-
import { namedNode, literal, quad } from './terms.js';
|
|
16
|
-
|
|
17
|
-
// Per-type RDF emitter dispatch. Keyed by class. Adding a new hyperedge
|
|
18
|
-
// type with its own emitter means: (1) write the emitter module,
|
|
19
|
-
// (2) add one entry here. Per TODO Phase 6e this should be a
|
|
20
|
-
// self-registering registry; for the two current types, the dispatch
|
|
21
|
-
// table is simpler and keeps the dependency graph acyclic.
|
|
22
|
-
const HYPEREDGE_EMITTERS: Map<unknown, Record<string, unknown>> = new Map([
|
|
23
|
-
[PartitiveHyperedge, {
|
|
24
|
-
linkPredicate: PRED.gloss.hasPartitiveRelation,
|
|
25
|
-
subjectUri: partitiveRelationSubjectUri,
|
|
26
|
-
toQuads: partitiveRelationToQuads,
|
|
27
|
-
}],
|
|
28
|
-
[GenericHyperedge, {
|
|
29
|
-
linkPredicate: GENERIC_HYPEREDGE_LINK_PREDICATE,
|
|
30
|
-
subjectUri: genericHyperedgeSubjectUri,
|
|
31
|
-
toQuads: genericHyperedgeToQuads,
|
|
32
|
-
}],
|
|
33
|
-
]);
|
|
34
|
-
|
|
35
|
-
// Kind tag → URI segment. Each NonVerbalReference subtype has a
|
|
36
|
-
// predictable URL path so the same entity is reachable from any
|
|
37
|
-
// concept that references it.
|
|
38
|
-
const NVR_KIND_SEGMENT = {
|
|
39
|
-
FigureReference: 'figure',
|
|
40
|
-
TableReference: 'table',
|
|
41
|
-
FormulaReference: 'formula',
|
|
42
|
-
};
|
|
43
|
-
|
|
44
|
-
// Builds the URI for a NonVerbalReference target entity. Returns null
|
|
45
|
-
// when the reference has no entityId (e.g., inline display-only refs).
|
|
46
|
-
function nonVerbalReferenceUri(ref, options) {
|
|
47
|
-
const kind = NVR_KIND_SEGMENT[ref.constructor.name];
|
|
48
|
-
if (!kind || !ref.entityId) return null;
|
|
49
|
-
const base = String(options.uriBase ?? '').replace(/\/+$/, '');
|
|
50
|
-
return `${base}/${options.registerId}/${kind}/${ref.entityId}`;
|
|
51
|
-
}
|
|
52
|
-
|
|
53
|
-
export function conceptUri(concept, { registerId, uriBase }) {
|
|
54
|
-
const id = String(concept.id ?? concept.termid ?? '');
|
|
55
|
-
const base = String(uriBase ?? '').replace(/\/+$/, '');
|
|
56
|
-
return `${base}/${registerId}/concept/${id}`;
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
export function* conceptToQuads(concept, options) {
|
|
60
|
-
const subjectUri = conceptUri(concept, options);
|
|
61
|
-
const s = namedNode(subjectUri);
|
|
62
|
-
|
|
63
|
-
yield quad(s, namedNode(WELL_KNOWN.rdfType), namedNode(PRED.gloss.Concept));
|
|
64
|
-
yield quad(s, namedNode(WELL_KNOWN.rdfType), namedNode(WELL_KNOWN.skosConcept));
|
|
65
|
-
|
|
66
|
-
yield quad(s, namedNode(PRED.gloss.identifier), literal(String(concept.id ?? concept.termid ?? '')));
|
|
67
|
-
|
|
68
|
-
if (concept.status) {
|
|
69
|
-
yield quad(s, namedNode(PRED.gloss.hasStatus), namedNode(`${PRED.gloss.$ns}status/${concept.status}`));
|
|
70
|
-
}
|
|
71
|
-
|
|
72
|
-
// NonVerbal references — emit the link quad only. The actual
|
|
73
|
-
// Figure/Table/Formula entity quads are emitted by `nonVerbalEntityToQuads`
|
|
74
|
-
// when the dataset's NVR collection is iterated.
|
|
75
|
-
for (const ref of [...(concept.figures ?? []), ...(concept.tables ?? []), ...(concept.formulas ?? [])]) {
|
|
76
|
-
const targetUri = nonVerbalReferenceUri(ref, options);
|
|
77
|
-
if (targetUri) {
|
|
78
|
-
yield quad(s, namedNode(PRED.gloss.hasNonVerbalRep), namedNode(targetUri));
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
|
|
82
|
-
for (const lang of concept.languages) {
|
|
83
|
-
const lc = concept.localization(lang);
|
|
84
|
-
if (!lc) continue;
|
|
85
|
-
const lcUri = `${subjectUri}/${lang}`;
|
|
86
|
-
yield quad(s, namedNode(PRED.gloss.hasLocalization), namedNode(lcUri));
|
|
87
|
-
yield* localizedConceptToQuads(lc, { parentUri: subjectUri, language: lang });
|
|
88
|
-
}
|
|
89
|
-
|
|
90
|
-
let srcIndex = 0;
|
|
91
|
-
for (const source of concept.sources ?? []) {
|
|
92
|
-
yield* conceptSourceToQuads(source, { subjectUri, index: srcIndex });
|
|
93
|
-
srcIndex += 1;
|
|
94
|
-
}
|
|
95
|
-
|
|
96
|
-
// Iterate the unified relations array. Dispatch via per-type
|
|
97
|
-
// emitter table.
|
|
98
|
-
let relIdx = 0;
|
|
99
|
-
for (const relation of concept.relations ?? []) {
|
|
100
|
-
const emitter = HYPEREDGE_EMITTERS.get(relation.constructor) as unknown as { linkPredicate: string; subjectUri: (a: string, b: unknown, c: number) => string; toQuads: (a: unknown, b: { parentUri: string; index: number }) => Iterable<unknown> } | undefined;
|
|
101
|
-
if (!emitter) {
|
|
102
|
-
// Unknown hyperedge type — skip rather than crash. The OCP
|
|
103
|
-
// contract (Phase 11) tests that new types register an emitter;
|
|
104
|
-
// skipping here gives external consumers a soft-failure path
|
|
105
|
-
// when they pass around abstract hyperedges the JS layer doesn't
|
|
106
|
-
// recognize yet.
|
|
107
|
-
relIdx += 1;
|
|
108
|
-
continue;
|
|
109
|
-
}
|
|
110
|
-
const relSubject = emitter.subjectUri(subjectUri, relation, relIdx);
|
|
111
|
-
yield quad(s, namedNode(emitter.linkPredicate), namedNode(relSubject));
|
|
112
|
-
yield* emitter.toQuads(relation, { parentUri: subjectUri, index: relIdx });
|
|
113
|
-
relIdx += 1;
|
|
114
|
-
}
|
|
115
|
-
}
|
|
@@ -1,72 +0,0 @@
|
|
|
1
|
-
// Designation → RDF quads. Mirrors glossarist-ruby's
|
|
2
|
-
// `Rdf::GlossDesignation` + the per-subtype classes (GlossExpression,
|
|
3
|
-
// GlossAbbreviation, etc.). The ontology class for each subtype is
|
|
4
|
-
// provided by the model itself via Designation#rdfClass (OCP: new
|
|
5
|
-
// subtypes register without editing this emitter).
|
|
6
|
-
import { PRED, PREFIXES } from './predicates.js';
|
|
7
|
-
import { SKOSXL, WELL_KNOWN } from './prefixes.js';
|
|
8
|
-
import { deterministicBnode } from './deterministic-id.js';
|
|
9
|
-
import { normalizeEnum } from './normalize-enum.js';
|
|
10
|
-
import { namedNode, literal, quad } from './terms.js';
|
|
11
|
-
|
|
12
|
-
const XSD_BOOLEAN = 'http://www.w3.org/2001/XMLSchema#boolean';
|
|
13
|
-
|
|
14
|
-
// Boolean flag fields on designation subtypes. Each entry maps a model
|
|
15
|
-
// field name to its ontology predicate. Only emitted when the value is
|
|
16
|
-
// truthy, so legacy data without the fields round-trips unchanged.
|
|
17
|
-
const BOOLEAN_FLAGS = [
|
|
18
|
-
['acronym', PRED.gloss.isAcronym],
|
|
19
|
-
['initialism', PRED.gloss.isInitialism],
|
|
20
|
-
['truncation', PRED.gloss.isTruncation],
|
|
21
|
-
['international', PRED.gloss.isInternational],
|
|
22
|
-
['absent', PRED.gloss.isAbsent],
|
|
23
|
-
];
|
|
24
|
-
|
|
25
|
-
// Returns the SKOS-XL predicate (as a string URI) appropriate for this
|
|
26
|
-
// designation's normative status. Mirrors `skosxl_label_for` in Ruby.
|
|
27
|
-
// The dispatch lives on the Designation model so a new status requires
|
|
28
|
-
// a single edit there, not here.
|
|
29
|
-
export function skosxlLabelPredicate(designation) {
|
|
30
|
-
return designation.skosxlLabelPredicate(PREFIXES.skosxl);
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
// Returns the matching plain-SKOS predicate URI (skos:prefLabel etc.).
|
|
34
|
-
// Used when emitting direct SKOS alongside reified SKOS-XL.
|
|
35
|
-
export function skosLabelPredicate(designation) {
|
|
36
|
-
return designation.skosLabelPredicate(PREFIXES.skos);
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
// Emits quads for one designation. Yields them lazily so callers can
|
|
40
|
-
// compose many designations into a single stream without intermediate
|
|
41
|
-
// arrays.
|
|
42
|
-
//
|
|
43
|
-
// `subjectUri` is the URI of the LocalizedConcept that owns this designation.
|
|
44
|
-
// `index` is the position of the designation within its parent's terms list
|
|
45
|
-
// — used to make the bnode ID deterministic.
|
|
46
|
-
export function* designationToQuads(designation, { subjectUri, language, index }) {
|
|
47
|
-
const desigSubject = deterministicBnode(subjectUri, 'desig', index);
|
|
48
|
-
|
|
49
|
-
const labelPredicate = namedNode(skosxlLabelPredicate(designation));
|
|
50
|
-
yield quad(namedNode(subjectUri), labelPredicate, namedNode(desigSubject));
|
|
51
|
-
|
|
52
|
-
yield quad(namedNode(desigSubject), namedNode(WELL_KNOWN.rdfType), namedNode(`${PRED.gloss.$ns}${designation.rdfClass()}`));
|
|
53
|
-
yield quad(namedNode(desigSubject), namedNode(WELL_KNOWN.rdfType), namedNode(WELL_KNOWN.skosxlLabel));
|
|
54
|
-
yield quad(namedNode(desigSubject), namedNode(SKOSXL.literalForm), literal(designation.designation ?? '', language));
|
|
55
|
-
|
|
56
|
-
if (designation.normativeStatus) {
|
|
57
|
-
const statusToken = normalizeEnum(designation.normativeStatus);
|
|
58
|
-
if (statusToken) {
|
|
59
|
-
const statusUri = `${PRED.gloss.$ns}norm/${statusToken}`;
|
|
60
|
-
yield quad(namedNode(desigSubject), namedNode(PRED.gloss.normativeStatus), namedNode(statusUri));
|
|
61
|
-
}
|
|
62
|
-
}
|
|
63
|
-
|
|
64
|
-
// Subtype-specific boolean flags. Skipping when falsy preserves
|
|
65
|
-
// backward compatibility with simpler designations.
|
|
66
|
-
const booleanType = namedNode(XSD_BOOLEAN);
|
|
67
|
-
for (const [field, predicate] of BOOLEAN_FLAGS) {
|
|
68
|
-
if (designation[field as string]) {
|
|
69
|
-
yield quad(namedNode(desigSubject), namedNode(predicate as string), literal('true', booleanType));
|
|
70
|
-
}
|
|
71
|
-
}
|
|
72
|
-
}
|
|
@@ -1,69 +0,0 @@
|
|
|
1
|
-
// DetailedDefinition → RDF quads. Mirrors glossarist-ruby's
|
|
2
|
-
// `Rdf::GlossDetailedDefinition`. Used for definitions, notes, examples,
|
|
3
|
-
// and annotations — they all share the same shape (content + optional
|
|
4
|
-
// sources + nested examples).
|
|
5
|
-
//
|
|
6
|
-
// The emitter takes a `linkPredicate` (e.g. PRED.gloss.hasDefinition,
|
|
7
|
-
// PRED.gloss.hasNote, PRED.gloss.hasExample) so callers can reuse it for
|
|
8
|
-
// any role.
|
|
9
|
-
import { PRED } from './predicates.js';
|
|
10
|
-
import { WELL_KNOWN } from './prefixes.js';
|
|
11
|
-
import { deterministicBnode } from './deterministic-id.js';
|
|
12
|
-
import { namedNode, literal, quad } from './terms.js';
|
|
13
|
-
|
|
14
|
-
export function* detailedDefinitionToQuads(definition, {
|
|
15
|
-
subjectUri, language, index, role,
|
|
16
|
-
}) {
|
|
17
|
-
const linkPredicate = linkPredicateFor(role);
|
|
18
|
-
const defSubject = deterministicBnode(subjectUri, role, index);
|
|
19
|
-
|
|
20
|
-
yield quad(namedNode(subjectUri), namedNode(linkPredicate), namedNode(defSubject));
|
|
21
|
-
yield quad(namedNode(defSubject), namedNode(WELL_KNOWN.rdfType), namedNode(PRED.gloss.DetailedDefinition));
|
|
22
|
-
|
|
23
|
-
if (definition.content) {
|
|
24
|
-
yield quad(
|
|
25
|
-
namedNode(defSubject),
|
|
26
|
-
namedNode(WELL_KNOWN.rdfValue),
|
|
27
|
-
literal(definition.content, language),
|
|
28
|
-
);
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
// Plain SKOS direct literal — so non-SKOS-XL consumers see definitions.
|
|
32
|
-
// The reified form above carries the same text with sources/examples;
|
|
33
|
-
// this direct literal makes SPARQL `?c skos:definition ?d` work.
|
|
34
|
-
const directPredicate = directSkosPredicateFor(role);
|
|
35
|
-
if (directPredicate && definition.content) {
|
|
36
|
-
yield quad(namedNode(subjectUri), namedNode(directPredicate), literal(definition.content, language));
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
let exampleIndex = 0;
|
|
40
|
-
for (const example of definition.examples ?? []) {
|
|
41
|
-
yield* detailedDefinitionToQuads(example, {
|
|
42
|
-
subjectUri: defSubject, language, index: exampleIndex, role: 'hasScopedExample',
|
|
43
|
-
});
|
|
44
|
-
exampleIndex += 1;
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
function linkPredicateFor(role) {
|
|
49
|
-
switch (role) {
|
|
50
|
-
case 'hasDefinition': return PRED.gloss.hasDefinition;
|
|
51
|
-
case 'hasNote': return PRED.gloss.hasNote;
|
|
52
|
-
case 'hasExample': return PRED.gloss.hasExample;
|
|
53
|
-
case 'hasScopedExample': return PRED.gloss.hasScopedExample;
|
|
54
|
-
case 'hasAnnotation': return PRED.gloss.hasAnnotation;
|
|
55
|
-
default: throw new Error(`Unknown detailed-definition role: ${role}`);
|
|
56
|
-
}
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
function directSkosPredicateFor(role) {
|
|
60
|
-
switch (role) {
|
|
61
|
-
case 'hasDefinition': return PRED.skos.definition;
|
|
62
|
-
case 'hasNote': return PRED.skos.scopeNote;
|
|
63
|
-
case 'hasExample': return PRED.skos.example;
|
|
64
|
-
case 'hasScopedExample': return PRED.skos.example;
|
|
65
|
-
// No direct SKOS counterpart for annotations.
|
|
66
|
-
case 'hasAnnotation': return null;
|
|
67
|
-
default: return null;
|
|
68
|
-
}
|
|
69
|
-
}
|
|
@@ -1,79 +0,0 @@
|
|
|
1
|
-
// LocalizedConcept → RDF quads. Mirrors glossarist-ruby's
|
|
2
|
-
// `Rdf::GlossLocalizedConcept` + the `EmitsExtraTriples` hook.
|
|
3
|
-
//
|
|
4
|
-
// Emits BOTH reified SKOS-XL labels AND direct SKOS literals, so consumers
|
|
5
|
-
// that don't implement SKOS-XL still see labels/definitions/notes/examples
|
|
6
|
-
// as plain literals. This is the same shape glossarist-ruby emits after
|
|
7
|
-
// WS-B Phase 1.
|
|
8
|
-
import { PRED, PREFIXES } from './predicates.js';
|
|
9
|
-
import { WELL_KNOWN } from './prefixes.js';
|
|
10
|
-
import { designationToQuads, skosLabelPredicate } from './gloss-designation.js';
|
|
11
|
-
import { detailedDefinitionToQuads } from './gloss-detailed-definition.js';
|
|
12
|
-
import { conceptSourceToQuads } from './gloss-source.js';
|
|
13
|
-
import { nonVerbalRepToQuads } from './gloss-non-verbal-rep.js';
|
|
14
|
-
import { namedNode, literal, quad } from './terms.js';
|
|
15
|
-
const DCTERMS_LANGUAGE = `${PREFIXES.dcterms}language`;
|
|
16
|
-
|
|
17
|
-
export function localizedConceptUri(parentUri, language) {
|
|
18
|
-
return `${parentUri}/${language}`;
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
export function* localizedConceptToQuads(localizedConcept, { parentUri, language }) {
|
|
22
|
-
const subjectUri = localizedConceptUri(parentUri, language);
|
|
23
|
-
const s = namedNode(subjectUri);
|
|
24
|
-
|
|
25
|
-
yield quad(s, namedNode(WELL_KNOWN.rdfType), namedNode(PRED.gloss.LocalizedConcept));
|
|
26
|
-
yield quad(s, namedNode(WELL_KNOWN.rdfType), namedNode(WELL_KNOWN.skosConcept));
|
|
27
|
-
yield quad(s, namedNode(PRED.gloss.isLocalizationOf), namedNode(parentUri));
|
|
28
|
-
yield quad(s, namedNode(DCTERMS_LANGUAGE), literal(language));
|
|
29
|
-
|
|
30
|
-
if (localizedConcept.entryStatus) {
|
|
31
|
-
yield quad(s, namedNode(PRED.gloss.hasEntryStatus), namedNode(`${PRED.gloss.$ns}entstatus/${localizedConcept.entryStatus}`));
|
|
32
|
-
}
|
|
33
|
-
if (localizedConcept.domain) {
|
|
34
|
-
yield quad(s, namedNode(PRED.gloss.domain), literal(localizedConcept.domain));
|
|
35
|
-
}
|
|
36
|
-
if (localizedConcept.release) {
|
|
37
|
-
yield quad(s, namedNode(PRED.gloss.release), literal(localizedConcept.release));
|
|
38
|
-
}
|
|
39
|
-
if (localizedConcept.script) {
|
|
40
|
-
yield quad(s, namedNode(PRED.gloss.script), literal(localizedConcept.script));
|
|
41
|
-
}
|
|
42
|
-
if (localizedConcept.system) {
|
|
43
|
-
yield quad(s, namedNode(PRED.gloss.conversionSystem), literal(localizedConcept.system));
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
let desigIndex = 0;
|
|
47
|
-
for (const designation of localizedConcept.terms ?? []) {
|
|
48
|
-
yield* designationToQuads(designation, { subjectUri, language, index: desigIndex });
|
|
49
|
-
// Direct SKOS literal alongside the reified SKOS-XL form.
|
|
50
|
-
yield quad(s, namedNode(skosLabelPredicate(designation)), literal(designation.designation, language));
|
|
51
|
-
desigIndex += 1;
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
yield* definitionsToQuads(localizedConcept.definitions, { subjectUri, language, role: 'hasDefinition' });
|
|
55
|
-
yield* definitionsToQuads(localizedConcept.notes, { subjectUri, language, role: 'hasNote' });
|
|
56
|
-
yield* definitionsToQuads(localizedConcept.examples, { subjectUri, language, role: 'hasExample' });
|
|
57
|
-
yield* definitionsToQuads(localizedConcept.annotations, { subjectUri, language, role: 'hasAnnotation' });
|
|
58
|
-
|
|
59
|
-
let nvrIndex = 0;
|
|
60
|
-
for (const nvr of localizedConcept.nonVerbalRep ?? []) {
|
|
61
|
-
yield* nonVerbalRepToQuads(nvr, { parentUri: subjectUri, index: nvrIndex, language });
|
|
62
|
-
nvrIndex += 1;
|
|
63
|
-
}
|
|
64
|
-
|
|
65
|
-
let srcIndex = 0;
|
|
66
|
-
for (const source of localizedConcept.sources ?? []) {
|
|
67
|
-
yield* conceptSourceToQuads(source, { subjectUri, index: srcIndex });
|
|
68
|
-
srcIndex += 1;
|
|
69
|
-
}
|
|
70
|
-
}
|
|
71
|
-
|
|
72
|
-
function* definitionsToQuads(definitions, { subjectUri, language, role }) {
|
|
73
|
-
if (!definitions) return;
|
|
74
|
-
let i = 0;
|
|
75
|
-
for (const def of definitions) {
|
|
76
|
-
yield* detailedDefinitionToQuads(def, { subjectUri, language, index: i, role });
|
|
77
|
-
i += 1;
|
|
78
|
-
}
|
|
79
|
-
}
|