Rozdíly
Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.
Obě strany předchozí revize Předchozí verze Následující verze | Předchozí verze | ||
standardy:technicke-standardy-pro-vytvareni-datovych-schemat-na-stupni-3 [2017/10/09 12:43] – [Metadata Vocabulary for Tabular Data (CSV on the Web, CSVW)] Jakub Klímek | standardy:technicke-standardy-pro-vytvareni-datovych-schemat-na-stupni-3 [2021/11/23 06:43] (aktuální) – [Technické standardy vytváření datových schémat pro datové sady na stupni otevřenosti 3] Jakub Klímek | ||
---|---|---|---|
Řádek 5: | Řádek 5: | ||
Jazyk závisí na datovém formátu, který byl zvolen pro vyjádření distribuce. | Jazyk závisí na datovém formátu, který byl zvolen pro vyjádření distribuce. | ||
- | * V případě formátu CSV je nutno schéma vyjádřit | + | * V případě formátu CSV je nutno schéma vyjádřit |
- | * V případě formátu XML je nutno schéma vyjádřit v jazyku XML Schema (http:// | + | * V případě formátu XML je nutno schéma vyjádřit v jazyku XML Schema (https:// |
- | * V případě formátu JSON je nutno schéma vyjádřit v jazyku JSON Schema (http:// | + | * V případě formátu JSON je nutno schéma vyjádřit v jazyku JSON Schema (https:// |
Při návrhu datových schémat dodržujte následující pravidla: | Při návrhu datových schémat dodržujte následující pravidla: | ||
- | * Pro primitivní datové typy ([[datovy-typ: | + | * Pro primitivní datové typy používejte datové typy jazyka XML Schema (i v případě CSV a JSON souborů). |
* Schéma každé distribuce musí být volně dostupné ke stažení v síti WWW. | * Schéma každé distribuce musí být volně dostupné ke stažení v síti WWW. | ||
* Distribuce se stejnou strukturou mají společné schéma. | * Distribuce se stejnou strukturou mají společné schéma. | ||
- | * Pokud je schéma částečně pokryto, tj. některé položky odpovídají významem, některým z již [[vzor: | ||
===== Definice vlastního schématu pro data v CSV ===== | ===== Definice vlastního schématu pro data v CSV ===== | ||
Při práci s formátem CSV se nejprve seznamte s [[špatná-praxe: | Při práci s formátem CSV se nejprve seznamte s [[špatná-praxe: | ||
+ | |||
+ | <WRAP center round tip 60%> | ||
+ | Pro řadu datových sad formát CSV není vhodný a je lepší je publikovat v některém ze strukturovanějších formátů, viz [[https:// | ||
+ | </ | ||
Prvním krokem k tvorbě schematu pro CSV data je určení toho, jak se budou jmenovat jednotlivé sloupce CSV souboru, jaké budou mít datové typy a jaký budou mít význam. | Prvním krokem k tvorbě schematu pro CSV data je určení toho, jak se budou jmenovat jednotlivé sloupce CSV souboru, jaké budou mít datové typy a jaký budou mít význam. | ||
Pro dosažení maximální míry interoperability postupujte v následujících krocích: | Pro dosažení maximální míry interoperability postupujte v následujících krocích: | ||
- | - Podívejte se na [[vzor: | + | - Stanovte si jmenné konvence |
- | - Pokud se některá datová sada shoduje s daty, které chcete publikovat, použijte její předpřipravené schéma. Existující schéma nemusíte daty pokrývat celé, všechny položky jsou volitelné. | + | |
- | - Pokud se žádná existující datová sada neshoduje s daty, které chcete publikovat, vytvořte nové schéma. | + | |
- | - Pokud některá datová sada pokrývá data která chcete publikovat pouze částečně, | + | |
- | - Dosud nepokryté sloupce, tj. ty, jejichž význam neodpovídá žádnému sloupci v žádné existující datové sadě ze vzorových publikačních plánů, pojmenujte dle stejných jmenných konvencí. Tj. | + | |
- název v češtině | - název v češtině | ||
- všechna písmena malá (lower case) | - všechna písmena malá (lower case) | ||
- | - žádná diakritika | ||
- víceslovné názvy spojené podtržítkem '' | - víceslovné názvy spojené podtržítkem '' | ||
- | - hierarchickou vazbu reprezentujte také podtržítkem '' | + | - hierarchickou vazbu reprezentujte také podtržítkem '' |
- | - Pro nově definované | + | - Pro sloupce použijte vhodný datový typ jazyka XML Schema. |
+ | - Význam sloupců popište slovně. | ||
- | Jako jazyk pro definici schématu pro data v CSV můžete | + | Jako jazyk pro definici schématu pro data v CSV použijte standard [[https:// |
- | Oba tyto jazyky | + | Standard |
- | Doporučujeme však použít standard W3C. | + | |
==== Metadata Vocabulary for Tabular Data (CSV on the Web, CSVW) ==== | ==== Metadata Vocabulary for Tabular Data (CSV on the Web, CSVW) ==== | ||
Řádek 77: | Řádek 75: | ||
* Položka '' | * Položka '' | ||
* Položka '' | * Položka '' | ||
- | * Položka '' | + | * Položka '' |
* Položka '' | * Položka '' | ||
* Položka '' | * Položka '' | ||
Řádek 83: | Řádek 81: | ||
* Pro datové typy v položce '' | * Pro datové typy v položce '' | ||
- | Vystavený JSON deskriptor dle CSVW by pak měl být poskytován s HTTP hlavičkou '' | + | Vystavený JSON deskriptor dle CSVW by pak měl být poskytován s HTTP hlavičkou '' |
+ | |||
+ | Toto je jen minimalistický příklad toho, co lze popsat pomocí CSVW. Pro využití všech možností je třeba postupovat dle [[https:// | ||
=== Sdílené schéma pro více CSV souborů === | === Sdílené schéma pro více CSV souborů === | ||
Řádek 118: | Řádek 118: | ||
=== Validace CSVW === | === Validace CSVW === | ||
- | CSV popsané pomocí CSVW lze validovat | + | CSV popsané pomocí CSVW lze nejjednodušeji |
+ | Ten má jednak sdílené webové rozhraní, a také lze spustit | ||
- | ==== JSON Table Schema ==== | + | CSV popsané pomocí CSVW lze validovat například pomocí nástroje [[https:// |
+ | Tedy '' | ||
- | ===== Definice vlastního schématu pro data v XML ===== | + | CSV popsané pomocí CSVW lze validovat například pomocí knihovny [[https:// |
+ | <WRAP center round important 60%> | ||
+ | Webové rozhraní [[https:// | ||
+ | </ | ||
+ | |||
+ | |||
+ | ===== Definice vlastního schématu pro data v XML ===== | ||
+ | Pro popis XML schématu se používá jazyk XML Schema. | ||
+ | |||
+ | Prvním krokem k tvorbě schematu pro XML data je určení toho, jak se budou jmenovat a jak budou zanořeny jednotlivé elementy v XML souboru, jaké budou mít datové typy a jaký budou mít význam. | ||
+ | Pro dosažení maximální míry interoperability postupujte v následujících krocích: | ||
+ | - Podívejte se na [[vzor: | ||
+ | - Pokud se některá datová sada shoduje s daty, které chcete publikovat, použijte její předpřipravené schéma. Existující schéma nemusíte daty pokrývat celé, všechny položky jsou volitelné. | ||
+ | - Pokud se žádná existující datová sada neshoduje s daty, které chcete publikovat, vytvořte nové schéma. | ||
+ | - Pokud některá datová sada pokrývá data která chcete publikovat pouze částečně, | ||
+ | - Dosud nepokryté elementy, tj. ty, jejichž význam neodpovídá žádnému datovému typu v žádné existující datové sadě ze vzorových publikačních plánů, pojmenujte dle stejných jmenných konvencí. Tj. | ||
+ | - vytvořte si vlastní XML namespace | ||
+ | - názvy elementů či atributů v češtině | ||
+ | - všechna písmena malá (lower case) | ||
+ | - žádná diakritika | ||
+ | - víceslovné názvy spojené podtržítkem '' | ||
+ | - hierarchickou vazbu reprezentujte vnořeným XML elementem | ||
+ | - Pro nově definované elementy použijte vhodný datový typ jazyka XML Schema. |