Per PRD §4.6: "Vocabulary integration across the industry is what eventually lets a regulator filing reference our ontology, a lender book deep-link to our Decision Artifact, an academic paper cite our PAL+ formulas. Apache 2.0 publication costs near-zero and compounds for years." The schemas are the public contract — Roberto's engine, any future Skill, any agent in the Mythos roadmap all conform to these shapes.
{
"$defs": {
"DecisionSide": {
"description": "PAL+ line decomposition sides (PRD \u00a74.1).",
"enum": [
"revenue",
"cost",
"ancillary",
"passenger_protection"
],
"title": "DecisionSide",
"type": "string"
},
"PALDecomposition": {
"description": "Full PAL+ decomposition of a Decision.",
"properties": {
"decision_id": {
"title": "Decision Id",
"type": "string"
},
"lines": {
"items": {
"$ref": "#/$defs/PALLine"
},
"title": "Lines",
"type": "array"
},
"total_attributed_usd": {
"anyOf": [
{
"type": "number"
},
{
"pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
"type": "string"
}
],
"title": "Total Attributed Usd"
},
"coverage_pct": {
"maximum": 1.0,
"minimum": 0.0,
"title": "Coverage Pct",
"type": "number"
},
"constitution_version": {
"title": "Constitution Version",
"type": "string"
},
"dedup_check_passed": {
"title": "Dedup Check Passed",
"type": "boolean"
}
},
"required": [
"decision_id",
"lines",
"total_attributed_usd",
"coverage_pct",
"constitution_version",
"dedup_check_passed"
],
"title": "PALDecomposition",
"type": "object"
},
"PALLine": {
"description": "One line in a PAL+ decomposition. USD-decimal, formula-hashed.",
"properties": {
"line_id": {
"maxLength": 128,
"minLength": 1,
"title": "Line Id",
"type": "string"
},
"side": {
"$ref": "#/$defs/DecisionSide"
},
"amount_usd": {
"anyOf": [
{
"type": "number"
},
{
"pattern": "^(?!^[-+.]*$)[+-]?0*(?:\\d{0,14}|(?=[\\d.]{1,19}0*$)\\d{0,14}\\.\\d{0,4}0*$)",
"type": "string"
}
[... truncated, see full file]
schemas/decision.json
license: Apache-2.0
version: v0.1
{
"$defs": {
"DecisionSide": {
"description": "PAL+ line decomposition sides (PRD \u00a74.1).",
"enum": [
"revenue",
"cost",
"ancillary",
"passenger_protection"
],
"title": "DecisionSide",
"type": "string"
},
"PALLine": {
"description": "One line in a PAL+ decomposition. USD-decimal, formula-hashed.",
"properties": {
"line_id": {
"maxLength": 128,
"minLength": 1,
"title": "Line Id",
"type": "string"
},
"side": {
"$ref": "#/$defs/DecisionSide"
},
"amount_usd": {
"anyOf": [
{
"type": "number"
},
{
"pattern": "^(?!^[-+.]*$)[+-]?0*(?:\\d{0,14}|(?=[\\d.]{1,19}0*$)\\d{0,14}\\.\\d{0,4}0*$)",
"type": "string"
}
],
"title": "Amount Usd"
},
"formula_hash": {
"pattern": "^[0-9a-f]{16,64}$",
"title": "Formula Hash",
"type": "string"
},
"evidence_ref": {
"title": "Evidence Ref",
"type": "string"
},
"underlying_record_key": {
"title": "Underlying Record Key",
"type": "string"
},
"horizon_start": {
"format": "date-time",
"title": "Horizon Start",
"type": "string"
},
"horizon_end": {
"format": "date-time",
"title": "Horizon End",
"type": "string"
}
},
"required": [
"line_id",
"side",
"amount_usd",
"formula_hash",
"evidence_ref",
"underlying_record_key",
"horizon_start",
"horizon_end"
],
"title": "PALLine",
"type": "object"
}
},
"description": "F1 PAL+ profit attribution \u2014 line-by-line USD decomposition of a Decision.",
"properties": {
"decision_id": {
"title": "Decision Id",
"type": "string"
},
"lines": {
"items": {
"$ref": "#/$defs/PALLine"
},
"title": "Lines",
"type": "array"
},
"total_attributed_usd [... truncated, see full file]
schemas/paldecomposition.json
license: Apache-2.0
version: v0.1
{
"$defs": {
"DecisionSide": {
"description": "PAL+ line decomposition sides (PRD \u00a74.1).",
"enum": [
"revenue",
"cost",
"ancillary",
"passenger_protection"
],
"title": "DecisionSide",
"type": "string"
}
},
"description": "One line of a PAL+ decomposition. Formula-hashed, evidence-referenced.",
"properties": {
"line_id": {
"maxLength": 128,
"minLength": 1,
"title": "Line Id",
"type": "string"
},
"side": {
"$ref": "#/$defs/DecisionSide"
},
"amount_usd": {
"anyOf": [
{
"type": "number"
},
{
"pattern": "^(?!^[-+.]*$)[+-]?0*(?:\\d{0,14}|(?=[\\d.]{1,19}0*$)\\d{0,14}\\.\\d{0,4}0*$)",
"type": "string"
}
],
"title": "Amount Usd"
},
"formula_hash": {
"pattern": "^[0-9a-f]{16,64}$",
"title": "Formula Hash",
"type": "string"
},
"evidence_ref": {
"title": "Evidence Ref",
"type": "string"
},
"underlying_record_key": {
"title": "Underlying Record Key",
"type": "string"
},
"horizon_start": {
"format": "date-time",
"title": "Horizon Start",
"type": "string"
},
"horizon_end": {
"format": "date-time",
"title": "Horizon End",
"type": "string"
}
},
"required": [
"line_id",
"side",
"amount_usd",
"formula_hash",
"evidence_ref",
"underlying_record_key",
"horizon_start",
"horizon_end"
],
"title": "PALLine",
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://github.com/skyweave/ontology/palline.json",
"x-skyweave-version": "v0.1",
"x-skyweave-license": "Apache-2.0"
}
schemas/palline.json
license: Apache-2.0
version: v0.1
{
"description": "F4 Sense ledger record \u2014 one row of ingested airline data with content-hash provenance.",
"properties": {
"record_id": {
"title": "Record Id",
"type": "string"
},
"source": {
"title": "Source",
"type": "string"
},
"content_hash": {
"pattern": "^[0-9a-f]{16,64}$",
"title": "Content Hash",
"type": "string"
},
"ingested_at": {
"format": "date-time",
"title": "Ingested At",
"type": "string"
},
"flight_date": {
"format": "date",
"title": "Flight Date",
"type": "string"
},
"flight_number": {
"title": "Flight Number",
"type": "string"
},
"origin_airport": {
"title": "Origin Airport",
"type": "string"
},
"destination_airport": {
"title": "Destination Airport",
"type": "string"
},
"tail_number": {
"title": "Tail Number",
"type": "string"
},
"fleet_subtype": {
"title": "Fleet Subtype",
"type": "string"
},
"customer_segment": {
"title": "Customer Segment",
"type": "string"
},
"seats_available": {
"title": "Seats Available",
"type": "integer"
},
"seats_sold": {
"title": "Seats Sold",
"type": "integer"
},
"ticket_revenue_usd": {
"anyOf": [
{
"type": "number"
},
{
"pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
"type": "string"
}
],
"title": "Ticket Revenue Usd"
},
"ancillary_revenue_usd": {
"anyOf": [
{
"type": "number"
},
{
"pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
"type": "string"
}
],
"title": "Ancillary Revenue Usd"
},
"cargo_revenue_usd": {
"anyOf": [
{
"type": "number"
},
{
"pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
"type": "string"
}
],
"title": "Cargo Revenue Usd"
},
"fuel_cost_usd": {
"anyOf": [
{
"type": "number"
},
{
"pattern": "^(?!^[-+.]*$) [... truncated, see full file]
schemas/senserecord.json
license: Apache-2.0
version: v0.1
{
"description": "F2 Audit ledger entry \u2014 Merkle-chained, per-tenant scoped.",
"properties": {
"entry_id": {
"title": "Entry Id",
"type": "string"
},
"tenant_id": {
"title": "Tenant Id",
"type": "string"
},
"decision_id": {
"title": "Decision Id",
"type": "string"
},
"payload_hash": {
"title": "Payload Hash",
"type": "string"
},
"previous_hash": {
"title": "Previous Hash",
"type": "string"
},
"entry_hash": {
"title": "Entry Hash",
"type": "string"
},
"timestamp": {
"format": "date-time",
"title": "Timestamp",
"type": "string"
},
"kind": {
"default": "decision",
"enum": [
"decision",
"override",
"kill_switch",
"scenario_commit"
],
"title": "Kind",
"type": "string"
}
},
"required": [
"entry_id",
"tenant_id",
"decision_id",
"payload_hash",
"previous_hash",
"entry_hash",
"timestamp"
],
"title": "AuditEntry",
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://github.com/skyweave/ontology/auditentry.json",
"x-skyweave-version": "v0.1",
"x-skyweave-license": "Apache-2.0"
}
schemas/auditentry.json
license: Apache-2.0
version: v0.1