{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://api.supasaju.com/schemas/wongukInteraction.json",
  "title": "wongukInteraction 모듈 응답",
  "description": "실제 엔진 출력에서 생성된 스키마입니다.",
  "type": "object",
  "properties": {
    "stemRelations": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "transformed": {
            "type": "boolean"
          },
          "transformationReasons": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "kind": {
            "type": "string",
            "examples": [
              "stemCombination",
              "stemClash"
            ]
          },
          "kindKo": {
            "type": "string",
            "examples": [
              "천간합",
              "천간충"
            ]
          },
          "label": {
            "type": "string",
            "examples": [
              "병신합",
              "신병합"
            ]
          },
          "positions": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "positionsKo": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "glyphs": {
            "type": "string",
            "examples": [
              "병신",
              "신병"
            ]
          },
          "glyphsHan": {
            "type": "string",
            "examples": [
              "丙辛",
              "辛丙"
            ]
          },
          "strength": {
            "type": "string",
            "examples": [
              "weak",
              "medium"
            ]
          },
          "strengthKo": {
            "type": "string",
            "examples": [
              "약(쟁합)",
              "약(원격)"
            ]
          },
          "element": {
            "type": [
              "null",
              "string"
            ],
            "examples": [
              "water",
              "fire"
            ]
          },
          "elementKo": {
            "type": [
              "null",
              "string"
            ],
            "examples": [
              "수",
              "화"
            ]
          },
          "completeness": {
            "type": "null"
          },
          "contested": {
            "type": "boolean"
          },
          "meaning": {
            "type": "string"
          },
          "reasoning": {
            "type": "string"
          }
        },
        "required": [
          "completeness",
          "contested",
          "element",
          "elementKo",
          "glyphs",
          "glyphsHan",
          "kind",
          "kindKo",
          "label",
          "positions",
          "positionsKo",
          "strength",
          "strengthKo"
        ]
      }
    },
    "branchRelations": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "kind": {
            "type": "string",
            "examples": [
              "harm",
              "selfPunishment"
            ]
          },
          "kindKo": {
            "type": "string",
            "examples": [
              "해",
              "자형"
            ]
          },
          "label": {
            "type": "string",
            "examples": [
              "진묘 해",
              "진진 자형"
            ]
          },
          "positions": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "positionsKo": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "glyphs": {
            "type": "string",
            "examples": [
              "진묘",
              "진진"
            ]
          },
          "glyphsHan": {
            "type": "string",
            "examples": [
              "辰卯",
              "辰辰"
            ]
          },
          "strength": {
            "type": "string",
            "examples": [
              "weak",
              "medium"
            ]
          },
          "strengthKo": {
            "type": "string",
            "examples": [
              "약(원격)",
              "중(격각)"
            ]
          },
          "element": {
            "type": [
              "null",
              "string"
            ],
            "examples": [
              "earth",
              "fire"
            ]
          },
          "elementKo": {
            "type": [
              "null",
              "string"
            ],
            "examples": [
              "토",
              "화"
            ]
          },
          "completeness": {
            "type": [
              "null",
              "string"
            ],
            "examples": [
              "partial",
              "full"
            ]
          },
          "contested": {
            "type": "boolean"
          },
          "meaning": {
            "type": "string"
          },
          "reasoning": {
            "type": "string"
          }
        },
        "required": [
          "completeness",
          "contested",
          "element",
          "elementKo",
          "glyphs",
          "glyphsHan",
          "kind",
          "kindKo",
          "label",
          "positions",
          "positionsKo",
          "strength",
          "strengthKo"
        ]
      }
    },
    "summary": {
      "type": "object",
      "properties": {
        "combinations": {
          "type": "integer",
          "examples": [
            0,
            4
          ]
        },
        "clashes": {
          "type": "integer",
          "examples": [
            0,
            2
          ]
        },
        "punishments": {
          "type": "integer",
          "examples": [
            3,
            1
          ]
        },
        "destructions": {
          "type": "integer",
          "examples": [
            0,
            1
          ]
        },
        "harms": {
          "type": "integer",
          "examples": [
            3,
            0
          ]
        },
        "total": {
          "type": "integer",
          "examples": [
            6,
            1
          ]
        }
      },
      "required": [
        "clashes",
        "combinations",
        "destructions",
        "harms",
        "punishments",
        "total"
      ]
    },
    "basis": {
      "type": "array",
      "items": {
        "type": "string",
        "examples": [
          "시주 미상이라 세 기둥 사이의 관계만 찾았다."
        ]
      }
    }
  },
  "required": [
    "branchRelations",
    "stemRelations",
    "summary"
  ]
}