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 / sequential_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