Lekce 7 - Datové modelování v GIS 1. Cíle lekce........................................................................................................................................... 1 2. Modely prostorových dat.................................................................................................................... 1 3. Datové modelování v GIS.................................................................................................................. 2 4. Příklad ­ datový model digitální technické mapy............................................................................... 2 5. Zkušební otázky.............................................................................................................................. 10 1. Cíle lekce * popsat způsob vytváření datových modelů v GIS 2. Modely prostorových dat Datové modelování v GIS se neliší od modelování běžných IS. Datový model každého informačního systému obsahuje objekty (entity) a relace mezi objekty (entitami)1 . Mezi relacemi je významná relace hierarchie (vyjadřuje nadtyp - podtyp objektu), tato relace je acyklická2 , nemusí to být strom (les). V datovém modelu GIS jsou vymezeny speciální - prostorové - objekty a speciální - prostorové relace. Prostorové objekty a relace jsou pokud možno zobecňovány a standardizovány: architekt systému vybírá z předem stanovených tříd prostorových objektů a z předem stanovených tříd prostorových relací. Prostorové objekty se dále dělí dále na dva základní podtypy * geometrický objekt, který popisuje tvar objektu a lokalizaci objektu v prostoru - například souřadnicemi * topologický objekt, který vchází do prostorové relace s jinými (topologickými) objekty Neprostorové objekty se v GIS nazývají předmětné objekty. Všechny objekty a relace jsou v každém datovém modelu definovány svým výčtem. Například: I. prostorový objekt A. prostorový topologický objekt 1. třída bod 2. třída graf a) třída uzel b) třída hrana 3. třída hranice areálu 4. třída areál B. prostorový geometrický objekt 1. třída vektorových dat a) třída bod b) třída lomená čára 2. třída rastrových dat a) třída pixel b) třída řetěz pixelů c) třída oblast pixelů II. předmětný objekt Příklady topologických relací: * objekt typu hrana začíná v objektu typu uzel a končí v objektu typu uzel * objekt typu prostorový objekt leží uvnitř objektu typu areál * objekt typu hrana tvoří hranici mezi dvěma objekty typu areál * objekt typu prostorový objekt leží {nalevo, napravo} od objektu typu hrana Příklad hierarchie jednoduchého datového modelu: 1 Omezíme se na binární relace na množině všech objektů obsažených v datovém modelu. Relace mezi objekty (entitami) mohou mít různé názvy v závislosti na použité metodice. Například v návrzích objektově orientovaných systémů se často nazývají asociace. 2 Binární relace r MxM je acyklická, pokud platí: je-li n 2, m1, m2, ..., mn M, (m1,m2), ..., (mn-1, mn) MxM, pak m1 mn. 1 zařízení kan. sítě jednotná dešťová splašková šachta stoka graf uzel vektorový bod lomená objekt čára kruhový obloukhrana hierarchie (nadtyp-podtyp) topologický vztah vztah topologických a geometrických entit třídy topologických entit třídy geometrických entit 3. Datové modelování v GIS Datovým modelováním v GIS rozumíme vytváření datových modelů prostorových i popisných (předmětných) dat zobrazujících realitu. Cílem datového modelování je vytvoření takového datového modelu, který umožňuje realizovat funkce GIS očekávané uživatelem. Datové modelování je součástí standardního postupu vytváření informačních systémů: * analýza požadavků * konceptuální návrh systému * logický návrh systému * fyzický návrh systému * implementace a testování systému * zkušební provoz systému * rutinní provoz systému * revize systému Standardním postupem by tedy měl vzniknout konceptuální datový model navržený na základě analýzy požadavků, který je dále upraven do logického datového modelu (normalizací a dalšími postupy datového modelování) a ten pak do fyzického datového modelu podle reálného prostředí, ve kterém bude systém implementován. 4. Příklad ­ datový model digitální technické mapy Principy návrhu Určujícím vztahem mezi třídami (v intencích UML je objekt (=feature typ) chápán jako instance třídy), které reprezentují data digitální technické mapy (DTM), je hierarchický vztah dědičnosti. Tato relace je popsána ve formě diagramů abstraktních tříd. (Abstraktní třída je třída, která není přímo implementována. Zde slouží k dokumentaci struktury datového modelu DMP. Návrh implementace abstraktních tříd je předmětem návrhu systému.) Kromě dědičnosti jsou v diagramech zachyceny další vztahy mezi třídami Body polohopisu, Spojení bodů polohopisu a Liniové a Bodové prvky polohopisu a také asociace mezi zdrojovými a odvozenými třídami při odvozování ploch. Hierarchie definovaná relací dědičnosti je obecnější než stromová struktura, existují třídy (například třída plynovod), které mají dva předky (například třída inženýrská síť a třída autorizovaná inženýrská síť). Tato vlastnost systému umožňuje efektivní návrh a údržbu datového modelu bez nadbytečné redundance. Potomci přebírají všechny vlastnosti předků a navíc mohou některé vlastnosti rozšiřovat. Dále v textu jsou uvedeny postupně příklady diagramů abstraktních tříd: ke každé třídě sada jejích přímých potomků. V diagramech jsou uvedeny vztahy dědičnosti a základní asociace bez kardinality, 2 které jsou v případě potřeby uvedeny v dalších diagramech. Ukázalo se, že pro potřeby konceptuálního návrhu stačí uvést diagram základní třídy DTM a jejích přímých potomků, u inženýrských sítí ještě diagramy potomků další hierarchické úrovně. Další odstavce textu obsahují podrobnější popis základních nehierarchických vztahů v datovém modelu: * vztah tříd bod polohopisu, spojení bodů polohopisu a liniový prvek polohopisu * vztah tříd týkajících se odvozování ploch ­ obecný model ploch i jeho jednotlivé případy v DTM Hierarchie tříd DTM Základní třídou je třída nazvaná DTM ­ Digitální technická mapa. Jejími přímými potomky jsou základní kategorie datového modelu vymezené předmětně (svým obsahem). V dalších částech jsou uvedeny příklady diagramů přímých potomků třídy DTM. 3 cd DMP referenční katastrální mapa polohopis technické mapy DMP digitální katastrální mapa inženýrská síť technické mapy autorizovaná inženýrská síť hranice technického ochranného pásma autorizovaná hranice ochranného pásma výškopis Třída Digitální katastrální mapa Třídy Digitální katastrální mapa a Referenční katastrální mapa obsahují stejné potomky ­ třídy popisných textových, bodových a liniových prvků a třídy liniových a bodových polohopisných prvků asociovaných buď přímo, nebo přes asociační třídu Spojení bodů polohopisu s třídou Bod polohopisu (tyto asociace jsou podrobněji vysvětleny v kapitole 2.3.3). Ze tříd polohopisných resp. popisných prvků jsou vyčleněny třídy Referenční číslo parcely, Popisné číslo parcely, Hranice parcely a Obvod budovy, které slouží k definici topologických vztahů při odvozování ploch. 4 cd DMP - DKM DMP digitální katastrální mapa referenční katastrální mapa hranice parcely polohopis technické mapy referenční katastrální mapa obvod budovy polohopis technické mapy referenční katastrální mapa výškopis bodový prvek polohopisu polohopis technické mapy referenční katastrální mapa výškopis liniový prvek polohopisu referenční katastrální mapa referenční číslo parcely referenční katastrální mapa popisné číslo parcely polohopis technické mapy referenční katastrální mapa výškopis bodový popisný prvek polohopis technické mapy referenční katastrální mapa výškopis liniový popisný prvek polohopis technické mapy referenční katastrální mapa výškopis textový popisný prvek polohopis technické mapy referenční katastrální mapa výškopis bod polohopisu polohopis technické mapy referenční katastrální mapa výškopis bod bodového pole spojení bodů polohopisu Třída polohopis technické mapy Do třídy Polohopis technické mapy jsou zařazeny potomci Plocha parcely, Plocha budovy, Plocha využití území a Plocha administrativně správní jednotky, tedy třídy, které budou obsahovat odvozené plošné útvary. 5 cd DMP - polohopis technické mapy DMP polohopis technické mapy digitální katastrální mapa referenční katastrální mapa výškopis liniový popisný prvek digitální katastrální mapa referenční katastrální mapa výškopis bodový popisný prvek digitální katastrální mapa referenční katastrální mapa výškopis bod polohopisu spojení bodů polohopisu digitální katastrální mapa referenční katastrální mapa výškopis textový popisný prvek digitální katastrální mapa referenční katastrální mapa výškopis liniový prvek polohopisu digitální katastrální mapa referenční katastrální mapa výškopis bodový prvek polohopisu digitální katastrální mapa referenční katastrální mapa výškopis bod bodového pole plocha parcely plocha budovy plocha využití území plocha administrativně správní jednotky digitální katastrální mapa referenční katastrální mapa obvod budovy hranice městské části Třída Inženýrská síť technické mapy Třídy Inženýrská síť technické mapy a Autorizovaná inženýrská síť jsou třídy obsahující neautorizovaná a autorizovaná data o inženýrských sítích. Mají shodné potomky, které obsahují data o jednotlivých typech sítí. Tento model je navržen i s ohledem na předpokládaný další vývoj DTM, při které očekáváme přímou datovou komunikaci se správci sítí. 6 cd DMP - inženýrské sítě technické mapy DMP inženýrská síť technické mapy neurčená síť autorizovaná inženýrská síť produktovod autorizovaná inženýrská síť potrubní pošta autorizovaná inženýrská síť vodovod autorizovaná inženýrská síť kanalizace autorizovaná inženýrská síť plynovod autorizovaná inženýrská síť teplovod autorizovaná inženýrská síť silnoproud autorizovaná inženýrská síť slaboproud autorizovaná inženýrská síť kolektor Třída Kanalizace Základní třídou pro zobrazení polohopisných prvků třídy Kanalizace je třída Bod polohopisu IS, která je asociována přímo s třídou Bodový prvek polohopisu IS a nepřímo přes asociační třídu Spojení bodů polohopisu s třídou Liniový prvek polohopisu. Třída Kanalizace je dále předkem tříd popisných prvků (Bodový popisný prvek IS, Liniový popisný prvek IS, Textový popisný prvek IS). Stejné potomky a stejnou strukturu mají i další třídy inženýrských sítí, jejichž diagramy už neuvádíme. 7 cd DMP - kanalizace autorizovaná inženýrská síť inženýrská síť technické mapy kanalizace neurčená síť plynovod potrubní pošta produktovod silnoproud slaboproud teplovod vodovod textový popisný prvek IS neurčená síť plynovod potrubní pošta produktovod silnoproud slaboproud teplovod vodovod bodový popisný prvek IS neurčená síť plynovod potrubní pošta produktovod silnoproud slaboproud teplovod vodovod liniový popisný prvek IS neurčená síť plynovod potrubní pošta produktovod silnoproud slaboproud teplovod vodovod bod polohopisu IS neurčená síť plynovod potrubní pošta produktovod silnoproud slaboproud teplovod vodovod bodový prvek polohopisu IS neurčená síť plynovod potrubní pošta produktovod silnoproud slaboproud teplovod vodovod liniový prvek polohopisu IS spojení bodů polohopisu IS Asociace Spojení bodů polohopisu Vztahy mezi třídami Bod polohopisu, Spojení bodů polohopisu, Liniový prvek polohopisu a Bodový prvek polohopisu je znázorněn na následujícím diagramu (vztah mezi obdobně pojmenovanými třídami v podtřídách modelujících inženýrské sítě je shodný). Bod polohopisu je třída, která obsahuje body, jež jsou geodeticky zaměřené nebo jinak pořízené s definovanou přesností a v definovaných podmínkách. Všechny polohopisné (bodové i liniové) prvky mapy a jejich vrcholy leží na těchto bodech. Bod polohopisu může vytvářet více liniových prvků a liniový prvek je tvořen alespoň dvěma body polohopisu. Tuto asociaci reprezentuje třída Spojení bodů polohopisu. Obecný model ploch Vztahy mezi třídami, které se podílejí na generování ploch, je znázorněn následujícím diagramem. Třída Hranice plochy obsahuje liniové prvky, které tvoří topologicky čistou kresbu (bez duplicit, volných konců a křížení uvnitř linií). Tvoří areálový graf (diagraf rovinného grafu). Každá hranice plochy se podílí na tvorbě jedné nebo dvou ploch (jedné plochy tehdy, jed-li o plochu na hranici zájmového území). Třída Plocha má vnitřní strukturu, která není v diagramu uvedena. Skládá se z jednoho nebo několika uzavřených polygonů. Pokud je plocha souvislá, jeden polygon tvoří vnější 8 cd spojení bodů polohopisu digitální katastrální mapa polohopis technické mapy referenční katastrální mapa výškopis bod polohopisu spojení bodů polohopisu digitální katastrální mapa polohopis technické mapy referenční katastrální mapa výškopis liniový prvek polohopisu digitální katastrální mapa polohopis technické mapy referenční katastrální mapa výškopis bodový prvek polohopisu 1..* 0..11..* 1..* 0..1 1 cd Obecný model ploch plocha hranice plochy definiční bod plochy +tvoří 1..* +je tvořena 1..2 1 leží v 1 hranici plochy, případné další vnitřní hranice - díry v ploše. Pokud plocha souvislá není, je polygonů, tvořících vnější hranici plochy, více. Uvnitř plochy leží právě jeden bodový nebo textový prvek ­ definiční bod plochy - (centroid). Ten slouží k jednoznačné identifikaci vytvořeného plošného útvaru. V následujících diagramech jsou třídy, které se podílejí na generování ploch, vybarveny shodnou barvou jako v obecném modelu. Plošné objekty budou generovány ze svých hranic automaticky při zplatnění změnového řízení, které se týká zdrojových objektů ploch, nebo na vyžádání uživatelem. Charakteristika plochy (typ plochy, identifikace plochy) bude odvozována z definičního bodu plochy. Integritu mezi třídami Plocha, Hranice plochy a Definiční bod plochy bude zajišťovat systém. Objekty třídy Plocha budou persistentní. Geometrii ploch jako odvozených objektů nebude možné modifikovat přímo, při změně je nutné modifikovat zdrojové objekty. Plochy využití území Třídu Hranice ploch využití území tvoří vybrané liniové polohopisné prvky a hranice parcel. Obsah třídy Definiční bod plochy je tvořen určitými typy bodových popisných prvků, mezi ně patří definiční body budov. Další asociace mezi objekty Pro modelování závislostí mezi objekty DTM jsou použity další typy vztahů, které jsou definovány pomocí datového modelu a udržovány systémem. Týkají se především vztahů liniových a bodových objektů. * Prostorový vztah bod na linii. Jedná se o prostorový vztah, kde závislý bodový objekt leží na nadřízeném liniovém objektu ­ na některém z jeho vrcholů. * Prostorový vztah linie na linii. Jedná se o prostorový vztah, kde závislý liniový objekt leží na nadřízeném liniovém objektu ­ objekty mají některé určitou sekvenci vrcholů shodnou. Kromě prostorových vztahů mohou být objekty asociovány pomocí hodnot popisných atributů. 9 cd využití území polohopis technické mapy plocha využití území hranice využití území digitální katastrální mapa referenční katastrální mapa hranice parcely digitální katastrální mapa polohopis technické mapy referenční katastrální mapa obvod budovy digitální katastrální mapa polohopis technické mapy referenční katastrální mapa výškopis liniový prvek polohopisu definiční bod bloku území digitální katastrální mapa polohopis technické mapy referenční katastrální mapa výškopis bodový popisný prvek definiční bod budovy 0..1 1 +tvoří 1..* +je tvořena 1..2 1 leží v 1 0..1 Vysvětlivky k diagramům Pokud je kosočtverec u linie znázorňující agregaci vyplněn, jedná se o podobný, ale silnější vztah ­ kompozici. Diagramy jsou vytvořeny nástrojem Enterprise Architect, verze 6.1. 5. Zkušební otázky 1. Popiš rozdíly mezi konceptuálním, logickým a fyzickým datovým modelem. 2. Jaké jsou zvláštnosti datového modelu GIS proti datovým modelům jiných IS? 3. Popiš kroky návrhu datového modelu v GIS. Připomínky a dotazy k obsahu lekce posílej, prosím, na adresu: Rudolf Richter, richter@fi.muni.cz 10 cd vysvětlivky 1 třída první třída potomků druhá třída potomků třída potomků první i druhé třídy třída potomků první třídy další třída asociace dědič nost dědič nost dědič nost dědič nost dědič nost agregace