{ "$schema": "http://json-schema.org/draft-07/schema#", "$id": "https://concert.foundation/signet/v0.1/coverage-assessment.schema.json", "title": "CoverageAssessment", "description": "The computed coverage state for one (market, delivery period, basis, portfolio scope) at a point in time. Derived, never hand-entered; always event-anchored. policyEvaluation.status is CLOSED. reconciliation materialises the rule: hedged + floating = markToMarket within tolerance (conformance rule 1).", "type": "object", "required": [ "id", "market", "deliveryPeriod", "portfolioScope", "assessedAt", "volumes", "hedgedRatio", "policyEvaluation", "reconciliation", "positions", "provenance" ], "additionalProperties": false, "properties": { "@context": { "type": [ "string", "object", "array" ] }, "type": { "const": "CoverageAssessment" }, "id": { "$ref": "definitions.schema.json#/definitions/Identifier" }, "market": { "type": "string" }, "deliveryPeriod": { "type": "object", "required": [ "year", "basis" ], "additionalProperties": false, "properties": { "year": { "type": "integer" }, "basis": { "type": "string" } } }, "portfolioScope": { "type": "string" }, "assessedAt": { "type": "string", "format": "date-time" }, "volumes": { "type": "object", "required": [ "hedged", "floating", "markToMarket" ], "additionalProperties": false, "properties": { "hedged": { "type": "object", "required": [ "amount", "unit" ], "additionalProperties": false, "properties": { "amount": { "type": "number" }, "unit": { "type": "string" } } }, "floating": { "type": "object", "required": [ "amount", "unit" ], "additionalProperties": false, "properties": { "amount": { "type": "number" }, "unit": { "type": "string" } } }, "markToMarket": { "type": "object", "required": [ "amount", "unit" ], "additionalProperties": false, "properties": { "amount": { "type": "number" }, "unit": { "type": "string" } } } } }, "weightedPrices": { "type": "object", "additionalProperties": false, "properties": { "hedged": { "type": "object", "required": [ "amount", "currency" ], "additionalProperties": false, "properties": { "amount": { "type": "number" }, "currency": { "type": "string" }, "unit": { "type": "string" } } }, "floating": { "type": "object", "required": [ "amount", "currency" ], "additionalProperties": false, "properties": { "amount": { "type": "number" }, "currency": { "type": "string" }, "unit": { "type": "string" } } } } }, "hedgedRatio": { "type": "number" }, "policyEvaluation": { "type": "object", "required": [ "policyId", "status" ], "additionalProperties": false, "properties": { "policyId": { "$ref": "definitions.schema.json#/definitions/Identifier" }, "corridorApplied": { "type": "object", "additionalProperties": false, "properties": { "minimum": { "type": "number" }, "target": { "type": "number" }, "maximum": { "type": "number" } } }, "status": { "type": "string", "enum": [ "withinCorridor", "belowMinimum", "aboveMaximum", "noPolicyDefined" ] }, "distanceToMinimum": { "type": "number" } } }, "reconciliation": { "type": "object", "required": [ "status", "rule" ], "additionalProperties": false, "properties": { "status": { "type": "string" }, "rule": { "type": "string" }, "tolerance": { "type": "number" } } }, "positions": { "type": "array", "minItems": 1, "items": { "$ref": "definitions.schema.json#/definitions/Identifier" } }, "provenance": { "$ref": "definitions.schema.json#/definitions/Provenance" } } }