{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://receiz.com/standards/receiz.sports-card-manifest.schema.v1.json",
  "title": "Receiz Sports Card Manifest v1",
  "description": "Public developer contract for a Receiz Sports card proof object, including claim identity, ownership, score memory, event proof summary, market state, and deterministic value basis.",
  "type": "object",
  "required": ["schema", "sport", "collectibleId", "claimHash", "card", "ownership", "valueBasis", "links"],
  "properties": {
    "schema": {
      "const": "receiz.sports_arena.card_manifest.v1"
    },
    "sport": {
      "type": "string",
      "enum": ["baseball", "soccer", "fight", "sports"]
    },
    "collectibleId": {
      "type": "string",
      "minLength": 1
    },
    "claimHash": {
      "type": "string",
      "minLength": 16
    },
    "card": {
      "type": "object",
      "description": "Public card identity and display projection. The card claim/proof remains the stronger truth boundary.",
      "additionalProperties": true
    },
    "ownership": {
      "type": "object",
      "description": "Current custody plus public provenance references.",
      "required": ["currentOwner"],
      "properties": {
        "currentOwner": {
          "type": ["object", "null"],
          "additionalProperties": true
        },
        "history": {
          "type": "array",
          "items": {
            "type": "object",
            "additionalProperties": true
          }
        }
      },
      "additionalProperties": true
    },
    "valueBasis": {
      "type": "object",
      "description": "Deterministic proof/settlement value projection. Seller ask, bid, cost, and checkout price are separate mechanics.",
      "additionalProperties": true
    },
    "appendSummary": {
      "type": ["object", "null"],
      "additionalProperties": true
    },
    "eventProofSummary": {
      "type": ["object", "null"],
      "additionalProperties": true
    },
    "market": {
      "type": ["object", "null"],
      "additionalProperties": true
    },
    "links": {
      "type": "object",
      "required": ["self"],
      "properties": {
        "self": {
          "type": "string",
          "format": "uri-reference"
        },
        "card": {
          "type": "string",
          "format": "uri-reference"
        },
        "vault": {
          "type": "string",
          "format": "uri-reference"
        },
        "proof": {
          "type": "string",
          "format": "uri-reference"
        },
        "market": {
          "type": "string",
          "format": "uri-reference"
        }
      },
      "additionalProperties": {
        "type": "string"
      }
    }
  },
  "additionalProperties": false
}
