!!id:"https://tson.io/2026/35/m/meta-resolved.tn" !!schema:"https://tson.io/2026/35/m/meta-kernel.tn" @doc:""" Resolver-output fixture for meta.tn (2026 Revision 35 draft). Parse the source schema, run the resolver, canonicalise, compare. Conventions as in meta-kernel-resolved.tn. As a data document, this header cannot carry `!!import`; its `!!schema` names this document's own governing chain, not the schema it describes. The namespace in which this map's type-name tokens resolve — meta.tn's locals plus its import of meta-kernel.tn — is declared by the source schema's header and supplied at ingest ([TSON-SCHEMA] Section 8.1), never by this document. Supertype names in this map (`atom`, `sum`, `text_type`, `atom_specification`, `top`) resolve through that kernel import; `subtypes` lists entries of this map only, and none of this map's entries narrows or composes with another, so every `subtypes` list here is empty and omitted. """ !schema { @doc:"The RFC 4648 base encodings a text encoding may spell a bytes value in. A spelling is not a kind of value." bytes_encoding => !type_definition { source: enum body: !enum { members: [BASE64 BASE64URL BASE32 HEX] } } @doc:"Octet-sequence constraint vocabulary. Instance is bytes in core. The value is the octets; encoding is a selector picking the text spelling." bytes_type => !type_definition { supertypes: [atom top] body: !record { supertypes: [atom] fields: [ !record_field { name: encoding type: bytes_encoding state: REQUIRED_DEFAULT value: BASE64 } !record_field { name: length type: non_negative_integer state: OPTIONAL } !record_field { name: min_length type: non_negative_integer state: OPTIONAL } !record_field { name: max_length type: non_negative_integer state: OPTIONAL } ] } } @doc:"Constructor for sum types whose members belong to a named external schema." scope_kind => !type_definition { source: enum body: !enum { members: [LOCAL EXTERN] } } @doc:"The set spelling an author writes: a template over the parameterless set_type constructor." set => !type_definition { source: set_type body: !template { parameters: [T] template: "!set_type { element_type: T }" } } @doc:""" Constructor for open sum types: the value names its own type, and the instance names the namespaces that name may be resolved in. Open where a choice is closed, so `disjoint` is absent here as on every non-choice sum. """ scoped => !type_definition { supertypes: [sum top] body: !record { supertypes: [sum] fields: [ !record_field { name: scope type: set_scope_kind_xxhash } !record_field { name: schemas type: map_uri_array_type_name_1_ef020ac1_OPTIONAL_1_xxhash state: OPTIONAL } ] } } @doc:"IEEE 754-2019 interchange formats, both radices. Selects the representable grid of an approximate (float_type) value." ieee_format => !type_definition { source: enum body: !enum { members: [BINARY16 BINARY32 BINARY64 BINARY128 BINARY256 DECIMAL32 DECIMAL64 DECIMAL128] } } @doc:"Approximate-numeric constraint vocabulary (SQL approximate tier; ISO/IEC 11404 approximate real). Instances are `float32` and `float64` in core. Pinned to IEEE 754-2019." float_type => !type_definition { supertypes: [atom atom_specification top] body: !record { supertypes: [atom atom_specification] fields: [ !record_field { name: spec type: uri state: REQUIRED_FIXED value: "https://ieeexplore.ieee.org/document/8766229" } !record_field { name: format type: ieee_format } !record_field { name: min type: value state: OPTIONAL } !record_field { name: exclusive_min type: value state: OPTIONAL } !record_field { name: max type: value state: OPTIONAL } !record_field { name: exclusive_max type: value state: OPTIONAL } !record_field { name: allow_nan type: boolean state: REQUIRED_DEFAULT value: true } !record_field { name: allow_infinity type: boolean state: REQUIRED_DEFAULT value: true } !record_field { name: allow_subnormal type: boolean state: REQUIRED_DEFAULT value: true } !record_field { name: allow_negative_zero type: boolean state: REQUIRED_DEFAULT value: true } ] groups: [ !field_group { members: [min exclusive_min] state: OPTIONAL } !field_group { members: [max exclusive_max] state: OPTIONAL } ] } } @doc:"Exact-numeric constraint vocabulary (SQL exact tier; ISO/IEC 11404 scaled, radix 10). Instance is `number` in core." decimal_type => !type_definition { supertypes: [atom top] body: !record { supertypes: [atom] fields: [ !record_field { name: min type: value state: OPTIONAL } !record_field { name: exclusive_min type: value state: OPTIONAL } !record_field { name: max type: value state: OPTIONAL } !record_field { name: exclusive_max type: value state: OPTIONAL } !record_field { name: multiple_of type: value state: OPTIONAL } !record_field { name: total_digits type: non_negative_integer state: OPTIONAL } !record_field { name: fraction_digits type: non_negative_integer state: OPTIONAL } !record_field { name: members type: set_value_xxhash state: OPTIONAL } ] groups: [ !field_group { members: [min exclusive_min] state: OPTIONAL } !field_group { members: [max exclusive_max] state: OPTIONAL } ] } } @doc:"Rational constraint vocabulary. Instance is `rational` in core. Exact (ℚ; ISO/IEC 11404 rational)." rational_type => !type_definition { supertypes: [atom top] body: !record { supertypes: [atom] fields: [ !record_field { name: min type: value state: OPTIONAL } !record_field { name: exclusive_min type: value state: OPTIONAL } !record_field { name: max type: value state: OPTIONAL } !record_field { name: exclusive_max type: value state: OPTIONAL } !record_field { name: multiple_of type: value state: OPTIONAL } ] groups: [ !field_group { members: [min exclusive_min] state: OPTIONAL } !field_group { members: [max exclusive_max] state: OPTIONAL } ] } } @doc:"Allowed component types for a complex value. Closed vocabulary of numeric types." complex_component => !type_definition { source: enum body: !enum { members: [INTEGER NUMBER RATIONAL FLOAT32 FLOAT64] } } @doc:"Complex constraint vocabulary. Instance is `complex` in core. `component` selects the parts' type from complex_component, default NUMBER." complex_type => !type_definition { supertypes: [atom top] body: !record { supertypes: [atom] fields: [ !record_field { name: component type: complex_component state: REQUIRED_DEFAULT value: NUMBER } ] } } @doc:"Date constraint vocabulary. Instance is `date` in core." date_type => !type_definition { supertypes: [atom atom_specification top] body: !record { supertypes: [atom atom_specification] fields: [ !record_field { name: spec type: uri state: REQUIRED_FIXED value: "https://www.rfc-editor.org/rfc/rfc3339" } !record_field { name: min type: value state: OPTIONAL } !record_field { name: exclusive_min type: value state: OPTIONAL } !record_field { name: max type: value state: OPTIONAL } !record_field { name: exclusive_max type: value state: OPTIONAL } ] groups: [ !field_group { members: [min exclusive_min] state: OPTIONAL } !field_group { members: [max exclusive_max] state: OPTIONAL } ] } } @doc:"Time constraint vocabulary. Instance is `time` in core. `precision` bounds fractional-second digits (at most N, on the written token)." time_type => !type_definition { supertypes: [atom atom_specification top] body: !record { supertypes: [atom atom_specification] fields: [ !record_field { name: spec type: uri state: REQUIRED_FIXED value: "https://www.rfc-editor.org/rfc/rfc3339" } !record_field { name: min type: value state: OPTIONAL } !record_field { name: exclusive_min type: value state: OPTIONAL } !record_field { name: max type: value state: OPTIONAL } !record_field { name: exclusive_max type: value state: OPTIONAL } !record_field { name: precision type: non_negative_integer state: OPTIONAL } ] groups: [ !field_group { members: [min exclusive_min] state: OPTIONAL } !field_group { members: [max exclusive_max] state: OPTIONAL } ] } } @doc:"Datetime constraint vocabulary. Instance is `datetime` in core. `precision` as for `time_type`." datetime_type => !type_definition { supertypes: [atom atom_specification top] body: !record { supertypes: [atom atom_specification] fields: [ !record_field { name: spec type: uri state: REQUIRED_FIXED value: "https://www.rfc-editor.org/rfc/rfc3339" } !record_field { name: min type: value state: OPTIONAL } !record_field { name: exclusive_min type: value state: OPTIONAL } !record_field { name: max type: value state: OPTIONAL } !record_field { name: exclusive_max type: value state: OPTIONAL } !record_field { name: precision type: non_negative_integer state: OPTIONAL } ] groups: [ !field_group { members: [min exclusive_min] state: OPTIONAL } !field_group { members: [max exclusive_max] state: OPTIONAL } ] } } @doc:"Duration constraint vocabulary. Instance is `duration` in core." duration_type => !type_definition { supertypes: [atom atom_specification top] body: !record { supertypes: [atom atom_specification] fields: [ !record_field { name: spec type: uri state: REQUIRED_FIXED value: "https://www.rfc-editor.org/rfc/rfc3339#appendix-A" } !record_field { name: min type: value state: OPTIONAL } !record_field { name: exclusive_min type: value state: OPTIONAL } !record_field { name: max type: value state: OPTIONAL } !record_field { name: exclusive_max type: value state: OPTIONAL } !record_field { name: precision type: non_negative_integer state: OPTIONAL } !record_field { name: multiple_of type: value state: OPTIONAL } ] groups: [ !field_group { members: [min exclusive_min] state: OPTIONAL } !field_group { members: [max exclusive_max] state: OPTIONAL } ] } } @doc:""" Calendar-span constraint vocabulary. Instance is `period` in core. A signed integer number of months, so P1Y and P12M are one value and ordering is TOTAL. The calendar half of what one duration used to carry, and the reason the other half can be ordered at all. """ period_type => !type_definition { supertypes: [atom atom_specification top] body: !record { supertypes: [atom atom_specification] fields: [ !record_field { name: spec type: uri state: REQUIRED_FIXED value: "https://www.rfc-editor.org/rfc/rfc3339#appendix-A" } !record_field { name: min type: value state: OPTIONAL } !record_field { name: exclusive_min type: value state: OPTIONAL } !record_field { name: max type: value state: OPTIONAL } !record_field { name: exclusive_max type: value state: OPTIONAL } !record_field { name: multiple_of type: value state: OPTIONAL } ] groups: [ !field_group { members: [min exclusive_min] state: OPTIONAL } !field_group { members: [max exclusive_max] state: OPTIONAL } ] } } @doc:"UUID constraint vocabulary. Instance is `uuid` in core." uuid_type => !type_definition { supertypes: [atom atom_specification top] body: !record { supertypes: [atom atom_specification] fields: [ !record_field { name: spec type: uri state: REQUIRED_FIXED value: "https://www.rfc-editor.org/rfc/rfc9562" } !record_field { name: version type: non_negative_integer state: OPTIONAL } ] } } @doc:"Email constraint vocabulary. Instance is `email` in core." email_type => !type_definition { supertypes: [atom atom_specification text_type top] body: !record { supertypes: [text_type atom_specification] fields: [ !record_field { name: min_length type: non_negative_integer state: OPTIONAL } !record_field { name: max_length type: non_negative_integer state: OPTIONAL } !record_field { name: length type: non_negative_integer state: OPTIONAL } !record_field { name: pattern type: regex state: OPTIONAL } !record_field { name: spec type: uri state: REQUIRED_FIXED value: "https://www.rfc-editor.org/rfc/rfc5322" } ] } } @doc:"IPv4 address constraint vocabulary. Instance is `ipv4` in core." ipv4_type => !type_definition { supertypes: [atom atom_specification top] body: !record { supertypes: [atom atom_specification] fields: [ !record_field { name: spec type: uri state: REQUIRED_FIXED value: "https://www.rfc-editor.org/rfc/rfc3986" } !record_field { name: within type: array_value_xxhash state: OPTIONAL } !record_field { name: excluding type: array_value_xxhash state: OPTIONAL } ] } } @doc:"IPv6 address constraint vocabulary. Instance is `ipv6` in core." ipv6_type => !type_definition { supertypes: [atom atom_specification top] body: !record { supertypes: [atom atom_specification] fields: [ !record_field { name: spec type: uri state: REQUIRED_FIXED value: "https://www.rfc-editor.org/rfc/rfc4291" } !record_field { name: within type: array_value_xxhash state: OPTIONAL } !record_field { name: excluding type: array_value_xxhash state: OPTIONAL } ] } } @doc:"IPv4 network constraint vocabulary. Instance is `cidr4` in core." cidr4_type => !type_definition { supertypes: [atom atom_specification top] body: !record { supertypes: [atom atom_specification] fields: [ !record_field { name: spec type: uri state: REQUIRED_FIXED value: "https://www.rfc-editor.org/rfc/rfc4632" } !record_field { name: min_prefix type: non_negative_integer state: OPTIONAL } !record_field { name: max_prefix type: non_negative_integer state: OPTIONAL } !record_field { name: within type: array_value_xxhash state: OPTIONAL } !record_field { name: excluding type: array_value_xxhash state: OPTIONAL } ] } } @doc:"IPv6 network constraint vocabulary. Instance is `cidr6` in core." cidr6_type => !type_definition { supertypes: [atom atom_specification top] body: !record { supertypes: [atom atom_specification] fields: [ !record_field { name: spec type: uri state: REQUIRED_FIXED value: "https://www.rfc-editor.org/rfc/rfc4291" } !record_field { name: min_prefix type: non_negative_integer state: OPTIONAL } !record_field { name: max_prefix type: non_negative_integer state: OPTIONAL } !record_field { name: within type: array_value_xxhash state: OPTIONAL } !record_field { name: excluding type: array_value_xxhash state: OPTIONAL } ] } } @doc:"MAC address (EUI-48) constraint vocabulary. Instance is `mac` in core." mac_type => !type_definition { supertypes: [atom atom_specification top] body: !record { supertypes: [atom atom_specification] fields: [ !record_field { name: spec type: uri state: REQUIRED_FIXED value: "https://www.rfc-editor.org/rfc/rfc9542" } ] } } @doc:"Ordering classification (ISO/IEC 11404 / XSD fundamental facet)." ordered => @annotation !type_definition { source: enum body: !enum { members: [NONE PARTIAL TOTAL] } } @doc:"Boundedness annotation." bounded => @annotation !type_definition { source: boolean body: !reference { target: boolean } } @doc:"Exactness classification (ISO/IEC 11404 characterizing property)." exact => @annotation !type_definition { source: boolean body: !reference { target: boolean } } @doc:"Numeric type marker annotation." numeric => @annotation !type_definition { source: void body: !reference { target: void } } @doc:"Author's assertion that a choice's variants are pairwise disjoint as value sets — advisory, checked against derived `type_definition.disjoint` (Part 2 Section 5.4). Void-targeted presence marker; written bare." disjoint => @annotation !type_definition { source: void body: !reference { target: void } } @doc:"Marks a definition or field as deprecated." deprecated => @annotation !type_definition { source: text body: !reference { target: text } } @doc:"Records when a definition or field was introduced." since => @annotation !type_definition { source: text body: !reference { target: text } } @doc:"Marks incomplete work requiring attention." todo => @annotation !type_definition { source: text body: !reference { target: text } } @doc:"BCP 47 language tag (RFC 5646)." lang => @annotation !type_definition { source: text body: !reference { target: text } } @doc:"Short human-readable name for a definition or field." title => @annotation !type_definition { source: text body: !reference { target: text } } @doc:"Example values, carried for documentation only." examples => @annotation !type_definition { source: array body: !array { element_type: value } } @doc:"Marks a field an encoding's consumers may read but not write." read_only => @annotation !type_definition { source: void body: !reference { target: void } } @doc:"Marks a field an encoding's consumers may write but not read." write_only => @annotation !type_definition { source: void body: !reference { target: void } } @doc:""" Names the field a member-dispatching encoding selects a choice's variant on. A checked annotation: no decode force, load-time force. """ discriminator => @annotation !type_definition { source: field_name body: !reference { target: field_name } } @doc:""" Designates the field an encoding that flattens is meant to flatten. A checked annotation on the same terms as @discriminator. """ rest => @annotation !type_definition { source: void body: !reference { target: void } } @doc:""" Synthetic entries — the closed forms the sugar lifts to; see meta-kernel-resolved.tn's own note. Each key carries the derived `@synthetic` marker (Part 2 Sections 6, 8.2). `xxhash` stands for a content hash of the resolved binding record and is a placeholder — the hash value is not a conformance point, only the shape of the entry. """ @synthetic array_value_xxhash => !type_definition { source: array body: !array { element_type: value } } @synthetic array_type_name_1_xxhash => !type_definition { source: array body: !array { element_type: type_name min_items: 1 } } @synthetic map_uri_array_type_name_1_ef020ac1_OPTIONAL_1_xxhash => !type_definition { source: map body: !map { key_type: uri value_type: array_type_name_1_xxhash state: OPTIONAL min_items: 1 } } @synthetic set_type_scope_kind_xxhash => !type_definition { source: set_type body: !set_type { element_type: scope_kind min_items: 1 } } @doc:""" Instantiation entries — what a template application closes to. Unlike a synthetic these carry no `@synthetic` marker: their `source` is an application where a synthetic's is a bare constructor (Section 8.2). """ set_scope_kind_xxhash => !type_definition { source: { name: set arguments: [ { name: scope_kind } ] } body: !reference { target: set_type_scope_kind_xxhash } } @synthetic set_type_value_xxhash => !type_definition { source: set_type body: !set_type { element_type: value min_items: 1 } } set_value_xxhash => !type_definition { source: { name: set arguments: [ { name: value } ] } body: !reference { target: set_type_value_xxhash } } }