Správa dat Vzdělávání Aktuality Datová kvalita Národní katalog otevřených dat Další

Nejčastější obsahové chyby

Žádné nebo nejednoznačné identifikátory

Častým problémem v datových sadách jsou odkazy na nedostatečně identifikované entity. Příkladem může být datová sada příjemců dotací, kde příjemce dotace je identifikován pouze názvem, nikoliv pomocí IČO, nebo identifikace adresy několika textovými poli místo IRI adresního místa.

Řešení

Řešením je si nejprve rozmyslet, na které entity (firmy, školy, adresy, …) se v datové sadě odkazuji, nejlépe formou konceptuálního modelu dat (ER model či UML diagram tříd), který je následně součástí dokumentace datové sady. Druhým krokem je zjistit, jak se tyto entity obvykle jednoznačně identifikují, a tyto identifikátory v datové sadě použít.

Nejlepším řešením je použít globální jednoznačné identifikátory ve formě IRI tam, kde je primární správce dat o tomto typu entit již zadefinoval. Příklady:

Tam, kde správce ještě nedefinoval IRI pro globální jednoznačnou identifikaci jeho entit, je třeba o tuto definici správce požádat a do té doby prozatimně použít lokální identifikátor, např. 00007064 pro IČO, který je pro daný typ běžně používaný.

Výhody identifikace entit pomocí IRI

Nesmyslné hodnoty pro označení nekonečna

Obzvláště v případě datumů se můžeme setkat s tím, že je třeba zaznamenat, že nějaká hodnota ještě není známa.

Příkladem může být platnost záznamu, která se obvykle uvádí jako dvojice datumů - od a do, tedy třeba od 2019-01-01 do 2021-02-21. Problém ale nastane, pokud je třeba zaznamenat, že nějaká položka stále platí, tedy datum platnosti do ještě není známo. V tu chvíli se začínají na místě datumu do objevovat různé pokusy o zaznamenání nekonečné hodnoty. Stejně to mimochodem platí pro záporné nekonečno, tedy datum tak dávné, že je každému jasné, že to znamená „odjakživa“. Příklady z praxe:

Všechny tyto hodnoty jsou samozřejmě špatně, a znesnadňují práci s takovýmito daty.

Řešení

Řešením je opravit návrh systému, který neumožňuje říci, že datum ještě není známo a nenutit uživatele si vymýšlet „nekonečné“ hodnoty.