XOMGL
XOMGL (eXtensible Open Municipal Geodata Language) to oparty na XML otwarty standard wymiany dużych ilości danych rządowych między agencją miejską a zwykłymi obywatelami i programistami tworzącymi internetowe aplikacje mapowe. Jest częścią standardu OMG , który ma na celu promowanie swobodnego przepływu informacji między agencjami rządowymi a obywatelami poprzez ustanowienie wspólnego zestawu standardów technicznych w zakresie organizowania i udostępniania danych publicznych.
Rodzaje danych
Format XOMGL jest dobry do organizowania i rozpowszechniania cyfrowego wielu rodzajów danych rządowych, w tym informacji o przestępczości, pozwoleniach na budowę, przeglądach stanu zdrowia restauracji, źródłach zanieczyszczeń, darowiznach na cele polityczne, wartości nieruchomości, wypadkach drogowych, przestępcach seksualnych i miejscach historycznych.
Pola
Ma tylko tyle wymaganych pól, aby umożliwić łatwe aktualizacje i wykreślanie danych na mapach online. Ma również wystarczająco dużo opcjonalnych danych, aby umożliwić kategoryzację, filtrowanie, zakresy dat, obrazy, linki zewnętrzne oraz szerokość i długość geograficzną. Zapewnia to wszystko bez przytłaczania użytkownika końcowego, udostępniając zbyt wiele nieistotnych danych i wyświetla w formacie łatwym do odczytania i zarządzania.
Przykłady użycia
Agencja rządowa udostępniłaby dane na swojej stronie internetowej ze statycznymi linkami do plików w tym formacie lub wersjami z możliwością wyszukiwania, które pozwalają użytkownikom filtrować dane według daty ostatniej aktualizacji, zakresu dat, kategorii itp.
XML i JSON mogą być używane do automatyzacji importowania danych do aplikacji internetowych, podczas gdy wersja CSV pozwala zwykłym użytkownikom przeglądać, filtrować, sortować, edytować i ponownie wykorzystywać informacje, mając jedynie wiedzę o oprogramowaniu do obsługi arkuszy kalkulacyjnych.
Formaty a standardy
Należy zauważyć, że istnieje rozróżnienie między standardami danych a formatami danych . Format danych, taki jak KML , GeoRSS , JSON , XML , CSV i inne, opisują, jak sformatować dane, aby były czytelne dla określonych aplikacji. Standard danych określa, które pola/kolumny są potrzebne, aby surowe dane były użyteczne w tych formatach. Informacje w standardzie XOMGL mogą być wyprowadzane maszynowo do dowolnego z wyżej wymienionych formatów danych.
Przykład formatu XOMGL
<?xml version="1.0" encoding="utf-8"?> <dataset name= "" > <!-- * name:string - nazwa zbioru danych --> <metadane> <!-- * metadane o zestaw danych --> <sourcename> <!-- * string: nazwa źródła danych --> </sourcename> <sourceurl> <!-- string: pełna ścieżka do strony zawierającej dane źródłowe -- > </sourceurl> <sourcecity> <!-- string: nazwa miasta pochodzenia --> </sourcecity>
<sourcestateid> <!-- int: identyfikator kraju pochodzenia --> </sourcestateid> <sourcecountryid> <!-- int: identyfikator kraju pochodzenia --> </sourcecountryid> <description> <!-- string : tekstowy opis źródła danych --> </description> <updatefrequency> <!-- string: częstotliwość aktualizacji danych, codziennie, co miesiąc, co tydzień, itp --> </updatefrequency> <lastupdated> <!-- datetime: stempel ostatniej aktualizacji tego zbioru danych --> </lastupdated>
<startdatetime> <!-- datetime: najwcześniejsza data pokrycia danych --> </startdatetime> <enddatetime> <!-- datetime: ostatnia data pokrycia danych --> </enddatetime> </metadata> < dane lokalizacji> < !-- * informacje oparte na lokalizacji --> <centercity> <!-- string: nazwa miasta centrum danych --> </centercity> <centerstateid> <!-- int: id stanu centrum danych --> </centerstateid> <centercountryid>
<!-- int: id kraju centrum danych --> </centercountryid> <centerlatitude> <!-- float: szerokość geograficzna centrum --> </centerlatitude> <centerlongitude> <!-- float: długość geograficzna of center --> </centerlongitude> <coveragecity> <!-- string: miasto obszaru pokrycia zestawu danych. Pomiń, jeśli obszar pokrycia jest większy --> </coveragecity> <coveragestateid> <!-- int: id stanu obszaru pokrycia zestawu danych. Pomiń, jeśli obszar pokrycia jest większy -->
</coveragestateid> <coveragecountryid> <!-- * int: id kraju obszaru pokrycia zbioru danych. --> </coveragecountryid> <minlatitude> <!-- float: na podstawie obszaru pokrycia danych --> </minlatitude> <maxlatitude> <!-- float: na podstawie obszaru pokrycia danych --> </maxlatitude> < minlongitude> <!-- float: na podstawie obszaru pokrycia danych --> </minlongitude> <maxlongitude> <!-- float: na podstawie obszaru pokrycia danych --> </maxlongitude>
</locationdata> <itemdata> <!-- dane dotyczące wszystkich elementów --> <externalurl> <!-- pełna ścieżka do dodatkowych informacji z [ExternalID] zamiast elementu->id w adresie URL --> </externalurl > </itemdata> <item> <!-- * jeden element danych. może ich być wiele --> <id> <!-- * string: unikalny identyfikator tego elementu oparty na wewnętrznym identyfikatorze systemu. używany do późniejszej aktualizacji danych --> </id> <nazwa> <!-- * ciąg znaków: nazwa elementu --> </nazwa> <opis>
<!-- string: sformatowany html lub zwykły tekst pełny opis elementu --> </description> <kategorie> <!-- jedna lub więcej kategorii, do których element może zostać sklasyfikowany. id łączy się z innymi danymi w formacie XML, które pokazują nazwę kategorii --> <categoryid> <!-- int: id kategoryzacji elementu. --> </categoryid> </categories> <lokalizacja> <!-- string: pełny tekst lokalizacji. można tego użyć zamiast adresu, miasta, stanu, kodu pocztowego --> </location> <address>
<!-- string: adres ulicy wraz z numerem domu --> </address> <address2> <!-- string: bardziej szczegółowe informacje o ulicy lub opis lokalizacji --> </address2> <city> <!-- string : miasto lokalizacji elementu --> </city> <stan> <!-- string: stan położenia elementu --> </state> <zip> <!-- string: kod pocztowy położenia elementu --> < /zip> <data> <!-- data: data powiązana z elementem --> </date> <szerokość geograficzna>
<!-- float: szerokość geograficzna położenia elementu --> </latitude> <longitude> <!-- float: długość geograficzna położenia elementu --> </longitude> <fullurl> <!-- string: pełna ścieżka do więcej informacje o tym elemencie --> </fullurl> <ścieżka do obrazu> <!-- ciąg znaków: pełna ścieżka do lokalizacji obrazka na serwerze --> < / ścieżka do obrazu > <link do szczegółów> <!-- boolean: jeśli prawda, czy item->id, aby połączyć się z innym zestawem danych XML z pełnymi szczegółami --> </detaillink> </item>
</zbiór danych>