% arara: pdflatex
% arara: pdflatex
% arara: pdflatex

% options:
% thesis=B bachelor's thesis
% thesis=M master's thesis
% czech thesis in Czech language
% slovak thesis in Slovak language
% english thesis in English language
% hidelinks remove colour boxes around hyperlinks

\documentclass[thesis=B,czech]{FITthesis}[2019/12/23]

\usepackage[utf8]{inputenc} % LaTeX source encoded as UTF-8

% \usepackage{amsmath} %advanced maths
% \usepackage{amssymb} %additional math symbols

\usepackage{dirtree} %directory tree visualisation

% % list of acronyms
% \usepackage[acronym,nonumberlist,toc,numberedsection=autolabel]{glossaries}
% \iflanguage{czech}{\renewcommand*{\acronymname}{Seznam pou{\v z}it{\' y}ch zkratek}}{}
% \makeglossaries

\newcommand{\tg}{\mathop{\mathrm{tg}}} %cesky tangens
\newcommand{\cotg}{\mathop{\mathrm{cotg}}} %cesky cotangens

% % % % % % % % % % % % % % % % % % % % % % % % % % % % % % 
% ODTUD DAL VSE ZMENTE
% % % % % % % % % % % % % % % % % % % % % % % % % % % % % % 

\usepackage[hyphens]{url}
\usepackage[hidelinks]{hyperref}
\hypersetup{breaklinks=true}
\urlstyle{same}
\usepackage{cite}





\department{Katedra softwarového inženýrství
}
\title{Využití ontologické analýzy pro zajištění sémantické interoperability marketingových dat}
\authorGN{Jana} %(křestní) jméno (jména) autora
\authorFN{Martínková} %příjmení autora
\authorWithDegrees{Jana Martínková} %jméno autora včetně současných akademických titulů
\author{Jana Martínková} %jméno autora bez akademických titulů
\supervisor{doc. Ing. Robert Pergl, Ph.D.}
\acknowledgements{Ráda bych poděkovala  doc. Ing. Robert Perglovi, Ph.D. za cenné rady, věcné připomínky a vstřícnost při konzultacích a vypracování bakalářské práce.}
\abstractCS{
Tato bakalářská práce se zabývá využitím ontologické analýzy k zajištění významové propojitelnosti dat. 

V řešení byl využit ontologický jazyk konceptuálního modelování \mbox{OntoUML} a veškeré modely byly tvořeny v platformě OpenPonk. Výsledkem práce jsou konceptuální ontologické modely vybraných domén, které jsou propojené s~urči\-tými datovými sadami. Vytvoření konceptualizace domény předchází ontologická analýza, která spočívá v přesném vymezení pojmů domény. Tato činnost vyžaduje nejčastěji součinnost s doménovými experty. Provázání ontologického modelu s atributy datových sad bylo stanoveno na obecnější a přesnější úrovni, pro zajištění co nejlepší souvislosti.

Celkem bylo zpracováno 8 datových sad, ze kterých vzniklo 7 ontologických modelů. Výsledky práce jsou určené pro projekt vyvíjející datovou platformu pro efektivní zpracování dat. V závěru práce je zdůrazněna dosažená sémantická interoperabilita mezi heterogenními datovými sadami.

}
\abstractEN{
This bachelor thesis deals with the use of ontological analysis to ensure semantic interoperability of data.

The ontological language of conceptual modeling OntoUML was used in the solution and all models were created in the OpenPonk platform. The result of the work are conceptual ontological models of selected domains, which are connected with certain data sets. The creation of the conceptualization of the domain is preceded by ontological analysis, which consists in the precise definition of the terms domain. This activity most often requires the cooperation with domain experts. The linking of the ontological model with the attributes of the datasets was determined at a more general and precise level, to ensure the best possible coherence.

A total of 8 data sets were processed, from which 7 ontological models were created. The results of the work are intended for a project developing a data platform for efficient data processing. At the end of the work, the achieved semantic interoperability between heterogeneous data sets is emphasized.}
\placeForDeclarationOfAuthenticity{V~Praze}
\declarationOfAuthenticityOption{5} %volba Prohlášení (číslo 1-6)
\keywordsCS{konceptuální model, ontologická analýza, projekt Nest BDA, sémantická interoperabilita, FAIR data, OntoUML, UFO}
\keywordsEN{konceptual model, ontological analysis, project Nest BDA, semantic interoperability, FAIR data, OntoUML, UFO}

\begin{document}

% \newacronym{CVUT}{{\v C}VUT}{{\v C}esk{\' e} vysok{\' e} u{\v c}en{\' i} technick{\' e} v Praze}
% \newacronym{FIT}{FIT}{Fakulta informa{\v c}n{\' i}ch technologi{\' i}}

\begin{introduction}
Vyhledávání informací a relevantních dat na internetu se stalo téměř samozřejmostí pro každého z nás. Internet obsahuje velké množství užitečných informací, které lze použít k dalšímu výzkumu. Jejich použití je ale leckdy velmi obtížné. Využitím moderních technologií je možné data strojově zpracovávat, ale příprava relevantních dat do strojově zpracovatelné podoby je obvykle časově velmi náročná. Je třeba data získat, ověřit jejich původ, splnit licenční podmínky užití, převést je do jednotného formátu, a navíc zajistit jejich interoperabilitu. V případě, že by i tato příprava dat mohla probíhat strojově, pak by se veškeré vyhledávání i užití značně urychlilo. Tato práce je zaměřena na zajištění sémantické interoperability dat.

Výsledek této práce je určen pro projekt Nest BDA, který má za cíl vytvořit datovou platformu umožňující lepší přístupnost k datům, jejich koncentraci na jednom místě a umožnění interoperability bez nutné lidské činnosti. V~projektu Nest BDA se jedná primárně o data z odvětví marketingu, médií a komunikace. Toto téma jsem si zvolila, protože mě velmi zajímá ontologická analýza a chtěla jsem přispět k urychlení zpracování a využití dat.

V této práci se zabývám ontologickou analýzou klíčových domén a sémanti\-ckým propojením relevantních datových sad, které budou použity v Nest BDA. Na vybraných doménách a s nimi souvisejících datových sadách bude popsána ontologická analýza domény, následné propojení se souvisejícími sadami a zvýrazněna dosažená sémantická interoperabilita dat.

\end{introduction}

\chapter{Cíl práce}
Hlavním cílem bakalářské práce je ontologická analýza definovaných klíčových domén a následné propojení s dostupnými souvisejícími datovými sadami, za účelem zajištění jejich sémantické interoperability v rámci projektu Nest Big Data Arena, který realizuje společnost Remmark, a.s.

Cílem rešeršní části práce je vytyčení cílů projektu Nest Big Data Arena, popis FAIR principů o efektivním publikování dat, definice sémantické interoperability a ontologického konceptuálního modelování. Popis ontologie UFO, konceptuálního jazyka OntoUML a nástroje OpenPonk. 

Cílem praktické části práce je vytvoření ontologických konceptuálních modelů vybraných domén a jejich následné propojení s datovými sadami za pomoci vydefinovaných pravidel pro mapování. Na propojených modelech zdůraznit přínos spočívající v jejich sémantické interoperabilitě a popsat postup zpracování datových sad v projektu Nest BDA.

\chapter{Teoretická část}
V teoretické části této práce je charakterizován cíl efektivního publikování dat projektu Nest Big Data Arena a jakým způsobem jej bude na úrovni konceptualizace dostupných dat dosaženo. Je popsána iniciativa FAIR a její principy, které jsou v postupu využívány. Dále je vysvětlena důležitost ontologie v informačních systémech, hlavně v odvětví konceptuálního modelování. Je přiblížena ontologie UFO a modelovací jazyk OntoUML, který je na ní založen. Nakonec je představen nástroj OpenPonk, ve kterém se tvoří konceptuální modely potřebné pro tento projekt. 

\newpage
%---------------------------------------------------------------
\section{Projekt Nest BDA}
Realizátorem projektu Nest Big Data Arena, je česká společnost Remmark, a.s., která se specializuje na informační kampaně hlavně v oblasti veřejného sektoru. Projekt je podporován Evropskými strukturálními a investičními fondy prostřednictvím Operačního programu Praha - pól růstu ČR v rámci 3.~výzvy Pražského voucheru na inovační projekty. \cite{Remmark}

Cílem tohoto projektu je vytvoření datové platformy, která bude propojovat informace, data a výzkumy z oblasti marketingu, medií a komunikace. Největším přínosem této platformy je koncentrace dat na jednom místě, zviditelnění propojitelnosti dostupných informací a zvýšení uživatelské dosažitelnosti dat. V minulosti byly roztroušené veřejně dostupné nespolupracující informace a data uchovávána v různých úložištích a pro uživatele tak nebyla dostatečně přístupná. \cite{Remmark_prezentace}

U dostupných datových sad v platformě budou uvedena relevantní odvětví, pro která jsou informace v sadě podstatná a metodika popisující data a práci s nimi. Platforma bude poskytovat několik funkčních částí, z nichž první bude přehled všech datových sad. Další úsek bude umožňovat jejich vyhledávání a filtrování pomocí formátu, původu, klíčových slov a výrazů, které jsou obsaženy v popisu sady. Poslední částí bude možnost zadání konkrétních dotazů, které se nad obsahem datové platformy zodpoví. \cite{Remmark_voucher}

Cílovou skupinou platformy jsou uživatelé, kteří plánují marketingové aktivity. Může se jednat o veřejnou správu, média nebo vývojářské skupiny, které chtějí získat data jak pro potřeby dalšího vývoje, tak ke spolupráci s různými aplikacemi. Uživatelé budou na různé technické úrovni, primárně rozděleni na 4 typy \cite{Remmark_uzivatele}:

\begin{enumerate}
    \item Běžný uživatel
    
    Základní uživatel, datový laik, který využívá platformu bez odborných znalostí informačních technologií. Tento typ uživatele ví, jaké informace chce vyhledat a s pomocí jakých klíčových slov. Jedná se například o~novináře, zástupce médií, studenty, pedagogy nebo zaměstnance veřejné správy.
    
    \item Běžný analytik
    
    Týká se analytiků v mediální agentuře, kteří mají dobré odborné znalosti v oblasti informačních technologií a umí pracovat s programy na zpracování mediálních a marketingových dat. Tento typ uživatelů data využívá v rámci své pracovní náplně. Platformu budou využívat k~tvorbě podkladů pro mediální strategie, prezentací, analýzy či psaní analytických článků. Mezi tento typ uživatelů se řadí zkušení analytičtí novináři, odborní pedagogové, edukovaní studenti, nákupčí a plánovači v~mediálních a reklamních agenturách nebo marketingových odděleních.
    
    \item Pokročilý analytik
    
    Jedná se o zkušenější analytiky s odbornější znalostí informačních technologií, kteří dokáží pracovat i s primárními daty. Představitelé tohoto typu uživatele budou platformu využívat k tvorbě marketingových strategií, prezentací a analýz. Jedná se například o senior plánovače a tvůrce strategií, senior zaměstnance marketingových společností, datové novináře, junior zaměstnance výzkumných agentur nebo analytiky v médiích.
    
    \item Profesionál
    
    Profesionál je typ uživatele kvalifikovaného v oboru informačních technologií, který spravuje či vyvíjí softwarové systémy. Na základě znalosti veřejných API platformy ji může využít pro vývoj svého vlastního nástroje, nebo rozšíření již existujícího, pro potřebu managementu či marketingového oddělení.
\end{enumerate}

Při zajištění propojitelnosti a opětovné použitelnosti dat se v projektu vycházelo z principů iniciativy FAIR, která se zabývá efektivním publikováním dat. 

%----------------------------------------------------------------------------
\section{FAIR}

FAIR je iniciativa, která vznikla v návaznosti na konferenci Jointly designing a~Data FAIRPORT, kterou zorganizoval v roce 2014 správce nizozemské datové struktury, institut Dutch Techcentre for Life Sciences (DTL), ve spolupráci s Netherlands eScience Center a the Lorentz Center. Výsledkem konference, během které byly projednávány pravidla pro udržitelné a efektivní publikování dat, byla dohoda o vytvoření principů zajišťujících nalezitelnost (findability), dostupnost (accessibility), provázanost (interoperability) a opětovnou použitelnost (reusability) dat. Z těchto vytyčených cílů tak vznikl i název iniciativy FAIR. \cite{fair_conference}

Principy nesuplují způsob implementace ani neurčují technologie, které by se k dosažení cíle měli využívat. Jedná se o návody či postupy, jejichž aplikováním je možné dosáhnout znovupoužitelnosti a dosažitelnosti dat, jak pro člověka tak pro stroje, neboli datové agenty. 

Základní principy, které se dále dělí na jednotlivé požadavky, je možné využít v potřebné míře a složení. Ani citlivá data tak nejsou překážkou pro úspěšnou FAIRifikaci dat (viz \ref{pristupnost}). \cite{FAIR_guiding_principles}

Pojem  \uv{datový objekt}, který je ve FAIR principech využíván, je zobecněný pojem \uv{digitální objekt}, jenž dle definice \cite{datovy_objekt} sestává z dat, metadat a globálního identifikátoru. \uv{FAIR datový objekt} je potom datový objekt, který se řídí principy FAIR. 

Spojení \uv{strojově čitelný datový objekt} je v tomto případě definován jako datový objekt, který poskytuje datovému agentovi dostatek informací, byť se s ním agent nikdy nesetkal, aby dokázal \cite{FAIR_guiding_principles}:

\begin{enumerate}
    \item Získat obecnou identifikaci objektu, jak strukturální, tak sémantickou.
    \item Vyhodnotit, zda se jedná o data obsahující informace, které jsou v kontextu se zadaným vyhledáváním a jsou pro problematiku relevantní.
    \item Určit, zda je licenčně možné použít tento datový objekt, případně jej používat s definovaným omezením.
    \item Učinit vhodné kroky, které by provedl člověk.
\end{enumerate}

Základními principy jsou vyhledatenost, přístupnost, interoperabilita a~znovupoužitelnost. Tyto principy se dále dělí na dílčí požadavky. \cite{fair_principy}

\subsection{Vyhledatelnost}

První FAIR princip říká, že datový objekt by měl být jednoduše vyhledatelný pro člověka i pro datového agenta, protože strojově čitelné objekty jsou nezbytné pro automatické objevení dat. 

\begin{enumerate}
    \item (Meta)data mají přiřazeny globálně unikátní trvalé identifikátory
    
    Jedná se o nejdůležitější požadavek všech FAIR principů, protože v~ostat\-ních bodech se využívá faktu existence takovéhoto identifikátoru. 
    
    Globálně unikátní a trvalé identifikátory se přiřazují každému datovém objektu. Proto je možné propojit jednotlivé prvky objektu a zároveň zamezit nejednoznačnosti. Díky nim mohou stroje smysluplně interpretovat data. Navíc přispívají ke správné citaci při jejich opětovném použití. \cite{fair_principy}
    
    Globálně unikátní identifikátor, vytvořený autorizovaným generátorem, se skládá ze dvou částí. První identifikuje lokální autorizovaný generátor či platformu, kde se dataset vyskytuje. Druhá část je lokálně unikátní řetězec, který identifikuje přímo datový objekt. \cite{datovy_objekt} 

    Dlouhodobé udržování těchto identifikátorů je finančně i časově náročné, takže mají tendenci se v průběhu času zneplatnit. Tento požadavek FAIR principu se snaží o jejich trvalost, alespoň v nějaké míře.
    

    \item Datový objekt s bohatě popsanými metadaty \label{metadata} 
    
    Podle myšlenky FAIR principů by autor dat neměl předpokládat, že ví, kdo a za jakým účelem bude chtít data použít. Metadata by tak měla být popisná rozsáhlá včetně informací o kontextu, stavu dat a hlavně by měla obsahovat identifikátory dat, jež popisují. Bohatě popsaná metadata by měla poskytnout dostatek informaci pro datové agenty, kteří tak budou moci převzít provedení rutinních a zdlouhavých třídění a prioritizování relevantních úkolů, což nyní musí vykonávat lidé. 

\item Metadata jasně a explicitně zahrnují identifikátor dat, která popisují

    Protože jsou metadata a popisovaná data většinou oddělené soubory, pak pomyslné spojení mezi souborem metadat a datasetem by mělo být zprostředkováno uvedením globálního identifikátoru ve všech částech datového objektu.

\item (Meta)data jsou registrována nebo indexována v prohledávatelném zdroji

    Přítomnost identifikátorů a rozsáhlé popisy metadat nezaručí vyšší nalezitelnost datových zdrojů. Data by měla být publikována v dostupném zdroji, jinak mohou zůstat nevyužitá jen proto, že nikdo neví o jejich existenci. \cite{fair_principy}

\end{enumerate}

    V projektu Nest BDA je využíván unikátní řetězec, tzv. Identifier. Ten je explicitně uveden jak v datech, tak jejich metadatech i popisných modelech. Proto je na vyšších úrovních datové platformy umožněna spolupráce jednotlivých prvků datového objektu bez nutnosti jejich přímé fyzické provázanosti.

\subsection{Přístupnost}
\label{pristupnost}
Druhým FAIR principem je znalost přístupu k datům. Jakmile jsou data nalezena, pak je pro konzumenta, ať člověka nebo datového agenta, důležitá znalost technické dostupnosti. 

\begin{enumerate}
    \item (Meta)data lze získat se znalostí identifikátoru za pomoci standardizovaného komunikačního protokolu
    
    Tento požadavek principu uvádí, že FAIR data by měla být dostupná i~bez specializovaných nástrojů či komunikačních metod. Nutná je pouze znalost identifikátoru požadovaného datového objektu.
    
     \begin{enumerate}
         \item Protokol je bezplatný a univerzálně implementovatelný
         
         Aby se maximalizovalo znovupoužití dat, měl by použitý protokol být bezplatný, open source a také implementovatelný na většinu zařízení. Tento požadavek principu ovlivňuje výběr úložiště, kde se data budou publikovat.
         
         \item Protokol podporuje autentizaci a autorizaci
         
            FAIR data by měla mít jasně specifikované podmínky získání opráv\-nění (viz \ref{licence}). Nejlépe definované podmínky přístupnosti k datům dokáže datový agent buď sám splnit, nebo na ně dovede uživatele upozornit. Často se využívá nutnosti vytvoření uživatelského účtu pro dané úložiště, které umožní ověření např. vlastníka datového objektu a nastaví mu jeho specifická práva. Tento požadavek principu také ovlivňuje výběr úložiště, kde se budou data publikovat.
            
     \end{enumerate}
     
     \item Metadata by měla být dostupná i v případě, že data již nejsou dostupná
    
        Data s postupem času degradují a udržování jak jejich kvality, tak i dostupnosti je finančně náročné. Při vyhledávání pak neplatné odkazy směrující na neexistující, či neaktuální data zdržují. Udržování a~uchovávání metadat je jednodušší i finančně méně náročné, a proto by metadata měla přetrvávat i v případě, že data již dostupná nejsou. \cite{fair_principy}

\end{enumerate}

\subsection{Interoperabilita}\label{interoperabilita}

Aby byla data globálně využitelná bez nutnosti ručního zpracování je nutné zajistit jejich interoperabilitu jak technickou tak sémantickou. Interoperabilita spočívá v možnosti propojení systémů na různých rovinách komunikace tak, aby došlo k téměř automatickému spojení (viz \ref{interoperabilita}).
\begin{enumerate}
    \item (Meta)data využívají formální přístupný sdílený a univerzálně použitelný jazyk pro reprezentaci znalostí
    
    Datový objekt by měl být strojově čitelný, bez toho, aby stroj musel znát speciální algoritmy, překladače nebo mapování. Každý stroj by tak měl mít alespoň znalost formátů pro výměnu dat s jiným systémem. 

\item (Meta)data využívají slovníky, které jsou v souladu s FAIR principy

    Slovník používaný k popisu datového objektu je potřeba dokumentovat a také označit globálním unikátním trvalým identifikátorem, protože se jedná o součást datového objektu. Aby byl význam dat stále srozumitelný musí být slovník přístupný všem, kteří mají přístup k datovému objektu.

\item (Meta)data obsahují odkazy na jiná (meta)data

Mezi (meta)datovými zdroji je cílem vytvořit co nejvíce vazeb a  odkazů k~rozšíření kontextových znalostí o datech. Pro větší konkrétnost je možné v odkazu uvést, zda se jedná o doplňující informace potřebné k~přečtení datového objektu, o navazující datový objekt nebo o potřebný datový objekt k plnohodnotnému přečtení. Všechny datové objekty je nutné citovat pomocí globálních trvalých unikátních identifikátorů. \cite{fair_principy}
    
\end{enumerate}

V projektu Nest BDA je dosaženo interoperability na sémantické úrovni v rámci datové platformy díky využití strukturálních modelů. Ty zajišťují významové sjednocení pojmů a uspořádání domén, jenž jsou popisovány datovými sadami. Nejedná se o slovník ve formě seznamu vysvětlující pojmy z~datového objektu, ale o přesnější a jasnější popisy v podobě modelů (viz~\ref{konceptualni model}). S~jejich pomocí je splněn i požadavek FAIR principů o odkazech mezi datovými objekty. 

\subsection{Opětovné použití}\label{opetovne pouziti}
Poslední FAIR princip spočívá v opětovném použití dat, čehož se dosáhne správným popisem metadat a datasetů tak, aby mohly být kombinovány v~různém složení.

    \begin{enumerate}
        \item (Meta)data jsou popsána rozsáhlým množstvím relevantních atributů
        
        Připojením relevantních popisných štítku budou datové objekty snadněji objevitelné, čímž se zvýší i jejich znovupoužitelnost. Tento popis by měl jak člověku, tak stroji pomoci rozhodnout, zda jsou právě tyto data v prohledávaném kontextu užitečné. Může se jednat o výrobce, značku stroje či senzoru, který data vytvořil, účel vytváření dat, určité omezení, období generování či sběru dat atd. Autor by neměl, jak je zmíněno i v jednom z předchozích FAIR principů, předpovídat identitu a potřebu konzumenta dat. Z tohoto důvodu by měly být metadata co nejrozsáhlejší a poskytovat i informace, které se mohou zdát irelevantní.

    \begin{enumerate}
        \item (Meta)data jsou vydávána s jasnou licencí pro přístup a využívání dat \label{licence}
        
        Podmínky použití dat by měly být srozumitelné lidem i datovým agentům. Jejich nejednoznačnost může vést k omezení opětovného použití dat organizacemi, které se snaží licenční omezení dodržovat.

    \item (Meta)data jsou spojena s podrobným původem 
    
        Aby bylo možné data při jejich použití správně citovat je nutné jasně zveřejnit, ideálně ve strojově čitelné podobě, odkud data po\-chází a koho, příp. jak, citovat. Měl by být uveden i způsob postupu vytvoření dat.

    \item (Meta)data splňují standardy doménové komunity
    
        Pokud v komunitě dané domény existují určité standardy či postupy pro uložení, popsání a sdílení dat, pak je třeba je dodržovat. Pro konzumenty je snazší používat datové soubory s jimi známými typy, formáty a organizací dat. Měla by se také užívat společná slovní zásoba a doménově profesní výrazy. Pokud se autor rozhodne pro odchýlení od standardu, pak by taková informace měla být zmíněna v metadatech. \cite{fair_principy}
    \end{enumerate}
    \end{enumerate}

V projektu Nest BDA se využívá vyhledávání datových sad podle jejich klíčových slov a výrazů využitých v popisu dat, včetně přesného popisu původu dat. \cite{Remmark_voucher} V sémantických modelech se pro přesnost užívají i významově specifické výrazy dané domény, které byly konzultovány s oborovými specialisty. 

%------------------------------------------------------------------------------------------
\subsection{FAIRifikační proces}
FAIR data principy se mohou řídit datové objekty a podporující infrastruktury (např. vyhledávače). Požadavky na zjistitelnost a dostupnost lze aplikovat hlavně na metadata, naopak opětovná použitelnost a interoperabilita musí být zajištěna na úrovni dat. 

K dosáhnutí FAIR datových objektů lze postupovat tzv. FAIRifikačním procesem, jehož kroky jsou následující \cite{fair_proces}:
\begin{enumerate}
    \item Načtení dat – Získání dat, která se budou FAIRifikovat.
    \item Analýza načtených dat – V tomto kroku probíhá identifikace a analýza dat, přičemž záleží na formátu jejich uložení. Zjišťuje se struktura dat, jaké koncepty a relace jsou v datech znázorněny. 
    \item Sémantický model – Pro datovou sadu se definuje její sémantický model, který jednoznačně popisuje význam a vztah entit. 
    \item Propojení dat – Díky vytvoření sémantického modelu datové sady se entity stanou propojitelné. Každý objekt bude mít svůj jednoznačný identifikátor a skrze něj se lze dotazovat.
    \item Přiřazení licence – Datovému objektu se přiřadí licence omezující jeho použití. Tato informace je nutná i v případě, že se jedná o data s plně otevřeným přístupem.
    \item Definování metadat pro datovou sadu – Pro splnění většiny FAIR principů jsou klíčovou součástí důkladně popsaná metadata.
    \item Nasazení datového zdroje – Publikování či zpřístupnění FAIR datového objektu včetně licence a metadat, aby mohla být data vyhledatelná i v~případě, že vyžadují ověření a autorizaci.
\end{enumerate}

FAIRifikační proces popisuje náplň konání metadata týmu, pod vedení doc. Ing. Roberta Pergla, Ph.D.,  který v rámci projektu Nest BDA zajistil metodologický popis dat z dostupných datových sad, což představuje první a~druhý bod procesu. Kroky 3 a 4 spočívaly ve vytvoření sémantických modelů, které sloužily k pochopení významu a struktury informací a hlavně k propojení oddělených datasetů na základě smyslu pojmů v nich obsažených. 

%------------------------------------------------------------------------------------------
\section{Sémantická interoperabilita} \label{interoperabilita}
Interoperabilita informačních systémů spočívá v jejich propojení na několika různých úrovních. Jedná se například o spojení na komunikační rovině, které umožňuje vzájemný přístup k informacím. Mezi další úrovně patří syntaktická interoperabilita, díky níž je možné jednotně zpracovávat sdílená data, protože jsou uložena ve standardních syntaktických strukturách. \cite{I of the FAIR}

Interoperabilita na sémantické úrovni dle \cite{KTD semanticka interop} je schopnost kombinovat datové prvky různých modelů, schémat či databází na významové hladině. Umožňuje vyhledávat informace v heterogenních datových úložištích bez nutnosti přípravy kompatibilnosti dat na sémantické rovině. Využitím standardů a přesných definic pojmů lze předejít situacím, kdy jeden termín popisuje více objektů, nebo naopak objekt je v různých schématech pojmenován odlišně. 

Jedinou možností, jak validně sémantickou interoperabilitu zajistit, je vyu\-žití schémat, které popisují objekty obsažené v doméně datové sady. Principy FAIR tento popis označují jako \uv{slovník} (viz \ref{interoperabilita}). Ty ale, ve významu seznamu použitých pojmů, nejsou plně dostačující. K vytvoření schémat dat je nutné nejdříve pochopit vztahy mezi objekty v reálném světě. \cite{ontological patterns} Tyto sémantické popisy se nazývají konceptuální modely.

%------------------------------------------------------------------------------------------
\section{Konceptuální modelování} \label{konceptualni model}
Konceptuální modelování je činnost, jejíž cílem je získat formální popis relevantních fyzických a sociálních aspektů části reality. Jedná se o deskripci domény a aktivit, které se v ní odehrávají. S výsledným popisem by měli souhlasit všichni aktéři, kteří se v dané doméně vyskytují a rozumí ji. Popis zároveň slouží jako komunikační a edukační nástroj pro přiblížení domény a~vysvětlení aktivit v ní. \cite{Mylopoulos}

Výsledný model popisuje abstrakci relevantních prvků v doméně konceptualizace. \cite{Pergl habilitace} Ullmanův trojúhelník (viz obrázek \ref{fig:obrazek_6}) vyjadřuje vztah mezi konceptualizací, jazykem konceptualizace a abstrakcí domény, která je konceptualizována. Přerušovaná čára mezi částí reality a symboly modelovacího jazyka značí, že je vždy tento vztah zprostředkován konceptualizací. \cite{On ontology ontologies concept}

\begin{figure}\centering
 	\includegraphics[width=1\textwidth]{obrazky/6.png}
	\caption[Ullmanův trojúhelník]{Ullmanův trojúhelník. \cite{ulmann triangle} }\label{fig:obrazek_6}
\end{figure}

K vytvoření a uchování konceptuálního modelu je nezbytný jazyk, který bude konceptualizaci reprezentovat stručně, úplně a jednoznačně. Jazyk může být doménově specifický, jako například jazyk DEMO, nebo doménově nezávi\-slý, to je například jazyk OntoUML \cite{Pergl habilitace}, který byl využit v projektu Nest BDA.

Velmi často se stává, že ve vícero modelech je jeden reálný objekt nazván rozdílnými termíny, nebo naopak jedno označení je použité pro dva odlišné koncepty. Tato nejednoznačnost je původcem významové nekompatibilnosti a zdroje tak mezi sebou nejsou schopni sémantické interoperability. \cite{ontological foundations dor struc concep} Pro určitou soudržnost definovaných pojmů by základem konceptuálního modelování dle \cite{Towards ontological foudations UFO story} měla být ontologie (viz \ref{UFO}).

%------------------------------------------------------------------------------------------
\section{Ontologie} \label{ontologie}
Ontologie je filosofická disciplína, jejíž vznik pramení z Aristotelovy První filosofie. \cite{uvod_do_ontologie} V souboru spisů, také známém jako Metafyzika, se Aristoteles zabýval otázkou bytí a jsoucna. \cite{aristoteles}

Termínem Metafyzika jej pojmenoval Andronikos z Rhodu. Název původně vznikl z důvodu umístění souboru spisů v knižním katalogu za spisy fyzikální. Později dostal název podstatnější význam. Bytí je dle Aristotela skryté za jevy, které se projevují a je tedy pro vnímání člověka nepřístupné. Metafyzika v tomto významu označuje zkoumání oblasti, která se skrývá \uv{za fyzikou}, tedy za projevenými úkazy. \cite{sisyfos_metafyzika}
 
Aristotelova První filosofie zkoumá jsoucno, zabývá se otázkami a vyslovuje teorie o tom, co ve světě je skutečné, co je podstatou reality a jaká je vlastní povaha věcí. Popisuje skutečnost, že každá věc, vlastnost, nebo činnost nějak existuje a je tedy jsoucnem. Jsoucno, které není viditelné ani představitelné, je základní substancí bytí. \cite{aristoteles}

Ontologie, jakožto filosofické odvětví, řeší mimo jiné otázku původu bytí a zkoumá, zda je základem světa hmota, idea, či božský princip. Aristoteles pojednává o primárních látkách, mezi které řadí vodu, vzduch, zemi a oheň. Na příkladu masa ukazuje, že předměty se neskládají pouze z těchto počátečních hmot, ale obsahují ještě něco jiného. Rozložením masa, dle Aristotela, vznikne oheň a země. Pokud je ale oheň a země spojeno, ne nutně vznikne maso. Tím Aristoteles poukazuje na další složku, která nemá původ v základních hmotách. Popisuje ji jako příčinu vzniku objektu a nazývá to jeho podstatou. Druhové přiřazení pak spočívá v porovnání těchto podstat. \cite{uvod_do_ontologie}

Ontologie, na rozdíl od jiných filosofických odvětví, které zkoumají objekty spadající do studované domény, se zabývá mezikategoriálními vztahy a postavením objektů v rámci domény. \cite{aristoteles}

Tato filosofická disciplína využívá takových pojmů jako je část, kompozice, systém, relace, stav, událost, změna, možnost, proces, prostor a čas, které se využívají i v informačních technologiích, zejména v oblasti konceptuálního modelování (viz \ref{konceptualni model}). \cite{ontological foundations dor struc concep}

Dnešní význam ontologie spočívá v úplné definici myslitelných a vnímatel\-ných objektů včetně relací mezi nimi. Proto by se jakýkoli reprezentační systém měl řídit základy ontologie. To je možné pozorovat v různých odvětví jako je znalostní, softwarové nebo i podnikové inženýrství. \cite{Pergl habilitace}

\subsection{Ontologie v informačních technologiích}
V souvislosti s informačními technologiemi byl pojem ontologie poprvé použit Mealym v roce 1967 ve studii o základech zpracování dat. \cite{Mealy} Postup analýzy dat pomyslně rozděluje na tři různé části. První je existence konceptů, neboli pojmů, v reálném světe. Další částí je lidské vnímání existence těchto konceptů a poslední je způsob syntaktického zachycení jejich postavení. V otázce vnímání existence věcí bez ohledu na jejich reprezentaci odkazuje právě na filosofickou ontologii.

Pojem ontologie má dnes v informačních technologiích odlišný význam od toho filosofického. Jedná o formální strukturu, neboli konceptuální model, který obsahuje pojmy a vztahy mezi nimi. Jedno z možných rozdělení ontologie konceptů, které zmiňuje i Guizzardi \cite{ontological foundations dor struc concep}, je do 4 různých vrstev (viz obrázek \ref{fig:obrazek_5}):

\begin{enumerate}
    \item Top-level ontologie -- Popisují obecné koncepty, které nejsou závislé na doméně nebo zkoumané otázce. Jedná se například o čas, objekt, událost, akci, nebo prostor.
    \item Doménové ontologie -- Charakterizují pojmy spojené s obecnou doménou. Specifikují významné pojmy specializace v rámci top-level ontologie. Může jít například o doménu léčiv, nebo automobilového průmyslu.
    \item Ontologie problematiky -- Vystihují výrazy spojené s obecnou problematikou, například diagnostikou či prodejem, a uvádí tyto koncepty v~souvislosti s top-level ontologií.
    \item Aplikační ontologie -- Definuje pojmy, které závisí jak na určité doméně, tak na problematice. Představované koncepty nejčastěji odpovídají rolím (viz \ref{role}), které hrají entity domény ve vztahu s prováděním určité činnosti.
\end{enumerate}

\begin{figure}\centering
 	\includegraphics[width=1\textwidth]{obrazky/5.png}
	\caption[Klasifikace typů ontologií]{Klasifikace typů ontologií: Šipky znázorňují závislosti mezi vrstvami ontologie. \cite{klasifikace ontologii} }\label{fig:obrazek_5}
\end{figure}

Dále jsou přiblíženy výskyty ontologie v různých odvětvích informačních technologií. které spočívají v motivaci vybudovat co nejpřesnější strukturu domén, jejichž se zaměřená problematika dotýká.

\subsubsection{Ontologie v doménovém inženýrství}
Údržba softwarového systému je velmi nákladná, což je značnou motivací pro znovupoužití softwaru i na jiných úrovních, než je programovací kód. Pojmem doménové inženýrství je označován proces, který se skládá primárně z~doménové analýzy a designu. Výsledkem doménové analýzy je model domény, který definuje objekty, jež považují odborníci domény za důležité a přínosné, relace mezi nimi a události, ve kterých se vyskytují. Přínos takového modelu slouží mimo jiné k uchování znalostí o doméně pro příští využití, vysvětlení nejasností a k predikci skutečností, které nejsou přímo viditelné. \cite{ontological foundations dor struc concep}

\subsubsection{Ontologie ve znalostním inženýrství}
Znalostní systémy se do své znalostní báze snaží začlenit kroky, které napodobují rozhodovací činnost experta. Nejnákladnější částí ve vývoji expertního systému je proces získávání vědomostí a proto byl později navrhnut jiný způsob pojetí znalostních bází. Dle něj by neměla nahrazovat myšlení lidí, ale měla by obsahovat objektivní realitu. Dobře strukturovaná a reálná doména znalostí bude vhodnější pro opětovnou použitelnost ve znalostních systémech různých problematik. \cite{ontological foundations dor struc concep}

\subsubsection{Ontologie a sémanticky web}
Obsah dnešních webových zdrojů, který je strojově čitelný, zcela závisí na lidské schopnosti rozumět sdělení. \cite{ontological foundations dor struc concep} Další úroveň webu, označená jako séman\-tický web, by umožnila i strojům chápat informace na webových stránkách. Záměr této nadstavby spočívá v rozšíření dnešní webové struktury uzlů o~logickou vrstvu, která bude využívat definovaná pravidla, vyvozovat závěry, vybírat postupy a odpovídat na zadané otázky. \cite{semanticky web} Docílit toho lze pomocí anotací webových zdrojů metadaty reprezentující pojmy, data i pravidla, jak nad daty uvažovat. \cite{ontological foundations dor struc concep} Přítomnost této logické nadstavby v podobě strukturálních modelů přinese i další zlepšení. Bude možné vyhledávat v rámci omezení webových zdrojů, které se odkazují na daný koncept v modelu, místo zadaných a leckdy významově nepřesných klíčových slov. \cite{Towards ontological foudations UFO story}

%------------------------------------------------------------------------------------------
\section{Unified Foundational Ontology} \label{UFO}
V roce 2002 Guizzardi a kol. zahájili výzkumnou analýzu konceptuálních modelovacích jazyků s cílem vyvinout ontologický základ pro tyto jazyky. Výzkum byl motivován myšlenkou, že explicitní definice základů a dodržování určitého ontologického závazku je pro konceptuální modelování zásadní.  Jakýkoli pokus o rozvoj základů pro konceptuální modelování by měl brát v potaz lidské vědomosti i jazykové schopnosti. Původní záměr výzkumného týmu bylo propojit základy ontologií General Formalized Ontology (GFO) z Německa a Descriptive Ontology for Linguistic and Cogintive Engineering (DOLCE) z Itálie, což bylo možné z toho důvodu, že obě mají ontologický základ v kategorii čtyř tříd. Proto dostala výsledná ontologie název Unified Foundational Ontology. \cite{Towards ontological foudations UFO story}

\label{kategorie} Kategorické rozdělení do čtyř tříd je idea pocházející z Aristotelova spisu Kategorie, kde jsou jsoucna klasifikována na čtyři třídy. Prvním rozdělením je rozlišováno to, co vypovídá o nějakém podmětu a naopak to co o žádném nevypovídá. Výraz, který o něčem vypovídá, či něco označuje se nazývá obecninou (univerzálem) a jeho opak se nazývá jednotlivinou (individuem). Jako příklad lze uvést pojem \uv{člověk}, který jasně vystihuje konkrétní objekt a jedná se tedy o univerzál. Druhé rozdělení odlišuje to, co nutně potřebuje podmět k~existenci a to, co podmět k existenci nepotřebuje. Nutná jsoucna nazývá Aristoteles esenciální, naopak ty, které jsou nahodilá nazývá akcidentální. \cite{aristoteles kategorie}

GFO a DOLCE ale neobsahovaly explicitní definici entit a vztahů, které jsou k validnímu popsání domény potřeba, a tak bylo nutné ontologii doplnit o~teorie z odvětví filosofické formální ontologie, kognitivní vědy, lingvistické logiky a filosofické logiky. \cite{Pergl habilitace, Towards ontological foudations UFO story} UFO slouží jako báze pro doménově nezávislé ontologické jazyky, na kterých lze stavět ontologie pro specifické domény. \cite{Rybola}

UFO ontologie je rozdělena do tří částí, podle aspektů reality\cite{Towards ontological foudations UFO story}:
\begin{enumerate}
    \item UFO-A -- Jedná se o ontologii endurantů, která se zabývá strukturálními aspekty konceptuálního modelování. Je založena na idee kategorického rozdělení do čtyř tříd.
    \item UFO-B -- Ontologie perdurantů, která se zabývá událostmi, jejich časo\-vému uspořádání a procesy.
    \item UFO-C -- Ontologie postavena na UFO-A a UFO-B, která se zabývá sociálními aspekty.
\end{enumerate}

Ontologie UFO je využívána v odvětví analýzy, re-designu, k propojení různých modelovacích jazyků a také jako základ pro ontologie specifických domén. \cite{Pergl habilitace, Towards ontological foudations UFO story}

%------------------------------------------------------------------------------------------
\section{Unified modeling language}
Unified modeling language (UML) je standardní modelovací jazyk, který se využívá v oblasti business analýzy, softwarové architektury a vývoje, ke specifikaci procesů a struktury systémů. Jazyk byl vyvinut Grady Boochem, Ivar Jacobsonem a Jim Rumbaughem a v roce 1997 byl přijat Object Management Group jako standard.

UML obsahuje několik druhů notací pro specifické diagramy. V základu se UML specifikace dělí na strukturální a behaviorální diagramy. \cite{uml diagram} Mezi strukturální diagramy je zařazen UML Class diagram, který tvoří notační základ pro jazyk OntoUML. \cite{Rybola} Z toho důvodu je níže blíže popsaná notace UML Class diagramu.

\subsection{UML Class diagram}
UML Class diagram se řadí mezi strukturální diagramy jazyka UML, ty popisují uspořádání části systému na různých úrovních. Class diagram pak zachycuje strukturu tříd popisovaného systému. Znázorňuje jednotlivé třídy, rozhraní, jejích vlastnosti, omezení a vazby mezi nimi. 

Základním prvkem UML Class diagramu je třída. Třída definuje vzor pro objekty stejného typu, určuje jejich vlastnosti a omezení. \cite{uml diagram} Objekt je potom instancí určité třídy. Má explicitně definované hodnoty vlastností a je angažován v relacích určených třídou. Notace třídy má tři části: název, definici atributů a výčet metod a funkcí, kterých nabývá. \cite{Rybola}

Existuje několik druhů relací mezi třídami, například asociace, generalizace a závislost (dependency). \cite{uml diagram}

Asociace je relace mezi dvěma třídami, která slouží k zachycení stavu, kdy jedna třída je sémanticky propojena s jinou. U asociací lze určit \cite{Rybola}:
\begin{enumerate}
    \item Násobnost, neboli multiplicitu – Údaj, který se přiděluje oběma stranám relace. Násobnost vymezuje rozsah intervalu, kterého může nabývat počet instancí cílové třídy ve vztahu k jedné zdrojové třídě.
    \item Název relace – Relace se pojmenuje z pohledu jednoho z aktérů.
    \item Název rolí – Angažované třídy mohou mít určené jméno v souvislosti s~danou relací. 
\end{enumerate}

Generalizace, nazývaná také jako dědičnost, je klasifikační vztah mezi obecnou a jí podřadnou, specifickou třídou. \cite{uml diagram} Tato relace se využívá v situaci, kdy jedna obecná nadtřída má více podružných podtříd. Vazba směrem od podtřídy k nadtřídě se nazývá generalizace, obráceně pak specializace. \cite{Rybola} Instance podtřídy je zároveň instancí nadtřídy, protože dědí všechny její vlastnosti a nabývá i jejích funkcí a metod. \cite{uml diagram}

Pro využití notace v OntoUML je důležitá možnost uskupení podtříd do více množin generalizace, které spojuje stejný význam specifikace. V rámci množiny lze stanovit, zda je disjunktní anebo vyčerpávající. Pojem \mbox{\textit{isCovering}} značí vyčerpávající množinu, což znamená, že instance nadtřídy musí být vždy zároveň i instancí jedné z podtříd. Pojem \textit{isDisjoint} označuje disjunktní podtřídy, tedy instance nadtřídy může být instancí nejvýše jedné podtřídy. Pokud má nadtřída více generalizačních množin, pak její instance může být instancí z více generalizačních množin zároveň. \cite{Rybola}

Dependency, nazývaná také jako závislost, je vztah mezi dvěma třídami, které se v rámci této relace označují jako dodavatel a klient. Závislost vyjadřuje situaci, kdy klient je závislý na dodavateli, který mu něco poskytuje a není tak pro klienta možné bez dodavatele existovat. \cite{uml diagram}

%------------------------------------------------------------------------------------------
\section{OntoUML}\label{OntoUML}
OntoUML je ontologický jazyk konceptuálního modelování, který je založený na ontologii UFO a konstruován pomocí notací UML Class diagramu. \cite{Pergl habilitace, ontoUml docs}  
Základy pro OntoUML a UFO stanovil Giancarlo Guizzardi s cílem vytvořit jednotný nástroj pro konstrukci ontologicky správných konceptuálních modelů. \cite{guizzardi ontological foundations} V minulosti byl aplikován v různých odvětvích jako je doména oleje a pohonných hmot, logistika, doména zpráv informačního managementu a také v Data Modeling Guide od Ministerstva obrany Spojených států amerických. \cite{Rybola}

Díky skutečnosti, že OntoUML vychází z ontologie UFO, je OntoUML více expresivnější a přesnější, než samotné UML. Výhodnou této notace je sémantická preciznost, díky které je uživatel veden k co nejsprávnější konceptualizaci pojmů v doméně. \cite{guizzardi ontological foundations}

Základním prvkem modelu jsou instance, které jsou definovány jako cokoli myslitelného či pozorovatelného, jedná se tedy prvky reálného světa. \cite{Rybola} Z ontologického UFO základu jsou zde použity pojmy z Kategorie od Aristotela (viz \ref{kategorie}) a to individuum, což lze připodobnit reálnému prvku a univerzál. Univerzály jsou obecné klasifikace individuí. Jsou reprezentovány jednotlivými typy konstruktů notace, což jsou definující vzory, kterými jejich instance, individua, nabývají.  \cite{guizzardi ontological foundations} Jelikož OntoUML využívá notací UML Class diagramu, tak jsou tyto typy konstruktů reprezentovány třídami a jednotlivé druhy se rozlišují pomocí jejich stereotypů. \cite{Rybola}

\subsection{Princip identity}
Ke správné konstrukci hierarchie pojmů vyskytujících se v doméně vede uživate\-le tzv. princip identity a individualizace. Princip identity a individualizace vypovídá o totožnosti se sebou samým a rozdílech, které odlišují dva výskyty těch samých objektů. \cite{identita} To přirozeně plyne z Aristotelovi idei o podstatě prvku reality (viz \ref{ontologie}). \cite{guizzardi ontological foundations} Guizzardi popisuje princip identity na příkladu psa, domácího mazlíčka, kterého majitelé pojmenovali. Majitel ho rozpozná pomocí jména, rasy, výšky, váhy, barvy, ale nic z toho plně neurčuje jeho princip identity. Může totiž existovat jiný pes s totožným jménem, stejné rasy, výšky, váhy i barvy a v případě, že by tyto vlastnosti a informace plně definovali jeho princip identity, by to znamenalo, že není možné tyto dva psy odlišit. \cite{ontoUml docs, guizzardi ontological foundations} Tyto vlastnosti se nazývají podmínky identity, jsou nutnou součástí principu identity, ale ne postačující.

Princip identity musí být použitelný pro všechny myslitelné prvky, proto nelze považovat ani u lidí jejich rodná čísla za onu individuální informaci, protože nejsou aplikovatelná například přes všechny státy. Je nutné, aby byl udržitelný i napříč časem. Kdyby se tak nedělo, pak by skutečnost že ze štěněte vyrostl pes znamenala, že se jedná o jiné zvíře.
Lidské vnímaní přirozeně dokáže rozlišit a odhalit tento princip identity u reálných prvků. Aristoteles tuto informaci, či zdroj nazval podstatou, neboli substancí (viz \ref{ontologie}). 

OntoUML typy univerzálů, které poskytují svým instancím identitu, se nazývají \textit{Sortal}. \cite{ontoUml docs} Protože každé individuum vyskytující se v modelu musí nabývat unikátní identity je nutné, aby bylo přímou nebo nepřímou instancí stereotypu poskytujícího identitu. Proto každé individuum musí být v konceptuálním modelu instancí univerzálu typu Sortal. Typy, které princip identity neposkytují se nazývají \textit{Non-sortal}. \cite{guizzardi ontological foundations}

\subsection{Rigidita}
Rigidita je vlastnost určitých typů univerzálů jazyka OntoUML plynoucí z~mo\-dální logiky. Tento pojem definuje zda je individuum instancí takového typu za všech možných situací a v jakékoli chvíli své existence. \cite{ontoUml docs, guizzardi ontological foundations} Modální logika označuje tyto situace, nazývané i světy, jako realitu v daném čase a prostoru. Například člověk, je člověkem v každé fázi svého života a žádná mimořádná událost během jeho existence nemůže tuto skutečnost změnit. Ontologie UFO definuje několik možností rigidity \cite{guizzardi ontological foundations}:
\begin{enumerate}
    \item Rigidní -- Individua, která jsou instancí rigidního typu, jsou jeho instancí za všech okolností po dobu své existence.
    \item Non-rigidní -- Je logická negace rigidity. Univerzál je non-rigidní, pokud existuje alespoň jedno individuum, které může přestat býti jeho instancí.
    \item Anti-rigidní -- Typ, pro který platí, že všechna individua, která jsou jeho instancí, mohou během své existence přestat býti jeho realizací a~neovlivní to jejich trvání. Jedná se o druh non-rigidity.
    \item Semi-rigidní -- Typ univerzálu, který je non-rigidní, ale není anti-rigidní.
\end{enumerate}

\subsection{Generalizace}
V UFO a tedy i OntoUML zajišťuje relace generalizace dědění principu identity i vlastností mezi typy. Na rozdíl od UML, kde jsou relace generalizace vždy rigidní, mohou být v OntoUML jak rigidní tak anti-rigidní. Individua jsou po celou dobu své existence instancemi nadtypu, který definuje jejich princip identity, ale mohou libovolně tvořit instance typů, které se řídí stejným principem identity. 
V případě, že má nadtyp více množin generalizace, pak je možné, a v případě že je množina generalizace vyčerpávající tak i nutné, aby individuum bylo instancí podtypů z různých množin generalizace. \cite{Rybola}

\subsection{Typy univerzálů}
Univerzály se dělí na \textit{Substanční}, též označované jako Objekty, Substances či Substantials a \textit{Aspekty}, také nazývané jako Accidents, Tropes nebo Moments. Substanční univerzály, objekty, jsou nezávislé konstrukty, které jsou existenčně nezávislé na ostatních objektech. Dále se dělí na \textit{Sortaly} a \textit{Non-sortaly} (viz obrázek \ref{fig:obrazek_7}).
Aspekty jsou konstrukty, které jsou existenčně závislé na nositeli, se kterými jsou spojeny vazbou nazvanou \textit{inherence}. \cite{ontoUml docs} Také poskytují svým instancím princip identity, ale na rozdíl od substančních univerzálů jsou existenčně závislé na jiném individuu, jejich nositeli, který je zároveň částí jeho identity. Typy univerzálů, neboli stereotypy, se v OntoUML zapisují do špičatých závorek. \cite{Rybola} Toto označení má původ v jazyce XML.

\begin{figure}\centering
 	\includegraphics[width=1\textwidth]{obrazky/7.png}
	\caption[Rozdělelní Substančních univerzálů]{Rozdělelní Substančních univerzálů: Univerzály typu Sortal se dále dělí na rigidní a anti-rigidní. Univerzály typu Non-sortal, které jsou na schéma uvedené jako \uv{MixinUniversal} se dále dělí dle rigidity. Na schéma je znázorněno, že anti-rigidia je typem non-rigidity. \cite{klasifikace stereotypu} }\label{fig:obrazek_7}
\end{figure}

\subsubsection{Sortal}
Pojmem \textit{Sortal} jsou označovány typy individuí, které mají z našeho vnímání svoji identitu. Do této skupiny stereotypů se řadí Kind, Subkind, Phase, Role, Relator, Quantity a Collective. Ne všechny stereotypy spadající pod pojem Sortal poskytují identitu, ale všechny ji vlastní. Tyto stereotypy ji tak pomocí relace generalizace dědí od typů poskytující identitu. \vspace{1em}

\subsubsubsection{<<Kind>>}

Stereoptyp \textit{Kind} je rigidní Sortal poskytující identitu.
Kvůli tomu se tak nikdy nemůže stát podtypem jiného Sortalu, který poskytuje identitu, protože by pak nastala situace, kdy by jeho instance získala identitu dle dvou principů, což není možné.
Protože je Kind rigidní, tak všechny individua, které jsou jeho instancí musí být jeho instancí po celou dobu své existence. Z toho samého důvodu nemůže být podtypem jiného anti-rigidního stereotypu. \vspace{1em}

\subsubsubsection{<<Subkind>>}

Stereotyp \textit{Subkind} je taktéž rigidní Sortal, který nejčastěji definuje speciální případy stereotypu Kind, nebo jiného Subkindu. Neposkytuje přímo identitu, ale dědí ji pomocí relace generalizace od nadřazeného stereotypu s principem identity. \cite{guizzardi ontological foundations} Protože se jedná o rigidní stereotyp, není možné aby jiný anti\-\mbox{-rigidní} typ byl jeho nadtypem. \cite{ontoUml docs}
Díky tomu, že stereotypy Subkind i Kind jsou rigidní, pak i relace generalizace mezi nimi je rigidní, což znamená, že není možné aby individuum, které je instancí Subkindu přestalo býti instancí Kindu, jelikož mu Kind určuje princip identity. \cite{Rybola}\vspace{1em}

\subsubsubsection{<<Phase>>}

Stereotyp \textit{Phase} je anti-rigidní Sortal představující stádia Sortalu, které jsou definována jejich vnitřním stavem či vlastností. \cite{Rybola, guizzardi ontological foundations} Neposkytuje iden\-titu, ale dědí ji od nadřazeného Sortalu. Phase vždy musí být součástí množiny generalizace, není tedy možné, aby existovalo pouze jedno stádium Sortalu reprezentované pouze pomocí jedné Phase. Množině generalizace lze stanovit, zda je disjunktní anebo vyčerpávající pomocí pojmů \textit{disjoin} a~\textit{complete}. \cite{ontoUml docs}\vspace{1em}

\subsubsubsection{<<Role>>}\label{role}

Stereotyp \textit{Role} je anti-rigidní Sortal zachycující specializace Sortalu, kterých nabyly ve vztahu s jinou entitou. Neposkytuje identitu, ale tak jako Phase či Subkind ji dědí od nadřazeného Sortalu. Jedná se tedy o role v kontextu relace, která zároveň figuruje jako \uv{pečetidlo} skutečnosti, že se jedná o roli a proto musí mít multiplicitu minimálně jedna. 
Všechny anti-rigidní Sortaly, tedy i Role a Phase, musí dědit identitu od právě jednoho Sortalu, který ji poskytuje. \cite{guizzardi ontological foundations}

\subsubsection{Non-sortal}
Pojmem \textit{Non-sortal} se označuje skupina stereotypů, jejichž instance mohou nabývat identit dle různých principů. Reprezentují vlastnosti, které jsou spo\-lečné pro více univerzálů s rozdílnými principy identity a tak není možné tuto vlastnost definovat v nadtypu těchto univerzálů. \cite{guizzardi ontological foundations} Z tohoto důvodu je zakázáno, aby jakýkoli Sortal byl jejich nadtypem, protože by to znamenalo, že by musely následovat jeho princip identity. \cite{ontoUml docs}

OntoUML rozlišuje několik druhů těchto Non-sortalů v závislosti na jejich rigiditě. \cite{guizzardi ontological foundations}\vspace{1em}

\subsubsubsection{<<Mixin>>}

Stereotyp \textit{Mixin} je semi-rigidní Non-Sortal. Pojem semi-rigidní, kterým je označován pouze tento sterotyp, označuje situaci, kdy je univerzál rigidní pro nějaké individua a naopak anti\-\mbox{-rigidní} pro jiná. \cite{ontoUml docs}

Jedná se o stereotyp, který představuje společné vlastnosti rigidních i anti\-\mbox{-rigidních} univerzálů, které se řídí rozdílným principem identity. \cite{Rybola} Jelikož se jedná o semi-rigidní stereotyp, tak není možné aby byl podtypem anti\-\mbox{-rigidního} nebo i rigidního stereotypu. Z toho plyne, že jeho nadtypem může být vždy pouze jiný stereotyp Mixin. \cite{ontoUml docs}\vspace{1em}

\subsubsubsection{<<Category>>}

Stereotyp \textit{Category} je rigidní Non-sortal, který se využívá k definici spo\-lečných vlastností rigidních univerzálů, nejčastěji stereotypu Kind, které se řídí rozdílnými principy identity. \cite{guizzardi ontological foundations} Protože se jedná o rigidní stereotyp, tak není možné, aby byl podtypem jakéhokoli anti-rigidního stereotypu. \cite{ontoUml docs}\vspace{1em}

\subsubsubsection{<<RoleMixin>>}

Stereotyp \textit{RoleMixin} je anti-rigidní Non-sortál, který je podobný anti\-\mbox{-rigidnímu} Sortalu Role s tím rozdílem, že se aplikuje pro instance s rozdílnými principy identity. \cite{Rybola} \vspace{1em}

\subsubsubsection{<<PhaseMixin>>}

Stereotp \textit{PhaseMixin} je anti-rigidní Non-sortal, který je ekvivalentní anti\-\mbox{-rigidnímu} Sortalu Phase, ale stejně tak jako RoleMixin, popisuje společné vlastnosti stereotypů Phase, které se řídí rozdílným principem identity. \cite{ontoUml docs}

\subsubsection{Aspekty}
\textit{Aspekty} jsou prvky závislé na jiném univerzálu, který má v relaci inherence název nostiel. Relace inherence, která je irreflexivní, asymetrická a není tranzitivní, je vztah mezi nositelem a jeho aspektem. V relaci inherence je možné jako nositele označit aspekt a přiřadit mu jeho jiný aspekt. V případě zániku nositele jeho aspekt také automaticky přestává existovat. V jazyce OntoUML se rozlišují dva stereotypy Aspektů a to Quality a Mode. \cite{guizzardi ontological foundations}\vspace{1em}

\subsubsubsection{<<Mode>>}

Stereotyp \textit{Mode} je rigidní Aspekt, který reprezentuje vnitřní nestrukturované vlastnosti nositele, často se jedná o jejich stavy. \cite{ontoUml docs}
Se svým nositelem je propojen vazbou s názvem \textit{Charakterization}, která musí mít multiplicitu \mbox{1 : 1}, či 1 : N. Minimálně 1 je z toho důvodu, že nositel se podílí na identitě aspektu, zároveň nositel může nabývat více módů stejného typu. \cite{Rybola}\vspace{1em}

\subsubsubsection{<<Quality>>}

Stereotyp \textit{Quality} je rigidní Aspekt představující, podobně jako stereotyp Mode, vnitřní vlastnosti nositele, které jsou ale strukturované. Tak jako stereotyp Mode je Quality se svým nositelem spojen vazbou \textit{Charakterization} s multiplicitou 1 : 1. Není tak možné, aby nositel disponoval více než jednou hodnotou, kterou Quality reprezentuje. \cite{Rybola}\vspace{1em}

UFO rozlišuje tři druhy stereotypu Quality \cite{ontoUml docs}:
\begin{itemize}
    \item Perceivable quality -- Reprezentuje hodnoty měřitelné přístrojem, napří\-klad výška nebo rychlost.
    \item Non-perceivable quality -- Představuje vlastnosti, které nejsou přístroji měřitelné, například měna.
    \item Nominal quality -- Znázorňuje kvality, které nelze měřit a často se využí\-vají jako označení pro individua jež jsou nositeli tohoto aspektu. Jedná se například o jméno, označení ISBN atd.
\end{itemize}

\subsubsection{Asociace}
V OntoUML jsou relace rozděleny na formální a materiální. Formálními relacemi jsou ty, které propojují instance na základě jejich vnitřních vlastností. Jedná se buď o relaci porovnání na základě jejich měřitelných kvalit, nebo o vztah celek-část (viz \ref{celek-cast}). Pro materiální relace existuje tzv. pečetidlo, které aktéry spojuje. \cite{Rybola} Toto pečetidlo představující vlastnosti relace \cite{ontoUml docs} může být fyzický objekt, jako například manželská smlouva, nebo abstraktní jako telefonní hovor. V OntoUML se pro ono pečetidlo používá konstrukt Relator. \cite{Rybola}\vspace{1em}

\subsubsubsection{<<Relator>>}

Stereotyp \textit{Relator} je rigidní Sortal, který poskytuje identitu. Umožňuje spojení dvou a více individuí materiální relací. Je nutné aby byl aktérem alespoň v jedné vazbě \textit{Mediation} s celkovou násobností minimálně 2. \cite{ontoUml docs}

\subsubsection{Vztah celek--část} \label{celek-cast}
Teorií relace celek--část se zabývá filosofický obor, který se nazývá Merologie. Tato teorie postavila formální základy pro reprezentaci vztahů mezi částmi i~jejich vlastnostmi v rámci této relace. Ze své podstaty jsou tyto relace irreflexivní a anti-symetrické. Obecně ale nelze určit, zda jsou tyto vztahy mezi částí a celkem tranzitivní. Guizzardi pro příklad uvádí dvě rozdílné situace. 
\begin{enumerate}
    \item Ruka je součástí paže, ta je ale zároveň součástí člověka. Znamená to tedy, že ruka je i součástí člověka? Ano, relaci lze tedy v tomto případě označit za tranzitivní. 
    \item Město Praha je hlavním městem České republiky a je tedy její součástí. Česká republika je součástí Evropské unie. To by, pokud by relace byla tranzitivní, mělo znamenat, že Praha je také součástí Evropské unie. Toto tvrzení ale není pravdivé. Praha i Česká republika mají v~\mbox{Evropské} unii rozdílnou roli a tak relaci celek--část nelze obecně považovat za tranzitivní.
\end{enumerate}
Ontologie UFO definuje sekundární charakteristiky relací celek--část a to sdíli\-telnost, povinnost a neoddělitelnost. \cite{guizzardi ontological foundations}

\subsubsection{Sdílitelnost}

V jazyce UML se možnost sdílení aktérů ve vztahu celek--část rozlišuje pomocí pojmů agregace a kompozice. V notaci UML jsou tyto skutečnosti realizovány pomocí tzv. diamantu. V případě kompozice, což je situace kdy objekt představující část nemůže existovat bez celku, je diamant plný. Naopak k realizaci agregace, kdy část může existovat nezávisle na celku, je diamant prázdný. Toto rozdělení se ukázalo jako nedostatečné a OntoUML tak převzalo detailnější dělení z ontologie UFO, ale zachovalo notaci pomocí diamantu umístěného u univerzálu, který značí celek.

V jazyce OntoUML prázdný diamant reprezentuje sdílitelnou část. To znamená, že instance části může být najednou součástí více celků bez ohledu na jejich typ. Naopak plný diamant představuje situaci, kdy část není sdílitelná a její instance tak nemůže být součástí více celků stejného typu v jednu chvíli, ale je dovoleno aby byla současně prvkem více celků různého typu.
\cite{Rybola}

\subsubsection{Povinnost}

Další sekundární charakteristikou relace celek--část je povinnost jak z pohledu celku tak z pohledu části. Povinnost části z hlediska celku se dělí na volitelnou, povinnou a esenciální. 
\begin{itemize}
    \item \textbf{Volitelná část} znamená, že celek může existovat bez ohledu na přítom\-nost části. Část tak nemusí být v celku přítomna vůbec, nebo je možné že během své existence celek změní instanci této části. Tato charakteristika se v jazyce OntoUML zobrazuje pomocí multiplicity relace minimálně 0 na straně části.
    \item \textbf{Povinná část} vyjadřuje, že celek nemůže existovat bez přítomnosti části. V případě, že se jedná o tzv. generickou závislost, tak nezáleží na určité instanci části, ale je důležitá její přítomnost. Proto je možné, že instance části se během existence celku mění. Není ale možné aby, byť jen omezený čas, existoval celek bez přítomnosti části. Tato skutečnost se v modelu reprezentuje také pomocí multiplicity relace, která musí být větší jak 1 na straně části.
    \item \textbf{Esenciální část}, také nazývána jako existenční závislost, je druhým typem povinnosti. Jedná se o situaci, kdy celek je závislý přímo na instanci dané části a tuto instanci není možné změnit, protože se podílí na jeho identitě. Tato charakteristika se označuje pomocí pojmu \textit{essential} a zároveň je nutné aby multiplicita na straně části byla větší jak 1. Z toho je viditelné, že existenční závislost, neboli esencialita, implikuje povinnost části.
\end{itemize}

Povinnost celku z pohledu části se rozlišuje na volitelnou, povinnou a neoddělitelnou.
\begin{itemize}
    \item \textbf{Volitelný celek} znamená, že část může existovat i sama o sobě a během své existence je schopna měnit celky, kterých je součástí. V modelu se realizuje pomocí multiplicity relace minimálně 0 na straně celku. 
    \item \textbf{Povinný celek} vyjadřuje skutečnost, kdy část není schopna existovat sama o sobě a je genericky závislá na libovolné instanci celku. To znamená, že během své existence se nemůže vyskytovat bez celku, ale jeho instance se může jakkoliv měnit. Podobně jako v povinnosti z pohledu celku se generická závislost z pohledu části také zobrazuje pomocí multiplicity relace větší jak 1, v tomto případě ale na straně celku.
    \item \textbf{Neoddělitelnost}, také nazýváno jako existenční závislost, celku značí situaci, kdy část vyžaduje existenci dané instance celku a tuto instanci není možné změnit, protože se podílí na její identitě. V OntoUML se realizuje pomocí označení relace pojmem \textit{inseparable}, zároveň s multiplicitou větší jak 1 na straně celku. 
\end{itemize}
Pojmy \textit{essential}  a \textit{inseparable}, označující existenční závislost buď celku nebo části, jsou použitelné v případě, že se jedná o relaci, které se účastní pouze rigidní typy. V případe anti-rigidních typů mohou totiž individua přestat býti instancemi univerzálu a to by bylo v rozporu s jejich existenční závislostí. Z tohoto důvodu je v ontologii UFO definován pojem \textit{immutable}, neboli neměnnost. Tento pojem označuje relaci celek--část, ve které figuruje anti-rigidní univerzál, který v každé situaci za nichž je instancí anti-rigidního typu zároveň plní svou definovanou roli v relaci celek--část. \cite{Rybola}

Ze studií kognitivních věd vyšlo najevo, že lidé vnímají více typů celků a~zároveň i vazeb celek--část, které byly v OntoUML popsány. \vspace{1em}

\subsubsubsection{Funkční celek}

Jedná se o nejběžnější reprezentaci vztahu celek--část. Členové funkčního celku mohou být instance různých stereotypů a v rámci celku mohou mít různé úlohy. Funkční celek je možné reprezentovat libovolným stereotypem univerzálu (proto ani není zapsán ve špičatých závorkách), ale nejčastější se jedná o rigidní Sortal Kind. 
Vztah mezi dvěma funkčními celky se nazývá \textit{ComponentOf}. Obecně se nejedná o tranzitivní relaci, záleží na kontextu použití. \cite{guizzardi ontological foundations} \vspace{1em}

\subsubsubsection{<<Collective>>}

Stereotyp \textit{Collective} je rigidní Sortal, který označuje celek, jenž je složený z členů, individuí domény libovolného stereotypu, které nejsou stejného typu jako celek, ale hrají v něm stejnou roli.  Mezi členy existuje maximální sjednocující relace, která je zároveň původem principu identity, který tento Sortál poskytuje. \cite{ontoUml docs} Stejně jako rigidní Sortaly Kind, či Relator poskytuje svým instancím princip identity. \cite{guizzardi ontological foundations}

Relace mezi Collectivem a jeho členy, která není tranzitivní, se nazývá \textit{MemeberOf}. Tento vztah vyžaduje minimálně dva členy přítomné v Colletivu. \cite{ontoUml docs} 

K zachycení vztahu mezi dvěma stereotypy Collective se užívá vazba \textit{SubCollectionOf}. Jedná se o situaci, kdy členové jednoho kolektivu jsou zároveň členové druhého kolektivu. Tato relace, na rozdíl od relace MemberOf, je tranzitivní, což znamená, že prvky podkolektivu jsou současně prvky nadkolektivu. \cite{Rybola} Využívá se například k propagaci právních povinností a závazků. \vspace{1em} 

\subsubsubsection{<<Quantity>>}

Stereotyp \textit{Quantity} je rigidní Sortal představující celek, jehož části jsou stejného typu jako on sám. Tento rigidní Sortal reprezentuje maximálně spojité hmoty či materiály, které jsou nekonečně dělitelné. Nejčastěji představuje kapalné, sypké hmoty a materiály. \cite{Rybola, ontoUml docs} Tak jako Collective i Quantity poskytuje instancím princip identity.

Vztah mezi dvěma stereotypy Quantity, který se nazývá \textit{SubQuantityOf}, značí skutečnost, kdy jedna instance tohoto typu může být obsažena v jiném maximálně spojitém objektu (například ve víně je obsažen alkohol), ale jedná se o jeho esenciální část. \cite{guizzardi ontological foundations}

Vztah mezi nádobu či formu, ve které se instance tohoto stereotypu nachází a instancí samotnou se nazývá \textit{Containment}. \cite{ontoUml docs} 

%------------------------------------------------------------------------------------------
\section{OpenPonk} \label{OpenPonk}
OpenPonk je bezplatná, open source platforma implementovaná v jazyce Pharo, která se využívá v oblasti konceptuálního modelování, tvoření diagramů, simulace, generovaní zdrojových kódů atd. OpenPonk je vyvíjen v Centru pro konceptuální modelování a implementace. \cite{open_ponk} 

Platforma, dříve nazývána DynaCASE, poskytuje základ pro výzkumné skupiny, které mají za cíl realizovat vlastní specifické a nestandardní modelovací notace, transformace modelů nebo konkrétní algoritmy a nemají dostatečné kapacity na vývoj samostatného nástroje. \cite{open_ponk_Pergl}

OpenPonk obsahuje mimo jiné i několik již implementovaných rozšíření a~modulů, které přinášejí možnost využití standardních notací a algoritmů. \cite{open_ponk_Pergl} Jedno z rozšíření je notace OntoUML pro konceptuální modelování, které je v~řešení této práce použito. \cite{open_ponk} V případě rozšíření OntoUML se zde vyskytuje framework pro verifikaci OntoUML modelů, který kontroluje, zda všechny entity a vztahy v modelu jsou vytvořeny dle definovaných pravidel jazyka OntoUML. \cite{open_ponk_Belohoubek}

Souběžně s touto prací je vyvíjena detekce návrhových antivzorů, která bude poskytovat další úroveň kontroly OntoUML modelů. Na realizaci detekce návrhových antivzorů pracuje bc. Marek Bělohoubek v rámci své diplomové práce s názvem Rozšíření možností modelování v OntoUML na platformě OpenPonk, která bude obhajována v červnu roku 2021. 

Pro účely tvoření konceptuálních modelů v jazyce OntoUML byl nástroj OpenPonk uplatněn i v projektu Nest BDA.

%------------------------------------------------------------------------------------------
%------------------------------------------------------------------------------------------
\chapter{Praktická část}
V projektu Nest BDA v rámci metadata týmu, pod vedením \mbox{doc. Ing. Roberta} Pergla, Ph.D., jsem pracovala na ontologické analýze klíčových domén. Cílem celého metadata týmu bylo zajistit dostatečně přesné popsání dostupných datových sad včetně zajištění jejich homogenity, jak syntaktické tak sémantické. Syntaktickou interoperabilitu zajišťuje popis datových sad, na který plynule navazuje část konceptuálního modelování zajištující sémantickou interoperabilitu. 
Moje práce spočívala v zajištění sémantické interoperability, tedy v~ontologické analýze klíčových domén a vytváření konceptuálních modelů spojujících doménu a příslušné heterogenní datové sady tak, aby bylo možné propojit data z různých odvětví reality.  

Postup mé práce k výslednému modelu propojující datové sady s rozdílnými významy a termíny lze rozdělit do 3 fází:
\begin{enumerate}
    \item Vytvoření ontologického modelu domény.
    \item Provázání datových sad s ontologickými modely.
    \item Vytvoření upřesňujících pravidel určující mapování atributů dat.
\end{enumerate}

Modely byly zpracovány v nástroji OpenPonk (viz \ref{OpenPonk}), který umožňuje modelování diagramů různých notací. Platforma OpenPonk dovoluje různé úpravy a rozšíření například v podobě popisů v rámci modelu či obsahu celých struktur. Toho bylo využito zejména v následné práci s modely na technické úrovni, která již nebyla součástí mé činnosti. 
Pro potřeby mé části práce v~rámci metadata týmu byl využit ontologický jazyk konceptuálního modelování OntoUML (viz \ref{OntoUML}), který díky sémantické preciznosti dokáže uživatele vést k~co nejsprávnější konceptualizaci pojmů v~doméně.

Celkem jsem zpracovala 8 datových sad, ze kterých vzniklo 6 ontologických modelů s více jak 320 ontologickými entitami. Některé datové sady bylo možné propojit již v ontologické části. Jedná se o datové sady, které se týkají téměř shodné oblasti reality, nebo naopak velmi odlišné a na propojení ontologických modelů jsem chtěla zdůraznit možnou sémantickou interoperabilitu na datech s rozdílným zaměřením.

Vytvořila jsem celkem 7 ontologických modelů, které jsou dostupné v~příloze \ref{CD}, z čehož 6 má původ v~datových sadách:
\begin{enumerate}
    \item Model \texttt{stavebni-sporeni} popisující obsah datové sady Vývoj stavebního spoření \cite{stavebni-sporeni}
    \item Model \texttt{vyrobek-sklizen} spojující dvě datové sady a to Průměrné spotře\-bitelské ceny vybraných výrobků \cite{vyrobek} a Sklizeň zeměděl\-ských plodin podle krajů \cite{sklizen}
    \item Model \texttt{radio} reprezentující datovou sadu Radio, která měřila poslechovost rádia \cite{radio}
    \item Model \texttt{duchody} popisující datové sady Přehled o počtu důchodů \cite{duchody1} a Počet vyplacených důchodů \cite{duchody2}
    \item Model \texttt{penze} reprezentující datovou sadu Penzijní připojištění a penzijní doplňkové spoření \cite{penze}
    \item Model \texttt{nakupy} představující datovou sadu Internetové nákupy jednotlivců \cite{nakupy}
\end{enumerate}

Poslední model \texttt{uzemi} nemá základ v žádné datové sadě, ale slouží jako reference pro zjednodušení dodržování pojmenování a stereotypů k zajištění sémantické interoperability (viz \ref{zajisteniInterop}).

V příloze \ref{CD} jsou uloženy jak náhledy modelů ve formátu PNG tak soubory ve formátu OPP, které je možné otevřít v platformě OpenPonk od verze v2.1.0.
\newpage


%------------------------------------------------------------------------------------------
\section{Ontologický model}
Ontologický model pojmů a jejich vztahů se zabývá pouze reálnými aspekty bez ohledu na jakékoli technické informace datových sad. Doména, či zkoumaná oblast, vychází z obsahu dat a tím je vymezena část reality, která bude modelována. Vytvoření ontologického modelu se dělí do dvou etap a to prvotní analýza domény a následné ontologické modelování konceptů.

\subsection{Analýza datové sady}
Analýza datové sady spočívá v určení oblasti reality a jejích významných prvků. V této části je důležité zjistit přesné významy a definice použitých pojmů v realitě. Tato činnost vyžaduje vyhledávání v zákonech, významových slovnících či součinnost s doménovými experty.

Analýza plynule navazuje a zároveň vychází z popisu datové sady. Popis datových sad nebylo primární náplní mé práce v rámci metadata týmu, tuto část zaštiťovala Ing. Jana Freeman, Ph.D. Protože práce na konceptuálních modelech vzniká z těchto popisů, tak je důležité je alespoň přiblížit.

Popis datové sady primárně slouží pro dvě potřeby. První je, jak už bylo zmíněno, zachycení důležitých pojmů pro účely ontologického a datového modelování. Druhá spočívá v zaznamenání struktury formátu a důležitých technických údajů pro potřeby dalšího technického zpracování. Popis datových sad se tak vypořádá i se syntaktickou heterogenitou. Dokument, který je human\-\mbox{-readable}, se pro navazující technologie generuje i do machine-actionable formá\-tu.

Popis datové sady obsahuje části jako jsou základní informace, popis obsahu, metodické vysvětlivky, struktura dat a náhledy. V základních informacích je vždy uveden unikátní kód, tzv. \textit{Identifier}, který označuje tuto datovou sadu a všechny její potřebné části. Nejvýznamnější části pro následné ontologické zpracování je popis obsahu a struktura dat.

Z popisu obsahu jsem čerpala obecné informace o čem sada pojednává a~jakých domén se může dotýkat. Důležitější z pohledu ontologického modelování je část popisující strukturu dat (viz obrázek \ref{fig:obrazek_struktura_dat}). Z ní jsem získávala údaje o jednotlivých atributech dat a jejich významu. Díky této části je možné zaměřit přesnější oblast reality, která bude modelována. Struktura dat udává přesné názvy atributů použité v datech, jejich datový typ, stručný popis významu těchto hodnot a jejich formát. V případě, že datový objekt obsahuje již svá metadata, je vhodné čerpat hodnoty i z nich, abych dostala co nejpřesnější oblast reality, kterou datová sada popisuje. I tak je ale nutné vytvořit popis nový, který bude vyhovovat potřebám projektu.

\begin{figure}\centering
 	\includegraphics[width=1\textwidth]{obrazky/struktura_dat.png}
	\caption[Příklad struktury dat]{Příklad struktury dat:  Jedná se o strukturu dat datové sady týkající se sklizně zemědělských plodin. \cite{sklizen} }\label{fig:obrazek_struktura_dat}
\end{figure}

Názvy atributů, jejich datové typy a formáty se využívají v části datového modelování a mapování atributů. V analýze domény jsou nejdůležitější částí popisy. V nich se velmi často objevují odkazy na číselníky (viz obrázek \ref{fig:obrazek_struktura_dat}), seznamy hodnoty, kterých může atribut nabývat. I tyto informace jsou důležité pro plnohodnotnou analýzu dat.

U jednotlivých pojmů je důležité znát jejich přesnou definici, aby nedocházelo k nesprávnému či víceznačnému označení. Pro některé prvky reality je nutné zjišťovat jejich právní dělení a označení či vymezení zákonem. S~tímto jsem se potýkala hlavně u datových sad z veřejných databází popisující odvětví financí, sociálního zabezpečení, mzdy a náklady práce nebo sčítání lidu, domů a bytů. Například v datové sadě týkající se vývoje stavebního spoření (viz model \texttt{stavebni-sporeni} v příloze \ref{CD}) jsem čerpala ze sbírky zákonů. \cite{stavebni sporeni} U datových sad z odvětví marketingu a komunikace jsem naopak využívala znalosti doménových expertů ze společnosti Remmark, a.s. 

%------------------------------------------------------------------------------------------
\subsection{Konceptuální model datové sady}
Konceptuální modelování datové sady, potažmo domény které se týká, začíná určením základních pojmů, které poskytují z našeho vnímaní princip identity. Nejčastěji se jedná o osobu, územní určení nebo různé objekty jako třeba zboží. Dále se určují navazující anti-rigidní Sortaly, jako je Role nebo Phase, poté stereotypy patřící do Non-sortalů a nakonec Aspekty.
Díky využití jazyka OntoUML a jeho ontologické a sémantické preciznosti jsou pravidla notace návodná pro co nejsprávnější popis reality. 

Na příkladu zjednodušené datové sady týkající se stavebního spoření (viz model \texttt{stavebni-sporeni} v příloze \ref{CD}) ná\-vodně popíšu postup tvorby konceptu\-álního modelu. Z analýzy této datové sady vyvstaly informace popisující tuto doménu, které jsem čerpala primárně z jejího popisu a sbírky zákona \cite{stavebni sporeni}: 

Stavební spoření je druh spoření nejčastěji za účelem investice do nemovitosti. Může jej uzavřít jak fyzická, tak právnická osoba se stavební spořitelnou. Výše cílové částky spoření i úroková sazba jsou určeny ve smlouvě stavebního spoření. 

Z analýzy vyplývá, že rigidními základy modelu budou fyzická osoba, právnická osoba a stavební spořitelna. Tyto pojmy musí být pro správnou konceptualizaci uvedeny do kontextu domény. Fyzická osoba je dle občanského zákona \cite{obcansky zakonik} pojem odlišující člověka od jiných právních subjektů. Nabývá právní osobnosti svým narozením a zaniká smrtí. Právnická osoba je pojem definován jako organizace, které zákon uzná právní osobnost. Z těchto poznatků vyplývá, že právní osobnost je nadřazený termín pro fyzickou i právnickou osobu a tak je možné říci, že stavební spoření si může sjednat subjekt disponující právní osobností (viz obrázek \ref{fig:obrazek_pravni_osobnost}). Právní osobnost je reprezentována stereotypem \texttt{Category}, protože představuje vlastnost dvou rigidních typů, které se řídí různým typem identity.

Právní osobnosti nabývá i stát, pokud figuruje jako subjekt v právních vztazích. Stát jako účastník právních vztahů dle zákona č. 219/2000 \cite{zakon o vystupovani statu} je právnická osoba. Nastává tak situace, kdy jeden objekt může v různých kontextech být konceptualizován odlišnými způsoby. Stát v kontextu právního vztahu je obsažen v modelu, který se týká penzijního připojištění (viz model \texttt{penze} v příloze \ref{CD}).

\begin{figure}\centering
 	\includegraphics[width=0.65\textwidth]{obrazky/pravni_osobnost.png}
	\caption[Model reprezentující právní osobnost]{Model reprezentující právní osobnost (viz model \texttt{stavebni-sporeni} v příloze \ref{CD}).  }\label{fig:obrazek_pravni_osobnost}
\end{figure}

Stavební spořitelna je banka, která disponuje povolením ve smyslu zákona č. 21/1992. \cite{zakon o bankach}  Proto se jedná o stereotyp \texttt{Role} získávající identitu od banky, která je reprezentována stereotypem \texttt{Kind} (viz obrázek \ref{fig:obrazek_stavebni_sporitelna}). Samozřejmě by bylo možné dále specifikovat koncepty zákoníků, do kterých tato licence patří, ale je nutné určit jisté omezení oblasti konceptualizace. Mohla by tak také vzniknout snaha o vytvoření konceptuálního modelu celého světa. 

\begin{figure}\centering
 	\includegraphics[width=0.8\textwidth]{obrazky/stavebni_sporitelna.png}
	\caption[Model reprezentující stavební spořitelnu]{Model reprezentující stavební spořitelnu (viz model \texttt{stavebni-sporeni} v příloze \ref{CD}). }\label{fig:obrazek_stavebni_sporitelna}
\end{figure}

Vztah mezi stavební spořitelnou a právnickou či fyzickou osobu je materiální relace, která je zprostředkována smlouvou o stavebním spoření. Platí, že jedna právnická či fyzická osoba může mít neomezené množství smluv o~stavebním spoření. Aspekty smlouvy jsou pak jak cílová výše, tak úroková \mbox{sazba (viz obrázek \ref{fig:obrazek_smlouva}).}

\begin{figure}\centering
 	\includegraphics[width=1.07\textwidth]{obrazky/smlouva.png}
	\caption[Model reprezentující uzavření smlouvy o stavebním spoření.]{Model reprezentující uzavření smlouvy o stavebním spoření (viz model \texttt{stavebni-sporeni} v příloze \ref{CD}).}\label{fig:obrazek_smlouva}
\end{figure}

K uchování sémantické interoperability mezi modely datových sad je nezbytné dodržovat jednotné pojmenování i druhy stereotypů pro konstrukty reprezentující stejné reálie. Díky tomu se pak i z technického hlediska jedná o schodný prvek a všechny jejich vazby či navázané informace se sjednotí. Z~tohoto důvodu jsem v rámci metadata týmu vytvořila modely reprezentující často využívané konstrukty reality, jako třeba model politicky--správního dělení území (viz model \texttt{uzemi} v příloze \ref{CD}) nebo právních definicí subjektů a vztahů mezi nimi, který je využit výše.

\subsubsection{Rozšířené popisy vazeb}
Pro nároky části analytické platformy, která se zabývá experimentálním dotazováním nad obsahem složeným z datových sad, byla aplikována další vrstva zjednodušených popisů vazeb v ontologickém modelu. Tato zjednodušená ozna\-čení definoval vývojový tým projektu Nest BDA. Jedná se o pojmenování jednotlivých vazeb mezi entitami modelu. Tyto názvy mají sémantický význam vztahu bez nutnosti znalosti stereotypů ontologických entit, které tento vztah definují přesněji. 
Existují tři pojmy, kterými se vazby popisují:
\begin{enumerate}
    \item Vazba IS
    
    Pojmem \textit{IS} se označují vazby, které spojují podřazené entity. Týká se vyjádření hierarchie mezi entitami, které jsou nejčastěji spojeny pomocí ontologické vazby generalizace a následují tak stejný princip identity. Jedná se například o podřadnost hierarchických pojmů v doméně zvířat. Koala západní je druh koaly, druh koala zase spadá do řádu koalovité. Mezi těmito pojmy je podřadná vazba, kterou je nutné označit notací IS. 
    
    \item Vazba HAVE
    
    Označení \textit{HAVE} se využívá u vazeb, které reprezentují relaci mezi individuem a jeho vnitřní vlastností, stavem či fyzickou dispozicí. Typicky se jedná o vazbu charakterization mezi nositelem a jeho aspektem, ať už stereotypem Quality, nebo Mode. Může se týkat také vztahu mezi entitou a jejím vnitřním stavem, který je reprezentován stereotypem Phase. Například skutečnost, že koala má huňatou srst může být označena jako HAVE. Název HAVE je ale poněkud zavádějící, naznačuje totiž že instance entity \uv{něco má}, což často nutí k nadbytečnému a nesprávnému užití tohoto označení.
    
    \item Vazba RELATED
    
    Pojmenování \textit{RELATED} je označení pro relace spojující individuum a~vlastnosti dané situacemi, ve které se instance nachází. Nejčastěji se jedná o vazby představující materiální relace, nebo vztahy mezi instancí a rolí kterých může nabývat. Každý stereotyp Role totiž musí mít \uv{pečetidlo}, které stvrzuje skutečnost, že individuum této role opravdu dosáhlo, což lze považovat za onu situaci. 
\end{enumerate}

Tyto názvy jsem definovala u jednotlivých vazeb ontologických modelů. Pojmenování lze libovolně kombinovat a skládat. V případě, že jedna vazba vyhovuje více názvům, pak se jednotlivá označení oddělují středníkem. Na modelu stavebního spoření (viz obrázek \ref{fig:obrazek_vazby}) jsou viditelné názvy vazeb. U~relací generalizace v nástroji OpenPonk nejsou názvy vazeb zobrazené.

\begin{figure}\centering
 	\includegraphics[width=1.1\textwidth]{obrazky/vazby.png}
	\caption[Model reprezentující uzavření smlouvy o stavebním spoření doplněný o vazby IS, HAVE, RELATED]{Model reprezentující uzavření smlouvy o stavebním spoření doplněný o vazby IS, HAVE, RELATED (viz model \texttt{stavebni-sporeni} v příloze \ref{CD}).}\label{fig:obrazek_vazby}
\end{figure}

%------------------------------------------------------------------------------------------
\section{Datové modelování}
Během datového modelování jsou do ontologického modelu domény postupně přidávány spojitosti s datovými sadami. V této části jsou důležité přesné názvy atributů dat, které jsou uvedené v popisu datových sad. Provázání s daty se dělí do dvou fází a to vytvoření tzv. \textit{Data entit} a formování mapovacích pravidel.

\subsection{Data entity}
V této části postupu přípravy datové sady jsem rozšiřovala vytvořený ontologický model domény o entity reprezentující uspořádání atributů datové sady, či sad. Tímto je získán obecný náhled na význam informací obsažených v datové sadě vzhledem ke konceptuálnímu modelu, tedy k jejich smyslu v realitě popisované domény.

Nejdříve bylo nutné rozdělit strukturu informací datové sady dle sémantické spojitosti s ontologickým modelem tak, aby spojitost byla co nejpřesnější. Je samozřejmé, že pro každý atribut datové sady lze nalézt nejlepší, nebo alespoň nějaké, umístění, protože ontologický model popisuje právě doménu, která je v~datové sadě obsažena. Pro příklad uvádím datovou sadu, jejichž data obsahují informace o pohlaví osoby a jejím věku. 

\begin{table}[h!]
\centering
\begin{tabular}{ |c|c| } 
 \hline
 pohlavi\_kod & vek\_kod \\ 
 \hline
 \hline
 F & 39 \\ 
 \hline
 M & 53 \\ 
 \hline
 M & 64 \\ 
 \hline
 F & 24 \\
 \hline
\end{tabular}
\caption{Data obsahující informace o pohlaví osoby a jejím věku}
\label{table:1}
\end{table}

V datové sadě jsou kódy atributů definovány jako \texttt{pohlavi\_kod} odkazující na pohlaví osoby, kde hodnota \texttt{M} značí, že se jedná o muže a hodnota \texttt{F} označuje ženu. A atribut \texttt{vek\_kod} obsahuje věk osoby (viz tabulka \ref{table:1}).

K této datové sadě je vytvořen ontologický model popisující její doménu (viz obrázek \ref{fig:obrazek_1}).

\begin{figure}\centering
 	\includegraphics[width=1\textwidth]{obrazky/1.png}
	\caption[Model reprezentující pohlaví osoby a její věk]{Model reprezentující pohlaví osoby a její věk.}\label{fig:obrazek_1}
\end{figure}

Atribut \texttt{pohlavi\_kod}, označující pohlaví osoby, se váže jak s entitou Osoba, tak s entitami \texttt{Zena} a \texttt{Muz}. V tuto chvíli je nutné rozhodnout, která ontologická entita modelu nejpřesněji tento atribut vystihuje. V případě, že by atribut byl spojen s příliš obecným pojmem, pak by nastala jistá ztráta přesnosti, kterou dobře rozpracovaný ontologický model nabízí. Z tohoto důvodu je entita Osoba příliš generální označení a jedná se o příliš obecnou spojitost. Proto \texttt{pohlavi\_kod} souvisí s entitami \texttt{Zena} a \texttt{Muz}. 

Atribut \texttt{vek\_kod}, představující věk osoby, se váže k entitě \texttt{Vek}. Tato spojitost s ontologickým modelem je zjevnější. 

K tomuto prvotnímu propojení ontologického modelu s atributy datové sady jsem využívala tzv. \textit{Data entity}. Nejedná se o konstrukt či stereotyp zavedený jazykem OntoUML, ale byl vytvořen dodatečně metadata týmem pro účely použití v projektu Nest BDA. Technicky se jedná o konstrukt v~OpenPonku typu třída, jehož název vždy obsahuje označení \textit{Data}. Pro každou entitu ontologického modelu, se kterou se významově pojí nějaký atribut datové sady se vytvoří Data entita. Zároveň musí platit, že všechny atributy se v~těchto Data entitách vyskytují právě jednou. Z toho plyne že nelze pro entity \texttt{Zena} a \texttt{Muz} vytvořit dvě různé Data entity, protože by obě obsahovaly atribut \texttt{pohlavi\_kod}, což je v rozporu s možným počtem výskytů atributů. To znamená, že se vytvoří pouze jedna Data entita, která bude spojena s oběma entitami Žena i Muž a pojmenuje se generickým označením obou pojmů. Logické odlišení významu se následně určí pomocí zpřesňujících pravidel pro mapování atributů (viz \ref{mapovani atributu}). 

Pro atribut \texttt{vek\_kod} je realizace přímočařejší. Pro entitu \texttt{Vek} se vytvoří Data entita Věk, která bude obsahovat atribut \texttt{vek\_kod} a bude spojena pouze s entitou \texttt{Vek}. Přidané Data entity do ontologického modelu jsou viditelné na modelu (viz obrázek \ref{fig:obrazek_2}). Tímto způsobem se zvýrazní ontologické entity, které vypovídají o informacích, které datová sada poskytuje.

\begin{figure}\centering
 	\includegraphics[width=1\textwidth]{obrazky/2.png}
	\caption[Model reprezentující pohlaví osoby a její věk doplněný o Data entity]{Model reprezentující pohlaví osoby a její věk doplněný o Data entity.}\label{fig:obrazek_2}
\end{figure}

Pro další použití na technické úrovni je nutné atributům definovat jejich datové typy, v případě zmíněných atributů se jedná o String a Integer, což je dohledatelné v popisu datové sady.

Aby byla zajištěna provázanost jak s daty datové sady tak jejím popisem, je třeba zaručit, aby bylo zřetelné odkud (z jaké sady) atributy pochází. Proto se do Data entit vkládá Identifier používaný v projektu Nest BDA.  (viz obrázek \ref{fig:obrazek_3}).

\begin{figure}\centering
 	\includegraphics[width=1\textwidth]{obrazky/3.png}
	\caption[Model reprezentující pohlaví osoby a její věk doplněn o Identifier]{Model reprezentující pohlaví osoby a její věk doplněn o Identifier.}\label{fig:obrazek_3}
\end{figure}

Díky Data entitám v ontologických modelech je na první pohled patrné, k jakým prvkům reality jsou dostupná data a naopak k jakým částem by do budoucna bylo dobré zajistit lepší či alespoň nějaké informace. Například v datové sadě, která se týká stavebního spoření nejsou dostupné informace o~stavebních spořitelnách či výši úrokových sazeb ujednaných ve smlouvě (viz model \texttt{stavebni-sporeni} v příloze \ref{CD}). 

%------------------------------------------------------------------------------------------
\subsection{Mapování atributů} \label{mapovani atributu}
Pro přesnější provázání datové sady a ontologického modelu, které je obecně znázorněno pomocí Data entit, jsem využívala mapovacích pravidel, pomocí kterých jsem pro jednotlivé atributy dat definovala preciznější vztah k ontologickým entitám. Syntaxe těchto předpisů vznikla v rámci týmové práce skupiny metadata, pod vedením doc. Ing. Roberta Pergle, Ph. D., projektu Nest BDA. Díky pravidlům bylo docíleno plné provázanosti mezi datovou sadou a ontologickým modelem, který ji popisuje.
Pravidla se konstruují pomocí jednoduchých logických celků, které jsou blíže popsány.

\subsubsection{Formulace pravidel}
Formát pravidla je složen ze dvou částí. První vyjadřuje atributy, či množinu hodnot tohoto atributu, kterých se dané pravidlo týká. Druhá část vyjadřuje o jakých entitách atributy vypovídají.
\begin{center}
\verb|"atribut" -> "entita";|
\end{center} \hfill

Základní pravidlo popisuje holou souvislost mezi atributem a danou entitou, bez specifikovaných podmínek. Tuto formu pravidla jsem využívala v~případě, kdy Data entita je spojena pouze s jednou ontologickou entitou a její hodnoty mají jednoznačný význam, jako je atribut \texttt{vek\_kod} a entita \texttt{Vek} (viz obrázek \ref{fig:obrazek_3}). V případě atributu \texttt{vek\_kod} a entity Věk vypadá pravidlo následovně. 
\begin{center}
\verb|"vek_kod"  -> "Vek";|
\end{center} \hfill

\subsubsection{Pravidla s podmínkou}
Pokud se jedná o situaci, kdy atribut nelze spojit přímo s jednou entitou, či má více významů na základě nabývajících hodnot, pak je nutné využít v pravidlech podmínky založené na hodnotě atributu. Jedná se o případy atributů jako je \texttt{pohlavi\_kod}, který může nabývat hodnot \texttt{M} a \texttt{F}. Podle své hodnoty rozlišuje, zda se jedná o ženu nebo muže. Tento atribut je v Data entitě \texttt{Pohlavi}, která je spojena jak s ontologickou entitou \texttt{Zena} i \texttt{Muz} (viz obrázek \ref{fig:obrazek_3}). Proto je potřeba zanést do pravidel toto rozlišení na základě kterého bude zřejmé, jaké entity se určitý údaj týká. Zda se jedná o informace, v tomto případě věku (viz tabulka \ref{table:1}), o muži či ženě.

Toto omezení se uvádí do první části k atributu ve formě hodnoty, které se má atribut rovnat. V případě textové hodnoty, jako je to mu i v atributu \texttt{pohlavi\_kod}, je přirovnání následující.
\begin{center}
\verb|"pohlavi_kod" = "F" -> "Zena";|

\verb|"pohlavi_kod" = "M" -> "Muz";|
\end{center} \hfill

Další možností je číselná hodnota, tak jako tomu bylo v datové sadě týkající se sklizně zemědělských plodin podle krajů (viz model \texttt{vyrobek-\break-sklizen} v příloze \ref{CD}). Atribut statistické pro\-měnné pojmenované \texttt{stapro\_kod} nabýval hodnoty 5906 v případě, že se jednalo o hodnotu, která odpovídala sklizni plodiny. Naopak, pokud se jednalo o hektarový výnos plodiny, tak atribut měl hodnotu 5908. Ontologický model tak rozděloval pojem sklizeň na výnos a sklizené množství plodiny. Pravidla pro atribut \texttt{stapro\_kod} tak přiřazovala v podmínce atributu číselnou hodnotu.
\begin{center}
\verb|"stapro_kod" = 5906 -> "Sklizeno";|

\verb|"stapro_kod" = 5908 -> "Vynos";|
\end{center} \hfill

V datové sadě týkající se přehledu počtu důchodů (viz model \texttt{duchody} v~příloze \ref{CD}) bylo potřeba rozlišit spojení na základě regulárního výrazu. Atribut referenčního území s názvem \mbox{\texttt{referencni\_oblast\_kod}} nabývá hodnot, které začínají řetězcem \uv{OK} v pří\-padě, že se jedná o údaj v rámci okresu, začíná řetězcem \uv{VC} když se jedná o kraj anebo \uv{SP} pokud údaj vypovídá o obci. Pravidla, která jsem vytvořila tak měla podobu:
\begin{center}
\verb|"referencni_oblast_kod" =  /OK+/ -> "Okres";|
\verb|"referencni_oblast_kod" = /VC+/ -> "Kraj";|
\verb|"referencni_oblast_kod" = /SP+/ -> "Obec";|
\end{center} \hfill
        
V datové sadě, která popisovala přehledy počtu druhů důchodů (viz model \texttt{duchody} v příloze \ref{CD}), uváděl atribut \texttt{druh\_duchodu\_kod} označení kombinace druhů důchodů ke kterým se údaj vztahoval. Atribut \texttt{druh\_duchodu} pak popisoval slovně o jakou kombinaci druhu důchodů se jedná, to znamenalo že i oba tyto atributy musely být v~konjunkci. V rámci metadata týmu pojektu Nest BDA se tak rozšířily mapovací pravidla o logické spojky AND a OR. Mapování, která jsem vytvářela pak měla tuto podobu:

\begin{center}
\verb|"druh_duchodu_kod" = "PK_IPVM" AND "druh_duchodu" =|
\verb|"Invalidni duchod prvniho stupne vyplaceny v soubehu s vdoveckym|
\verb|duchodem" -> "1.stupen" AND "Vdovecky";|
\end{center}
\hfill

\subsubsection{Podmíněná pravidla}
V datové sade která se týkala průměrné měsíční hrubé mzdy a mediánu mezd bylo potřeba vytvořit pravidlo, které by zohledňovalo atribut, který udával význam hodnoty jiného atributu. Proto byla metadata týmem vytvořena syntaxe tzv. podmíněného pravidla, které říká že pokud má atribut A nějakou hodnotu, pak platí následující pravidlo pro atribut(y) B.
\begin{center}
\verb|("atribut_A" = "hodnota atributu A") -> (pravidlo atributu_B);|
\end{center}
\hfill

V případě datové sady týkající se průměrných mezd atribut \texttt{spkvantil\_kod} označoval, zda celý údaj v atributu hodnota vypovídá o mediánu či průměru mezd. Pravidlo tak vyjadřuje, že pokud \texttt{spkvantil\_kod} obsahuje hodnot 5958, pak atribut \texttt{hodnota} vypovídá o mediánu mezd.
\begin{center}
\verb|("spkvantil_kod" = 5958) -> ("hodnota" -> "Median");| 
\end{center}
\hfill

%------------------------------------------------------------------------------------------
\section{Zajištění sémantické interoperability} \label{zajisteniInterop}
Mezi heterogeními datovými sadami byla díky ontologickým modelům umož\-něna sémantická interoperabilita. Přes společné prvky datových sad je možné provázat různé odvětví reality. Nejčastěji vyskytujícím se prvkem v datových sadách a tedy i v ontologických modelech je osoba. Na obrázku (viz obrázek \ref{fig:obrazek_penze_osoba}) je viditelná entita osoby v modelu týkajícím se penzijního připojištění. Na obrázku (viz obrázek \ref{fig:obrazek_radio_osoba}) lze spatřit entitu osoba v modelu souvisejícího s poslechovostí rozhlasu. Přes osobu pak lze data provázat. 

Další častou společnou oblastí je území. Pro koncepci území jsem vytvořila samostatný model k zachování správného pojmenování částí a stereotypů entit (viz model \texttt{uzemi} v příloze \ref{CD}). Model území slouží pouze jako reference a přímo se k němu nevztahuje žádná datová sada. Prvky územního modelu jsou použity například v modelech, které se týkají sklizně zemědělských plodin (viz obrázek \ref{fig:obrazek_sklizen_uzemi} ) a poslechovosti rádia (viz obrázek \ref{fig:obrazek_radio_uzemi}).

Modely popisující ceny výrobků (viz obrázek \ref{fig:obrazek_sklizen_prodej}) a nákupy na internetu (viz obrázek \ref{fig:obrazek_nakupy_prodej}) obsahují shodně entity prodej, či prodejna. V tomto případě se jedná o podobné odvětví reality a nalezení propojujících prvků je snazší. 

Naopak v modelu (viz obrázek \ref{fig:obrazek_duchody_duchod}) popisující druhy důchodů a jejich čerpání se zobrazují entity jako důchodce, či důchod. Tyto entity se také vyskytují v modelu (viz obrázek \ref{fig:obrazek_radio_duchod}), který se týká poslechovosti rádia. Díky této spojitosti tak lze data z rozdílných oblastí reality propojit.

Entita představující období sběru informací, kterou v modelech uvádím pod názvem \texttt{Referencni obdobi}, se vyskytuje téměř ve všech modelech. Na\-příklad v modelu, který se týká stavebního spoření (viz obrázek \ref{fig:obrazek_sporeni_refObdobi}). nebo penzijního připojištění (viz obrázek \ref{fig:obrazek_penze_refObdobi}). 

Díky dodržování jednotného pojmenování a určení stereotypů entit předsta\-vující totožné reálné objekty je možné datové sady propojit přes významově stejné prvky reality.


%------------------------------------------------------------------------------------------
%------------------------------------------------------------------------------------------
\begin{conclusion}
	Cílem mé práce bylo vypracovat ontologickou analýzu klíčových domén a~séman\-tické propojení mezi modely domén a  vybranými datovými sadami. Datové sady byly definovány pro účely projektu Nest BDA, kde jsem působila v~rámci metadata týmu pod vedením doc. Ing. Roberta Pergla, Ph.D. Cílem bylo vyhotovit ontologickou analýzu vybraných domén a vytvořit jejich konceptuální modely. Následně modely propojit se souvisejícími datovými sadami a zvýraznit dosaženou sémantickou interoperabilitu.
	
	Výsledkem mé práce jsou konceptuální modely relevantních domén propojené s datovými sadami. Vytvoření konceptuálního modelu předcházela analýza domény konceptualizace, která spočívala v určení významných a přesně definovaných pojmů domény. Konceptuální modely byly vytvořeny v jazyce \mbox{OntoUML} v platformě OpenPonk. Pro záměry experimentálního dotazování nad obsahem platformy projektu Nest BDA byly navíc přidány zjednodušené popisy vazeb. 
	
	K významovému provázání konceptů reality a atributů datových sad byly využity Data entity, konstrukty vytvořené pro účely projektu Nest BDA. Pro přesnější definici propojení atributů datových sad a konceptů doménových modelů byly použity mapovací pravidla, jejichž syntaxe byla stanovena metadata týmem. 
	
	Díky dodržování jednotného pojmenování a využití ontologického modelovacího jazyka, bylo možné modely propojit přes významově shodné koncepty reality a zajistit tak sémantickou interoperabilitu datových sad.  
	
	V budoucnu bude určitě nutné stále rozšiřovat množství zpracovaných datových sad pro projekt Nest BDA. V postupu vytváření konceptuálních modelů v platformě OpenPonk bude v budoucnosti umožněna detekce návrhových antivzorů, čímž by se zvýšila přesnost a kvalita vytvořených konceptuálních modelů.  
	
\end{conclusion}

%\bibliographystyle{csn690}
%\bibliography{mybibliographyfile}

\Urlmuskip=0mu plus 2mu
\bibliographystyle{plain}
\bibliography{refs_min}


\begin{thebibliography}{999}
\bibitem{Remmark} \textit{Remmark} [online]. REMMARK, a.s. [cit. 2021-04-08]. Dostupné z: http://www.remmark.cz/

\bibitem{Remmark_prezentace} Remmark a.s. [online]. \textit{Datová platforma pro oblast
marketingu, médií a komunikace}. 2020. [cit. 2021-04-01]. [neveřejně dostupný dokument].

\bibitem{Remmark_voucher} Remmark a.s. [online]. \textit{NABÍDKA ZNALOSTÍ OD POSKYTOVATELE ZNALOSTÍ/SLUŽBY. Datová platforma pro marketingovou komunikaci}. 2020. [cit. 2021-04-01]. [neveřejně dostupný dokument].

\bibitem{Remmark_uzivatele} Remmark a.s. [online]. \textit{Datová platforma pro marketing - typový uživatel a úkoly}. 2020. [cit. 2021-04-01]. [neveřejně dostupný dokument].

\bibitem{fair_conference} Data FAIRport. Data FAIRport conference: JOINTLY DESIGNING A DATA FAIRPORT. In: \textit{Data FAIRport} [online]. [cit. 2021-04-01]. Dostupné z: https://www.datafairport.org/component/content/article/8\_news/\allowbreak9\_item1/index.html

\bibitem{FAIR_guiding_principles} Wilkinson, M.; Dumontier, M.; Aalbersberg, I.; aj. The FAIR Guiding Principles for scientific data management and stewardship. \textit{Scientific Data} [online]. 2016, 3(1). [cit. 2021-04-01]. ISSN 2052-4463. Dostupné z: doi:10.1038/sdata.2016.18

\bibitem{datovy_objekt} Kahn, R.; Wilensky, R. A framework for distributed digital object services. \textit{International Journal on Digital Libraries} [online]. 2006, 6(2), 115-123 [cit. 2021-04-01]. ISSN 1432-5012. Dostupné z: doi:10.1007/s00799-005-0128-x

\bibitem{fair_principy} GO FAIR. FAIR Principles. In: \textit{GO FAIR} [online], 2016. [cit. 2021-04-01]. Dostupné z: https://www.go-fair.org/fair-principles/

\bibitem{fair_proces} GO FAIR. FAIRification Process. In: \textit{GO FAIR}  [online], 2016. [cit. 2021-04-01]. Dostupné z: https://www.go-fair.org/fair-principles/fairification-process/

\bibitem{I of the FAIR} Guizzardi, G. Ontology, Ontologies and the “I” of FAIR. \textit{Data Intelligence} [online]. 2020, 2(1-2), 181-191. [cit. 2021-04-07]. ISSN 2641-435X. Dostupné z: doi:10.1162/dint\_a\_00040

\bibitem{ulmann triangle} Guizzardi, G. Ullmann's Triangle. In: Ontological Foundations for Structural Conceptual Models [online]. In: \textit{CTIT PhD Thesis Series}. Enschede: Telematica Instituut / CTIT, 2005. [cit. 2021-04-02]. ISSN 1381-3617. ISBN 90-75176-81-3. Dostupné z: http://doc.utwente.nl/50826/

\bibitem{KTD semanticka interop} Ceblová, L. Sémantická interoperabilita. In: \textit{KTD: Česká terminologická databáze knihovnictví a informační vědy (TDKIV)} [online]. Praha : Národní knihovna ČR, 2003. [cit. 2021-04-07]. Dostupné z: https://aleph.nkp.cz/F/?func=direct&doc\_number=000000555&local\_base\allowbreak=KTD

\bibitem{ontological patterns} Guizzardi, G. Ontological Patterns, Anti-Patterns and Pattern Languages for Next-Generation Conceptual Modeling. In: \textit{International Conference on Conceptual Modeling} [online]. Cham: Springer International Publishing, 2014. s. 13-27 [cit. 2021-04-07].  ISBN 978-3-319-12205-2. Dostupné z: doi:10.1007/978-3-319-12206-9\_2

\bibitem{Mylopoulos} Mylopoulos, J. Conceptual Modelling and Telos. In: Loucopoulos, P.; Zicari, R. \textit{Conceptual Modeling, Databases, and Case: An Integrated View of Information Systems Development} [online]. United States, New York: John Wiley & Sons, Inc., 1992. [cit. 2021-04-01]. ISBN 978-0-471-55462-2. Dostupné z: http://www.cs.toronto.edu/~jm/2507S/Readings/CM+Telos.pdf

\bibitem{Pergl habilitace} Pergl, R. \textit{Conceptualisation: Chapters from Harmonising Enterprise and Software Engineering} [online]. Praha, 2018. [cit. 2021-04-01]. Dostupné z: doi:10.13140/RG.2.2.27388.08325. Habilitační práce. ČVUT v Praze, Fakulta informačních technologií, Katedra softwarového inženýrství.

\bibitem{On ontology ontologies concept} Guizzardi, G. On Ontology, ontologies, Conceptualizations, Modeling Languages, and (Meta)Models. In: \textit{Databases and Information Systems IV: Selected Papers from the Seventh International Baltic Conference DB&IS'2006} [online]. Amsterdam: IOS Press, 2007. [cit. 2021-04-01]. 18-39. ISBN 9781586037154. Dostupné z: https://www.researchgate.net/publication/221278057\_On\_Ontology\allowbreak\_ontologies\_Conceptualizations\_Modeling\_Languages\_and\_MetaModels

\bibitem{ontological foundations dor struc concep} Guizzardi, G. \textit{Ontological Foundations for Structural Conceptual Models}  [online]. Enschede, Nizozemsko: Centre for Telematics and Information Technology, University of Twente, 2005. [cit. 2021-04-01]. ISBN 90-75176-81-3. Dostupné z: https://www.researchgate.net/publication/215697579\_Ontological\allowbreak\_Foundations\_for\_Structural\_Conceptual\_Models

\bibitem{Towards ontological foudations UFO story} Guizzardi, G.; Wagner, G.; Almedia, J.P.A.; Guizzardi, R. Towards ontological foundations for conceptual modeling: The unified foundational ontology (UFO) story. \textit{Applied Ontology} [online]. 2015, 10(3-4), 259-271. [cit. 2021-04-01]. ISSN 18758533. Dostupné z: doi:10.3233/AO-150157

\bibitem{uvod_do_ontologie} Šmajs, J.; Krob, J. \textit{Úvod do ontologie: Bytí, prostor, čas, pohyb, evoluce, struktura, systém, řád, informace, vesmír, kultura, člověk : (Skriptum filoz. fak. MU)} [online]. 2. opr. a rozš. vyd. Brno: Masarykova univerzita, 1994. [cit. 2021-04-01]. ISBN 80-210-0879-2. Dostupné z: https://www.phil.muni.cz/fil/eo/skripta/uvod\_do\_ontologie.pdf

\bibitem{aristoteles} Aristoteles. \textit{Metafyzika}. 2. vyd. Přeložil Antonín Kříž. Praha: Petr Rezek, 2003. ISBN 80-86027-19-8.

\bibitem{sisyfos_metafyzika} Heřt, J. Metafyzika.In: \textit{Sisyfos} [online]. Občanské sdružení Český klub skeptiků Sisyfos, 2007. [cit. 2021-04-01]. Dostupné z: https://www.sisyfos.cz/clanek/983-metafyzika

\bibitem{Mealy} Mealy, G. Another Look at Data. In: \textit{Managing Requirements Knowledge, International Workshop on} [online]. Anaheim: 1967. [cit. 2021-04-01]. Dostupné z: doi: 10.1109/AFIPS.1967.112

\bibitem{klasifikace ontologii} Guizzardi, G. A classification of different types of ontology. In: Ontological Foundations for Structural Conceptual Models [online]. In: \textit{CTIT PhD Thesis Series}. Enschede: Telematica Instituut / CTIT, 2005. [cit. 2021-04-02]. ISSN 1381-3617. ISBN 90-75176-81-3. Dostupné z: http://doc.utwente.nl/50826/ 

\bibitem{semanticky web} Berners-Lee, T.; Hendler, J.; Lassila, O. The Semantic Web. \textit{SCIENTIFIC AMERICAN} [online]. 2001, 5. [cit. 2021-04-01]. Dostupné z: https://www.scientificamerican.com/magazine/sa/2001/05-01/

\bibitem{aristoteles kategorie} Vancura, M. Systém kategorií u Aristotela. \textit{E-LOGOS} [online]. 2009, 16(1), 1-22. [cit. 2021-04-01]. ISSN 1211-0442. Dostupné z:  https://e-logos.vse.cz/artkey/elg-200901-0022\_System-kategorii-u-Aristotela.php

\bibitem{Rybola} Rybola, Z. \textit{Towards OntoUML for Software Engineering: Transformation of OntoUML into Relational Databases} [online]. Praha, 2017. [cit. 2021-04-08]. Dostupné z: http://147.32.232.248/sites/default/files/PhDThesis-Rybola.pdf. Disertační práce. České vysoké učení technické v Praze, Fakulta informačních technologií. doc. Ing. Karel Richta, CSc.

\bibitem{uml diagram} \textit{UML diagrams} [online]. uml-diagrams.org. [cit. 2021-04-02]. Dostupné z: https://www.uml-diagrams.org/

\bibitem{ontoUml docs} \textit{OntoUML specification} [online]. Centrum pro konceptuální modelování a implementace, Fakulta informačních technologií, České vysoké učení technické v Praze. [cit. 2021-04-02]. Dostupné z: https://ontouml.readthedocs.io/en/latest/index.html

\bibitem{guizzardi ontological foundations} Guizzardi, G. Ontological Foundations for Structural Conceptual Models [online]. In: \textit{CTIT PhD Thesis Series}. Enschede: Telematica Instituut / CTIT, 2005. [cit. 2021-04-02]. ISSN 1381-3617. ISBN 90-75176-81-3. Dostupné z: http://doc.utwente.nl/50826/

\bibitem{identita} Identity, Principle of. In: \textit{New Catholic Encyclopedia} [online]. Encyclopedia.com. [cit. 2021-04-08]. Dostupné z: https://www.encyclopedia.com/religion/encyclopedias-almanacs-transcripts-and-maps/identity-principle

\bibitem{klasifikace stereotypu} Guizzardi, G.Ontological Distinctions in a
Typology of Substantial Universals. In: Ontological Foundations for Structural Conceptual Models [online]. In: \textit{CTIT PhD Thesis Series}. Enschede: Telematica Instituut / CTIT, 2005. [cit. 2021-04-02]. ISSN 1381-3617. ISBN 90-75176-81-3. Dostupné z: http://doc.utwente.nl/50826/

\bibitem{open_ponk} \textit{OpenPonk modeling platform} [online]. Centre for Conceptual Modelling and Implementation, 2020. [cit. 2021-04-01]. Dostupné z: https://openponk.org/

\bibitem{open_ponk_Pergl} Uhnák, P.; Pergl, R. The OpenPonk modeling platform. \textit{Proceedings of the 11th edition of the International Workshop on Smalltalk Technologies} [online]. New York, NY, USA: ACM, 2016. s. 1-11. [cit. 2021-04-01]. ISBN 9781450345248. Dostupné z: doi:10.1145/2991041.2991055

\bibitem{open_ponk_Belohoubek} Bělohoubek, M. \textit{OntoUML Models Verification for the OpenPonk platform} [online]. Praha, 2019. [cit. 2021-04-01]. Dostupné z: https://dspace.cvut.cz/handle/10467/83191.  Bakalářská práce. ČVUT v Praze, Fakulta informačních technologií, Katedra softwarového inženýrství. doc. Ing. Robert Pergl, Ph.D.

\bibitem{stavebni-sporeni} Ministerstvo financí České republiky. \textit{Vývoj stavebního spoření} [online].  Poslední změna 02.03.2021. [cit. 2021-04-18]. Dostupné z: https://www.mfcr.cz/cs/soukromy-sektor/stavebni-sporeni/vyvoj-stavebniho-sporeni

\bibitem{vyrobek} Český statistický úřad. \textit{Průměrné spotřebitelské ceny vybraných výrobků - potravinářské výrobky} [online]. Poslední změna 14.12.2018. [cit. 2021-04-18]. Dostupné z: https://www.czso.cz/csu/czso/prumerne-spotrebitelske-ceny-vybranych-vyrobku-potravinarske-vyrobky

\bibitem{sklizen} Český statistický úřad. \textit{Sklizeň zemědělských plodin podle krajů} [online]. 18.02.2021. [cit. 2021-04-18]. Dostupné z: https://www.czso.cz/csu/czso/sklizen-zemedelskych-plodin-podle-kraju

\bibitem{radio} STEM/MARK; MEDIAN. \textit{RADIO PROJECT}. 3. a 4. čtvrtletí 2010. [cit. 2021-04-18]. [neveřejně dostupný dokument].

\bibitem{duchody1} Česká správa sociálního zabezpečení. Otevřená data. \textit{Celkový počet důchodců, průměrná výše důchodu a průměrný věk důchodců podle roku, druhu důchodu a pohlaví za ČR, kraje a okresy} [online]. [cit. 2021-04-18]. Dostupné z: https://data.cssz.cz/-/duchodci-v-cr-krajich-okresech

\bibitem{duchody2} Česká správa sociálního zabezpečení. Otevřená data. \textit{Počet vyplacených důchodů v České republice podle roku, druhu důchodu, měsíční výše důchodu a pohlaví} [online]. [cit. 2021-04-18]. Dostupné z: https://data.cssz.cz/-/vyplacene-duchody-dle-vyse

\bibitem{penze} Ministerstvo financí České republiky. \textit{Vývoj penzijního připojištění a doplňkového penzijního spoření} [online].  Poslední změna 02.03.2021. [cit. 2021-04-18]. Dostupné z: https://www.mfcr.cz/cs/soukromy-sektor/soukrome-penzijni-systemy/iii-pilir-doplnkove-penzijni-sporeni-a-p/vyvoj-penzijniho-pripojisteni

\bibitem{nakupy} Eurostat. \textit{Internet purchases by individuals (until 2019)} [online]. 27.01.2021. [cit. 2021-04-18]. Dostupné z: https://ec.europa.eu/eurostat/web/products-datasets/-/isoc\_ec\_ibuy

\bibitem{stavebni sporeni} Zákon č. 96/1993 Sb., o stavebním spoření a státní podpoře stavebního spoření a o doplnění zákona České národní rady č. 586/1992 Sb., o daních z příjmů, ve znění zákona České národní rady č. 35/1993 Sb.

\bibitem{obcansky zakonik} Zákon č. 89/2012 Sb., občanský zákoník.

\bibitem{zakon o vystupovani statu} Zákon č. 219/2000 Sb., o majetku České republiky a jejím vystupování v právních vztazích.

\bibitem{zakon o bankach} Zákon č. 21/1992 Sb., o bankách.

\end{thebibliography}

\appendix

\chapter{Seznam použitých zkratek}
% \printglossaries
\begin{description}
    \item[API]  Application Programming Interface
    \item[DOLCE] Descriptive Ontology for Linguistic and Cognitive Engineering
    \item[GFO] General Formalized Ontology
	\item[Nest BDA] Nest Big Data Arena
	\item[UFO] Unified Foundational Ontology
	\item[UML] Unified Modeling Language
	\item[XML] Extensible Markup Language
\end{description}



\chapter{Obsah přiloženého CD} \label{CD}
%upravte podle skutecnosti
\begin{figure}
	\dirtree{%
		.1 readme.txt\DTcomment{stručný popis obsahu CD}.
		.1 models\DTcomment{konceptuální modely}.
		.2 stavebni-sporeni\DTcomment{model stavebního spoření}.
		.2 vyrobek-sklizen\DTcomment{model cen výrobků a sklizně plodin}.
		.2 radio\DTcomment{model poslechovosti rozhlasu}.
		.2 duchody\DTcomment{model počtu důchodů a vyplacených důchodů}.
		.2 penze\DTcomment{model penzijního připojištění a spoření}.
		.2 nakupy\DTcomment{model internetových nákupů}.
		.2 uzemi\DTcomment{model území}.
		.1 BP\_Martinkova\_Jana\_2021.pdf\DTcomment{text práce ve formátu PDF}.
		.1 BP\_Martinkova\_Jana\_2021.tex\DTcomment{zdrojová forma práce ve formátu \LaTeX{}}.
	}
\end{figure}

\chapter{Zobrazení entit propojující modely}

Příloha obsahuje výřezy modelů, které zobrazují společné entity představující reálné objekty. Přes tyto totožné prvky je možné rozdílné datové sady význa\-mově propojit.

V příloze jsou postupně zobrazeny výřezy modelů obsahující entity \texttt{Osoba}, entity modelu \texttt{uzemi}, \texttt{Prodej}, \texttt{Duchod} a \texttt{Referencni obdobi}. Pro každou entitu jsou uvedeny dva vybrané ontologické modely datových sad, které danou entitu obsahují a tudíž jsou na základě tohoto významově stejného prvku propojitelné. Detailnější popis je uveden v \ref{zajisteniInterop}.



%\section{Vyznačení entity \texttt{Osoba} v modelech \texttt{penze} a \texttt{radio}}
\begin{figure}[H]\centering
 	\includegraphics[width=1\textwidth]{obrazky/penze_osoba.png}
	\caption[Zobrazení entity \texttt{Osoba} v modelu \texttt{penze}]{Zobrazení entity \texttt{Osoba} v modelu \texttt{penze} (viz model \texttt{penze} v příloze \ref{CD})}\label{fig:obrazek_penze_osoba}
\end{figure}


\begin{figure}[H]\centering
 	\includegraphics[width=1\textwidth]{obrazky/radio_osoba.png}
	\caption[Zobrazení entity \texttt{Osoba} v modelu \texttt{radio}]{Zobrazení entity \texttt{Osoba} v modelu \texttt{radio} (viz model \texttt{radio} v příloze \ref{CD})}\label{fig:obrazek_radio_osoba}
\end{figure}
\newpage

%\section{Vyznačení entit území v modelech \texttt{vyrobek-sklizen} a \texttt{radio}}

\begin{figure}[H]\centering
 	\includegraphics[width=1\textwidth]{obrazky/sklizen_uzemi.png}
	\caption[Zobrazení entit území v modelu \texttt{vyrobek-sklizen}]{Zobrazení entit území v modelu \texttt{vyrobek-sklizen} (viz model \texttt{vyrobek-sklizen} v příloze \ref{CD})}\label{fig:obrazek_sklizen_uzemi}
\end{figure}


\begin{figure}[H]\centering
 	\includegraphics[width=1\textwidth]{obrazky/radio_uzemi.png}
	\caption[Zobrazení entit území v modelu \texttt{radio}]{Zobrazení entit území v modelu \texttt{radio} (viz model \texttt{radio} v příloze \ref{CD})}\label{fig:obrazek_radio_uzemi}
\end{figure}

\newpage
%\section{Vyznačení entity \texttt{Prodej} v modelech \texttt{vyrobek-sklizen} a \texttt{nakupy}}
\begin{figure}[H]\centering
 	\includegraphics[width=1\textwidth]{obrazky/sklizen_prodej.png}
	\caption[Zobrazení entity \texttt{Prodej} v modelu \texttt{vyrobek-sklizen}]{Zobrazení entity \texttt{Prodej} v modelu \texttt{vyrobek-sklizen} (viz model \texttt{vyrobek-sklizen} v příloze \ref{CD})}\label{fig:obrazek_sklizen_prodej}
\end{figure}

\begin{figure}[H]\centering
 	\includegraphics[width=1\textwidth]{obrazky/nakup_prodej.png}
	\caption[Zobrazení entity \texttt{Prodej} v modelu \texttt{nakupy}]{Zobrazení entity \texttt{Prodej} v modelu \texttt{nakupy} (viz model \texttt{nakupy} v příloze \ref{CD})}\label{fig:obrazek_nakupy_prodej}
\end{figure}


\newpage
%\section{Vyznačení entity \texttt{Duchod} v modelech \texttt{duchody} a \texttt{radio}}
\begin{figure}[H]\centering
 	\includegraphics[width=1\textwidth]{obrazky/duchody_duchod.png}
	\caption[Zobrazení entity \texttt{Duchod} v modelu \texttt{duchody}]{Zobrazení entity \texttt{Duchod} v modelu \texttt{duchody} (viz model \texttt{duchody} v příloze \ref{CD})}\label{fig:obrazek_duchody_duchod}
\end{figure}

\begin{figure}[H]\centering
 	\includegraphics[width=1\textwidth]{obrazky/radio_duchod.png}
	\caption[Zobrazení entity \texttt{Duchod} v modelu \texttt{radio}]{Zobrazení entity \texttt{Duchod} v modelu \texttt{radio} (viz model \texttt{radio} v příloze \ref{CD})}\label{fig:obrazek_radio_duchod}
\end{figure}

\newpage
%\section{Vyznačení entity \texttt{Referencni obdobi} v modelech \texttt{stavebni-sporeni} a \texttt{penze}}
\begin{figure}[H]\centering
 	\includegraphics[width=1\textwidth]{obrazky/sporeni_refObdobi.png}
	\caption[Zobrazení entity \texttt{Referencni obdobi} v modelu \texttt{stavebni-sporeni}]{Zobrazení entity \texttt{Referencni obdobi} v modelu \texttt{stavebni-sporeni} (viz model \texttt{stavebni-sporeni} v příloze \ref{CD})}\label{fig:obrazek_sporeni_refObdobi}
\end{figure}

\begin{figure}[H]\centering
 	\includegraphics[width=1\textwidth]{obrazky/penze_refObdobi.png}
	\caption[Zobrazení entity \texttt{Referencni obdobi} v modelu \texttt{penze}]{Zobrazení entity \texttt{Referencni obdobi} v modelu \texttt{penze} (viz model \texttt{penze} v příloze \ref{CD})}\label{fig:obrazek_penze_refObdobi}
\end{figure}


\end{document}
