{
  "@context": {
    "@vocab": "https://shirabe.dev/schema#",
    "schema": "https://schema.org/",
    "xsd": "http://www.w3.org/2001/XMLSchema#",
    "dcterms": "http://purl.org/dc/terms/",
    "shirabe": "https://shirabe.dev/schema#",
    "EnrichRequest": "shirabe:EnrichRequest",
    "record": {
      "@id": "shirabe:record"
    },
    "fields": {
      "@id": "shirabe:fields",
      "@container": "@list"
    },
    "EnrichComponentResult": "shirabe:EnrichComponentResult",
    "status": {
      "@id": "shirabe:status",
      "@type": "xsd:string"
    },
    "reason": {
      "@id": "shirabe:reason",
      "@type": "xsd:string"
    },
    "EnrichResponse": "shirabe:EnrichResponse",
    "results": {
      "@id": "shirabe:results"
    },
    "attribution": {
      "@id": "shirabe:attribution",
      "@container": "@list"
    },
    "Category": "shirabe:Category",
    "Fortune": "shirabe:Fortune",
    "JudgmentValue": "shirabe:JudgmentValue",
    "DayOfWeek": "shirabe:DayOfWeek",
    "ja": {
      "@id": "shirabe:ja",
      "@type": "xsd:string"
    },
    "en": {
      "@id": "shirabe:en",
      "@type": "xsd:string"
    },
    "KyurekiDate": "shirabe:KyurekiDate",
    "year": {
      "@id": "shirabe:year",
      "@type": "xsd:integer"
    },
    "month": {
      "@id": "shirabe:month",
      "@type": "xsd:integer"
    },
    "day": {
      "@id": "shirabe:day",
      "@type": "xsd:integer"
    },
    "isLeapMonth": {
      "@id": "shirabe:isLeapMonth",
      "@type": "xsd:boolean"
    },
    "monthName": {
      "@id": "shirabe:monthName",
      "@type": "xsd:string"
    },
    "TimeSlots": "shirabe:TimeSlots",
    "morning": {
      "@id": "shirabe:morning",
      "@type": "@id"
    },
    "noon": {
      "@id": "shirabe:noon",
      "@type": "@id"
    },
    "afternoon": {
      "@id": "shirabe:afternoon",
      "@type": "@id"
    },
    "evening": {
      "@id": "shirabe:evening",
      "@type": "@id"
    },
    "RokuyoInfo": "shirabe:RokuyoInfo",
    "name": {
      "@id": "shirabe:name",
      "@type": "xsd:string"
    },
    "reading": {
      "@id": "shirabe:reading",
      "@type": "xsd:string"
    },
    "description": {
      "@id": "shirabe:description",
      "@type": "xsd:string"
    },
    "timeSlots": {
      "@id": "shirabe:timeSlots",
      "@type": "@id"
    },
    "KanshiInfo": "shirabe:KanshiInfo",
    "full": {
      "@id": "shirabe:full",
      "@type": "xsd:string"
    },
    "jikkan": {
      "@id": "shirabe:jikkan",
      "@type": "xsd:string"
    },
    "junishi": {
      "@id": "shirabe:junishi",
      "@type": "xsd:string"
    },
    "junishiAnimal": {
      "@id": "shirabe:junishiAnimal"
    },
    "index": {
      "@id": "shirabe:index",
      "@type": "xsd:integer"
    },
    "SekkiInfo": "shirabe:SekkiInfo",
    "isToday": {
      "@id": "shirabe:isToday",
      "@type": "xsd:boolean"
    },
    "RekichuInfo": "shirabe:RekichuInfo",
    "type": {
      "@id": "shirabe:type",
      "@type": "xsd:string"
    },
    "ContextJudgment": "shirabe:ContextJudgment",
    "judgment": {
      "@id": "shirabe:judgment",
      "@type": "@id"
    },
    "note": {
      "@id": "shirabe:note",
      "@type": "xsd:string"
    },
    "score": {
      "@id": "shirabe:score",
      "@type": "xsd:integer"
    },
    "CalendarResponse": "shirabe:CalendarResponse",
    "date": {
      "@id": "shirabe:date",
      "@type": "xsd:date"
    },
    "wareki": {
      "@id": "shirabe:wareki",
      "@type": "xsd:string"
    },
    "dayOfWeek": {
      "@id": "shirabe:dayOfWeek",
      "@type": "@id"
    },
    "kyureki": {
      "@id": "shirabe:kyureki",
      "@type": "@id"
    },
    "rokuyo": {
      "@id": "shirabe:rokuyo",
      "@type": "@id"
    },
    "kanshi": {
      "@id": "shirabe:kanshi",
      "@type": "@id"
    },
    "nijushiSekki": {
      "@id": "shirabe:nijushiSekki",
      "@type": "@id"
    },
    "rekichu": {
      "@id": "shirabe:rekichu",
      "@container": "@list"
    },
    "context": {
      "@id": "shirabe:context"
    },
    "summary": {
      "@id": "shirabe:summary",
      "@type": "xsd:string"
    },
    "CalendarRangeResponse": "shirabe:CalendarRangeResponse",
    "start": {
      "@id": "shirabe:start",
      "@type": "xsd:date"
    },
    "end": {
      "@id": "shirabe:end",
      "@type": "xsd:date"
    },
    "days": {
      "@id": "shirabe:days",
      "@container": "@list"
    },
    "BestDay": "shirabe:BestDay",
    "BestDaysResponse": "shirabe:BestDaysResponse",
    "purpose": {
      "@id": "shirabe:purpose",
      "@type": "@id"
    },
    "HealthResponse": "shirabe:HealthResponse",
    "version": {
      "@id": "shirabe:version",
      "@type": "xsd:string"
    },
    "timestamp": {
      "@id": "shirabe:timestamp",
      "@type": "xsd:dateTime"
    },
    "ErrorCode": "shirabe:ErrorCode",
    "ErrorResponse": "shirabe:ErrorResponse",
    "error": {
      "@id": "shirabe:error"
    }
  },
  "@type": "schema:Dataset",
  "schema:name": "shirabe-dev API JSON-LD context",
  "schema:description": "A JSON-LD @context for the objects shirabe-dev'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-31) from openapi/shirabe-dev-openapi.yaml.",
  "dcterms:created": "2026-10-31",
  "dcterms:source": [
    "openapi/shirabe-dev-openapi.yaml"
  ]
}