Validator Playground
Paste concept YAML on the left; categorized validation results appear on the right. Five preset examples cover common shapes including several intentionally broken ones. Rules mirror glossarist-js's check-* validators; for full SHACL + dataset coherence, use the SDK in your build pipeline.
Active rules (7)
concept-shapeβ Required structural fields per ManagedConcept schema.localizations-presentβ At least one language entry required (ISO 10241-1 Β§3).definition-presentβ ISO 10241-1 mandates a definition per language unless a non-verbal representation is used.designation-shapeβ Each term must have a designation, a valid type, and a normative_status.related-typesβ Every related.type must be in the 52-type enumeration (ISO 12620 / SKOS / ISO 25964).external-concept-shapeβ ExternalConcept (status: external) must NOT carry a definition or sources.hyperedge-cardinalityβ partitive_relations / generic_relations arrays: each β₯2 members, valid MECE combos.
All 7 rules pass β this concept is structurally valid per the checks implemented here.
Note: these are the structural checks hand-rolled for this playground. For full SHACL validation, dataset-level coherence, and cross-reference resolution, use glossarist-js or glossarist-ruby in your build pipeline.
What gets checked
Seven hand-rolled rules covering the structural checks glossarist-js enforces at construction time. Each rule cites the relevant ISO standard when applicable.
- Concept shape β required fields (
termid,status) - Localizations present β at least one language entry (ISO 10241-1 Β§3)
- Definition present per language β mandatory unless non-verbal representation is used (ISO 10241-1 Β§6.4)
- Designation shape β each term has a valid type and normative_status (ISO 12620 Β§A.2.1)
- Related-edge type validity β every related.type in the 52-type enumeration (ISO 12620 / SKOS / ISO 25964)
- ExternalConcept shape β status: external must not carry definitions; should have provided_by edge (ISO 704 Β§5.5.4.2.2)
- Hyperedge cardinality + MECE β each rake β₯ 2 members, valid combos, generic requires delimitingCharacteristic (ISO 704 Β§5.5.4)
What this playground does NOT check
Hand-rolled structural checks are a teaching tool. For production validation you need the SDK, which adds:
- SHACL shape validation against the canonical
glossarist.shacl.ttl - Cross-concept reference resolution (do all
ref.sourceURNs exist?) - Dataset-level coherence (duplicate
(comprehensive, criterion)pairs, etc.) - RDF emission correctness (TBX round-trip)
- ConceptSource locality shape
- Binary
has_partredundancy againstPartitiveHyperedge
Use glossarist-ruby in your dataset CI, or glossarist-jsin your build pipeline, to get the full validator suite.
Learn more
- Concepts β the data model being validated
- ISO 10241-1 mapping β mandatory data categories
- ISO 12620 mapping β term_type and related.type enumerations
- Hyperedge Playground β focused YAML-to-rake tool with hyperedge-specific validation