01
Foundation — Data Model
Defines what document nodes and values represent: the tag/props/children structure, JSON-compatible values, MatraJSON, and document Morphion.
Read the Data Model →Normative definition →SPECIFICATIONS AND SCOPE
The Data Model defines the meaning and structure of document nodes and values; the AST is the object form tools use to work with that model. Grammar v0.3 then defines current Matra source syntax, parsing, and evaluation. The Data Model and AST are v0.2, while the current grammar is v0.3: their versions and roles are distinct.
Specification v0.3, individual npm package versions, and compiler ABI are managed separately.
A reading order
First learn the node and value model; then see how the AST represents it inside tools. Grammar v0.3 defines how Matra source is written and processed. Package versions are independent of language specification versions; consult each primary source for normative requirements.
Read the specifications
01
Defines what document nodes and values represent: the tag/props/children structure, JSON-compatible values, MatraJSON, and document Morphion.
Read the Data Model →Normative definition →02
Defines the object form in which tools work with the Data Model, including its use by visitors, transformers, and renderers and its conversion to MatraJSON.
Read about the AST →Normative definition →03
The current rules for Matra source expressions, node construction, XML-style markup, parsing, and static retrieval. It has a different role from the foundational Data Model and AST.
Read the grammar →Normative definition →04
The roles of MatraModule, static retrieval, and explicit evaluation.
Read about parsing →Program specification →05
Verification targets, known limitations, and publication conditions for released packages.
v0.3 plan →Keep distinct
Data Model/AST v0.2 define value representation; Grammar v0.3 defines the current source syntax, parsing, and static retrieval. Parser v0.2 is historical. HTML rendering and tag-specific semantics belong to separate domains.