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
|
@@ -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":"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"}
|
|
@@ -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
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
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
|
-
|
|
44
|
+
return _default.validate(concept);
|
|
69
45
|
}
|
|
70
|
-
|
|
71
46
|
export function createConceptValidator() {
|
|
72
|
-
|
|
47
|
+
return new ConceptValidator();
|
|
73
48
|
}
|
|
74
|
-
|
|
75
49
|
export function validateRegister(register) {
|
|
76
|
-
|
|
50
|
+
return new RegisterValidator().validate(register);
|
|
77
51
|
}
|
|
78
|
-
|
|
79
52
|
export async function validateGcrPackage(pkg) {
|
|
80
|
-
|
|
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 @@
|
|
|
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"}
|