{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://ofn.gov.cz/dcat-ap-cz-otevřená-data/draft/série-datových-sad/schéma.json",
  "title": "Série datových sad",
  "description": "Série datových sad zastřešuje související datové sady a jiné série. Souvislost může být časová (rozpočet v letech), prostorová (seznamy ulic v obcích) či tématická (datové sady z jednoho systému).",
  "type": "object",
  "required": [
    "@context",
    "iri",
    "typ",
    "název",
    "popis",
    "poskytovatel",
    "téma",
    "periodicita_aktualizace",
    "klíčové_slovo",
    "prvek_rúian",
    "právní_předpis"
  ],
  "properties": {
    "@context": {
      "oneOf": [
        {
          "const": "https://ofn.gov.cz/dcat-ap-cz-otevřená-data/draft/série-datových-sad/kontext.jsonld"
        },
        {
          "type": "array",
          "contains": {
            "const": "https://ofn.gov.cz/dcat-ap-cz-otevřená-data/draft/série-datových-sad/kontext.jsonld"
          },
          "items": {
            "type": "string",
            "format": "iri"
          }
        }
      ]
    },
    "iri": {
      "type": "string",
      "format": "iri"
    },
    "typ": {
      "oneOf": [
        {
          "const": "Série datových sad"
        },
        {
          "type": "array",
          "contains": {
            "const": "Série datových sad"
          },
          "items": {
            "type": "string"
          }
        }
      ]
    },
    "název": {
      "title": "název",
      "description": "Název série datových sad",
      "type": "object",
      "additionalProperties": {
        "title": "Hodnota v jiném jazyce",
        "type": "string"
      },
      "properties": {
        "cs": {
          "title": "Hodnota v českém jazyce",
          "type": "string"
        },
        "en": {
          "title": "Hodnota v anglickém jazyce",
          "type": "string"
        }
      }
    },
    "popis": {
      "title": "popis",
      "description": "Volný text s popisem série datových sad",
      "type": "object",
      "additionalProperties": {
        "title": "Hodnota v jiném jazyce",
        "type": "string"
      },
      "properties": {
        "cs": {
          "title": "Hodnota v českém jazyce",
          "type": "string"
        },
        "en": {
          "title": "Hodnota v anglickém jazyce",
          "type": "string"
        }
      }
    },
    "poskytovatel": {
      "title": "poskytovatel",
      "description": "Poskytovatel série datových sad zajišťující její soudržnost.",
      "type": "string",
      "format": "iri",
      "examples": [
        "https://rpp-opendata.egon.gov.cz/odrpp/zdroj/orgán-veřejné-moci/66003008"
      ]
    },
    "je_součástí": {
      "title": "je součástí",
      "description": "Série datových sad, jíž je tato série datových sad součástí.",
      "type": "array",
      "items": {
        "type": "string",
        "format": "iri"
      }
    },
    "téma": {
      "title": "klasifikace dle EuroVoc",
      "description": "Kategorie či téma série datových sad dle EuroVoc.",
      "type": "array",
      "minItems": 1,
      "items": {
        "type": "string",
        "format": "iri",
        "pattern": "^http://publications\\.europa\\.eu/resource/authority/data-theme/.*$",
        "examples": [
          "http://publications.europa.eu/resource/authority/data-theme/TRAN"
        ]
      }
    },
    "periodicita_aktualizace": {
      "title": "periodicita aktualizace",
      "description": "Frekvence, se kterou je série datových sad aktualizována.",
      "type": "string",
      "format": "iri",
      "pattern": "^http://publications\\.europa\\.eu/resource/authority/frequency/.*$",
      "examples": [
        "http://publications.europa.eu/resource/authority/frequency/MONTHLY"
      ]
    },
    "klíčové_slovo": {
      "title": "klíčové slovo",
      "description": "Klíčové slovo nebo značka popisující zdroj.",
      "type": "object",
      "additionalProperties": {
        "title": "Hodnota v jiném jazyce",
        "type": "array",
        "items": {
          "type": "string"
        }
      },
      "properties": {
        "cs": {
          "title": "Hodnota v českém jazyce",
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "en": {
          "title": "Hodnota v anglickém jazyce",
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      }
    },
    "geografické_území": {
      "title": "související geografické území - prvek z RÚIAN",
      "description": "Území pokryté datovou sadou, vyjádřené pomocí prvku RÚIAN",
      "type": "array",
      "items": {
        "type": "string",
        "format": "iri",
        "examples": [
          "http://publications.europa.eu/resource/authority/continent/EUROPE",
          "https://sws.geonames.org/6290257/"
        ]
      }
    },
    "prvek_rúian": {
      "title": "související geografické území - prvek z RÚIAN",
      "description": "Území pokryté datovou sadou, vyjádřené pomocí prvku RÚIAN",
      "type": "array",
      "minItems": 1,
      "items": {
        "type": "string",
        "format": "iri",
        "pattern": "^https://linked.cuzk.cz/resource/ruian/.*$",
        "examples": [
          "https://linked.cuzk.cz/resource/ruian/stat/1",
          "https://linked.cuzk.cz/resource/ruian/vusc/108",
          "https://linked.cuzk.cz/resource/ruian/obec/502235"
        ]
      }
    },
    "časové_pokrytí": {
      "title": "časové pokrytí",
      "description": "Časový úsek pokrytý sérií datových sad",
      "type": "array",
      "items": {
        "title": "Časový interval",
        "description": "Časový interval definovaný svým začátkem a koncem.",
        "type": "object",
        "required": [
          "iri",
          "typ"
        ],
        "properties": {
          "iri": {
            "type": "string",
            "format": "iri"
          },
          "typ": {
            "oneOf": [
              {
                "const": "Časový interval"
              },
              {
                "type": "array",
                "contains": {
                  "const": "Časový interval"
                },
                "items": {
                  "type": "string"
                }
              }
            ]
          },
          "začátek": {
            "title": "datum začátku",
            "description": "Začátek doby trvání.",
            "type": "string",
            "format": "date"
          },
          "konec": {
            "title": "datum konce",
            "description": "Konec doby trvání.",
            "type": "string",
            "format": "date"
          }
        }
      }
    },
    "kontaktní_bod": {
      "title": "kontaktní bod",
      "description": "Kontaktní informace, které mohou být využity pro zasílání připomínek k sérii datových sad.",
      "anyOf": [
        {
          "title": "Organizace",
          "description": "Organizace, právnická osoba nebo její část.",
          "type": "object",
          "required": [
            "typ"
          ],
          "properties": {
            "iri": {
              "type": "string",
              "format": "iri"
            },
            "typ": {
              "oneOf": [
                {
                  "const": "Organizace"
                },
                {
                  "type": "array",
                  "contains": {
                    "const": "Organizace"
                  },
                  "items": {
                    "type": "string"
                  }
                }
              ]
            },
            "jméno": {
              "title": "jméno",
              "description": "Jméno objektu jako formátovaný text.",
              "type": "object",
              "additionalProperties": {
                "title": "Hodnota v jiném jazyce",
                "type": "string"
              },
              "properties": {
                "cs": {
                  "title": "Hodnota v českém jazyce",
                  "type": "string"
                },
                "en": {
                  "title": "Hodnota v anglickém jazyce",
                  "type": "string"
                }
              }
            },
            "e-mail": {
              "title": "email",
              "description": "E-mailová adresa pro komunikaci.",
              "type": "string",
              "format": "iri",
              "pattern": "^mailto:[^@]+@[^@]+",
              "examples": [
                "mailto:jan.novak@organizace.cz"
              ]
            }
          }
        },
        {
          "title": "Jednotlivec",
          "description": "Jednotlivá fyzická osoba.",
          "type": "object",
          "required": [
            "typ"
          ],
          "properties": {
            "iri": {
              "type": "string",
              "format": "iri"
            },
            "typ": {
              "oneOf": [
                {
                  "const": "Jednotlivec"
                },
                {
                  "type": "array",
                  "contains": {
                    "const": "Jednotlivec"
                  },
                  "items": {
                    "type": "string"
                  }
                }
              ]
            },
            "jméno": {
              "title": "jméno",
              "description": "Jméno objektu jako formátovaný text.",
              "type": "object",
              "additionalProperties": {
                "title": "Hodnota v jiném jazyce",
                "type": "string"
              },
              "properties": {
                "cs": {
                  "title": "Hodnota v českém jazyce",
                  "type": "string"
                },
                "en": {
                  "title": "Hodnota v anglickém jazyce",
                  "type": "string"
                }
              }
            },
            "e-mail": {
              "title": "email",
              "description": "E-mailová adresa pro komunikaci.",
              "type": "string",
              "format": "iri",
              "pattern": "^mailto:[^@]+@[^@]+",
              "examples": [
                "mailto:jan.novak@organizace.cz"
              ]
            }
          }
        }
      ]
    },
    "dokumentace": {
      "title": "dokumentace",
      "description": "Stránka či dokument o sérii datových sad",
      "type": "string",
      "format": "iri",
      "pattern": "^https://.*$",
      "examples": [
        "https://www.mdcr.cz/Dokumenty/Verejna-doprava/Jizdni-rady,-kalendare-pro-jizdni-rady,-metodi-(1)/Jizdni-rady-verejne-dopravy"
      ]
    },
    "koncept_euroVoc": {
      "title": "klasifikace dle EuroVoc",
      "description": "Kategorie či téma série datových sad dle EuroVoc.",
      "type": "array",
      "items": {
        "type": "string",
        "format": "iri",
        "pattern": "^http://eurovoc\\.europa\\.eu/.*$",
        "examples": [
          "http://eurovoc.europa.eu/1001"
        ]
      }
    },
    "právní_předpis": {
      "title": "příslušný právní předpis",
      "description": "Indikace příslušného právního předpisu předepisujícího vznik série datových sad.",
      "type": "array",
      "minItems": 1,
      "contains": {
        "const": "http://data.europa.eu/eli/dir/2019/1024/oj"
      },
      "items": {
        "type": "string",
        "format": "iri",
        "pattern": "^http",
        "examples": [
          "http://data.europa.eu/eli/dir/2019/1024/oj",
          "https://www.e-sbirka.cz/eli/cz/sb/1999/106/2024-01-01/dokument/norma/cast_1/par_3a/odst_6",
          "https://www.e-sbirka.cz/eli/cz/sb/1999/106/2024-01-01/dokument/norma/cast_1/par_5a/odst_1",
          "http://data.europa.eu/eli/reg_impl/2023/138/oj"
        ]
      }
    },
    "vstupní_stránka": {
      "title": "vstupní stránka",
      "description": "Webová stránka, na kterou lze pro získání přístupu ke sérii datových sad přistoupit webovým prohlížečem.",
      "type": "string",
      "format": "iri",
      "pattern": "^https://.*$",
      "examples": [
        "https://www.mdcr.cz/Dokumenty/Verejna-doprava/Jizdni-rady,-kalendare-pro-jizdni-rady,-metodi-(1)/Jizdni-rady-verejne-dopravy"
      ]
    }
  }
}