Module: Ucode::Models

Defined in:
lib/ucode/models.rb,
lib/ucode/models/audit.rb,
lib/ucode/models/block.rb,
lib/ucode/models/plane.rb,
lib/ucode/models/script.rb,
lib/ucode/models/codepoint.rb,
lib/ucode/models/name_alias.rb,
lib/ucode/models/cjk_radical.rb,
lib/ucode/models/build_report.rb,
lib/ucode/models/glyph_source.rb,
lib/ucode/models/relationship.rb,
lib/ucode/models/unihan_entry.rb,
lib/ucode/models/unihan_field.rb,
lib/ucode/models/audit/hinting.rb,
lib/ucode/models/audit/metrics.rb,
lib/ucode/models/audit/baseline.rb,
lib/ucode/models/bidi_mirroring.rb,
lib/ucode/models/codepoint/bidi.rb,
lib/ucode/models/named_sequence.rb,
lib/ucode/models/property_alias.rb,
lib/ucode/models/audit/licensing.rb,
lib/ucode/models/codepoint/emoji.rb,
lib/ucode/models/codepoint/glyph.rb,
lib/ucode/models/codepoint/indic.rb,
lib/ucode/models/specialist_font.rb,
lib/ucode/models/audit/audit_axis.rb,
lib/ucode/models/audit/audit_diff.rb,
lib/ucode/models/audit/gasp_range.rb,
lib/ucode/models/codepoint/casing.rb,
lib/ucode/models/codepoint/hangul.rb,
lib/ucode/models/glyph_source_map.rb,
lib/ucode/models/names_list_entry.rb,
lib/ucode/models/audit/discrepancy.rb,
lib/ucode/models/bidi_bracket_pair.rb,
lib/ucode/models/case_folding_rule.rb,
lib/ucode/models/codepoint/display.rb,
lib/ucode/models/codepoint/joining.rb,
lib/ucode/models/validation_report.rb,
lib/ucode/models/audit/audit_report.rb,
lib/ucode/models/audit/field_change.rb,
lib/ucode/models/audit/release_face.rb,
lib/ucode/models/audit/block_summary.rb,
lib/ucode/models/audit/plane_summary.rb,
lib/ucode/models/special_casing_rule.rb,
lib/ucode/models/universal_set_entry.rb,
lib/ucode/models/audit/embedding_type.rb,
lib/ucode/models/audit/named_instance.rb,
lib/ucode/models/audit/script_summary.rb,
lib/ucode/models/codepoint/identifier.rb,
lib/ucode/models/property_value_alias.rb,
lib/ucode/models/standardized_variant.rb,
lib/ucode/models/audit/codepoint_range.rb,
lib/ucode/models/audit/duplicate_group.rb,
lib/ucode/models/audit/library_summary.rb,
lib/ucode/models/audit/opentype_layout.rb,
lib/ucode/models/audit/release_formula.rb,
lib/ucode/models/audit/script_features.rb,
lib/ucode/models/relationship/footnote.rb,
lib/ucode/models/audit/codepoint_detail.rb,
lib/ucode/models/audit/release_manifest.rb,
lib/ucode/models/audit/variation_detail.rb,
lib/ucode/models/codepoint/case_folding.rb,
lib/ucode/models/universal_set_manifest.rb,
lib/ucode/models/codepoint/decomposition.rb,
lib/ucode/models/codepoint/normalization.rb,
lib/ucode/models/codepoint/numeric_value.rb,
lib/ucode/models/audit/codepoint_set_diff.rb,
lib/ucode/models/audit/color_capabilities.rb,
lib/ucode/models/audit/fs_selection_flags.rb,
lib/ucode/models/specialist_font_manifest.rb,
lib/ucode/models/audit/script_coverage_row.rb,
lib/ucode/models/relationship/compat_equiv.rb,
lib/ucode/models/audit/codepoint_provenance.rb,
lib/ucode/models/binary_property_assignment.rb,
lib/ucode/models/audit/release_universal_set.rb,
lib/ucode/models/relationship/informal_alias.rb,
lib/ucode/models/codepoint/break_segmentation.rb,
lib/ucode/models/relationship/cross_reference.rb,
lib/ucode/models/relationship/sample_sequence.rb,
lib/ucode/models/relationship/variation_sequence.rb

Overview

Models — typed class representations of every UCD aggregate.

Conventions (apply to every class in this namespace):

  • Inheritance, not include:

    class Foo < Lutaml::Model::Serializable
    
  • Wire shape declared via key_value do … end (covers JSON + YAML). NEVER mapping do, NEVER json do.

  • Codepoint references are "U+XXXX" strings — never nested CodePoint objects. Keeps the data normalized: each codepoint's full data lives only in its own folder.

  • Polymorphism: polymorphic_class: true + polymorphic_map: on the base discriminator; polymorphic: [...] on the consumer attribute

    • polymorphic: { attribute:, class_map: } on its mapping.
  • NEVER define to_h / from_h / to_json / from_json. All (de)serialization goes through lutaml-model.

Defined Under Namespace

Modules: Audit Classes: BidiBracketPair, BidiMirroring, BinaryPropertyAssignment, Block, BuildReport, CaseFoldingRule, CjkRadical, CodePoint, GlyphSource, GlyphSourceMap, NameAlias, NamedSequence, NamesListEntry, Plane, PropertyAlias, PropertyValueAlias, Relationship, Script, SpecialCasingRule, SpecialistFont, SpecialistFontManifest, StandardizedVariant, UnihanEntry, UnihanField, UniversalSetEntry, UniversalSetManifest, ValidationReport