SVENSK STANDARD Fastställd 2006-03-08 Utgåva 1 Geografisk information Typoberoende representation av geografiska företeelser Geographic information Generic representation of geographic phenomena ICS 35.020.00; 35.240.01; 35.240.30; 35.240.50; 35.240.60 Språk: svenska Publicerad: april 2006 Copyright SIS. Reproduction in any form without permission is prohibited.
Innehåll Förord... 3 0 Orientering... 4 0.1 Bakgrund... 4 0.2 Typoberoende objektmodell... 4 0.3 Modell för objekttypskatalog... 4 0.4 Användning av denna standard... 5 0.5 Förhållandet mellan denna standard och ISO 19110 Methodology for feature cataloguing... 6 0.6 Tidig respektive sen bindning... 6 1 Omfattning... 7 2 Normativa hänvisningar... 9 3 Termer och definitioner... 9 4 Förkortningar och modellbegrepp... 13 4.1 Förkortningar... 13 4.2 Modellbegrepp... 14 5 Applikationsschema... 14 5.1 Applikationsschema och schemaberoenden... 14 5.2 Katalogmodellen... 15 5.3 Objektmodell... 34 5.4 Hantering av förändring... 46 Bilaga A (informativ) Utgångspunkter, överväganden och ställningstaganden... 48 A.1 Allmänt... 48 A.2 Varför inte ISO 19110 räcker till... 48 A.3 Generaliseringar och specialiseringar... 48 A.4 Flervärda samband... 49 A.5 Härledda attribut... 49 A.6 Utbredningar... 49 A.7 Anpassad objektmodell... 49 Bilaga B (informativ) Exempel... 50 B.1 Allmänt... 50 B.2 Exempel... 50 B.2.1 Allmänt... 50 B.2.2 Objekttypskatalog... 50 B.2.3 Modell för objekttypskataloger... 55 B.2.4 Objekt och objektmodeller... 57 B.2.5 Data... 59 Bilaga C (informativ) Riktlinjer för datautbyte... 64 Sida Upplysningar om sakinnehållet i standarden lämnas av SIS, Swedish Standards Institute, telefon 08-555 520 00. Standarder kan beställas hos SIS Förlag AB som även lämnar allmänna upplysningar om svensk och utländsk standard. Postadress: SIS Förlag AB, 118 80 STOCKHOLM Telefon: 08-555 523 10. Telefax: 08-555 523 11 E-post: sis.sales@sis.se. Internet: www.sis.se
Förord SS 63 70 06 Geografisk information Typoberoende representation av geografiska företeelser har utarbetats av den tekniska kommittén SIS/TK 323 Ramverk för geografisk information. TK 323 ingår i projektområdet Stanli inom SIS, Swedish Standards Institute. 3
0 Orientering 0.1 Bakgrund Den modelleringsmetod som tillämpats inom svensk standardisering för geografisk information innebär att olika typer av företeelser som hör till något avgränsat tillämpningsområde modelleras explicit för detta tilllämpningsområde. Exempel på sådana företeelser är tunnel, bro, skyddsområde och servitut. Företeelser med likartade egenskaper klassificeras som objekttyper vilka namnges, tilldelas attributtyper och ges samband till varandra genom sambandstyper. Genom detta skapas ett begreppsschema som blir ett underlag för applikationsschemat. Applikationsscheman utformas specifikt för respektive tillämpningsområde och innehåller definitioner av områdets specifika företeelser. När schemana implementeras och används i olika tillämpningar bildas unika förekomster (objekt i form av data) av de objekttyper som definierats. Varje enskilt objekt i en datamängd som hanteras av en tillämpning är därför av en för tillämpningsområdet särskilt definierad och strukturerad objekttyp. Detta kan kallas för typberoende representation. EXEMPEL Termen bro betecknar en specifikt definierad objekttyp i något applikationsschema. Øresundsbron kan då vara en unikt identifierad förekomst av objekttypen bro. Ölandsbron och Golden Gate Bridge kan då utgöra andra, unikt namngivna, förekomster av samma objekttyp som Øresundsbron, det vill säga av objekttypen bro. Ett problem med de specifikt inriktade applikationsschemana är att de riskerar att relativt snart bli inaktuella. När behov av någon ny objekttyp uppstår eller av att någon befintlig objekttyp behöver förändras med till exempel ett nytt attribut måste det standardiserade applikationsschemat omarbetas och ges ut i ny version. Beroende på systemdesign kan eventuell modifiering av befintliga programvaror bli relativt omfattande när en standard förändras. ANM. Se även bilaga A Utgångspunkter, överväganden och ställningstaganden. 0.2 Typoberoende objektmodell Ett sätt att undvika det ovan beskrivna problemet är att utveckla och istället använda en generisk typoberoende objektmodell. I en typoberoende objektmodell finns inte företeelser av något specifikt slag uttryckligen modellerade. Tekniken gör det möjligt att konstruera en modell och att utveckla tillämpningsprogram utan att vid tidpunkten för modellering och utveckling känna till alla de objekttyper som kan komma att hanteras av tilllämpningsprogrammet när det brukas i verksamheten. En typoberoende objektmodell kan således inte specificera data längre än att säga att en datamängd innehåller objekt. Datamängden innehåller en typoberoende representation. På datanivå kan objekten inte åtskiljas med avseende på objekttyp. 0.3 Modell för objekttypskatalog Den typoberoende objektmodellen är därmed inte tillräcklig för att tolka data. För att kunna förstå informationen och för att kunna hantera objekt av olika objekttyp på olika sätt är den beroende av en objekttypskatalog en förteckning över alla objekttyper som skall kunna hanteras av tillämpningen. När katalogen finns tillgänglig kan varje objekt referera till den objekttyp i katalogen som utgör dess typdefinition. EXEMPEL En datamängd som är baserat på en typoberoende objektmodell innehåller tre objekt. På datanivå kan objekten inte åtskiljas. De kallas objekt 1, 2 och 3. De tre objekten har varsin teckensträng knuten till sig. De tre teckensträngarna är Ölandsbron, Golden Gate Bridge respektive Tingstadstunneln. Dessutom har varje objekt ett heltal associerat till sig. Det är heltalen 40, 70 respektive 7. Utan hjälp av en katalog kan inte dessa data tolkas. En katalog finns tillgänglig som innehåller två objekttyper som benämns bro och tunnel. Dessutom säger katalogen att de båda typerna karakteriseras av egenskaperna segelfri höjd respektive fri fordonshöjd. Katalogen anger att egenskaperna skall anges med numeriskt värde och med enheten meter. Objekt 1 och 2 pekar ut katalogen och objekttypen bro i katalogen och objekt 3 pekar på samma katalog och objekttypen tunnel. Genom den utpekade katalogens definitioner får data i datamängden en mening. 4
Det framgår av exemplet ovan att objekt i datamängder och innehållet i objekttypskataloger står i ett definierat förhållande till varandra. Objekt i datamängder struktureras enligt en typoberoende objektmodell. Innehållet i objekttypskatalogen struktureras enligt katalogmodellen. Genom att den typoberoende objektmodellen och katalogmodellen i en strukturell och begreppsrelaterad mening avspeglar varandra kan det som företeelsen representerar uttolkas med användning av katalogen. Se även figuren nedan. Ingen objekttypskatalog! Någon extern klassificeringskälla Objekttypskatalogen Objekt i en datamängd är ett av Feature and Attribute Coding Catalogue FACC Attribute Value Codes -------------------------- Value Code Value Description 1:M (*1:1) kan finnas i Generic Feature Catalogue FT FT_ValidValue ---------------- description validvalue 0:M code FT_ValueDomain ---------------- name definition code Generic Feature Instance FI FI_ThematicValue values 1:M FI_AttributeInstance Attribute Codes ------------------------ Attribute Code Attribute Name kan finnas i Attribute Description Ingen knytning objekttyp - värdedomän! domain 1:1 ( 0:M) FT_AttributeType ---------------- name definition typeof 1:1 properties 0:M Feature Codes ----------------------- Feature Code Feature Name Feature Description kan finnas i har egenskapstyper 0:M (är egenskapstyp till 1:1) FT_FeatureType ---------------- name definition code typeof 1:1 FI_FeatureInstance referensväg inom katalog referensväg objekt - katalog Figur 1 Illustration av principerna för typoberoende representation Figuren ovan visar också att objekttypskatalogen kan använda sig av namn, koder och definitioner ur någon extern klassificeringskälla. Exempel på sådana är FACC (Feature and Attribute Coding Catalogue från DGIWG) och KF85 (Kartdatabanken, Svenska kommunförbundet). Det finns två typer av klassificeringskällor, de som är rena uppslagsverk och de som utgör objekttypskataloger (data dictionaries) enligt denna standard. De senare har även en specificerande roll och ingår som komponent i exekverande program. 0.4 Användning av denna standard Den typoberoende objektmodellen kan användas självständigt för att representera geografiska företeelser, men kan också användas tillsammans med något särskilt modellerat, typberoende applikationsschema. Tillsammans definierar då den typoberoende objektmodellen, katalogmodellen och applikationsschemat en komplett objektrepresentation för ett tillämpningsområde. Genom användningen av en typoberoende objektmodell och objekttypskataloger ges möjlighet att enklare lägga till och förändra objekttypers definition. När användningen ställer krav på en specifik och över tiden stabil företeelserepresentation bör ett specifikt applikationsschema definieras. När frekventa förändringar i objekttypsbeståndet kan förväntas och tillåtas kan en typoberoende representation vara fördelaktig att användas. Datautbytet kan då göras mindre känsligt för förändringar. 5
Tillämpningar som baseras på en typoberoende objektmodell blir till stora delar datadrivna. Enklare tillämpningar som enbart syftar till att presentera data behöver inte byggas om allteftersom nya objekttyper dyker upp. Alla objekttyper hanteras på samma sätt och vid påträffandet av en ny objekttyp görs vid behov en sökning i objekttypskatalogen för att erhålla specifika uppgifter om den nya objekttypen. Det finns heller ingenting som förhindrar att tillämpningar som bygger på en typberoende objektmodell kan leverera sina data enligt den typoberoende modellen eller vice versa. 0.5 Förhållandet mellan denna standard och ISO 19110 Methodology for feature cataloguing Objekttypskatalogen i denna standard kan på ett ytligt plan uppfattas som konkurrent till ISO 19110. Ser man till deras syfte och användning är den inte det. ISO 19110 tillhandahåller en struktur för att dokumentera den semantiska innebörden av de klasser, attribut, associationer etc. som ingår i ett applikationsschema. Själva applikationsschemat innehåller ju inte någon semantisk information. Denna standard innehåller ett typoberoende applikationsschema. Definitionen av objekttyperna görs i objekttypskatalogen. Den definierar de olika typernas uppbyggnad i detalj såväl som deras semantiska innebörd. Definitionsstrukturen för typernas uppbyggnad i detalj bygger på General Feature Model (GFM) i ISO 19109 och definitionsstrukturen av typernas semantiska innebörd bygger på Feature Catalogue (FC) i ISO 19110. Detta är skälet till att objekttypskatalogen i denna standard liknar både GFM och FC. I det senare avseendet men bara i detta överlappar denna standard ISO 19110. Det är helt enkelt så att ISO 19110:s katalogstruktur inte fungerar för det syfte som denna standard har. Objekttypskatalogen i denna standard är specificerande in i minsta detalj i värdeförråden vilket är nödvändigt när en datadriven applikation exekverar och processar data. ISO 19110 säger uttryckligen att den inte omfattar detta. ISO 19110 är enbart definierande. Syftet är att finnas tillgänglig vid utveckling av applikationsscheman. 0.6 Tidig respektive sen bindning När en del av en tillämpning utvecklas och en typoberoende objektmodell ligger till grund för utvecklingen kan den inte vid utvecklingstillfället anpassas för att hantera specifika objekttyper. Det är först när tillämpningen körs och förses med data som den vet vilka objekttyper som skall hanteras. Förfarandet kallas för sen bindning (en. late binding). Om däremot applikationsschemat, som måste innehålla varje tillåten objekttyp, ligger till grund för utveckling av en tillämpning kan en tillämpning byggas vid utvecklingstillfället för att hantera just dessa objekttyper. Det kallas för tidig bindning (en. early binding). Fördelen med sen bindning är som påpekats ovan större flexibilitet och minskad känslighet för förändringar. Ett pris som kan få betalas för denna flexibilitet är risken för långsammare tillämpningar. En annan nackdel kan uppstå om katalogmodellen ger stora begränsningar i uttrycksmöjligheter jämfört med förekommande modelleringsspråk (till exempel uttrycksmöjligheterna i UML och ISO/TS 19103 eller EXPRESS). Slutligen måste det vid varje användning av denna standard bestämmas vilken roll och status objekttypskatalogen har. Är katalogen att betrakta som en standard så kvarstår en del av problematiken, nämligen förfarandet med revidering av standard. 6
1 Omfattning Denna standard syftar till att specificera ett gränssnitt för geografisk information där exakt kännedom om vilka typer av objekt som kan komma att hanteras inte är nödvändig vid tidpunkten för utveckling av gränssnitt. Sekundärt kan den utgöra underlag för att definiera lagringsstrukturer och för att utveckla tillämpningar, särskilt export- och importrutiner. Denna standard definierar en typoberoende objektmodell och en katalogmodell för objekttypskataloger. De två modellerna kan tillsammans användas för typoberoende representation och datautbyte inom godtyckliga tillämpningsområden. Denna standard omfattar: applikationsschema för representation av innehåll i objekttypskataloger applikationsschema för typoberoende representation av geografiska företeelser. För en geografisk datamängd som använder denna standard kan: det tillåtna innehållet i datamängden, inklusive typ av rumslig representation, specificeras i objekttypskatalogen data tolkas till sin innebörd. ANM. ISO 19110 stödjer endast kataloginnehåll med det senare syftet Schemana i denna standard stödjer: klassificering och definition av objekttyper klassificering och definition av egenskaper hos objekttyper definition av värdedomäner, inklusive referenser till standardiserade värdedomäner i ISO 19100-serien (representation av geometri, topologi, tidsaspekter, kvalitet och andra metadata med flera..) klassificering och definition av samband mellan objekttyper, däribland aggregeringar generalisering/specialisering av objekttyper digital representation av företeelser, egenskaper och samband gruppering av objekttyper och värdedomäner inom en katalog giltighetstid för definitioner i objekttypskatalogen hantering av olika versioner av objekt över tiden. Schemana stödjer inte: operationer hos objekttyper härledda eller omdefinierade attribut multipelt arv specialisering av objekttyper överlappande specialisering (jämför ANDOR i EXPRESS) 7
indirekta lägesreferenser i förhållande till infrastrukturnät förändringshantering. Denna standard omfattar inte heller administration och regler för utgivning av kataloger och katalogversioner eller kataloginnehåll. Denna standard definierar inte någon viss överföringssyntax. ANM. Företeelser kan vara lägesredovisade. Normalt har det geografiska objektet en geometrisk eller topologisk representation. Detta omfattas av standarden inom värdedomäner för attribut. I vissa sammanhang, vanligast inom infrastrukturnät, kan geometri eller topologi vara kompletterad eller ersatt av ett indirekt angivet läge i förhållande till andra objekt. Standarden omfattar inte sådana indirekta lägesreferenser utan det förutsätts att sådana hanteras av de tillämpningar och standarder där de behövs. Denna standards omfattning och avgränsning illustreras i figuren nedan. objekttypsspecifik representation representationstyp generisk representation representeras enligt klassas enligt klassas och representeras enligt representation kan ha 0:M objekt (data) representeras som generisk objektmodell Generic Feature Instance företeelse klassas som objekttyp kan ingå i applikationsschema finns i verkligheten katalogmodell Generic Feature Catalogue kan ingå i enligt Västerbron bro modellrepresentation objekttypskatalog modell i lexikalt språk Standardens avgränsning modell i grafiskt språk Figur 2 Illustration av modellens omfattning och avgränsningar 8
2 Normativa hänvisningar Detta dokument hänvisar till följande dokument som är absolut nödvändiga när detta dokument skall tillämpas. För daterade hänvisningar gäller endast den utgåva som anges. För odaterade hänvisningar gäller senaste utgåvan av dokumentet (inklusive alla tillägg). SS 63 70 07 SIS-ISO/TS 19103:2006 SS-EN ISO 19107 SS-EN ISO 19108 ISO 19109 SS-EN ISO 19112 SS-EN ISO 19115 SS-ISO/IEC 19501:2005 Geografisk information Representation av förändringar i datamängder Geografisk information Modellbeskrivningsspråk Geographic information Spatial schema Geographic information Temporal schema Geographic information Rules for application schema Geographic information Spatial referencing by geographic identifiers Geographic information Metadata Information technology Open Distributed Processing Unified Modeling Language (UML) Version 1.4.2 ANM. 1 Denna standard baseras på ISO 19110 för identifiering och beskrivning av objekttypskataloger. Därutöver har attributtypers värdedomäner, definierande representationen av attributen, modellmässigt åtskilts från attributtypen, definierande innebörden av ett attribut. Detta möjliggör att samma värdedomän i katalogen kan användas för flera attributtyper för samma eller olika objekttyper. Därutöver har också möjligheten att hänföra objekttyper och värdedomäner till kategorier (teman, avsnitt etc.) införts i syfte att öka överskådligheten och underlätta hanteringen av innehållet i en objekttypskatalog. ANM. 2 Denna standard baseras på ISO 19109 för definition av objekttyper. Därutöver har verksamhetskrav från svenska intressenter medfört tillägg av definitioner bland annat för giltighetstider och strukturerade värdedomäner för attribut. ANM. 3 Denna standard förutsätter användning av ISO 19118 vid XML-representation, bl.a. för identifiering och referens från objekt till objekttypskatalogen. Den i ISO 19118 definierade objektmodellen har inte befunnits tillräcklig bland annat med hänsyn till kravet på hantering av olika tidsversioner av en och samma företeelse. 3 Termer och definitioner För detta dokuments syfte är följande termer och definitioner tillämpliga. Vissa av begreppen illustreras i figur 3. 3.1 abstrakt en. abstract klass som inte själv kan ha förekomster 3.2 aggregering en. aggregation samband med betydelsen: som består av [UML] 9
3.3 applikationsschema en. application schema formell beskrivning av datastruktur, regler och innehåll för information inom ett visst tillämpningsområde [Handbok för samverkande GIS] ANM. 1 Applikationsscheman skall dokumenteras i UML som paket- och klassdiagram. ANM. 2 Applikationsschema har tidigare kallats tillämpningsmodell. 3.4 arv en. inheritance specialisering där subklassen ärver basklassens egenskaper [UML] 3.5 association en. association samband mellan klasser 3.6 attribut en. attribute egenskap för en klass ANM. Attribut är alltid av en viss attributtyp. 3.7 attributtyp en. attribute type typ av karaktäristik eller beskrivning för en objekttyp [Stanli-notation] 3.8 avbildning en. multiplicity restriktion med avseende på antalet förekomster av ett objekts attribut eller samband av samma typ ANM. Anges med minsta och högsta tillåtna antal. 3.9 begreppsmodell en. conceptual model modell som förklarar begrepp och anger deras inbördes relationer [Handbok för samverkande GIS] 3.10 begreppsschema en. conceptual schema grafisk representation av begreppsmodell ANM. I denna standard används Stanli-notation för begreppsscheman. 3.11 egenskapstyp en. property type attributtyp eller sambandstyp 10
3.12 företeelse en. phenomenon något konkret eller abstrakt som existerar, har existerat, eller kommer att existera EXEMPEL En person, en order, en bil, en fastighet, ett omdöme eller ett projekt. 3.13 intresseområde en. universe of discourse vy av den verkliga eller hypotetiska världen som omfattar allt av intresse 3.14 katalogmodell en. Catalogue model modell för representation av innehåll i objekttypskatalog 3.15 katalogpost en. Catalogue entry objekttyp, värdedomän eller kategori som ingår i en objekttypskatalog 3.16 kategori en. category namngiven grupp av katalogposter 3.17 klass en. class beskrivning av en grupp objekt som delar samma egenskaper [UML] 3.18 klassdiagram en. class diagram schema över samband mellan klasser 3.19 modell en. model abstraktion av några aspekter av verkligheten 3.20 objekt en. feature representation av en företeelse i den verkliga världen 3.21 objekt en. object enskild förekomst ur en klass [UML] 3.22 objekttyp en. feature type kategori av företeelser i den verkliga världen med gemensamma egenskaper 11