Class: Ucode::Models::Relationship
- Inherits:
-
Lutaml::Model::Serializable
- Object
- Lutaml::Model::Serializable
- Ucode::Models::Relationship
- Defined in:
- lib/ucode/models/relationship.rb,
lib/ucode/models/relationship/footnote.rb,
lib/ucode/models/relationship/compat_equiv.rb,
lib/ucode/models/relationship/informal_alias.rb,
lib/ucode/models/relationship/cross_reference.rb,
lib/ucode/models/relationship/sample_sequence.rb,
lib/ucode/models/relationship/variation_sequence.rb
Overview
Polymorphic Relationship base. The kind attribute is the
discriminator that identifies the concrete subclass on the wire.
Six concrete subclasses model the six marker types in NamesList.txt plus standardized variants:
CrossReference (→ see also)
SampleSequence (× typical usage)
CompatEquiv (≡ compatibility equivalent)
InformalAlias (= informal alias)
Footnote (* explanatory note)
VariationSequence (from StandardizedVariants.txt)
Adding a new relationship kind later is OCP: subclass + autoload + one entry in each polymorphic map. Nothing else changes.
Defined Under Namespace
Classes: CompatEquiv, CrossReference, Footnote, InformalAlias, SampleSequence, VariationSequence