Skip to content

feat: NonVerbalEntity models — Figure, Table, Formula as dataset-level entities#57

Merged
ronaldtse merged 1 commit into
mainfrom
feat/non-verbal-entities
Jun 17, 2026
Merged

feat: NonVerbalEntity models — Figure, Table, Formula as dataset-level entities#57
ronaldtse merged 1 commit into
mainfrom
feat/non-verbal-entities

Conversation

@ronaldtse

Copy link
Copy Markdown
Member

ISO 10241-1 §6.5 non-verbal representations as first-class dataset-level entities.

New Lutaml models

  • NonVerbalEntity: abstract base (id, identifier, caption, description, alt, sources)
  • Figure extends NonVerbalEntity: images + recursive subfigures
  • FigureImage: src, format, role, width, height, scale
  • Table extends NonVerbalEntity: content + format
  • Formula extends NonVerbalEntity: expression + notation

New schemas

  • schemas/v3/figure.yaml: JSON Schema for Figure entities
  • schemas/v3/examples/19-non-verbal-entities.yaml: example with figure (multi-variant, subfigures), table, formula

Ontology additions

  • Classes: NonVerbalEntity, Figure, Table, Formula, FigureImage
  • Properties: caption, altText, description (rdf:langString); image, hasSubfigure (object); src, format, role (datatype)

Design

Authored once at figures/, tables/, formulas/ directories and shared across concepts via stable ID. Concept-owned inline form (NonVerbRep) coexists with localized caption/description for accessibility.

Authoritative implementation in glossarist-ruby: lib/glossarist/non_verbal_entity.rb

…level entities

ISO 10241-1 §6.5 non-verbal representations are now first-class dataset-level
entities, authored once and shared across concepts via stable ID.

New Lutaml models:
- NonVerbalEntity: abstract base (id, identifier, caption, description, alt, sources)
- Figure extends NonVerbalEntity: images (FigureImage[]) + recursive subfigures
- FigureImage: src, format, role, width, height, scale
- Table extends NonVerbalEntity: content (localized) + format
- Formula extends NonVerbalEntity: expression (localized) + notation

New schemas:
- schemas/v3/figure.yaml: JSON Schema for Figure entities
- schemas/v3/examples/19-non-verbal-entities.yaml: example with figure
  (multi-variant, subfigures), table, formula

Ontology additions (glossarist.ttl):
- gloss:NonVerbalEntity, gloss:Figure, gloss:Table, gloss:Formula classes
- gloss:FigureImage class
- gloss:caption, gloss:altText, gloss:description (rdf:langString)
- gloss:image, gloss:hasSubfigure (object properties)
- gloss:src, gloss:format, gloss:role (datatype properties)
@ronaldtse ronaldtse merged commit d8ea4e3 into main Jun 17, 2026
6 of 9 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant