{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://xcim.org/schemas/wd-02/profiles/amoy-pilot-0.1/proof-set.schema.json",
  "title": "XCIM Experimental Amoy Committed Proof Set",
  "description": "A closed, acyclic publication commitment set. Hashes, unique receipt/permission membership, genesis trust and continuity require semantic checks.",
  "type": "object", "additionalProperties": false,
  "required": ["xcim_version", "object_type", "issuer_id", "batch_sequence", "created_at", "event_root", "state_root", "unrelated_receipt_semantic_failures", "proof_cores", "anchor_genesis", "previous_anchor"],
  "properties": {
    "xcim_version": { "const": "0.1" },
    "object_type": { "const": "proof_bundle_set" },
    "issuer_id": { "type": "string", "pattern": "^urn:xcim:issuer:[A-Za-z0-9._~:-]+$" },
    "batch_sequence": { "type": "integer", "minimum": 1, "maximum": 9007199254740991 },
    "created_at": { "$ref": "https://xcim.org/schemas/wd-02/0.2/identity-evidence.schema.json#/$defs/utc" },
    "event_root": { "$ref": "https://xcim.org/schemas/0.1/status-proof.schema.json#/$defs/hash" },
    "state_root": { "$ref": "https://xcim.org/schemas/0.1/status-proof.schema.json#/$defs/hash" },
    "unrelated_receipt_semantic_failures": { "type": "integer", "minimum": 0, "maximum": 9007199254740991 },
    "anchor_genesis": { "$ref": "anchor-genesis.schema.json" },
    "previous_anchor": { "oneOf": [{ "type": "null" }, { "$ref": "https://xcim.org/schemas/0.1/chain-anchor.schema.json" }] },
    "proof_cores": {
      "type": "array", "uniqueItems": true,
      "items": {
        "type": "object", "additionalProperties": false,
        "required": ["receipt_id", "permission_id", "core_commitment", "core_content_sha256"],
        "properties": {
          "receipt_id": { "type": "string", "pattern": "^urn:xcim:receipt:[A-Za-z0-9._~-]+$" },
          "permission_id": { "type": "string", "pattern": "^urn:xcim:permission:[A-Za-z0-9._~-]+$" },
          "core_commitment": { "$ref": "https://xcim.org/schemas/0.1/status-proof.schema.json#/$defs/hash" },
          "core_content_sha256": { "type": "string", "pattern": "^[a-f0-9]{64}$" }
        }
      }
    }
  }
}
