{ "$schema":                    "https://json-schema.org/draft/2020-12/schema",
  "$id":                        "https://schemas.mpai.community/PGM1/V1.0/data/CXEStatus.json",
  "title":                      "CXE Status V1.0",
  "description":                "Structured outcome of the execution of a CXE Directive, reported by Context Enhancement to A-User Control.",
  "type":                       "object",
  "required":                   ["Header", "SessionID", "CaptureIndex", "CXEStatusID", "CXEStatusTime", "CXEDirectiveID", "EnhancementOutcome", "OperationalState", "SubAIMStatus"],
  "additionalProperties":       false,
  "properties":                 {

    "Header":                   {"type": "string", "const": "PGM-CES-V1.0", "description": "CXE Status header identifier."},
    "MInstanceID":              {"description": "Identifier of the M-Instance.", "type": "string"},
    "UEnvironmentID":           {"description": "Identifier of the U-Environment.", "type": "string"},
    "CXEStatusID":              {"description": "Unique identifier of this CXE Status instance.", "type": "string"},
    "CXEStatusTime":            {"description": "Timestamp of status production.", "$ref": "https://schemas.mpai.community/OSD/V1.5/data/SimpleTime.json"},
    "CXEStatusSpaceTime":       {"description": "Space-Time at which the status is reported.", "$ref": "https://schemas.mpai.community/OSD/V1.5/data/SpaceTime.json"},

    "SessionID":                {"description": "Identifier of the current A-User session, echoed from the directive.", "type": "string"},
    "CaptureIndex":             {"description": "Ordinal of the CXC capture to which this CXE invocation refers, echoed from the directive.", "type": "integer", "minimum": 0},
    "CXEDirectiveID":           {"description": "Identifier of the CXE Directive to which this status refers.", "type": "string"},
    "EnhancementOutcome":       {"description": "Overall result of directive execution.", "type": "string", "enum": ["success", "partial", "failure"]},
    "OperationalState":         {"description": "State of enhancement execution.", "type": "string", "enum": ["not_started", "active", "completed", "interrupted", "failed"]},
    "DirectiveType":            {"description": "Type of enhancement operation executed, echoed from the directive.", "type": "string", "enum": ["enhance_full", "enhance_update", "enhance_delta"]},
    "PriorityLevel":            {"description": "Priority level of the executed directive.", "type": "string", "enum": ["low", "normal", "high"]},

    "SubAIMStatus":             {"description": "Per-SubAIM execution outcome.", "type": "object", "additionalProperties": false, "properties": {
      "AudioSceneEnhancement":  {"type": "object", "additionalProperties": false, "properties": {
        "Outcome":              {"type": "string", "enum": ["success", "partial", "failure", "not_executed"]},
        "PropertiesProduced":   {"description": "List of property names successfully produced.", "type": "array", "items": {"type": "string"}},
        "DomainQueryCount":     {"description": "Number of Domain Access queries issued.", "type": "integer", "minimum": 0},
        "QualityMetrics":       {"description": "Optional quality indicators for audio enhancement.", "type": "object", "additionalProperties": true} }},

      "VisualSceneEnhancement": {"type": "object", "additionalProperties": false, "properties": {
        "Outcome":              {"type": "string", "enum": ["success", "partial", "failure", "not_executed"]},
        "PropertiesProduced":   {"description": "List of property names successfully produced.", "type": "array", "items": {"type": "string"}},
        "DomainQueryCount":     {"description": "Number of Domain Access queries issued.", "type": "integer", "minimum": 0},
        "QualityMetrics":       {"description": "Optional quality indicators for visual enhancement.", "type": "object", "additionalProperties": true} }},

      "AudioVisualAlignment":   {"type": "object", "additionalProperties": false, "properties": {
        "Outcome":              {"type": "string", "enum": ["success", "partial", "failure", "not_executed"]},
        "AlignedObjectCount":   {"description": "Number of audio-visual object pairs aligned.", "type": "integer", "minimum": 0},
        "QualityMetrics":       {"description": "Optional quality indicators for alignment.", "type": "object", "additionalProperties": true} }},

      "UserStateDescription":   {"type": "object", "additionalProperties": false, "properties": {
        "Outcome":              {"type": "string", "enum": ["success", "partial", "failure", "not_executed"]},
        "PropertiesProduced":   {"description": "List of user state properties successfully produced.", "type": "array", "items": {"type": "string"}},
        "ASROutcome":           {"description": "Outcome of ASR processing if enabled.", "type": "string", "enum": ["success", "partial", "failure", "not_enabled"]},
        "DomainQueryCount":     {"description": "Number of Domain Access queries issued.", "type": "integer", "minimum": 0},
        "QualityMetrics":       {"description": "Optional quality indicators for user state description.", "type": "object", "additionalProperties": true} }} }},

    "AUSReadStatus":            {"description": "Per-item outcome of AUS read operations instructed by AUC.", "type": "array", "items": {"type": "object", "additionalProperties": false, "required": ["ContentType", "Outcome"], "properties": {"ContentType": {"type": "string", "enum": ["EnhancedAudioSceneDescriptors", "EnhancedVisualSceneDescriptors", "UserEntityState", "AudioVisualSceneGeometry", "Avatar", "SpatialAttitude"]}, "CaptureIndex": {"type": "integer", "minimum": 0}, "Outcome": {"type": "string", "enum": ["retrieved", "not_found", "failed"]}}}},
    "AUSWriteStatus":           {"description": "Per-item outcome of AUS write operations instructed by AUC.", "type": "array", "items": {"type": "object", "additionalProperties": false, "required": ["ContentType", "Outcome"], "properties": {"ContentType": {"type": "string", "enum": ["EnhancedAudioSceneDescriptors", "EnhancedVisualSceneDescriptors", "UserEntityState", "AudioVisualSceneGeometry", "CXEStatus"]}, "AUSReference": {"type": "string"}, "Outcome": {"type": "string", "enum": ["stored", "failed"]}}}},
    "Issues":                   {"description": "Optional list of anomalies or problems encountered during execution.", "type": "array", "items": {"type": "string"}},

    "DataXMData":               {"$ref": "https://schemas.mpai.community/PTF/V1.0/data/DataExchangeMetadata.json"},
    "DescrMetadata":            {"type": "string", "maxLength": 2048} } }
