{
  "@context": {
    "@vocab": "https://brightsky.dev/schema#",
    "schema": "https://schema.org/",
    "xsd": "http://www.w3.org/2001/XMLSchema#",
    "dcterms": "http://purl.org/dc/terms/",
    "bright": "https://brightsky.dev/schema#",
    "Alert": "bright:Alert",
    "id": {
      "@id": "bright:id",
      "@type": "xsd:integer"
    },
    "alert_id": {
      "@id": "bright:alert_id",
      "@type": "xsd:string"
    },
    "status": {
      "@id": "bright:status",
      "@type": "xsd:string"
    },
    "effective": {
      "@id": "bright:effective",
      "@type": "xsd:dateTime"
    },
    "onset": {
      "@id": "bright:onset",
      "@type": "xsd:dateTime"
    },
    "expires": {
      "@id": "bright:expires",
      "@type": "xsd:dateTime"
    },
    "category": {
      "@id": "bright:category",
      "@type": "xsd:string"
    },
    "response_type": {
      "@id": "bright:response_type",
      "@type": "xsd:string"
    },
    "urgency": {
      "@id": "bright:urgency",
      "@type": "xsd:string"
    },
    "severity": {
      "@id": "bright:severity",
      "@type": "xsd:string"
    },
    "certainty": {
      "@id": "bright:certainty",
      "@type": "xsd:string"
    },
    "event_code": {
      "@id": "bright:event_code",
      "@type": "xsd:integer"
    },
    "event_en": {
      "@id": "bright:event_en",
      "@type": "xsd:string"
    },
    "event_de": {
      "@id": "bright:event_de",
      "@type": "xsd:string"
    },
    "headline_en": {
      "@id": "bright:headline_en",
      "@type": "xsd:string"
    },
    "headline_de": {
      "@id": "bright:headline_de",
      "@type": "xsd:string"
    },
    "description_en": {
      "@id": "bright:description_en",
      "@type": "xsd:string"
    },
    "description_de": {
      "@id": "bright:description_de",
      "@type": "xsd:string"
    },
    "instruction_en": {
      "@id": "bright:instruction_en",
      "@type": "xsd:string"
    },
    "instruction_de": {
      "@id": "bright:instruction_de",
      "@type": "xsd:string"
    },
    "AlertsResponse": "bright:AlertsResponse",
    "alerts": {
      "@id": "bright:alerts",
      "@container": "@list"
    },
    "location": {
      "@id": "bright:location",
      "@type": "@id"
    },
    "CurrentWeatherRecord": "bright:CurrentWeatherRecord",
    "timestamp": {
      "@id": "bright:timestamp",
      "@type": "xsd:dateTime"
    },
    "source_id": {
      "@id": "bright:source_id",
      "@type": "xsd:integer"
    },
    "cloud_cover": {
      "@id": "bright:cloud_cover",
      "@type": "xsd:decimal"
    },
    "condition": {
      "@id": "bright:condition",
      "@type": "xsd:string"
    },
    "dew_point": {
      "@id": "bright:dew_point",
      "@type": "xsd:decimal"
    },
    "icon": {
      "@id": "bright:icon",
      "@type": "xsd:string"
    },
    "pressure_msl": {
      "@id": "bright:pressure_msl",
      "@type": "xsd:decimal"
    },
    "relative_humidity": {
      "@id": "bright:relative_humidity",
      "@type": "xsd:integer"
    },
    "temperature": {
      "@id": "bright:temperature",
      "@type": "xsd:decimal"
    },
    "visibility": {
      "@id": "bright:visibility",
      "@type": "xsd:integer"
    },
    "fallback_source_ids": {
      "@id": "bright:fallback_source_ids"
    },
    "precipitation_10": {
      "@id": "bright:precipitation_10",
      "@type": "xsd:decimal"
    },
    "precipitation_30": {
      "@id": "bright:precipitation_30",
      "@type": "xsd:decimal"
    },
    "precipitation_60": {
      "@id": "bright:precipitation_60",
      "@type": "xsd:decimal"
    },
    "solar_10": {
      "@id": "bright:solar_10",
      "@type": "xsd:decimal"
    },
    "solar_30": {
      "@id": "bright:solar_30",
      "@type": "xsd:decimal"
    },
    "solar_60": {
      "@id": "bright:solar_60",
      "@type": "xsd:decimal"
    },
    "sunshine_30": {
      "@id": "bright:sunshine_30",
      "@type": "xsd:integer"
    },
    "sunshine_60": {
      "@id": "bright:sunshine_60",
      "@type": "xsd:integer"
    },
    "wind_direction_10": {
      "@id": "bright:wind_direction_10",
      "@type": "xsd:integer"
    },
    "wind_direction_30": {
      "@id": "bright:wind_direction_30",
      "@type": "xsd:integer"
    },
    "wind_direction_60": {
      "@id": "bright:wind_direction_60",
      "@type": "xsd:integer"
    },
    "wind_speed_10": {
      "@id": "bright:wind_speed_10",
      "@type": "xsd:decimal"
    },
    "wind_speed_30": {
      "@id": "bright:wind_speed_30",
      "@type": "xsd:decimal"
    },
    "wind_speed_60": {
      "@id": "bright:wind_speed_60",
      "@type": "xsd:decimal"
    },
    "wind_gust_direction_10": {
      "@id": "bright:wind_gust_direction_10",
      "@type": "xsd:integer"
    },
    "wind_gust_direction_30": {
      "@id": "bright:wind_gust_direction_30",
      "@type": "xsd:integer"
    },
    "wind_gust_direction_60": {
      "@id": "bright:wind_gust_direction_60",
      "@type": "xsd:integer"
    },
    "wind_gust_speed_10": {
      "@id": "bright:wind_gust_speed_10",
      "@type": "xsd:decimal"
    },
    "wind_gust_speed_30": {
      "@id": "bright:wind_gust_speed_30",
      "@type": "xsd:decimal"
    },
    "wind_gust_speed_60": {
      "@id": "bright:wind_gust_speed_60",
      "@type": "xsd:decimal"
    },
    "CurrentWeatherResponse": "bright:CurrentWeatherResponse",
    "weather": {
      "@id": "bright:weather",
      "@type": "@id"
    },
    "sources": {
      "@id": "bright:sources",
      "@container": "@list"
    },
    "HTTPValidationError": "bright:HTTPValidationError",
    "detail": {
      "@id": "bright:detail",
      "@container": "@list"
    },
    "Location": "bright:Location",
    "warn_cell_id": {
      "@id": "bright:warn_cell_id",
      "@type": "xsd:integer"
    },
    "name": {
      "@id": "bright:name",
      "@type": "xsd:string"
    },
    "name_short": {
      "@id": "bright:name_short",
      "@type": "xsd:string"
    },
    "district": {
      "@id": "bright:district",
      "@type": "xsd:string"
    },
    "state": {
      "@id": "bright:state",
      "@type": "xsd:string"
    },
    "state_short": {
      "@id": "bright:state_short",
      "@type": "xsd:string"
    },
    "NotFoundResponse": "bright:NotFoundResponse",
    "RadarRecord": "bright:RadarRecord",
    "source": {
      "@id": "bright:source",
      "@type": "xsd:string"
    },
    "precipitation_5": {
      "@id": "bright:precipitation_5",
      "@type": "xsd:string"
    },
    "RadarResponse": "bright:RadarResponse",
    "radar": {
      "@id": "bright:radar",
      "@container": "@list"
    },
    "geometry": {
      "@id": "bright:geometry"
    },
    "bbox": {
      "@id": "bright:bbox",
      "@container": "@list"
    },
    "latlon_position": {
      "@id": "bright:latlon_position"
    },
    "Source": "bright:Source",
    "dwd_station_id": {
      "@id": "bright:dwd_station_id",
      "@type": "xsd:string"
    },
    "wmo_station_id": {
      "@id": "bright:wmo_station_id",
      "@type": "xsd:string"
    },
    "station_name": {
      "@id": "bright:station_name",
      "@type": "xsd:string"
    },
    "observation_type": {
      "@id": "bright:observation_type",
      "@type": "xsd:string"
    },
    "first_record": {
      "@id": "bright:first_record",
      "@type": "xsd:dateTime"
    },
    "last_record": {
      "@id": "bright:last_record",
      "@type": "xsd:dateTime"
    },
    "lat": {
      "@id": "bright:lat",
      "@type": "xsd:decimal"
    },
    "lon": {
      "@id": "bright:lon",
      "@type": "xsd:decimal"
    },
    "height": {
      "@id": "bright:height",
      "@type": "xsd:decimal"
    },
    "distance": {
      "@id": "bright:distance",
      "@type": "xsd:integer"
    },
    "SourcesResponse": "bright:SourcesResponse",
    "SynopRecord": "bright:SynopRecord",
    "sunshine_10": {
      "@id": "bright:sunshine_10",
      "@type": "xsd:integer"
    },
    "SynopResponse": "bright:SynopResponse",
    "ValidationError": "bright:ValidationError",
    "loc": {
      "@id": "bright:loc",
      "@container": "@list"
    },
    "msg": {
      "@id": "bright:msg",
      "@type": "xsd:string"
    },
    "type": {
      "@id": "bright:type",
      "@type": "xsd:string"
    },
    "input": {
      "@id": "bright:input"
    },
    "ctx": {
      "@id": "bright:ctx"
    },
    "WeatherRecord": "bright:WeatherRecord",
    "precipitation": {
      "@id": "bright:precipitation",
      "@type": "xsd:decimal"
    },
    "solar": {
      "@id": "bright:solar",
      "@type": "xsd:decimal"
    },
    "sunshine": {
      "@id": "bright:sunshine",
      "@type": "xsd:integer"
    },
    "wind_direction": {
      "@id": "bright:wind_direction",
      "@type": "xsd:integer"
    },
    "wind_speed": {
      "@id": "bright:wind_speed",
      "@type": "xsd:decimal"
    },
    "wind_gust_direction": {
      "@id": "bright:wind_gust_direction",
      "@type": "xsd:integer"
    },
    "wind_gust_speed": {
      "@id": "bright:wind_gust_speed",
      "@type": "xsd:decimal"
    },
    "precipitation_probability": {
      "@id": "bright:precipitation_probability",
      "@type": "xsd:integer"
    },
    "precipitation_probability_6h": {
      "@id": "bright:precipitation_probability_6h",
      "@type": "xsd:integer"
    },
    "WeatherResponse": "bright:WeatherResponse"
  },
  "@type": "schema:Dataset",
  "schema:name": "Bright Sky API JSON-LD context",
  "schema:description": "A JSON-LD @context for the objects Bright Sky'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-28) from openapi/bright-sky-openapi.json, openapi/full.json.",
  "dcterms:created": "2026-10-28",
  "dcterms:source": [
    "openapi/bright-sky-openapi.json",
    "openapi/full.json"
  ]
}