{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "/ai/valuation-request.schema.json",
  "$comment": "10Y STOCK VALUE Protocol v1.10.0; modified 2026-08-30",
  "title": "10Y STOCK VALUE professional valuation request",
  "type": "object",
  "additionalProperties": false,
  "required": [
    "company",
    "ticker",
    "exchange",
    "share_class",
    "security_identifier",
    "security_identity",
    "currency",
    "currency_context",
    "as_of",
    "market_price_as_of",
    "amount_unit",
    "valuation_scope",
    "requested_model",
    "sector_id",
    "detail_level",
    "engagement_level",
    "assumption_policy",
    "minimum_output",
    "source_access",
    "source_urls"
  ],
  "properties": {
    "company": {
      "type": "string",
      "minLength": 1,
      "description": "評価対象となる法的企業名。通称だけで特定しない"
    },
    "ticker": {
      "type": [
        "string",
        "null"
      ]
    },
    "exchange": {
      "type": [
        "string",
        "null"
      ]
    },
    "share_class": {
      "type": [
        "string",
        "null"
      ]
    },
    "security_identifier": {
      "type": [
        "string",
        "null"
      ],
      "description": "ISIN、EDINETコード、CIK等。取得できる識別子を記録"
    },
    "security_identity": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "country_or_region",
        "security_type",
        "primary_listing",
        "underlying_shares_per_listed_security"
      ],
      "properties": {
        "country_or_region": {
          "type": [
            "string",
            "null"
          ],
          "description": "法人または主要上場の国・地域"
        },
        "security_type": {
          "enum": [
            null,
            "common",
            "preferred",
            "adr",
            "gdr",
            "unit",
            "fund",
            "index",
            "private_equity"
          ]
        },
        "primary_listing": {
          "type": [
            "boolean",
            "null"
          ]
        },
        "underlying_shares_per_listed_security": {
          "type": [
            "number",
            "null"
          ],
          "exclusiveMinimum": 0,
          "description": "上場証券1単位が表す原普通株数。普通株は1、ADR/GDRは一次資料で確認"
        }
      }
    },
    "currency": {
      "type": [
        "string",
        "null"
      ],
      "description": "後方互換の評価通貨alias。正準値はcurrency_context.valuation_currency"
    },
    "currency_context": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "reporting_currency",
        "functional_currency",
        "price_currency",
        "valuation_currency",
        "input_amount_unit",
        "price_quote_unit_code",
        "quote_unit_to_price_currency",
        "spot_fx",
        "year10_fx_policy",
        "year10_financial_to_valuation_rate"
      ],
      "properties": {
        "reporting_currency": {
          "type": [
            "string",
            "null"
          ],
          "description": "財務諸表の表示通貨（ISO 4217）"
        },
        "functional_currency": {
          "type": [
            "string",
            "null"
          ],
          "description": "重要な場合に記録する機能通貨（ISO 4217）"
        },
        "price_currency": {
          "type": [
            "string",
            "null"
          ],
          "description": "取引所株価のmajor currency（ISO 4217）"
        },
        "valuation_currency": {
          "type": [
            "string",
            "null"
          ],
          "description": "最終結果の表示通貨（ISO 4217）"
        },
        "input_amount_unit": {
          "type": [
            "string",
            "null"
          ],
          "description": "例 USD million、JPY 100-million"
        },
        "price_quote_unit_code": {
          "type": [
            "string",
            "null"
          ],
          "description": "USD、GBP、GBX等の取引所表示単位"
        },
        "quote_unit_to_price_currency": {
          "type": [
            "number",
            "null"
          ],
          "exclusiveMinimum": 0,
          "description": "major price currency / quote unit。GBX→GBPは0.01"
        },
        "spot_fx": {
          "type": "array",
          "items": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "from",
              "to",
              "rate_to_per_from",
              "as_of",
              "source_url"
            ],
            "properties": {
              "from": {
                "type": "string"
              },
              "to": {
                "type": "string"
              },
              "rate_to_per_from": {
                "type": "number",
                "exclusiveMinimum": 0
              },
              "as_of": {
                "type": "string"
              },
              "source_url": {
                "type": [
                  "string",
                  "null"
                ],
                "format": "uri"
              }
            }
          }
        },
        "year10_fx_policy": {
          "enum": [
            "constant_spot",
            "explicit_year10",
            "scenario_path"
          ]
        },
        "year10_financial_to_valuation_rate": {
          "type": [
            "number",
            "null"
          ],
          "exclusiveMinimum": 0
        }
      }
    },
    "as_of": {
      "type": "string",
      "description": "YYYY-MM-DD。評価基準日"
    },
    "market_price_as_of": {
      "type": [
        "string",
        "null"
      ],
      "description": "上場証券は価格の取得日時。非上場はnull"
    },
    "amount_unit": {
      "type": [
        "string",
        "null"
      ],
      "description": "後方互換alias。正準値はcurrency_context.input_amount_unit"
    },
    "valuation_scope": {
      "enum": [
        "today",
        "year10",
        "both",
        "triple"
      ]
    },
    "requested_model": {
      "enum": [
        "auto",
        "profitable",
        "lossmaking",
        "private",
        "bank",
        "sector",
        "index-passive",
        "fund-active"
      ]
    },
    "sector_id": {
      "enum": [
        null,
        "insurance",
        "reit",
        "rental_real_estate",
        "resources_energy",
        "biotech_pharma",
        "power_gas",
        "public_utility",
        "sogo_shosha",
        "investment_holdco",
        "conglomerate",
        "securities",
        "asset_management",
        "airline",
        "shipping",
        "steel",
        "memory_semiconductor",
        "telecom",
        "infrastructure",
        "construction_engineering",
        "real_estate_dev",
        "saas_subscription"
      ],
      "description": "requested_model=sectorのとき指定。nullならAIが価値源泉から選択"
    },
    "detail_level": {
      "enum": [
        "auto",
        "simple",
        "advanced"
      ],
      "description": "simpleでも仮定付き3評価を返す。advancedが不成立ならsimpleへフォールバック"
    },
    "engagement_level": {
      "const": "professional_valuation"
    },
    "assumption_policy": {
      "const": "explicit_reasonable_assumptions",
      "description": "非重要な将来入力が不足する場合、黙ってnullにせず根拠・レンジ・感度を明示した仮定で補う"
    },
    "minimum_output": {
      "const": "indicative_numbers_with_trace",
      "description": "professional_standard_passedに届かなくても、ハードストップでない限りindicative_onlyの数値・仮定台帳・計算過程を返す"
    },
    "source_access": {
      "enum": [
        "web_browsing",
        "user_provided_only",
        "mixed"
      ]
    },
    "source_urls": {
      "type": "array",
      "items": {
        "type": "string",
        "format": "uri"
      },
      "uniqueItems": true
    }
  }
}
