UML-GML TRANSFORMATION AMBIGUITY. Wstêp



Podobne dokumenty
GML w praktyce geodezyjnej

ZŁOŻONOŚĆ schematów aplikacyjnych UML i GML

Implementacja standardu GML w oprogramowaniu ESRI i GISPartner na przykładzie Geoportalu2

PROCES BUDOWY SCHEMATU APLIKACYJNEGO DO WYMIANY DANYCH GESUT BUILDING OF APPLICATION SCHEMA FOR TRANSFER OF UTILITY NETWORKS DATABASES.

Bazy danych GESUT i BDOT500 będą prowadzone w systemie teleinformatycznym. Baza danych GESUT prowadzona będzie dla obszaru całego kraju, natomiast

Zrozumieć UML Podejście praktyczne na przykładach z projektów rozporządzeń do ustawy PGiK

ZAGADNIENIA HARMONIZACJI I INTEROPERACYJNOŚCI

z dnia r. w sprawie bazy danych obiektów topograficznych oraz mapy zasadniczej

Wykorzystanie standardów serii ISO oraz OGC dla potrzeb budowy infrastruktury danych przestrzennych

(wymiar macierzy trójk¹tnej jest równy liczbie elementów na g³ównej przek¹tnej). Z twierdzen 1 > 0. Zatem dla zale noœci

ASPEKTY IMPLEMENTACYJNE SCHEMATÓW APLIKACYJNYCH IMPLEMENTATION ASPECTS OF APPLICATION SCHEMES. Wstêp. Modele wymiany danych

Program szkoleniowy Efektywni50+ Moduł III Standardy wymiany danych

PRÓBA BUDOWY APLIKACJI NARZÊDZIOWEJ GIS NA PODSTAWIE MODELU POJÊCIOWEGO AN ATTEMPT AT BUILDING GIS APPLICATION ON THE BASIS OF THE CONCEPTUAL MODEL

Normy ISO serii 19100

Dlaczego GML? Gdańsk r. Karol Stachura

PREZENTACJA INFORMACJI FINANSOWEJ w analizach i modelowaniu finansowym. - dane z rynków finansowych DANE RÓD OWE

JĘZYK UML JAKO NARZĘDZIE MODELOWANIA PROCESU PROJEKTOWO-KONSTRUKCYJNEGO

Procedura nadawania uprawnień do potwierdzania, przedłuŝania waŝności i uniewaŝniania profili zaufanych epuap. Załącznik nr 1

Czy przedsiêbiorstwo, którym zarz¹dzasz, intensywnie siê rozwija, ma wiele oddzia³ów lub kolejne lokalizacje w planach?

systemy informatyczne SIMPLE.ERP Bud etowanie dla Jednostek Administracji Publicznej

SYSTEM INFORMACJI GEOGRAFICZNEJ JAKO NIEZBÊDNY ELEMENT POWSZECHNEJ TAKSACJI NIERUCHOMOŒCI**

Zarząd Dróg Wojewódzkich. Wytyczne Techniczne. Zbigniew Tabor Kraków,

Zasady racjonalnego dokumentowania systemu zarządzania

Spis treści 1. Wstęp 2. Projektowanie systemów informatycznych

ROCZNIKI 2010 GEOMATYKI. Metodyka i technologia budowy geoserwera tematycznego jako komponentu INSPIRE. Tom VIII Zeszyt 3(39) Warszawa

ROCZNIKI GEOMATYKI 2007 TOM V ZESZYT 3

Tomasz Na³êcz. Pañstwowy Instytut Geologiczny Pañstwowy Instytut Badawczy

Procedura nadawania uprawnień do potwierdzania Profili Zaufanych w Urzędzie Gminy w Ryjewie

Rys Mo liwe postacie funkcji w metodzie regula falsi

1. Wymagania prawne. Europejskie uwarunkowania prawne:

Procedura działania Punktu Potwierdzającego Profile Zaufane epuap w Urzędzie Miejskim w Gdańsku

METADANE GEOINFORMACYJNE PODLASIA

Z O ONOŒÆ SCHEMATÓW APLIKACYJNYCH UML I GML COMPLEXITY OF UML AND GML APPLICATION SCHEMAS. Wprowadzenie

KONFERENCJA -- GML. Warszawa, 12 kwiecień 2013 r. dr Zenon Parzyński GUGiK Wydz. GiK PW

Wytyczne Województwa Wielkopolskiego

HARMONIZACJA BAZ DANYCH GEODEZYJNYCH I KARTOGRAFICZNYCH

Komunikat dla osób rozliczających umowy w sprawie nowego sposobu rozliczania umów w związku z likwidacją II fazy rozliczeń.

Schematy aplikacyjne UML i GML dla mapy zasadniczej oraz Modelu Podstawowego. Rozdział 1 Założenia podstawowe

Przygotowały: Magdalena Golińska Ewa Karaś

Założenia integracji i harmonizacji danych geodezyjno-kartograficznych na poziomie powiatu i województwa

Główny Urząd Geodezji i Kartografii w Warszawie; Politechnika Warszawska

ZAPYTANIE OFERTOWE. Nazwa zamówienia: Wykonanie usług geodezyjnych podziały nieruchomości

Politechnika Warszawska Wydział Geodezji i Kartografii. GEO-SYSTEM Sp. z o.o. Waldemar Izdebski. Implementacja GML w praktyce

Polska-Warszawa: Usługi hotelarskie 2016/S Ogłoszenie o zamówieniu. Usługi

Strategia rozwoju sieci dróg rowerowych w Łodzi w latach

tel/fax lub NIP Regon

KATEDRA INFORMATYKI STOSOWANEJ PŁ ANALIZA I PROJEKTOWANIE SYSTEMÓW INFORMATYCZNYCH

EGZAMIN MATURALNY Z INFORMATYKI

Postanowienia ogólne. Usługodawcy oraz prawa do Witryn internetowych lub Aplikacji internetowych

elektroniczna Platforma Usług Administracji Publicznej

Projektowanie bazy danych

Komputerowe Systemy Przemysłowe: Modelowanie - UML. Arkadiusz Banasik arkadiusz.banasik@polsl.pl

UML w Visual Studio. Michał Ciećwierz

Politechnika Warszawska Wydział Matematyki i Nauk Informacyjnych ul. Koszykowa 75, Warszawa

GEO-SYSTEM Sp. z o.o. GEO-RCiWN Rejestr Cen i Wartości Nieruchomości Podręcznik dla uŝytkowników modułu wyszukiwania danych Warszawa 2007

Zintegrowany System Informacji Geograficznej

Strukturalne metodyki projektowania systemûw informatycznych

PRZEPIĘCIA CZY TO JEST GROźNE?

ROZPORZ DZENIE MINISTRA GOSPODARKI z dnia 11 sierpnia 2000 r. w sprawie przeprowadzania kontroli przez przedsiêbiorstwa energetyczne.

Podstawa programowa kształcenia ogólnego informatyki w gimnazjum

REGISTER OF TOWNS, STREETS AND ADDRESSES. Wprowadzenie

Adres strony internetowej, na której Zamawiający udostępnia Specyfikację Istotnych Warunków Zamówienia:

TWORZENIE I NADZOROWANIE DOKUMENTÓW SYSTEMOWYCH (PROCEDUR, KSIĘGI JAKOŚCI I KART USŁUG) SJ Data:

Implementacja standardu GML w oprogramowaniu firmy INTERGRAPH

VRRK. Regulatory przep³ywu CAV

I. 1) NAZWA I ADRES: Muzeum Warszawy, Rynek Starego Miasta 28-42, Warszawa, woj. mazowieckie, tel , faks

Procedura działania Punktu Potwierdzającego Profile Zaufane epuap w Urzędzie Miejskim w Łabiszynie

ROCZNIKI 2012 GEOMATYKI. Modele danych przestrzennych w UML i ich transformacja do schematów GML i struktur baz danych. Tom X Zeszyt 1(51) Warszawa

Procedura działania Punktu Potwierdzającego Profile Zaufane epuap Urzędzie Gminy w Ułężu

PRZEPISY KLASYFIKACJI I BUDOWY STATKÓW MORSKICH

PL-Warszawa: Usługi szkolenia zawodowego 2012/S Ogłoszenie o zamówieniu. Usługi

Miejski System Zarządzania - Katowicka Infrastruktura Informacji Przestrzennej

HAŚKO I SOLIŃSKA SPÓŁKA PARTNERSKA ADWOKATÓW ul. Nowa 2a lok. 15, Wrocław tel. (71) fax (71) kancelaria@mhbs.

BEZPIECZEŃSTWO INFORMACYJNE I CYBERNETYCZNE

e-kadry.com.pl Ewa Drzewiecka Telepraca InfoBiznes


Ethernet VPN tp. Twój œwiat. Ca³y œwiat.

OG OSZENIE O KONKURSIE

KARTA INFORMACYJNA USŁUGI PRZYZNANIE DODATKU AKTYWIZACYJNEGO

ECDL Advanced Moduł AM3 Przetwarzanie tekstu Syllabus, wersja 2.0

WARUNKI TECHNICZNE ARCHIWIZACJI DOKUMENTÓW

PKN ORLEN S.A. Elektroniczny słownik lub tłumacz multijęzyczny. Zapytanie ofertowe. Dotyczy: Wersja: 1.0 Data: r.

TABELA ZGODNOŚCI. W aktualnym stanie prawnym pracodawca, który przez okres 36 miesięcy zatrudni osoby. l. Pornoc na rekompensatę dodatkowych

Powiatowy Urząd Pracy w Rawie Mazowieckiej

Ogólne Warunki Ubezpieczenia PTU ASSISTANCE I.

Niektóre cywilnoprawne problemy ochrony œrodowiska. przede wszystkim obszerna problematyka administracyjnoprawna. Istniej¹

WYROK W IMIENIU RZECZYPOSPOLITEJ POLSKIEJ. SSN Bogusław Cudowski (przewodniczący) SSN Jolanta Frańczak (sprawozdawca) SSN Krzysztof Staryk

Pytania i odpowiedzi oraz zmiana treści SIWZ

Zakupy poniżej euro Zamówienia w procedurze krajowej i unijnej

INSTRUKCJA SERWISOWA. Wprowadzenie nowego filtra paliwa PN w silnikach ROTAX typ 912 is oraz 912 is Sport OPCJONALNY

Odpowiedzialnoœæ buduje zaufanie ZNOR-2. Album projektów typowych rozdzielnic elektrycznego ogrzewania rozjazdów i oœwietleniowych

Instrukcja sporządzania skonsolidowanego bilansu Miasta Konina

Modelowanie Informacji Katastralnej

Przypomnienie najważniejszych pojęć z baz danych. Co to jest baza danych?

Procedura działania Punktu Potwierdzającego Profile Zaufane epuap w Urzędzie Gminy Wągrowiec

Szczegółowe zasady obliczania wysokości. i pobierania opłat giełdowych. (tekst jednolity)

UMOWA PARTNERSKA. z siedzibą w ( - ) przy, wpisanym do prowadzonego przez pod numerem, reprezentowanym przez: - i - Przedmiot umowy

Wybrane projekty Urzędu Marszałkowskiego Województwa Mazowieckiego w Warszawie Przedsięwzięcia zmierzające do harmonizacji baz danych przestrzennych

Dane referencyjne: zastosowanie norm ISO serii do opisywania geometrii i po³o enia

Transkrypt:

POLSKIE NIEJEDNOZNACZNOŒÆ TOWARZYSTWO TRANSFORMACJI INFORMACJI UML-GML PRZESTRZENNEJ ROCZNIKI GEOMATYKI 2013 m TOM XI m ZESZYT 1(58) 21 NIEJEDNOZNACZNOŒÆ TRANSFORMACJI UML-GML UML-GML TRANSFORMATION AMBIGUITY Agnieszka Chojka* Uniwersytet Warmiñsko-Mazurski w Olsztynie, Wydzia³ Geodezji i Gospodarki Przestrzennej S³owa kluczowe: UML, GML, kodowanie, niejednoznacznoœæ, anomalia Keywords: UML, GML, encoding, ambiguity, anomaly Wstêp Uchwalenie w Polsce ustawy o infrastrukturze informacji przestrzennej, która jest transpozycj¹ dyrektywy INSPIRE (przystosowaniem przepisów dyrektywy do prawa krajowego) spowodowa³o koniecznoœæ nowelizacji wielu ustaw i przepisów prawnych, w tym ustawy Prawo geodezyjne i kartograficzne. Postanowiono zast¹piæ instrukcje i wytyczne (czêsto ju przestarza³e) rozporz¹dzeniami Rady Ministrów lub odpowiedniego ministra, które z jednej strony stanowi¹ za³¹czniki do ustawy Prawo geodezyjne i kartograficzne, a z drugiej strony wprowadzaj¹ w ycie niektóre zalecenia dyrektywy INSPIRE. Integraln¹ czêœci¹ opracowywanych w G³ównym Urzêdzie Geodezji i Kartografii rozporz¹dzeñ s¹ schematy aplikacyjne UML (definiuj¹ strukturê informacyjn¹ baz danych, w³aœciwych dla danego rozporz¹dzenia) oraz schematy aplikacyjne GML. Jednak, mimo i schematy te zosta³y przygotowane zgodnie z normami ISO serii 19100 w dziedzinie informacji geograficznej, co ma zapewniæ interoperacyjnoœæ opracowanych na ich podstawie zbiorów danych przestrzennych, w trakcie ich tworzenia napotkano wiele problemów technicznych zwi¹zanych z transformacj¹ UML-GML. W artykule, na przyk³adzie schematów aplikacyjnych UML i GML opracowanych w ramach prac GUGiK zwi¹zanych z implementacj¹ postanowieñ dyrektywy INSPIRE dla potrzeb s³u by geodezyjnej i kartograficznej, omówiono niektóre niejednoznacznoœci zwi¹zane z przekszta³caniem schematów aplikacyjnych UML na odpowiadaj¹ce im schematy aplikacyjne GML oraz zwi¹zane z tym b³êdy, anomalia i nieprawid³owoœci. Rozwa ono równie, jak w przysz³oœci zaradziæ tego typu niejednoznacznoœciom, jak zapewniæ jednoznaczn¹ drogê przekszta³cania UML na GML. * Autorka od 2010 r. bierze udzia³ w pracach zwi¹zanych ze wsparciem dzia³añ GUGiK w zakresie tworzenia standardów technicznych dotycz¹cych danych przestrzennych, w tym opracowanie schematów aplikacyjnych GML dla projektów rozporz¹dzeñ oraz weryfikacja pod wzglêdem merytorycznym i formalnym opracowanych schematów aplikacyjnych UML i GML.

22 AGNIESZKA CHOJKA Jêzyki oraz schematy aplikacyjne UML i GML Jêzyk UML (ang. Unified Modeling Language) to zunifikowany (ujednolicony) graficzny jêzyk modelowania. W dziedzinie informatyki wykorzystywany do opisu œwiata obiektów w analizie obiektowej i programowaniu obiektowym, ale równie stosowany do wymiany informacji o systemach i oprogramowaniu za pomoc¹ diagramów oraz uzupe³niaj¹cego je tekstu. Za pomoc¹ UML mo na, m.in. definiowaæ wymagania, projektowaæ architekturê rozwi¹zañ, modelowaæ struktury danych. Poza opisem struktur statycznych systemu (diagramy statyczne) istnieje równie mo liwoœæ przedstawienia jego zachowania (diagramy dynamiczne). W dziedzinie geoinformatyki UML stanowi œrodek formalny modelowania informacji geograficznej i s³u y do opisu œwiata obiektów rzeczywistych. Zalecany jest tak e przez normy ISO serii 19100, jako jêzyk schematu pojêciowego (ang. conceptual schema language). Jednak z ca³ego bogactwa jêzyka UML w dziedzinie modelowania informacji geograficznej wykorzystuje siê przede wszystkim mo liwoœci modelowania obiektowego oferowane przez diagramy klas (w modelach uwzglêdnia siê g³ównie klasy z atrybutami, bez metod) i pakietów. Schemat aplikacyjny UML (ang. UML application schema) to model definiuj¹cy pojêcia z pewnej dziedziny (przestrzeni rozwa añ, przedmiotu zainteresowañ), zapisany za pomoc¹ oznaczeñ klas i powi¹zañ miêdzy nimi (diagram klas), w³aœciwych dla jêzyka UML. Stanowi on opis struktur logicznych danych przestrzennych oraz opis semantyki ich zawartoœci. Co wiêcej, jest to opis niezale ny od platformy sprzêtowo-programowej. Schemat aplikacyjny UML powinien byæ zapisany w jêzyku schematu pojêciowego UML wed³ug zasad okreœlonych w standardach ISO/TS 19103 (ISO/TC 211, 19103:2005) i ISO 19109 (ISO/TC 211, 19109:2009) oraz sk³adaæ siê z pojêæ okreœlonych przez dziedzinê zastosowañ, wyra onych jako klasy i powi¹zania miêdzy nimi. Niektóre z klas mog¹ byæ zaimportowane ze schematów znormalizowanych z innych standardów, tzn. schemat aplikacyjny opracowany przez u ytkownika, poza klasami opisuj¹cymi dan¹ dziedzinê zastosowañ, mo e dodatkowo zawieraæ klasy pochodz¹ce ze schematów aplikacyjnych zdefiniowanych w normach ISO serii 19100 lub innych dokumentach standaryzacyjnych. Natomiast jêzyk GML (ang. Geography Markup Language) to jêzyk znaczników przeznaczony do opisu danych geograficznych. W geoinformatyce jest on stosowany jako jêzyk formalny do opisu struktur danych (zalecany przez normy ISO serii 19100) oraz jako otwarty format wymiany danych przestrzennych (wektorowych i opisowych) pomiêdzy ró nymi systemami geoinformacyjnym (GIS, ang. Geographical Information System), np. poprzez wykorzystanie jednej z us³ug geoinformacyjnych us³ugi WFS (ang. Web Feature Service), która na ¹danie dostarcza dane zakodowane w tym formacie. GML jest aplikacj¹, czyli zastosowaniem jêzyka XML (ang. extensible Markup Language). Okreœla regu³ê kodowania dla schematów aplikacyjnych zgodnych z normami ISO serii 19100, opart¹ na XML zgodnie z ISO 19118 (ISO/TC 211, 19118:2011), definiuje sposób zapisu w jêzyku XML Schema (Schemat XML lub Schemat Rozszerzalnego Jêzyka Znaczników) okreœlonych w³aœciwoœci przestrzennych i nieprzestrzennych (zdefiniowanych w normach ISO serii 19100) obiektów geograficznych, np. jednostki miary, geometria i topologia, systemy odniesienia. Schemat aplikacyjny GML to, podobnie jak schemat aplikacyjny UML, model definiuj¹cy pojêcia z pewnego zakresu przedmiotowego, ale tym razem zapisany w jêzyku XML Schema zgodnie z regu³ami okreœlonymi w normie ISO 19136 (ISO/TC 211, 19136:2007). Dodatko-

NIEJEDNOZNACZNOŒÆ TRANSFORMACJI UML-GML 23 wo schemat aplikacyjny GML powinien importowaæ schemat GML, który sk³ada siê z komponentów w przestrzeni nazw XML http://www.opengis.net/gml/3.2, przeznaczonych do zapisu okreœlonych w³aœciwoœci przestrzennych i nieprzestrzennych obiektów geograficznych. Jednym ze sposobów budowy schematu aplikacyjnego GML jest uprzednio opracowanie schematu aplikacyjnego UML z zastosowaniem regu³ okreœlonych w normie ISO 19109, a nastêpnie przekszta³cenie go na odpowiadaj¹cy mu schemat aplikacyjny GML, zapisany w jêzyku XML Schema, zgodnie z regu³ami kodowania okreœlonymi w normach ISO 19118 i ISO 19136. Taki sposób tworzenia schematów aplikacyjnych GML przyjêto równie w GUGiK, w ramach przygotowania rozporz¹dzeñ. Przeznaczenie UML i GML W zakresie budowy infrastruktur informacji przestrzennej jêzyki UML i GML wykorzystywane s¹ do opracowania schematów aplikacyjnych, odpowiednio UML i GML. Jednak ka dy z tych jêzyków ma nieco inne przeznaczenie. Poniewa jêzyk UML jest jêzykiem graficznym, stanowi zbiór oznaczeñ (w tym piktogramów) i diagramów, wykorzystywanych do specyfikowania, konstruowania, wizualizacji i dokumentowania elementów systemów informatycznych, dlatego w g³ównej mierze przeznaczony jest dla ludzi. Stanowi œrodek i platformê komunikacji dla przysz³ych u ytkowników systemu, menad erów, analityków, architektów, projektantów, programistów i testerów. Natomiast jêzyk GML to jêzyk znaczników (ang. markup), którego wyra enia zapisywane s¹ za pomoc¹ specyficznego kodu. S¹ one dedykowane g³ównie do przetwarzania maszynowego, a wiêc przez aplikacje komputerowe umiej¹ce interpretowaæ kod GML i prezentowaæ go w formie przyjaznej dla cz³owieka. GML nie jest jêzykiem przeznaczonym do bezpoœredniej konfrontacji z u ytkownikiem. Jêzyk GML bazuje na gramatyce jêzyka XML, który jest jêzykiem uniwersalnym, a przede wszystkim rozszerzalnym. U ytkownik mo e definiowaæ swoje w³asne znaczniki, a konkretne struktury danych mog¹ byæ zapisywane na wiele równowa nych sposobów (patrz: ramka poni ej). Jest to zalet¹ jêzyka XML dziêki temu jest to jêzyk niezale ny od platformy sprzêtowo-programowej, ale i jego wad¹ taka uniwersalnoœæ prowadzi do niejednoznacznoœci w interpretacji poszczególnych struktur, a tym samym do ró nych b³êdów i anomalii. Poni ej zamieszczono przyk³ad zapisu informacji o p³ci osoby za pomoc¹ atrybutu (kolumna lewa) i/lub za pomoc¹ elementu (kolumna prawa) w jêzyku XML. RVREDSáHü NRELHWD! LPL!$QQDLPL! QD]ZLVNR!0D]XUHNQD]ZLVNR! RVRED! RVRED! SáHü!NRELHWDSáHü! LPL!$QQDLPL! QD]ZLVNR!0D]XUHNQD]ZLVNR! RVRED! Oba przedstawione sposoby kodowania danych s¹ równowa ne, tzn. przenosz¹ ten sam zbiór informacji dotycz¹cych osoby. Jednak przyjmuje siê, e dla danych najlepiej u ywaæ elementów, natomiast dla informacji, które stanowi¹ dodatkow¹ charakterystykê danych (np. nazwa uk³adu wspó³rzêdnych dla podanych wewn¹trz wspó³rzêdnych), najlepiej stosowaæ atrybuty (W3schools, 2013).

24 AGNIESZKA CHOJKA Transformacja UML-GML Transformacja schematu aplikacyjnego UML, na odpowiadaj¹cy mu schemat aplikacyjny GML, mo e byæ zrealizowana metod¹ automatyczn¹ lub metod¹ rêczn¹ (Michalak, Chojka, Zwirowicz-Rutkowska, Parzyñski, 2012). Metoda automatyczna wymaga przede wszystkim odpowiedniego oprogramowania, które umo liwia automatyczne wygenerowanie schematu aplikacyjnego GML ze schematu aplikacyjnego UML. Obecnie na rynku dostêpne s¹ dwa takie narzêdzia, oba bezp³atne: Shape- Change (Portele, 2008a; Portele, 2008b) i FullMoon (Githaiga, 2010; Cox, 2011). Jednak wymagaj¹ one wykorzystania dodatkowo komercyjnego oprogramowania Enterprise Architect firmy Sparx Systems (Sparx Systems, 2013), pozwalaj¹cego na w³aœciwe przygotowanie wyjœciowego schematu aplikacyjnego UML (wykorzystanie pliku profilu UML z odpowiednimi metkami, ang. tagged values). Ponadto dla ró nych elementów schematu aplikacyjnego UML mo na dodatkowo okreœliæ metki, które umo liwiaj¹ kontrolê przekszta³cenia schematu aplikacyjnego UML na GML, czyli generowanie plików XSD zapisanych w jêzyku XML Schema. Zarówno ShapeChange, jak i FullMoon, wymagaj¹ zastosowania specjalnego szablonu UML do opracowania schematu aplikacyjnego UML, który ma zostaæ automatycznie przekszta³cony na schemat aplikacyjny GML. Szablon ten (profil UML) zosta³ przygotowany w postaci pliku XML i zawiera standardowe stereotypy oraz metki okreœlone przez normê ISO 19136. Mo na go wykorzystaæ jedynie w oprogramowaniu Enterprise Architect, które stanowi zaawansowane narzêdzie do modelowania systemów informatycznych za pomoc¹ jêzyka UML. Metoda rêczna wymaga przede wszystkim bardzo dobrej znajomoœci norm ISO serii 19100, w szczególnoœci ISO/TS 19103 i ISO 19109, które okreœlaj¹ zasady budowy schematów aplikacyjnych UML oraz normy ISO 19136 za³¹cznik E, w którym zdefiniowano regu³ê kodowania schematów aplikacyjnych UML na GML. W metodzie tej wystarczy opracowaæ schemat aplikacyjny UML w dowolnym narzêdziu wspomagaj¹cym tworzenie diagramów klas UML, a nastêpnie korzystaj¹c z normy ISO 19136 napisaæ kod GML odpowiadaj¹cy schematowi aplikacyjnemu UML, najlepiej korzystaj¹c z oprogramowania (bezp³atnego lub komercyjnego), które wspomaga tworzenie plików XSD (XML Schema) i dokonuje ich walidacji, czyli kontroli poprawnoœci sk³adniowej. Przyk³adem takiego oprogramowania (komercyjnego) s¹ XMLSpy firmy Altova (Altova, 2013) oraz oxygen XML Editor firmy SyncRO Soft Ltd. (SyncRO Soft Ltd., 2013), które stanowi¹ jedne z najbardziej wszechstronnych na rynku narzêdzi do projektowania zaawansowanych aplikacji XML. Przekszta³cenie schematu aplikacyjnego UML, zgodnego z ISO 19109, na odpowiadaj¹cy mu schemat aplikacyjny GML, oparte jest na zbiorze regu³ kodowania okreœlonych w ISO 19136. Zasady te podano w za³¹czniku E tej normy i oparto na ogólnym za³o eniu, e definicja klasy w schemacie aplikacyjnym UML jest przekszta³cana na deklaracjê typu i elementu w schemacie aplikacyjnym GML (zapisanym w jêzyku XML Schema) wed³ug zale noœci podanych w tabeli. Do utworzenia schematów aplikacyjnych UML, stanowi¹cych element sk³adowy rozporz¹dzeñ opracowanych przez GUGiK m.in. rozporz¹dzenia: w sprawie ewidencji miejscowoœci, ulic i adresów (EMUiA, 2012), w sprawie bazy danych geodezyjnej ewidencji sieci uzbrojenia terenu, bazy danych obiektów topograficznych oraz mapy zasadniczej (GESUT,

NIEJEDNOZNACZNOŒÆ TRANSFORMACJI UML-GML 25 Tabela. Regu³y transformacji UML-GML (Ÿród³o: ISO/TC 211, ISO 19136:2007) Schemat aplikacyjny UML Pakiet Schemat aplikacyjny GML Jeden dokument XML Schema na pakiet < <Application Schema>> Dokument XML Schema < <DataType>> Element globalny, którego modelem zawartoœci jest elemen t complextype w XML Schema o zakresie globalnym, typ w³aœciwoœci < <Enumeration>> Ograniczeni e xsd:string z wartoœciami wyliczeni a < <CodeList>> Odwo³anie do s³ownika lub alternatywnie unia wyliczenia i wzorca < <Union>> Grupa wyboru, której cz³onkami s¹ obiekty odpowiadaj¹c e FeatureType s lub DataTypes < <FeatureType>> Element globalny, którego modelem zawartoœci jest typ XML Schema o zakresie globalnym, pochodz¹cy z bezpoœredniego lub poœredniego rozszerzenia gml: AbstractFeatureTy pe, typ w³aœciwoœc i Brak stereotypu lub <<Type>> Element globalny, którego modelem zawartoœci jest typ XML Schema o zakresie globalnym, pochodz¹cy z bezpoœredniego lub poœredniego rozszerzenia gml: AbstractGMLType, typ w³aœciwoœc i Operacje Atrybut Rola Niekodowane L okalny xsd:element, typ jest z³o onym) lub typem prostym powi¹zania (asocjacji) Lokalny xsd:element, i nawigowalne) OCL Niekodowane Ograniczenia równie typem w³aœciwoœci (jeœli typ jest typem typ jest zawsze typem w³aœciwoœci (tylko role nazwan e BDOT, MZ, 2013), w sprawie pañstwowego rejestru granic i powierzchni jednostek podzia- ³ów terytorialnych kraju (PRG, 2012) bardzo s³usznie u yto aplikacji Enterprise Architect, ale niestety nie wykorzystano szablonu UML, czyli pliku profilu UML z odpowiednimi metkami, uniemo liwiaj¹c tym samym automatyczne wygenerowanie schematu aplikacyjnego GML. St¹d te schematy aplikacyjne GML zosta³y opracowane metod¹ rêczn¹ (przy u yciu oprogramowania XMLSpy), gdzie niestety du ¹ rolê odgrywa³ czynnik ludzki, a wiêc nie trudno by³o o b³êdy sk³adniowe i logiczne. Nale y pamiêtaæ, i schemat aplikacyjny GML definiuje mo liw¹ strukturê danych, a wiêc sposób uporz¹dkowania konkretnych danych w pliku GML (XML). Dlatego te b³êdne zapisy struktur danych maj¹ bezpoœredni wp³yw na mo liwoœci generowania plików GML z konkretnymi danymi (obiektami), mog¹ byæ przyczyn¹ ró nych problemów i anomalii na etapie produkcji danych. Problemy Najczêstszym problemem, jaki pojawia siê podczas transformacji schematów aplikacyjnych UML na odpowiadaj¹ce im schematy aplikacyjne GML, jest w³aœciwe odwzorowanie zwi¹zków miêdzy klasami. Je eli powi¹zanie miêdzy dwiema klasami nie zostanie opisane przynajmniej jedn¹ rol¹ w UML, wówczas nie mo e zostaæ odwzorowane w jêzyku GML. Zatem informacja o powi¹zaniu miêdzy klasami w UML zostanie pominiêta w XML Schema.

26 AGNIESZKA CHOJKA Ponadto poszczególne rodzaje powi¹zañ (np. nawigacje, agregacje) nie s¹ rozró niane w GML. Jeœli z kolei powi¹zanie zostanie opisane dwiema rolami w UML, wówczas dodatkowo w kodzie GML istnieje mo liwoœæ wprowadzenia informacji o nazwie roli po przeciwnej stronie powi¹zania (ramka poni ej, element gml:reversepropertyname, fragment schematu aplikacyjnego GML PRG.xsd (PRG, 2012)). W kodzie GML rola charakteryzuj¹ca powi¹zanie UML (rys. 1) jest zapisywana w typie z³o onym jako element lokalny (w poni szym przyk³adzie: punktgraniczny), czyli stanowi odpowiednik atrybutu klasy w UML. FRPSOH[7\SHÃQDPH Å35*B*UDQLFD7\SHÅ!à ÃÃFRPSOH[&RQWHQW!à ÃÃÃÃH[WHQVLRQÃEDVH ÅSUJ35*B2ELHNW2JROQ\7\SHÅ!à ÃÃÃÃÃÃVHTXHQFH!à ÃÃÃÃÃÃÃÃHOHPHQWÃQDPH ÅJHRPHWULDÅÃW\SH ÅJPO&XUYH3URSHUW\7\SHÅ!à ÃÃÃÃÃÃÃÃHOHPHQWÃQDPH ÅGRNXPHQWÅÃPD[2FFXUV ÅXQERXQGHGÅ!à ÃÃÃÃÃÃÃÃÃÃFRPSOH[7\SH!à ÃÃÃÃÃÃÃÃÃÃÃÃFRPSOH[&RQWHQW!à ÃÃÃÃÃÃÃÃÃÃÃÃÃÃH[WHQVLRQÃEDVH ÅEW%7B'RNXPHQW3URSHUW\7\SHÅ!à ÃÃÃÃÃÃÃÃÃÃÃÃÃÃÃÃDWWULEXWHÃUHI ÅJFRQLO5HDVRQÅ!à ÃÃÃÃÃÃÃÃÃÃÃÃÃÃH[WHQVLRQ!à ÃÃÃÃÃÃÃÃÃÃÃÃFRPSOH[&RQWHQW!à ÃÃÃÃÃÃÃÃÃÃFRPSOH[7\SH!à ÃÃÃÃÃÃÃÃHOHPHQW!à ÃÃÃÃÃÃÃÃÄÃ5ROHVÃ!à ÃÃÃÃÃÃÃÃHOHPHQWÃQDPH ÅSXQNW*UDQLF]Q\ÅÃW\SH ÅSUJ35*B3XQNW*UDQLF]Q\3URSHUW\7\SHÅÃPLQ2FFXUV ÅÅà PD[2FFXUV ÅXQERXQGHGÅ!à ÃÃÃÃÃÃÃÃÃÃDQQRWDWLRQ!à ÃÃÃÃÃÃÃÃÃÃÃÃDSSLQIR!à ÃÃÃÃÃÃÃÃÃÃÃÃÃÃJPOUHYHUVH3URSHUW\1DPH!SUJJUDQLFDJPOUHYHUVH3URSHUW\1DPH!à ÃÃÃÃÃÃÃÃÃÃÃÃDSSLQIR!à ÃÃÃÃÃÃÃÃÃÃDQQRWDWLRQ!à ÃÃÃÃÃÃÃÃHOHPHQW!à ÃÃÃÃÃÃVHTXHQFH!à ÃÃÃÃH[WHQVLRQ!à ÃÃFRPSOH[&RQWHQW!à FRPSOH[7\SH! Rys. 1. Powi¹zanie miêdzy klasami w UML opisane rolami (Ÿród³o: PRG, 2012) Dodatkowo jêzyk UML pozwala na wprowadzenie stereotypu «voidable», który jest przypisany do atrybutu klasy lub roli w powi¹zaniu na schemacie aplikacyjnym UML (np. atrybut dokument na rys. 1). Stereotyp ten oznacza, e jest to atrybut specjalny i ma on zastosowanie, gdy pewna w³aœciwoœæ (cecha) obiektu przestrzennego nie jest prezentowana w zbiorze danych przestrzennych, ale mo e byæ obecna lub mieæ zastosowanie w œwiecie rzeczywistym. Odpowiednikiem stereotypu «voidable» w schemacie aplikacyjnym GML jest atrybut

NIEJEDNOZNACZNOŒÆ TRANSFORMACJI UML-GML 27 nilreason (patrz: ramka powy ej), który w pliku GML z konkretnymi danymi pozwala na zapisanie informacji o przyczynie braku wartoœci dla atrybutu specjalnego, np. inapplicable (nie stosuje siê), missing (brak danych), template (tymczasowy brak danych), unknown (wartoœæ nieznana), withheld (wartoœæ zastrze ona). Okazuje siê jednak, e w³aœciwe zakodowanie w GML atrybutu specjalnego jest bardzo istotne. W przeciwnym wypadku mo e to prowadziæ do anomalii przy generowaniu plików GML z konkretnymi obiektami. Niejednoznacznoœci i anomalie Przyk³adem niejednoznacznoœci zapisu struktur danych w GML (XML Schema) mo e byæ zakodowanie atrybutu oznaczonego w UML stereotypem «voidable», np. atrybut typ w klasie AD_Ulica (schemat aplikacyjny AD_EMUiA.xsd (EMUiA, 2012)). Atrybut ten jest typu prostego wyliczeniowego AD_TypUlicyKod, w schemacie aplikacyjnym UML oznaczony stereotypem «Enumeration» (rys. 2). 1. Rys. 2. Klasa posiadaj¹ca atrybut typu wyliczeniowego, oznaczony stereotypem «voidable» (Ÿród³o: EMUiA, 2012) Taki atrybut w XML Schema mo na zapisaæ na dwa sposoby: HOHPHQWÃQDPH ÅW\SÅÃQLOODEOH ÅWUXHÅ!à ÃÃFRPSOH[7\SH!à ÃÃÃÃVLPSOH&RQWHQW!à ÃÃÃÃÃÃH[WHQVLRQÃEDVH ÅPXD$'B7\S8OLF\.RG7\SHÅ!à ÃÃÃÃÃÃÃÃDWWULEXWHÃQDPH ÅQLO5HDVRQÅÃW\SH ÅJPO1LO5HDVRQ7\SHÅ!à ÃÃÃÃÃÃH[WHQVLRQ!à ÃÃÃÃVLPSOH&RQWHQW!à ÃÃFRPSOH[7\SH!à HOHPHQW!Ã

28 AGNIESZKA CHOJKA 2. (taki wariant kodowania zastosowano w schemacie aplikacyjnym GML AD_EMUiA.xsd) HOHPHQWÃQDPH ÅW\SÅ!à ÃÃFRPSOH[7\SH!à ÃÃÃÃVLPSOH&RQWHQW!à ÃÃÃÃÃÃH[WHQVLRQÃEDVH ÅPXD$'B7\S8OLF\.RG7\SHÅ!à ÃÃÃÃÃÃÃÃDWWULEXWHÃUHI ÅJFRQLO5HDVRQÅ!à ÃÃÃÃÃÃH[WHQVLRQ!à ÃÃÃÃVLPSOH&RQWHQW!à ÃÃFRPSOH[7\SH!à HOHPHQW! Niestety, je eli atrybut jest typu prostego wyliczeniowego (w UML klasa ze stereotypem «Enumeration») i dodatkowo jest atrybutem wymaganym (minimalna liczba jego wyst¹pieñ wynosi 1), przypadek drugi prowadzi do poni szej anomalii: PXD$'B8OLFDÃJPOLG Å,'B8OLFDBÅ!à ÃÃPXDW\SÃJFRQLO5HDVRQ ÅPLVVLQJÅ!SODFPXDW\S!à PXD$'B8OLFD!à W pliku GML z konkretnymi danymi, oprócz podania informacji o przyczynie braku wartoœci dla atrybutu (tutaj: missing), nale y mimo wszystko przypisaæ elementowi konkretn¹ wartoœæ wyliczenia. W przeciwnym wypadku plik GML nie przechodzi walidacji. Jest to anomalia, poniewa zastosowanie atrybutu nilreason powinno w³aœnie umo liwiæ niepodanie wartoœci atrybutu. Poprawny przyk³ad pliku GML (zgodny z pierwszym wariantem zapisu atrybutu specjalnego ze stereotypem «voidable») powinien wygl¹daæ nastêpuj¹co: PXD$'B8OLFDÃJPOLG Å,'B8OLFDBÅ!à ÃÃPXDW\SÃ[VLQLO ÅWUXHÅÃQLO5HDVRQ ÅPLVVLQJÅ!à PXD$'B8OLFD! Walidacja i b³êdy Walidacja plików GML, w tym dokumentów XSD i XML, polega na sprawdzeniu zgodnoœci sk³adni tych dokumentów ze standardami wyznaczonymi przez Konsorcjum W3C (ang. World Wide Web Consortium). Nale y pamiêtaæ, e walidator wychwytuje jedynie b³êdy gramatyczne (sk³adniowe), b³êdy logiczne nie podlegaj¹ kontroli. Zatem wykorzystuj¹c metodê rêczn¹ transformacji UML-GML nie trudno o b³¹d logiczny, który mo e powodowaæ wiele anomalii na etapie generowania plików GML z konkretnymi obiektami. Zgodnie z norm¹ ISO 19136, je eli atrybut klasy UML jest typu z³o onego (inn¹ klas¹), np. w klasie GES_PrzewodElektroenergetyczny, atrybut operattech jest typu BT_OperatTech (rys. 3),

NIEJEDNOZNACZNOŒÆ TRANSFORMACJI UML-GML 29 wtedy w schemacie aplikacyjnym GML, do elementu operattech nale y przypisaæ typ z przyrostkiem PropertyType (BT_OperatTechPropertyType). Jeœli przez pomy³kê zostanie przypisany typ z przyrostkiem Type (BT_OperatTechType), wówczas w pliku GML zostanie zagubiona informacja o tym, e BT_OperatTech jest niezale nym bytem (klas¹ w UML, typem z³o onym w XML), a tym samym mo na siê do niego odnieœæ przez referencjê, a niekoniecznie kopiowaæ ca³¹ jego strukturê (ma to zastosowanie tylko w przypadku klas ze stereotypem «FeatureType»). U ycie typu PropertyType pozwala unikn¹æ redundancji danych (niepo ¹dana cecha bazy danych), a co za tym idzie znacznie zmniejszyæ rozmiary plików GML, poniewa dane dotycz¹ce przewodów elektroenergetycznych mog¹ byæ zapisane w jednym pliku, a dane charakteryzuj¹ce operaty techniczne w innym. Rys. 3. Klasa posiadaj¹ca atrybut typu inna klasa (Ÿród³o: GESUT, BDOT, MZ, 2013) Je eli w schemacie aplikacyjnym GML (w pliku XSD) do atrybutu operattech przypisano typ z³o ony BT_OperatTechPropertyType (taki sposób kodowania zastosowano w schemacie aplikacyjnym GES_GESUT.xsd (GESUT, BDOT, MZ, 2013)), wtedy przyk³adowe dane w pliku GML mog³yby zostaæ zapisane nastêpuj¹co:

30 AGNIESZKA CHOJKA JHV*(6B3U]HZRG(OHNWURHQHUJHW\F]Q\ÃJPOLG Å,'B3U]HZRG(OHNWURHQHUJHW\F]Q\FKBÅ!à ÃÃJHVRSHUDW7HFK!à ÃÃÃÃEW%7B2SHUDW7HFKÃJPOLG Å,'B2SHUDW7HFKBÅ!à ÃÃÃÃÃÃEWGDWD8WZRU]HQLD!EWGDWD8WZRU]HQLD!à ÃÃÃÃÃÃEWLG2SUDFRZDQLD!EWLG2SUDFRZDQLD!à ÃÃÃÃÃÃEWPHWDGDQHà [OLQNKUHI ÅXUQJXJLNVSHF\ILNDFMHJPODVJHRGH]\MQD(ZLGHQFMD6LHFL8]EURMHQLD7HUHQXÆ0HWDGDQHB*(687Å!à ÃÃÃÃÃÃEWRGQLHVLHQLH'R%D]\!*(687EWRGQLHVLHQLH'R%D]\!à ÃÃÃÃÃÃEWZ\NRQDZFDà [OLQNKUHI ÅXUQJXJLNVSHF\ILNDFMHJPODVJHRGH]\MQD(ZLGHQFMD6LHFL8]EURMHQLD7HUHQXÆ,'B:\NRQDZFDBÅ!à ÃÃÃÃÃÃEW]DVLHJ5RERW\!à ÃÃÃà ÃÃÃÃÃÃEW]DVLHJ5RERW\!à ÃÃÃÃÃÃEW]DZDUWRVF!à ÃÃÃà ÃÃÃÃÃÃEW]DZDUWRVF!à ÃÃÃÃÃÃEWLG=JORV]HQLD!23EWLG=JORV]HQLD!à ÃÃÃÃÃÃEW]OHFHQLRGDZFDà [OLQNKUHI ÅXUQJXJLNVSHF\ILNDFMHJPODVJHRGH]\MQD(ZLGHQFMD6LHFL8]EURMHQLD7HUHQXÆ,'B=OHFHQLRGDZFDBÅ!à ÃÃÃÃEW%7B2SHUDW7HFK!à ÃÃJHVRSHUDW7HFK!à JHV*(6B3U]HZRG(OHNWURHQHUJHW\F]Q\!à à Lub zamiast wczytywania ca³ej struktury BT_OperatTech, tylko referencja do konkretnego obiektu poprzez jego identyfikator ID_OperatTech_2002.10: JHV*(6B3U]HZRG(OHNWURHQHUJHW\F]Q\ÃJPOLG Å,'B3U]HZRG(OHNWURHQHUJHW\F]Q\FKBÅ!à ÃÃJHVRSHUDW7HFKà [OLQNKUHI ÅXUQJXJLNVSHF\ILNDFMHJPODVJHRGH]\MQD(ZLGHQFMD6LHFL8]EURMHQLD7HUHQXÆ,'B2SHUDW7HFKBÅ!à JHV*(6B3U]HZRG(OHNWURHQHUJHW\F]Q\!à à Niestety powy szy sposób odwo³ania siê jednego obiektu do drugiego jest niemo liwy do zastosowania w przypadku rozporz¹dzenia dotycz¹cego GESUT, poniewa w schemacie aplikacyjnym GML BT_ModelPodstawowy.xsd, bêd¹cym czêœci¹ tego opracowania, b³êdnie zdefiniowano typ BT_OperatTechPropertyType. Element <sequence> powinien posiadaæ wskaÿnik wystêpowania minoccurs, pozwalaj¹cy na okreœlenie minimalnej iloœci wyst¹pieñ tego elementu (tylko dla klas ze stereotypem «FeatureType»), w tym przypadku: <sequence minoccurs= 0">. Brak takiego wskaÿnika prowadzi do kolejnej anomalii brak mo liwoœci wykorzystania referencji, a tym samym nadmiarowoœæ danych. Natomiast, jeœli w schemacie aplikacyjnym GML do atrybutu operattech przypisano typ z³o ony BT_OperatTechType, wtedy przyk³adowe dane w pliku GML mog³yby zostaæ zapisane nastêpuj¹co:

NIEJEDNOZNACZNOŒÆ TRANSFORMACJI UML-GML 31 JHV*(6B3U]HZRG(OHNWURHQHUJHW\F]Q\ÃJPOLG Å,'B3U]HZRG(OHNWURHQHUJHW\F]Q\FKBÅ!à ÃÃJHVRSHUDW7HFKÃJPOLG Å,'B2SHUDW7HFKBÅ!à ÃÃÃÃEWGDWD8WZRU]HQLD!EWGDWD8WZRU]HQLD!à ÃÃÃÃEWLG2SUDFRZDQLD!EWLG2SUDFRZDQLD!à ÃÃÃÃEWPHWDGDQHà [OLQNKUHI ÅXUQJXJLNVSHF\ILNDFMHJPODVJHRGH]\MQD(ZLGHQFMD6LHFL8]EURMHQLD7HUHQXÆ0HWDGDQHB*(687Å!à ÃÃÃÃEWRGQLHVLHQLH'R%D]\!*(687EWRGQLHVLHQLH'R%D]\!à ÃÃÃÃEWZ\NRQDZFDà [OLQNKUHI ÅXUQJXJLNVSHF\ILNDFMHJPODVJHRGH]\MQD(ZLGHQFMD6LHFL8]EURMHQLD7HUHQXÆ,'B:\NRQDZFDBÅ!à ÃÃÃÃEW]DVLHJ5RERW\!à ÃÃà ÃÃÃÃEW]DVLHJ5RERW\!à ÃÃÃÃEW]DZDUWRVF!à ÃÃà ÃÃÃÃEW]DZDUWRVF!à ÃÃÃÃEWLG=JORV]HQLD!23EWLG=JORV]HQLD!à ÃÃÃÃEW]OHFHQLRGDZFDà [OLQNKUHI ÅXUQJXJLNVSHF\ILNDFMHJPODVJHRGH]\MQD(ZLGHQFMD6LHFL8]EURMHQLD7HUHQXÆ,'B=OHFHQLRGDZFDBÅ!à ÃÃJHVRSHUDW7HFK!à JHV*(6B3U]HZRG(OHNWURHQHUJHW\F]Q\!à à Wówczas wczytywana jest ca³a struktura elementów charakteryzuj¹cych typ z³o ony BT_OperatTechType i równie nie ma mo liwoœci alternatywnego zapisu poprzez referencjê. Wnioski Nale y pamiêtaæ, e jêzyk GML jest formatem wymiany danych i nie jest to jêzyk przeznaczony do bezpoœredniej konfrontacji z u ytkownikiem. GML ma zapewniæ interoperacyjn¹ wymianê danych przestrzennych miêdzy ró nymi systemami geoinformacyjnymi, jest to wiêc œrodek komunikacji miêdzy narzêdziami. U ytkownikowi dedykowany jest przyjemny dla oka, obrazkowy jêzyk UML, który z kolei nie nadaje siê dla maszyn, tzn. nie jest zrozumia³y dla systemów geoinformacyjnych, aby staæ siê dla nich formatem wymiany danych. St¹d koniecznoœæ transformacji obrazkowego jêzyka UML na znacznikowy jêzyk GML. Warto jednak wspomnieæ, i istnieje standard XMI (ang. XML Metadata Interchange), który daje mo liwoœæ zapisu schematów aplikacyjnych UML w jêzyku XML, ale pe³ni on tylko rolê poœrednika podczas wymiany modeli UML miêdzy ró nymi narzêdziami. Sama transformacja schematów aplikacyjnych UML na schematy aplikacyjne GML, opracowywane w GUGiK, wymaga jeszcze dopracowania i doprecyzowania, aby w przysz³oœci unikn¹æ niejednoznacznoœci zapisów struktur danych i nie powodowaæ problemów podczas generowania plików GML z baz danych oraz nie wprowadzaæ w b³¹d u ytkowników. Dlatego rekomenduje siê ustalenie zbioru jednoznacznych metod transformacji UML-GML, m.in. okreœlenie sposobu kodowania atrybutów specjalnych (oznaczonych w UML stereotypem «voidable») oraz stosowanie tylko kodowania poprzez referencjê w przypadku ról powi¹zañ i atrybutów typu inna klasa (stosowanie typu gml:referencetype zamiast typu z przyrostkiem PropertyType ), aby zapobiec redundancji danych w plikach GML z konkretnymi obiektami. Nale y tak e podkreœliæ, i schematy aplikacyjne UML s¹ tylko etapem poœrednim, w³aœciwym celem s¹ schematy aplikacyjne GML (pliki XSD), które wykorzystywane s¹ w praktyce, na etapie produkcji plików GML z konkretnymi danymi.

32 AGNIESZKA CHOJKA Ponadto, aby w przysz³oœci zaradziæ ró nego rodzaju niejednoznacznoœciom i anomaliom, jak równie zapewniæ jednoznaczn¹ drogê przekszta³cenia UML na GML, do opracowania schematów aplikacyjnych GML zaleca siê zastosowanie ³¹cznie jêzyka XML Schema i jêzyka Schematron, w którym zapisuje siê asercje dotycz¹ce dokumentu XML, czyli warunki, które musz¹ byæ spe³nione w pewnym kontekœcie. Wówczas w schemacie XML Schema mo na zamodelowaæ strukturê danych, zaœ w schemacie Schematron regu³y kontekstowe. Literatura Altova, 2013: XMLSpy, http://www.altova.com/xml-editor/ Michalak J., Chojka A., Zwirowicz-Rutkowska A., Parzyñski Z., 2012: Modele danych przestrzennych w UML i ich transformacja do schematów GML i struktur baz danych. Monografia. Roczniki Geomatyki t. 10, z. 1(51), PTIP Warszawa. Cox S., 2011: Hollow World: a GML application schema template. Solid Earth and Environment GRID (SEE GRID community website). https://www.seegrid.csiro.au/wiki/appschemas/hollowworld/ EMUiA, 2012: Rozporz¹dzenie Ministra Administracji i Cyfryzacji z dnia 9 stycznia 2012 r. w sprawie ewidencji miejscowoœci, ulic i adresów. Dz.U. 2012 nr 0 poz. 125. GESUT, BDOT, MZ, 2013: Rozporz¹dzenie Ministra Administracji i Cyfryzacji z dnia 12 lutego 2013 r. w sprawie bazy danych geodezyjnej ewidencji sieci uzbrojenia terenu, bazy danych obiektów topograficznych oraz mapy zasadniczej. Dz.U. 2013 nr 0 poz. 383. Githaiga J., 2010: Project Overview FullMoon. Solid Earth and Environment GRID (SEE GRID community website), https://www.seegrid.csiro.au/wiki/siss/fullmoon/ ISO/TC 211 (Geographic Information/Geomatics), Technical Specification 19103:2005, Geographic information Conceptual schema language (Jêzyk schematów pojêciowych). ISO/TC 211 (Geographic Information/Geomatics), ISO 19109:2009, Geographic information Rules for application schema. Norma PN-EN ISO 19109:2009, Informacja geograficzna Regu³y schematów aplikacyjnych. ISO/TC 211 (Geographic Information/Geomatics), ISO 19118:2011, Geographic information Encoding. Norma PN-EN ISO 19118:2011, Informacja geograficzna Kodowanie. ISO/TC 211 (Geographic Information/Geomatics), ISO 19136:2007, Geographic information Geography Markup Language (GML). Norma PN-EN ISO 19136:2009, Informacja geograficzna Jêzyk znaczników geograficznych GML. Portele C., 2008a: Mapping UML to GML Application Schemas. Guidelines and Encoding Rules. Interactive Instruments GmbH, http://www.interactive-instruments.de/ugas/ugas-guidelines-and-encoding-rules.pdf Portele C., 2008b: Mapping UML to GML Application Schemas. ShapeChange Architecture and Description. Interactive Instruments GmbH, http://www.interactive-instruments.de/ugas/shapechange.pdf PRG, 2012: Rozporz¹dzenie Rady Ministrów z dnia 10 stycznia 2012 r. w sprawie pañstwowego rejestru granic i powierzchni jednostek podzia³ów terytorialnych kraju. Dz.U. 2012 nr 0 poz. 199. SparxSystem, 2013: Enterprise Architect, http://www.sparxsystems.com.au/ SyncRO Soft Ltd., 2013: oxygen XML Editor, http://www.oxygenxml.com/ W3Schools, 2013: W3Schools Online Web Tutorials, http://www.w3schools.com/ Abstract Passing the Spatial Information Infrastructure Law in Poland, that is a transposition of the INSPIRE Directive, involved the necessity of many secondary acts and corresponding changes in other Laws, among others the Geodetic and Cartographic Law. Decision was made to replace the existing instructions and guidelines by regulations of the Council of Ministers or relevant minister that, on the one hand, become annexes to the Geodetic and Cartographic Law and, on the other hand, implement the recommendations of the INSPIRE Directive.

NIEJEDNOZNACZNOή TRANSFORMACJI UML-GML 33 An integral part of these regulations elaborated in the Head Office of Geodesy and Cartography in Poland are the UML and GML application schemas that define information structures of databases, corresponding to each regulation. Although these schemas were worked out according to the ISO 19100 series of International Standards in the Geographic Information (Geoinformation/Geomatics) domain, many technical problems connected with UML-GML transformation were identified during their preparation. In this paper, on examples of UML and GML application schemas prepared in the Head Office of Geodesy and Cartography in Poland within the INSPIRE Directive implementation works, some ambiguities concerning UML to GML transformation were discussed as well as some errors and anomalies connected with this issues. Questions how to resolve this ambiguity and how to ensure single way in changing UML application schema into corresponding GML application schema were also considered. dr in. Agnieszka Chojka agnieszka.chojka@uwm.edu.pl