1
FORMATY WYMIANY DANYCH
GEOINFORMATYKA
2
Format wymiany danych między systemami informacji
przestrzennej
TANGO
3
Koncepcja i powstanie TANGO
Format TANGO opracowany został z myślą o zasilaniu w dane Ośrodków Dokumentacji Geodezyjnej i wymianie danych między systemami informacji przestrzennej. Format jest efektem ustaleń między firmami tworzącymi systemy informacji przestrzennej funkcjonujące na polskim rynku, jako kompromisu w spojrzeniu na problem transferu.
Przedstawiciele firm biorący udział w tworzeniu formatu:
• Jarosław Bartkowiak, SYSTHERM INFO Sp. z o.o., Poznań,
• Krzysztof Borys, GEOBID Sp. z o.o., Katowice,
• Szymon Budys, OPeGieKa Sp. z o.o., Elbląg,
• Aleksander Danielski, STRATUS Sp. z o.o., Poznań, geoinfo@stratus.com.pl
• Robert Grynkiewicz, GEOBAZA, Słupsk,
• Adam Iwaniak, Akademia Rolnicza we Wrocławiu, Wrocław, iwaniak@ar.wroc.pl
• Waldemar Izdebski, GEO-SYSTEM Sp. z o.o., Warszawa, Izdebski@geo-system.com.pl
• Tadeusz Knap, GEO-SYSTEM Sp. z o.o., Warszawa, knap@geo-system.com.pl
• Tomasz Szczepaniak, SYSTHERM INFO Sp. z o.o., Poznań, tszczepaniak@systherm-info.com.
4
Model danych (1)
Do opisu danych przestrzennych w formacie TANGO
wykorzystywany jest prosty model wektorowy. Informacje o obiektach terenowych
posiadających cechy
przestrzenne transmitowane są przy pomocy jednego z
dopuszczalnych elementów przestrzennych to jest:
1- punkt, 2-linia, 3-obszar, 4-tekst
Dodatkowo wykorzystywany jest obiekt o nazwie INFO słuŜący do transmisji danych, z którymi nie związano Ŝadnej informacji
przestrzennej.
Z kaŜdym transmitowanym obiektem związane mogą być następujące informacje:
• rekord nagłówkowy zawierający: kod obiektu, typ
(1-punkt, 2-linia, 3-obszar, 4-tekst, 5-info) oraz identyfikator,
• lista punktów oparcia obiektu,
• lista atrybutów,
• lista etykiet,
• lista identyfikatorów obiektów powiązanych (podrzędnych).
1
5
Model danych (2)
Dane przekazywane są w plikach tekstowych.
Przy zapisie danych przyjęto zasady:
• współrzędne XY wyraŜane są w układzie geodezyjnym, w pełnych wartościach,
• kierunek pomiaru kąta jest zgodny z ruchem wskazówek zegara,
• wartość kąta określana jest w gradach w stosunku do dodatniej półosi X,
• polskie znaki zapisane są w standardzie Windows-1250,
• data zapisana jest w standardzie rrrr-mm-dd hh:mm:ss, (informacja fakultatywna),
• długość, pole i objętość wyraŜane są odpowiednio: w metrach, metrach kwadratowych i metrach sześciennych,
• separatorem oddzielającym poszczególne pola rekordów jest przecinek z
wyjątkiem rekordu C zawierającego nazwy i wartości atrybutów, w którym wartość od nazwy oddziela znak "=" (znak równości),
• linie pliku zakończone są znakami CR-LF (w kodach ASCII odpowiednio 10 i 13).
6
Model danych (3)
Plik transferu podzielony jest na dwie sekcje: OPCJE i OBIEKTY.
W sekcji OPCJE znajdą się parametry związane z transferem: wersja formatu wymiany danych, nazwa systemu, skala redakcji, układ współrzędnych.
[OPCJE]
WersjaFormatu=1.00 System=xxx
Skala=xxx Układ=xxx
[OPCJE]
WersjaFormatu=1.00 System=K1
Skala=500 Układ=65S2
gdzie:
1.00 - wersja formatu,
K1 - system kodów i nazw atrybutów zgodny z K1 wyd. 3 (1998 r.),
500 - redakcja przekazywana jest dla skali 1:500, 65S2 - układ współrzędnych 1965 strefa 2.
wersja formatu: wersja formatu TANGO
system: określa system, z którego wykorzystano zestaw kodów obiektów, nazw atrybutów i ich
interpretację. KaŜdy program do wymiany danych w formacie TANGO powinien interpretowaćzestaw kodów z instrukcji K1 (na podstawie Wytycznych
Technicznych), ze wszystkimi tego konsekwencjami.
skala: jest mianownikiem skali w której dokonano redakcji transmitowanych danych
układ: informacja o układzie współrzędnych.
7
Model danych (4)
Sekcja OBIEKTY zawiera dane o obiektach zapisane według schematu
przedstawionego poniŜej. Schemat bazuje na rekordach oznaczanych odpowiednio literami A B C D i E oraz rekordzie komentarza zaczynającego się od znaku ;
(średnik).
KaŜdy obiekt opisywany jest jednym rekordem typu A, po którym występuje tyle rekordów typu B na ilu punktach opiera się obiekt. Następnie tyle rekordów typu C ile atrybutów opisowych jest przekazywanych. KaŜda linia rozpoczynająca się od średnika jest komentarzem i moŜe wystąpić w dowolnym miejscu pliku.
Występowanie rekordów jest zgodne z kolejnością alfabetyczną ich oznaczeń (tzn.
A, B, C, D, E).
;Przykład zapisu A,GPE,3,12345,,
B,1,1100.00,1100.00,,1 B,2,1200.00,1300.00,,1 B,3,1400.00,1400.00,,1 B,1,1100.00,1100.00,,1 C,NR_DZIAŁKI=123/2
D,1,”123/2”,1250.000,1200.00,100,7,1.5,123 0.000,1190.000,1
GPE – działka ewidencyjna
(Wytyczne techniczne do formatu wymiany danych między systemami informacji przestrzennej TANGO)
8
Typy rekordów w TANGO (1)
Typ A - rekord nagłówkowy obiektu
Przedstawiając schematy poszczególnych rekordów pliku transferu przyjęto zasadę, Ŝe pola cieniowane sąfakultatywne (mogą być puste). Puste pola na końcu rekordu mogąbyćopuszczone.
Rekord nagłówkowy (A) występuje przy kaŜdym obiekcie i zawiera podstawowe informacje z nim związane to jest:
A - typ rekordu, Kod - kod obiektu,
Typ - typ obiektu (1-ob. punktowy, 2-ob. liniowy, 3-ob. powierzchniowy, 4-tekst, 5-info), ID - identyfikator obiektu w pliku transferu,
Obrót - obrót symbolu (znaku umownego) dla obiektu punktowego,
Szerokość - szerokość symbolu graficznego (znaku umownego) wyraŜona w metrach.
przykład zapisu: A,BUD,3,12345,, gdzie:
A - oznaczenie typu rekordu, rekord nagłówkowy BUD - kod obiektu, budynek,
3 - typ obiektu, obiekt powierzchniowy, 12345 - identyfikator obiektu.
szerokość obrót
ID typ
kod
A
9
Typy rekordów w TANGO (2)
Typ B - lista punktów oparcia obiektu
Rekord obligatoryjny dla wszystkich typów obiektów z wyjątkiem obiektu info.
B - typ rekordu,
Nazwa - nazwa punktu (nie jest wymagana unikalność w pliku wymiany), X Y H - wartości współrzędnych,
Status - dodatkowa informacja o punkcie oparcia, kodowana binarnie a zapisywana dziesiętnie (szczegóły w tabeli 1 na kolejnym slajdzie).
Pole jest interpretowane tylko dla obiektów liniowych i powierzchniowych.
przykład zapisu: B,1234,1500.000,2500.000,65.13,1 gdzie
B - typ rekordu, rekord punktów oparcia 1234 - nazwa punktu, np. numer punktu 1500.000 - współrzędna X
2500.000 - współrzędna Y
65.13 - współrzędna H
1 - widoczne połączenie do następnego punktu.
Status H
Y X
Nazwa B
…
…
…
…
…
…
Status H
Y X
Nazwa
B
10
Typy rekordów w TANGO (3)
Tabela 1. Znaczenie bitów pola Status rekordu informacji o punkcie oparcia
jeśli ustawiony jest na 1 to oznacza połączenie do następnych dwóch punktów oparcia łukiem przechodzącym przez dany punkt oraz dwa następne punkty oparcia. JeŜeli przy następnym punkcie oparcia od bieŜącego równieŜjest ustawiony ten bit na 1, to oznacza, Ŝe połączenie łukiem odbywa się tylko do następnego punktu oparcia ale łuk jest
wyznaczany na podstawie danego punktu oraz dwóch następnych.
bit 5
znaczenie krawędzi w obiektach 'powierzchniowych wydłuŜonych' (np. skarpa) znaczenie poszczególnych ustawień
bit 1-punkt początkowy pierwszej krawędzi bit 2-punkt końcowy pierwszej krawędzi bit 3-punkt początkowy drugiej krawędzi bit 4-punkt końcowy drugiej krawędzi bit
1 i 2 oraz 3 i 4
widocznośćpołączenia do następnego punktu przy ustawieniu bitu na 1 w przeciwnym wypadku połączenie niewidoczne, domyślną wartościąjest 1
bit 0
Przyk
Przykłład zapisu informacji o punktach ad zapisu informacji o punktach oparcia
oparcia
obiektu powierzchniowego obiektu powierzchniowego
B,1,1600.00,1100.00,10.34,1 B,1,1600.00,1100.00,10.34,1 B,2,1700.00,1400.00,10.64,3 B,2,1700.00,1400.00,10.64,3 B,3,1600.00,1900.00,10.32,1 B,3,1600.00,1900.00,10.32,1 B,4,1300.00,2400.00,10.12,5 B,4,1300.00,2400.00,10.12,5 B,5,1100.00,2500.00,10.23,9 B,5,1100.00,2500.00,10.23,9 B,6,1100.00,2200.00,10.25,1 B,6,1100.00,2200.00,10.25,1 B,7,1300.00,1600.00,10.25,1 B,7,1300.00,1600.00,10.25,1 B,1,1600.00,1100.00,10.25,17 B,1,1600.00,1100.00,10.25,17
Przyk
Przykłład zapisu informacji o punktach oparciaad zapisu informacji o punktach oparcia obiektu liniowego
obiektu liniowego
B,1,21000.00,31000.00,10.34,1 B,1,21000.00,31000.00,10.34,1 B,2,21000.00,31700.00,10.64,33 B,2,21000.00,31700.00,10.64,33 B,3,21100.00,31900.00,10.32,1 B,3,21100.00,31900.00,10.32,1 B,4,21300.00,32000.00,10.12,33 B,4,21300.00,32000.00,10.12,33 B,5,21800.00,31500.00,10.23,33 B,5,21800.00,31500.00,10.23,33 B,6,21950.00,31350.00,10.23,1 B,6,21950.00,31350.00,10.23,1 B,7,22100.00,31200.00,10.25,0 B,7,22100.00,31200.00,10.25,0
11
Typy rekordów w TANGO (4)
Typ C - lista atrybutów i ich wartości
Rekord słuŜy do zapisu wartości atrybutu. W nazwie atrybutu nie mogą występować spacje.
Dla obiektu typu info musi wystąpić przynajmniej jeden rekord typu C, dla innych typów obiektów występowanie rekordu jest fakultatywne.
C - typ rekordu,
Nazwa Atrybutu - nazwa,
= - separator,
Wartość Atrybutu - wartość.
przykład zapisu: C,NR_DZIAŁKI=123 gdzie
C - typ rekordu, atrybuty i ich wartości NR_DZIAŁKI - nazwa atrybutu
= - separator, zawsze '='
123 - wartość atrybutu, działka o numerze ewidencyjnym 123.
Wartość Atrybutu n
= Nazwa Atrybutu n
C
Wartość Atrybutu 1
= Nazwa Atrybutu …
C
Wartość Atrybutu 1
= Nazwa Atrybutu 1
C
Format TANGO transmituje nazwy atrybutów i ich wartości. Dopuszcza sięwystępowanie atrybutów pustych.
Format nie przesądza nazw transmitowanych atrybutów. Nazwy sądowolne i zaleŜąod systemu źródłowego.
Do systemu docelowego sąwprowadzane na podstawie odpowiedniej tabeli konwersji.
12
Typy rekordów w TANGO (5)
Typ D - etykieta i jej połoŜenie
Rekord definiuje połoŜenie etykiety o określonej nazwie oraz sposób opisu (justowanie,
wysokość, itp.). W przypadku wielokrotnego opisu daną etykietą wystąpi wiele rekordów typu D z identyczną nazwą etykiety. W obiektach typu info rekord ten nie występuje. Dla innych typów obiektów występowanie rekordu jest fakultatywne z wyjątkiem obiektów typu tekst, które muszą posiadać co najmniej jeden rekord typu D.
D - typ rekordu,
Nazwa - nazwa (numer) etykiety w systemie źródłowym,
Treść - treść etykiety w systemie źródłowym. Treść etykiety jest zawsze ujęta w cudzysłów. W przypadku jeśli w treści etykiety występuje znak cudzysłów naleŜy go powtórzyćdwa razy. Znak | oznacza przejście do następnej linii. Dwa kolejne znaki || oznaczają przejście do następnej linii z jednoczesnym podkreśleniem tekstu.
X, Y - połoŜenie punktu opisu,
Obrót - kąt skręcenia opisu (jego linii bazowej) określony w gradach,
Justowanie - sposób justowania określany jest liczbą od 1 do 9 według zasady przedstawionej poniŜej (pole moŜe być puste). Justowanie 7, 8, 9 dotyczy linii bazowej tekstu. Dla opisu wieloliniowego linią bazową jest linia bazowa najniŜszej linii w opisie.
Wysokość - wysokość opisu w [mm] w skali opracowania, Xo i Yo - współrzędne połoŜenia początku odnośnika,
Status - dodatkowa informacja o etykiecie (domyślna wartość 1). Pole jest kodowane binarnie, a zapisywane dziesiętnie. Interpretacja poszczególnych bitów pola przedstawiona jest w tabeli 2 (dalej).
status Yo
Xo wysokość
justowanie obrót
Y X
treść nazwa
D
13
Typy rekordów w TANGO (6)
Tabela 2. Znaczenie bitów pola Status rekordu informacji o etykiecie
punkt zaczepienia odnośnika jest na początku tekstu przy braku ustawienia bitu (0) punkt zaczepienia odnośnika jest na końcu tekstu
przy ustawieniu bitu na 1 bit 1
opis jest widoczny przy ustawieniu bitu na 1 w przeciwnym razie opis jest niewidoczny bit 0
Informacja o połoŜeniu odnośnika z lewej bądźz prawej strony ma charakter informujący o tym jak wyglądało to w systemie źródłowym. System docelowy moŜe interpretacjętęzignorowaći samodzielnie określićpołoŜenie odnośnika
przykład zapisu: D,1,"wB-50",1500.000,2500.00,30, 7,1.5,1497.000,2503.000,1 gdzie:
D - typ rekordu, (etykieta i jej połoŜenie) 1 - nazwa etykiety,(etykieta pierwsza) wB-50 - treść etykiety
1500.000 - współrzędna X punktu justyfikacji 2500.000 - współrzędna Y punktu justyfikacji 30 - kąt skręcenia opisu w gradach
7 - justowanie: lewy, dolny
1.5 - wysokość tekstu w milimetrach
1497.000 - współrzędna X końca odnośnika 2503.000 - współrzędna Y końca odnośnika
1 - odnośnik połączony z lewej strony tekstu, opis widoczny.
Format wymiany TANGO nie przesądza o przeznaczeniu poszczególnych etykiet, a jedynie je transmituje. Do systemu docelowego
etykiety wprowadzane są na podstawie odpowiedniej
tabeli konwersji.
14
Typy rekordów w TANGO (7)
Typ E - wykaz identyfikatorów obiektów dla których obiekt jest nadrzędny
Rekord słuŜy do określenia obiektów podrzędnych do danego. Występowanie rekordu jest fakultatywne. Obiekty podrzędne nie muszą być zdefiniowane wcześniej.
E - typ rekordu,
ID podrzędnego - identyfikator obiektu w pliku transferu, Nazwa relacji - treść.
przykład zapisu: E,Id233,Właściciel gdzie:
E - typ rekordu, identyfikator obiektu podrzędnego Id233 - wartość identyfikatora
Właściciel - treść relacji.
Nazwa relacji ID podrzędnego
E
…
… E
Nazwa relacji ID podrzędnego
E
15
Przykłady zapisu obiektów
Obiekt punktowy A,DLI,1,,,
B,1,21000.00,31000.00,,
Obiekt liniowy A,KOJ,2,12345,,
B,1,21000.00,31000.00,10.34,1 B,2,21000.00,31700.00,10.64,33 B,3,21100.00,31900.00,10.32,1 B,4,21300.00,32000.00,10.12,33 B,5,21800.00,31500.00,10.23,33 B,6,21950.00,31350.00,10.23,1 B,7,22100.00,31200.00,10.25,0
Obiekt powierzchniowy A,GPE,3,12345,,
B,1,1100.00,1100.00,,1 B,2,1200.00,1300.00,,1 B,3,1400.00,1400.00,,1 B,4,1400.00,1100.00,,1 B,5,1300.00,1100.00,,1 B,6,1200.00,1000.00,,1 B,1,1100.00,1100.00,,1 C,NR_DZIAŁKI=123/2
D,1,”123/2”,1250.000,1200.00,100,7,1.5,1230.000,1190.000,1 Tekst
A,TDM,4,12345,,
B,1,21000.00,31000.00,, C,TEKST=Kościuszki
D,1,”Kościuszki”,21000.00,31000.00,100, 7,1.5,,,1
Info
A,OWL,5,,, C,IMIE=Jan
C,NAZWISKO=Kowalski
16
Format wymiany danych między systemami informacji
przestrzennej
SWING/SWDE
17
Koncepcja SWDE – SWING
SWDE/SWING
Format SWDE/SWING jest w SIT/SIP/GIS rzeczą stosunkowo nową. Jakkolwiek prace nad nim trwały juŜ od dawna to dopiero w roku 2002 rozpoczęły się dynamiczne prace nad jego wdroŜeniem. Format SWDE jest podzbiorem SWING.
Format SWDE/SWING 3.0 słuŜy do wymiany danych pomiędzy bazami danych systemów informatycznych SIT/SIP/GIS. Pozwala na reprezentację w pliku tekstowym obiektów
przestrzennych i opisowych. UmoŜliwia przekazanie opisu modelu danych uŜytego do reprezentacji danych oraz informacji o utworzeniu i przeznaczeniu danych zawartych w pliku transferu. Dzięki połączeniu transferu danych wraz z opisem ich modelu moŜliwe jest przetwarzanie danych zawartych w pliku. Jedną z form przetwarzania jest wymiana danych pomiędzy systemami geoinformatycznymi pochodzącymi od róŜnych dostawców.
Format SWDE/SWING umoŜliwia jednoznaczne definiowanie modelu danych
wykorzystywanych do reprezentacji informacji o świecie rzeczywistym. Pozwala to na definiowanie katalogu obiektów w ramach instrukcji geodezyjnych odnoszących siędo SIT/SIP/GIS. Tak
przygotowana definicja katalogu obiektów jest niezaleŜna od przyszłego sposobu jego implementacji w systemie informatycznym.
Mechanizm autoryzacji i zabezpieczenia umoŜliwia wykorzystanie plików w formacie SWDE/SWING do wymiany danych dla celów administracyjnych i prawnych.
18
SWING 3: STANDARD WYMIANY INFORMACJI GEODEZYJNYCH
INSTRUKCJA TECHNICZNA G-5 ANEKS NR 6.
STANDARD WYMIANY INFORMACJI GEODEZYJNYCH SWING 3.0
Format SWING 3.0 słuŜy do wymiany danych pomiędzy bazami danych systemów informatycznych SIT. Pozwala na
reprezentację w pliku tekstowym obiektów przestrzennych i opisowych. UmoŜliwia przekazanie opisu modelu danych
uŜytego do reprezentacji danych oraz informacji o utworzeniu i przeznaczeniu danych zawartych w pliku transferu. Dzięki
połączeniu transferu danych wraz z opisem ich modelu moŜliwe jest przetwarzanie danych zawartych w pliku. Jedną z form
przetwarzania jest wymiana danych pomiędzy systemami
informatycznymi SIT pochodzącymi od róŜnych dostawców.
19
SWING 3: Pojęcia podstawowe (1)
Obiekt
§ 6. 1) Obiekt jest to byt materialny lub abstrakcyjny, który istnieje w świecie rzeczywistym. Obiekt posiada toŜsamość, czyli jest
odróŜnialny od innych obiektów. Obiekty posiadają cechy
(atrybuty) i pozostają w określonych powiązaniach (relacjach) z innymi obiektami.
2) Stanem obiektu określamy zbiór wartości jego cech oraz listę obiektów, z którymi pozostaje w relacjach w danym momencie czasowym. Stan obiektu moŜe ulegać zmianie. Na przykład działka wyniku sprzedaŜy zmienia właściciela. Zmiana stanu obiektu nie pociąga za sobą zmiany jego toŜsamości.
3) Identyfikator obiektu jest to nazwa uŜywana przez system dostawcy danych do powiązania zapisów w jego bazie danych z opisywanymi obiektami rzeczywistości. Jest atrybutem
wyraŜającym toŜsamość obiektu.
20
SWING 3: Pojęcia podstawowe (2)
Klasa obiektów
§ 7. 1) Klasa to umownie wyróŜniona kategoria obiektów świata rzeczywistego, traktowanych w ramach SIT w sposób identyczny.
Przykłady klas to: działki czy budynki. W formacie SWING przynaleŜność obiektu do klasy określa kod obiektu.
Klasa obiektów wyróŜnia się od innych tym, Ŝe:
a) wszystkie obiekty klasy mają wspólne cechy (np. działki posiadają powierzchnię),
b) wszystkie obiekty klasy pozostają z obiektami innych klas w takich samych relacjach, (np. kaŜda działka jest własnością podmiotu).
2) Wiązanie (relacja) jest zaleŜnością łączącą klasy obiektów. Np.
Przedmiot jest własnością podmiotu. Klasy związane relacją
pełnią w niej określone role. Wiązanie posiada krotność.
21
SWING 3: Pojęcia podstawowe (3)
W formacie SWING 3.0 wyróŜniamy następujące typy bazowe rekordów:
a) opisowy (RD) – rekord nie posiada odniesienia przestrzennego (osoba fizyczna, udział władania),
b) punktowy (RP) – opis przestrzenny rekordu jest punktem (punkt graniczny stabilizowany trwale, punkt osnowy poziomej podstawowej),
c) liniowy (RL) – opis przestrzenny rekordu jest zbiorem polilinii, w szczególności jedną łamaną (granica działki),
d) obszarowy (RO) – opis przestrzenny rekordu jest zbiorem obszarów z enklawami, w szczególności poligonem (budynek, obręb działka),
e) cyfrowy model terenu (RM) – rekord przedstawia powierzchnię terenu za pomocą sieci trójkątów lub zbioru punktów wysokościowych,
f) raster (RR) – rekord jest reprezentacją wpasowania obrazu cyfrowego terenu (rastra) w geodezyjny układ odniesienia, pozwala na wykorzystanie danych obrazowych do wzbogacenia prezentacji graficznej danych,
g) złoŜony (RC) – rekord, który przedstawia obiekt złoŜony z innych obiektów (elementów), np. przewód sieci uzbrojenia technicznego. Rekord nie posiada własnego opisu przestrzennego.
22
SWING 3: Pojęcia podstawowe (4)
2.5. Rekord, tabela
§ 10. Rekord jest zapisem stanu obiektu w pliku SWING. Do jednego obiektu moŜe odnosić się wiele rekordów, reprezentujących róŜne stany obiektu. Określamy je wtedy mianem wersji obiektu. W bazie danych moŜe znajdować się tylko jeden rekord odnoszący się do aktualnego stanu obiektu.
Format SWING posiada mechanizm jego wyróŜnienia (patrz 15.1). Rekordy odnoszące się
do jednego obiektu mają w pliku SWING ten sam identyfikator obiektu.
§ 11. Tabela – to zbiór wszystkich rekordów danego typu aplikacyjnego.
2.6. Model danych formatu SWING
§ 12. Model danych w formacie SWING określony jest przez deklarację:
słowników, typów atrybutów, typów wiązań i typów rekordów aplikacyjnych.
Jego zamieszczenie w pliku SWING ułatwia interpretację danych w nim zawartych, a tym samym ich przetwarzanie.
§ 13. Plik w formacie SWING 3.0 czyli zbiór tabel wraz z modelem danych
moŜe być traktowany jak geo-relacyjna baza danych.
23
SWING 3: format pliku (1)
• Plik SWING podzielony jest na sześć sekcji.
• Pierwsze pięć sekcji to metadane.
• Dane dotyczące obiektów zapisane są w sekcji obiektów.
• Wszystkie sekcje pliku SWING są fakultatywne.
• Pierwsza linia pliku pozwala na identyfikację, Ŝe plik zapisany jest w formacie SWING 3.0.
• Plik SWING ::=SWING.w.3.00.(C)2002;
[Kontekst danych]
[Sekcja definicji słowników]
[Sekcja deklaracji atrybutów i wiązań]
[Sekcja definicji typów rekordów]
[Sekcja redakcji graficznej]
[Sekcja obiektów]
linia końca pliku danych
• linia końca pliku danych ::=
SWINGX; |
SWINGXC, CRC;
• najkrótszy poprawny plik SWING ma postać:
SWING.w.3.00.(C)2002;
SWINGX;
24
SWING 3: format pliku (2) Metadane - Kontekst danych
Kontekst danych – dane organizacyjne Kontekst danych pozwala na określenie:
a) geodezyjnego układu odniesienia, w którym wyraŜone są współrzędne w pliku,
b) dostawcy danych,
c) przeznaczenia danych zawartych w pliku.
kontekst danych ::=
SN;
[{rekord nagłówkowy systemu}] NS, DN, WARTOŚĆ
[{rekord nagłówkowy uŜytkownika}] NU, NAZWA, WARTOŚĆ
linia końca sekcji
25
SWING 3: format pliku (3)
Metadane - rekord nagłówkowy uŜytkownika
rekord nagłówkowy uŜytkownika ::=
NU, NAZWA, WARTOŚĆ
26
SWING 3: format pliku (4)
Metadane - Sekcja definicji słowników
Sekcja definicji słowników
1) Słownik pozwala na deklarację w pliku SWING typu wyliczeniowego.
2) Słowniki identyfikowane są poprzez identyfikator.
3) Wartość atrybut wyliczeniowego jest reprezentowana nazwą kodową elementu słownika.
4) Zaleca się umieszczać w komentarzu opis funkcji słownika i jego pochodzenie (np.Instrukcję, która go definiuje).
6) Sekcja definicji słowników ::=
SD;
{rekord słownika}
linia końca sekcji 7) rekord słownika ::=
linia główna słownika {element słownika}
linia końca rekordu 8) linia główna słownika ::=
DS SŁOWNIK;,
27
SWING 3: format pliku (5)
Metadane - Sekcja definicji słowników
element słownika ::=
ES, NR_SL, KOD_SL, [OPIS]
a) SŁOWNIK – identyfikator słownika, niepowtarzalny w sekcji,
b) NR_SL – numer elementu słownika;
słuŜy do określania uporządkowania wartości atrybutu,
c) KOD_SL – nazwa kodowa elementu słownika; słuŜy do określania wartości atrybutu, pusty napis (brak nazwy
kodowej)
zastrzeŜony jest do reprezentacji braku informacji o wartości elementu.
d) OPIS – znaczenie elementu
słownika.
28
SWING 3: format pliku (6)
Metadane - Sekcja deklaracji atrybutów i wiązań
SP;
B, BFN, SL, FUNKCJA_BUDYNKU;
B, BKN, NO, ; B, BPS, FL,, ;
C; deklaracje typów relacji według Instrukcji G - 7 W, G7ROAD; Administrator obiektu
W, G7ROBR; Obiekt połoŜony w obrębie
W, G7RODPR; Obiekt naleŜy do odcinka przewodu W, G7ROJE; Obiekt połoŜony w jednostce
ewidencyjnej
W, G7RONO; Ostatnia operacja na obiekcie W, G7ROPR; Operator (kto wykonał operację) W, G7ROUL; Obiekt połoŜony przy ulicy
W, G7ROWL; Właściciel obiektu
W, G7RPRZW; Obiekt naleŜy do przewodu SX;
Fragment deklaracji typów atrybutów wg Instrukcji K-1 Sekcja deklaracji atrybutów i wiązań : :=
SP;
[{deklaracja atrybutu}]
[{deklaracja wiązania}]
linia końca sekcji
deklaracja wiązania ::=
W, RELACJA;
deklaracja atrybutu ::=
B, ATRYBUT, ZN, [DL]; |
B, ATRYBUT, FL, [DL], [po_przecinku];|
B, ATRYBUT, NO, [DL]; | B, ATRYBUT, UL, [DL]; |
B, ATRYBUT, SL, SŁOWNIK; | B, ATRYBUT, LN, [1]; |
B, ATRYBUT, DN, [DL]; | B, ATRYBUT, HR, [DL];|
B, ATRYBUT, DH, [DL];
29
SWING 3: format pliku (7)
Metadane - Sekcja definicji typów
Przykład deklaracji typu złoŜonego:
ST;
TD, TypZłoŜony, RC;
TP, Atrybut;
TPN, NazwaPola; Gdy nazwy pola i atrybutu róŜnią się WE, NazwaWiązaniaElementu1; Deklaracja elementu
WE, NazwaWiązaniaElementu2; Deklaracja elementu X;
TD, TypElementu1, RD;
TP, AtrybutElementu1; Nazwa atrybutu jest teŜ nazwą pola TPW; Pole jest wielowartościowe
WR, NazwaWiązaniaElementu1; Deklaracja pola wiązania
WN, NaleŜęDo; Wartość pola wskazuje rekord złoŜony X;
TD, TypElementu2, RO;
WR, NazwaWiązaniaElementu2; Nazwa wiązania jest teŜ nazwą pola X;
SX;
30
SWING 3: format pliku (8)
Metadane - Sekcja redakcji graficznej
sekcja redakcji graficznej ::=
SG;
A, SKALA; – skala redakcji [{rekord deklaracji koloru}]
[{rekord sygnatury (symbolu)}]
[{rekord stylu pisma }]
[{rekord stylu linii}]
[{rekord wypełnienia}]
linia końca sekcji
SKALA – mianownik skali redakcji, np.: 500 (skala = 1:500), jest atrybutem obowiązkowym sekcji.
rekord deklaracji koloru ::=
NK, NUMER, OPIS
rekord sygnatury (symbolu) ::= FD, NAZWA_SYGNATURY, [Kolor], [Wg], [SP_KR];
rekord stylu pisma ::= ZD, NAZWA_PISMA, [Kolor], [Wg], [SP_KR], [JUST];
rekord stylu linii ::= VD, NAZWA_LINII, [Kolor], [SzerLinii];
rekord wypełnienia ::= JD, NAZWA_WYPEŁNIENIA., [Kolor];
31
SWING 3: format pliku (9) Sekcja obiektów – Dane
Sekcja obiektów jest podstawowym elementem formatu SWING 3.0. Znajdują się w niej rekordy zawierające dane, podlegające wymianie.
Rekordy zawarte w tej sekcji tworzą georelacyjną bazę danych, o strukturze określonej w sekcjach ją poprzedzających.
sekcja obiektów ::=
SO;
[{rekord nieprzestrzenny}]
[{rekord przestrzenny}]
linia końca sekcji rekord nieprzestrzenny::=
rekord opisowy RD |
rekord obiektu złoŜonego RC rekord przestrzenny ::=
rekord punktu RP | rekord linii RL |
rekord obszaru RO |
rekord modelu terenu RM | rekord rastra RR
32
SWING 3: format pliku (10)
Sekcja obiektów – Dane: Atrybuty rekordu
atrybuty rekordu to:
a) KOD – kod klasy obiektu reprezentowanego przez rekord b) TYP – nazwa typu aplikacyjnego rekordu
c) ID – identyfikator obiektu d) IDR – identyfikator rekordu
e) ST_OBJ – status rekordu (2 cyfry według wzoru poniŜej) a) PrzynaleŜność: cyfra pierwsza
0 – nieokreślona – domyślnie baza danych 1 – obiekt bazy danych
2 – obiekt pomocniczy – moŜe być pominięty przy imporcie b) Wersja: cyfra druga
0 – nieokreślona, domyślnie wersja aktualna 1 – aktualna
2 – poprzednia lub obiekt usunięty
33
SWING 3: format pliku (11)
Sekcja obiektów – Dane: rekordy nieprzestrzenne
Rekord opisowy: SłuŜy do reprezentowania danych o obiektach nie posiadających odniesienia przestrzennego.
rekord opisowy::=
RD, [KOD], [TYP], [ID], [IDR], [ST_OBJ];
[{atrybut}]
[{wiązanie}]
linia końca rekordu
Rekord złoŜony: SłuŜy do reprezentowania danych o obiektach składających się z innych obiektów (struktur typu całość – część).
Przykładem obiektu złoŜonego z innych obiektów jest przewód sieci uzbrojenia technicznego lub podmiot grupowy EWGiB.
Rekord złoŜony nie zawiera listy swoich elementów. To elementy mają wskazania na rekord złoŜony.
rekord złoŜony::=
RC, [KOD], [TYP], [ID], [IDR], [ST_OBJ];
[{atrybut}]
[{wiązanie}]
linia końca rekordu
34
SWING 3: format pliku (12)
Sekcja obiektów – Dane: rekordy przestrzenne (1)
Punkt
SłuŜy do reprezentacji obiektów o punktowej charakterystyce przestrzennej.
Rekord punktu RP ::=
RP, [KOD], [TYP], [ID], [IDR], [ST_OBJ]; | pozycja
[punkt odniesienia]
[{etykieta}]
[sygnatura (symbol)]
[{atrybut}]
[{wiązanie}]
linia końca rekordu
pozycja ::= P, P, TYP, ID; | - relacja topologiczna, wskazanie na rekord punktu P, K, IDR; | - relacja topologiczna, wskazanie na rekord punktu P, G, X, Y, [Z];
X - liczba zmiennoprzecinkowa Y - liczba zmiennoprzecinkowa Z - liczba zmiennoprzecinkowa
35
SWING 3: format pliku (13)
Sekcja obiektów – Dane: rekordy przestrzenne (2)
Linia
SłuŜy do reprezentowania obiektów, których opis przestrzenny moŜna wyrazić za pomocą zbioru linii.
Przykłady obiektów liniowych
36
SWING 3: format pliku (14)
Sekcja obiektów – Dane: rekordy przestrzenne (3)
Rekord linii RL ::=
RL, [KOD], [TYP], [ID], [IDR], [ST_OBJ]; | {linia}
[punkt odniesienia]
[{etykieta}]
[{sygnatura(symbol)}]
[{atrybut}]
[{wiązanie}]
linia końca rekordu opis połączenia ::=
OL; | - odcinek prostej
OK, RStart, RKoniec ; | - klotoida, promień dodatni w prawo
OAD, R; | - duŜy łuk, promień dodatni w prawo OAM, R; | - mały łuk, promień dodatni w prawo łuk opisany funkcją B - sklejaną ::=
OB, INT_Rząd;
{punkt kontrolny}
OBX;
37
SWING 3: format pliku (15)
Sekcja obiektów – Dane: rekordy przestrzenne (4)
Obszar
SłuŜy do reprezentowania obiektów, których opis przestrzenny moŜna wyrazić za pomocą zbioru obszarów. Obszar moŜe zawierać wyspy i enklawy (dziury).
Przykłady obiektów obszarowych
Rekord obszaru RO ::=
RO, [KOD], [TYP], [ID], [IDR], [ST_OBJ];
[JK, [NAZ_WYPEŁNIENIA], [Kolor]; ] {obszar}
[punkt odniesienia]
[{etykieta}]
[{sygnatura(symbol)}]
[{atrybut}]
[{wiązanie}]
linia końca rekordu
38
SWING 3: format pliku (16)
Sekcja obiektów – Dane: rekordy przestrzenne (5)
Cyfrowy model terenu
Cyfrowy model terenu reprezentuje model rzeźby za pomocą sieci trójkątów lub jako zbiór punktów pomierzonej wysokości.
Rekord modelu terenu RM ::=
RM, [KOD], [TYP], [ID], [IDR], [ST_OBJ];
{punkt pomierzonej wysokości}
[{trójkąt}]
[{atrybut}]
[{wiązanie}]
linia końca rekordu
punkt pomierzonej wysokości ::=
punkt H
[Id. punktu – H]
punkt H ::= H, [Nr W ],P, TYP, ID; | - wskazanie na punkt z wysokością
H, [Nr W ],K, IDR; |- wskazanie na punkt z wysokością
H, [Nr W], X, Y, Z; – współrzędne w układzie globalnym
trójkąt ::= TR, Nr W1, Nr W2, Nr W3; - kolejne wierzchołki trójkąta [Id. trójkąta]
gdzie ”Nr W1” jest róŜne od “Nr W2”, “Nr W2”
jest róŜne od “Nr W3”,
“Nr W1” jest róŜne od “Nr W3”
39
SWING 3: format pliku (17)
Sekcja obiektów – Dane: rekordy przestrzenne (6)
Raster
Raster reprezentuje dowolną treść przedstawioną jako obraz cyfrowy (raster) Rekord rastra RR ::=
RR, [KOD], [TYP], [ID], [IDR], [ST_OBJ];
prezentacja rastra punkt wstawienia orientacja rastra obraz cyfrowy [{atrybut}]
[{wiązanie}]
linia końca rekordu
prezentacja rastra ::=
RKM, kolejność rysowania obrazu, kolor piksela czarnego, kolor piksela białego;
RKC, kolejność rysowania obrazu
a) Linia RKM - określa sposób prezentacji obrazów binarnych (czarno białych).
b) Linia RKC - określa sposób prezentacji obrazów wielokolorowych i barwnych.
40
SWING 3: Zasady transferu danych SIT w formacie SWING
Transfer podstawowy
Transfer podstawowy przeznaczony jest do realizacji transferu danych o obiektach SIT określonych w geodezyjnych instrukcjach technicznych, zgodnie z wytycznymi technicznymi do stosowania formatu SWING zawartymi w tych instrukcjach. W wypadku realizacji podstawowego
modelu transferu, plik w formacie SWING zawiera tylko sekcję kontekstu danych i sekcje opisową.
Transfer z elementami redakcji mapy
Transfer z elementami redakcji mapy róŜni się od modelu podstawowego transferu dodaniem sekcji redakcji graficznej, co umoŜliwia zawarcie w
pliku SWING informacji o rozmieszczeniu elementów prezentacji graficznej danych.
Transfer pełny
Model pełny transferu danych pozwala na transfer dowolnych danych w strukturze opisanej w pliku SWING. Tym samym dostawca informacji moŜe rozszerzyć katalog przekazywanych obiektów jak równieŜ rozszerzyć
definicje typów stosowanych do reprezentacji obiektów instrukcji
geodezyjnych.
41
SWING 3: Struktura pliku danych SWING 3.0
42
SWING 3: Typy rekordów w formacie SWING 3.0
43
SWING 3: Atrybuty geometryczne obiektów
przestrzennych w SWING 3.0
44
SWING 3:
Przykłady obiektów według Instrukcji K-1 (1)
45
SWING 3:
Przykłady obiektów według Instrukcji K-1 (2)
46
SWING 3:
Przykłady obiektów według Instrukcji K-1 (3)
47
SWING 3:
Przykłady obiektów według Instrukcji K-1 (4)
48
Format wymiany danych między systemami informacji
przestrzennej
uzupełnienie tematyki:
TERYT
49
TERYT
TERYT to rejestr urzędowy podziału terytorialnego kraju prowadzony przez GUS. TERYT został wprowadzony jako Rozporządzenie Rady Ministrów z dnia 15 grudnia 1998 i opublikowany w Dzienniku Ustaw nr 157 poz. 1031. Określa on sposób podziału administracyjnego Polski na województwa, powiaty i gminy poprzez przypisanie tym jednostkom odpowiednich numerów.
• Numery dwucyfrowe oznaczająwojewództwa np. województwo dolnośląskie otrzymało numer 02
• Numery czterocyfrowe oznaczają powiaty przy czym pierwsze 2 cyfry są kodem województwa a 2 następne (niepowtarzalne dla danego województwa) kodem powiatu np. powiat miejski koszaliński leŜący w województwie zachodniopomorskim otrzymał kod 3261.
• Numery siedmiocyfrowe oznaczają gminy przy czym pierwsze 4 cyfry są kodem powiatu, cyfry piąta i szósta sąkodem gminy (niepowtarzalnym dla danego powiatu) a cyfra siódma określa typ gminy:
1 - gmina miejska, 2 - gmina wiejska,
3 - gmina miejsko-wiejska,
4 - miasto w gminie miejsko-wiejskiej,
5 - obszar wiejski w gminie miejsko-wiejskiej, 8 - dzielnice gminy Warszawa-Centrum,
9 - delegatury i dzielnice innych gmin miejskich.
Przykładowo gminy powiatu dzierŜoniowskiego mają następujące kody TERYT:
0202021 - miasto DzierŜoniów - gmina miejska; 0202052 - gmina wiejska DzierŜoniów; 0202073 - gmina miejsko-wiejska Niemcza; 0202074 - miasto Niemcza w gminie miejsko-wiejskiej; 0202075 - obszar wiejski w gminie miejsko-wiejskiej Niemcza.
ZADANIE: RozpisaćTERYT dla swego miejsca zamieszkania lub urodzenia.
Pełny tekst rozporządzenia: http://www.abc.com.pl/serwis/du/1998/1031.htm
50
Format wymiany danych między systemami informacji
przestrzennej
uzupełnienie tematyki:
kontrola zbiorów
SWDE/SWING
51
Programy kontrolujące SWDE/SWING
Program A-SWDE
Program do sprawdzania poprawności plików w formacie SWDE/SWING oraz do scalania plików zawierających część opisową i graficzną ewidencji gruntów i budynków
Program V-SWDE
Program V-SWDE słuŜy do weryfikacji powiatowych baz danych ewidencji gruntów i budynków pod kątem ich zgodności ze standardem określonym w Instrukcji G-5 (aneks 3 - Wykaz dopuszczalnych oznaczeń OFU, OZU, OZK (uŜytków gruntowych, klas gleboznawczych i klasouŜytków)).
Program O-SWDE
O-SWDE jest aplikacją słuŜącą do filtrowania plików w formacie SWDE z niepotrzebnych danych.
Program SWDE_Konwertor 2000
Program do przeliczania współrzędnych w plikach w formacie SWDE
52
Ogólny opis programu A-SWDE
Podstawowe cechy A-SWDE:
Sprawdzanie syntaktyki - Sprawdzanie poprawności syntaktycznej plików SWDE/SWING, ilości atrybutów, sekcji, rekordów ich poprawności formalnej w danym kontekście, typów wartości
Sprawdzanie semantyki - Sprawdzanie poprawności semantycznej plików SWDE, krotności relacji, poprawności powiązań.
Przejrzyste raporty - Raportowanie niezgodności w formie przejrzystych raportów, z których moŜna przejść bezpośrednio do miejsc w plikach danych powodujących rozbieŜność. MoŜliwość wydruku, zapisywania oraz wczytywania wcześniej zapisanych raportów.
Scalanie plików - Scalanie plików zawierających części graficznąi opisowąw jeden poprawny plik SWDE.
Uwspólnianie sekcji metadanych.
Weryfikacja - Sprawdzanie poprawności sum kontrolnych zawartych w pliku SWDE/SWING. Raportowanie niezgodności. Utworzenie dokumentu słuŜącego do weryfikacji pliku danych. MoŜliwość zapisu, podglądu i wydruku utworzonego dokumentu.
Autoryzacja - Utworzenie pliku danych z wyliczonymi sumami kontrolnymi oraz utworzenie dokumentu autoryzacji dla plików SWDE/SWING. MoŜliwość zapisu, podglądu i wydruku utworzonego dokumentu autoryzacji.
Interaktywnie lub wsadowo - MoŜliwość pracy w trybie interaktywnym (aplikacja okienkowa Windows) lub wsadowym.
Wsparcie dla innych aplikacji - NiezaleŜna biblioteka obiektów COM realizująca sprawdzanie poprawności syntaktycznej umoŜliwiająca sprawdzanie plików SWDE/SWING z równieŜz innych aplikacji
POPRAWNOŚĆSYNTAKTYCZNA – BADANIE SKŁADNI: etym. - gr. sýntagma 'zestawienie', sýntaksis 'porządek, szyk' i syntaktikós 'porządkujący' od syntássein 'układać, porządkować'.
POPRAWNOŚĆSEMANTYCZNA – BADANIE REALACJI: etym. - gr. sēmantikós 'znaczący', sēmasia 'znaczenie' i sēmeíon 'znak' od sēma 'znak; sygnał; obraz‘.
53
Ogólny opis programu O-SWDE
O-SWDE jest aplikacją słuŜącą do filtrowania plików w formacie SWDE z niepotrzebnych danych.
Aplikacja jest obsługiwana przez operatora, którego rolą jest:
• uruchomienie aplikacji,
• wskazanie plików, na których ma być przeprowadzone filtrowanie,
• ustawienie parametrów filtrowania,
• uruchomienie procesu filtrowania.
Format filtrowanych plików SWDE musi być zgodny z:
• załącznikiem 4 Rozporządzenia Ministra Rozwoju Regionalnego i Budownictwa z dnia 29 marca 2001 w sprawie ewidencji gruntów i budynków,
• instrukcją G5.
Wyjątek stanowią pliki SWDE, z których usunięto dane graficzne i które nie są zgodne z
załącznikiem 4, ale są zgodne z formatem przejściowym zdefiniowanym przez instrukcję G5.
W aplikacji moŜliwe jest filtrowanie grupy plików. Filtrowanie moŜe odbywać się na dwóch poziomach:
• odfiltrowania całych obiektów,
• odfiltrowania poszczególnych, określonych pól (atrybutów) obiektu.
Dodatkowo istnieje moŜliwość zapisywania konfiguracji filtrowania do pliku, a ostatnio uŜyta konfiguracja jest automatycznie zapisywana w pliku konfiguracyjnym.
Aplikacja daje teŜ moŜliwość zmiany danych opisowych (sekcji nagłówkowej) nowo tworzonego pliku.
54
Ogólny opis programu SWDE KONWERTOR
Program słuŜy do konwersji plików danych ewidencyjnych formatu SWDE z układu pierwotnego ("1965" lub lokalnego) do układu "2000".
W celach kontrolnych moŜliwa jest teŜkonwersja odwrotna. Istota konwersji sprowadza się do
przeliczeń współrzędnych wszystkich punktów określających obiekty geometryczne mapy ewidencyjnej.
W sekcji kontekstu danych rozpoczynających sięciągiem SN,.. wymianie podlega równieŜidentyfikator układu współrzędnych:
65 -> 2000 lokalny -> 2000 2000 -> 65 2000 -> lokalny
oraz oznaczenie numeru strefy, stosownie do zmiany układu (dla układu "1965" : 1,2,3,4,5, dla układu 2000: 15, 18, 21, 24 - odpowiednio do długości geodezyjnej Lo południka osiowego strefy, dla układu lokalnego - bez znaku).
Rekordy plików wejściowych z sumami kontrolnymi konwertuje sięna rekordy bez sum kontrolnych (zgodnie z dopuszczalnym wariantem formatu SWDE):
SWDEXC,CRC; => SWDEX;
SXC,CRC; => SX;
XC,CRC; => X;
Do tworzenia ostatecznych plików z zabezpieczeniami kontrolnymi słuŜą odrębne programy diagnostyczno-kontrolne obsługi formatu SWDE.
Zasadniczej konwersji podlegająlinie ze współrzędnymi rozpoczynające sięciągiem znaków P,G, ... w dalszej kolejności występują współrzędne x, y [, h] jako liczby typu real z kropką pozycyjną.
Wysokość moŜe nie wystąpić. Rekord jest zakończony średnikiem.
Pozostałe linie formatu SWDE zostająprzeniesione w oryginale do pliku wynikowego.
55
Zapowiedź:
na kolejnych wykładach
SGML/XML
SGML to zestandaryzowany nadrzędny język znaczników (Standard Generalized Markup Language) słuŜący do ujednolicania struktury i formatu wszelkich informacji dających się zapisać w formie dokumentu tekstowego. Za twórców języka SGML uwaŜa się Charlesa Goldfarba, Edwarda Moshera oraz Raymonda Loriego, którzy w 1969 roku opracowali dla IBM język GML (Generalized Markup Language), Intensywny rozwój technologii GML zaowocował zatwierdzeniem w 1986 roku formatu SGML jako standardu ISO.
XML (Extensible Markup Language) jest językiem znaczników zdefiniowanym przez grupę roboczą XML z konsorcjum World Wide Web Consortium (W3C). To wzorowany na SGML sposób opisu znacznikami, umoŜliwiający wygodniejsze, szybsze i mniej sformalizowane przygotowywanie dokumentów tekstowo-graficznych, które moŜna bez większych
problemów przenosić i adaptować do róŜnych form przekazu elektronicznego, między systemami informatycznymi w tym geoinformatycznymi. Od 4 lutego 2004 r. najnowszą wersją XML jest XML 1.1.
Zarówno SGML, jak i XML są metajęzykami pozwalając uŜytkownikowi na definiowanie i wykorzystywanie jego własnych języków, przeznaczonych do dowolnych zastosowań.