Class: Glossarist::V3::ConceptSystem
- Inherits:
-
Lutaml::Model::Serializable
- Object
- Lutaml::Model::Serializable
- Glossarist::V3::ConceptSystem
- Defined in:
- lib/glossarist/v3/concept_system.rb
Overview
ConceptSystem — first-class concept system entity per ISO 12620 A.7.
Promotes the previously-implicit concept system (domains + tags +
relation graph) to an explicit first-class entity. Per-file at
concept-systems/<id>.yaml.
A ConceptSystem carries:
- id: stable identifier
- name: localized human-readable name
- type: ConceptSystemType (generic / partitive / sequential /
associative / mixed)
- members: ConceptRefs of concepts in the system
- hyperedges: references to per-file hyperedge $ids
- root_concepts: top-level concepts (no superordinate)
- sources, status: provenance and lifecycle
See docs/design/concept-systems.md in concept-model repo.
Instance Method Summary collapse
- #associative? ⇒ Boolean
- #generic? ⇒ Boolean
- #mixed? ⇒ Boolean
- #partitive? ⇒ Boolean
- #sequential? ⇒ Boolean
- #validate! ⇒ Object
Instance Method Details
#associative? ⇒ Boolean
59 |
# File 'lib/glossarist/v3/concept_system.rb', line 59 def associative? = type == ConceptSystemType::ASSOCIATIVE |
#generic? ⇒ Boolean
56 |
# File 'lib/glossarist/v3/concept_system.rb', line 56 def generic? = type == ConceptSystemType::GENERIC |
#mixed? ⇒ Boolean
60 |
# File 'lib/glossarist/v3/concept_system.rb', line 60 def mixed? = type == ConceptSystemType::MIXED |
#partitive? ⇒ Boolean
57 |
# File 'lib/glossarist/v3/concept_system.rb', line 57 def partitive? = type == ConceptSystemType::PARTITIVE |
#sequential? ⇒ Boolean
58 |
# File 'lib/glossarist/v3/concept_system.rb', line 58 def sequential? = type == ConceptSystemType::SEQUENTIAL |
#validate! ⇒ Object
48 49 50 51 52 53 54 |
# File 'lib/glossarist/v3/concept_system.rb', line 48 def validate! validate_id! validate_name! validate_type! validate_members! self end |