!!id:"https://tson.io/2026/39/m/temporal-resolved.tn" !!import:"https://tson.io/2026/39/m/meta.tn" @doc:""" Resolver-output fixture for temporal.tn (2026 Revision 39 draft). Parse the source schema, run the resolver, canonicalise, compare. Conventions as in meta-resolved.tn, and the header note in numeric-resolved.tn applies here: temporal.tn imports meta.tn alone, its constructors are members of the schema map nested as its entry `temporal`, and its instances are at its root. """ !schema { temporal => !meta.schema { date_type => !meta.record { chain: { supertypes: [atom.specification meta.atom meta.top meta.type] } fields: { chain => !meta.record_field { type: meta.type_chain optional: true } spec => !meta.record_field { type: iri optional: true role: FIXED value: "https://www.rfc-editor.org/rfc/rfc3339" } min => !meta.record_field { type: date optional: true } exclusive_min => !meta.record_field { type: date optional: true } max => !meta.record_field { type: date optional: true } exclusive_max => !meta.record_field { type: date optional: true } } groups: [ !meta.field_group { members: [[min] [exclusive_min]] optional: true } !meta.field_group { members: [[max] [exclusive_max]] optional: true } ] } time_type => !meta.record { chain: { supertypes: [atom.specification meta.atom meta.top meta.type] } fields: { chain => !meta.record_field { type: meta.type_chain optional: true } spec => !meta.record_field { type: iri optional: true role: FIXED value: "https://www.rfc-editor.org/rfc/rfc3339" } min => !meta.record_field { type: time optional: true } exclusive_min => !meta.record_field { type: time optional: true } max => !meta.record_field { type: time optional: true } exclusive_max => !meta.record_field { type: time optional: true } precision => !meta.record_field { type: numeric.count optional: true } } groups: [ !meta.field_group { members: [[min] [exclusive_min]] optional: true } !meta.field_group { members: [[max] [exclusive_max]] optional: true } ] } datetime_type => !meta.record { chain: { supertypes: [atom.specification meta.atom meta.top meta.type] } fields: { chain => !meta.record_field { type: meta.type_chain optional: true } spec => !meta.record_field { type: iri optional: true role: FIXED value: "https://www.rfc-editor.org/rfc/rfc3339" } min => !meta.record_field { type: datetime optional: true } exclusive_min => !meta.record_field { type: datetime optional: true } max => !meta.record_field { type: datetime optional: true } exclusive_max => !meta.record_field { type: datetime optional: true } precision => !meta.record_field { type: numeric.count optional: true } } groups: [ !meta.field_group { members: [[min] [exclusive_min]] optional: true } !meta.field_group { members: [[max] [exclusive_max]] optional: true } ] } duration_type => !meta.record { chain: { supertypes: [atom.specification meta.atom meta.top meta.type] } fields: { chain => !meta.record_field { type: meta.type_chain optional: true } spec => !meta.record_field { type: iri optional: true role: FIXED value: "https://www.rfc-editor.org/rfc/rfc3339#appendix-A" } min => !meta.record_field { type: duration optional: true } exclusive_min => !meta.record_field { type: duration optional: true } max => !meta.record_field { type: duration optional: true } exclusive_max => !meta.record_field { type: duration optional: true } precision => !meta.record_field { type: numeric.count optional: true } multiple_of => !meta.record_field { type: duration optional: true } } groups: [ !meta.field_group { members: [[min] [exclusive_min]] optional: true } !meta.field_group { members: [[max] [exclusive_max]] optional: true } ] } period_type => !meta.record { chain: { supertypes: [atom.specification meta.atom meta.top meta.type] } fields: { chain => !meta.record_field { type: meta.type_chain optional: true } spec => !meta.record_field { type: iri optional: true role: FIXED value: "https://www.rfc-editor.org/rfc/rfc3339#appendix-A" } min => !meta.record_field { type: period optional: true } exclusive_min => !meta.record_field { type: period optional: true } max => !meta.record_field { type: period optional: true } exclusive_max => !meta.record_field { type: period optional: true } multiple_of => !meta.record_field { type: period optional: true } } groups: [ !meta.field_group { members: [[min] [exclusive_min]] optional: true } !meta.field_group { members: [[max] [exclusive_max]] optional: true } ] } } @atom.ordering:TOTAL @atom.bounded:true date => !temporal.date_type {} @atom.ordering:TOTAL @atom.bounded:true time => !temporal.time_type {} @atom.ordering:TOTAL @atom.bounded:true datetime => !temporal.datetime_type {} @atom.ordering:TOTAL @atom.bounded:true duration => !temporal.duration_type {} @atom.ordering:TOTAL @atom.bounded:false period => !temporal.period_type {} }