{
  "@context": {
    "@vocab": "https://chessigma.com/schema#",
    "schema": "https://schema.org/",
    "xsd": "http://www.w3.org/2001/XMLSchema#",
    "dcterms": "http://purl.org/dc/terms/",
    "chessigma": "https://chessigma.com/schema#",
    "GameSubmission": "chessigma:GameSubmission",
    "pgn": {
      "@id": "chessigma:pgn",
      "@type": "xsd:string"
    },
    "GameSubmissionResponse": "chessigma:GameSubmissionResponse",
    "gameId": {
      "@id": "chessigma:gameId",
      "@type": "xsd:string"
    },
    "url": {
      "@id": "chessigma:url",
      "@type": "@id"
    },
    "status": {
      "@id": "chessigma:status",
      "@type": "xsd:string"
    },
    "message": {
      "@id": "chessigma:message",
      "@type": "xsd:string"
    },
    "GameAnalysisResponse": "chessigma:GameAnalysisResponse",
    "analysis": {
      "@id": "chessigma:analysis"
    },
    "metadata": {
      "@id": "chessigma:metadata"
    },
    "Game": "chessigma:Game",
    "id": {
      "@id": "chessigma:id",
      "@type": "xsd:string"
    },
    "white_username": {
      "@id": "chessigma:white_username",
      "@type": "xsd:string"
    },
    "black_username": {
      "@id": "chessigma:black_username",
      "@type": "xsd:string"
    },
    "white_rating": {
      "@id": "chessigma:white_rating",
      "@type": "xsd:integer"
    },
    "black_rating": {
      "@id": "chessigma:black_rating",
      "@type": "xsd:integer"
    },
    "white_result": {
      "@id": "chessigma:white_result",
      "@type": "xsd:string"
    },
    "black_result": {
      "@id": "chessigma:black_result",
      "@type": "xsd:string"
    },
    "time_class": {
      "@id": "chessigma:time_class",
      "@type": "xsd:string"
    },
    "time_control": {
      "@id": "chessigma:time_control",
      "@type": "xsd:string"
    },
    "source": {
      "@id": "chessigma:source",
      "@type": "xsd:string"
    },
    "EloResponse": "chessigma:EloResponse",
    "yourRating": {
      "@id": "chessigma:yourRating",
      "@type": "xsd:integer"
    },
    "opponentRating": {
      "@id": "chessigma:opponentRating",
      "@type": "xsd:integer"
    },
    "result": {
      "@id": "chessigma:result",
      "@type": "xsd:string"
    },
    "system": {
      "@id": "chessigma:system",
      "@type": "xsd:string"
    },
    "kFactor": {
      "@id": "chessigma:kFactor",
      "@type": "xsd:integer"
    },
    "expectedScore": {
      "@id": "chessigma:expectedScore",
      "@type": "xsd:decimal"
    },
    "newRating": {
      "@id": "chessigma:newRating",
      "@type": "xsd:integer"
    },
    "change": {
      "@id": "chessigma:change",
      "@type": "xsd:integer"
    },
    "DailyPuzzle": "chessigma:DailyPuzzle",
    "date": {
      "@id": "chessigma:date",
      "@type": "xsd:string"
    },
    "puzzleId": {
      "@id": "chessigma:puzzleId",
      "@type": "xsd:string"
    },
    "fen": {
      "@id": "chessigma:fen",
      "@type": "xsd:string"
    },
    "sideToMove": {
      "@id": "chessigma:sideToMove",
      "@type": "xsd:string"
    },
    "rating": {
      "@id": "chessigma:rating",
      "@type": "xsd:integer"
    },
    "themes": {
      "@id": "chessigma:themes",
      "@container": "@list"
    },
    "solution": {
      "@id": "chessigma:solution",
      "@container": "@list"
    },
    "gameUrl": {
      "@id": "chessigma:gameUrl",
      "@type": "@id"
    },
    "Error": "chessigma:Error",
    "error": {
      "@id": "chessigma:error",
      "@type": "xsd:string"
    },
    "details": {
      "@id": "chessigma:details"
    }
  },
  "@type": "schema:Dataset",
  "schema:name": "Chessigma API JSON-LD context",
  "schema:description": "A JSON-LD @context for the objects Chessigma's own API contract declares: one class per component schema, one property per declared field, typed from the contract. Derived by script (derive-json-ld.py, 2026-10-05) from openapi/chessigma-openapi.json.",
  "dcterms:created": "2026-10-05",
  "dcterms:source": [
    "openapi/chessigma-openapi.json"
  ]
}