Dotazovací služby

14.10 2012

Prostorová data jsou on-line nejčastěji zpřístupňována prostřednictvím prohlížecích služeb, zobrazujících výstupy formou mapy. Potenciál využití prostorových dat je však mnohem širší, v praxi se vyskytuje celá řada úloh, ve kterých je požadováno zjištění existence prvků nebo jejich vlastností na určitém místě povrchu Země, aniž by bylo potřeba současně zobrazovat mapový výstup lokality. Pro řešení těchto úloh využívá hl. m. Praha tzv. dotazovací služby. Jedná se webové služby dle standardu XML-RPC, umožňující vyhledávat informace o de facto libovolných datech datového skladu prostorových dat.

Dotazovací služby jsou publikovány prostřednictvím aplikačního rozhraní v protokolu dle standardu XML-RPC, který umožňuje volání procedur prostřednictvím protokolu HTML (metody POST) a komunikující na bázi formátu XML. Jedná se o velmi jednoduchý a obecný standard (více např. http://xmlrpc.scripting.com/spec).

Služba je dostupná na adrese http://app.urm.cz/ws/RPC2.
Na stránce http://app.urm.cz/ws/index.html je k dispozici popis služeb.

Stručný popis využití služeb

Komunikace s XML-RPC službami má obecně 3 kroky:
1. autentizace uživatele
2. dotaz na databázové objekty
3.deautentizace

Autentizace je povinná a provádí se metodou authenticate.
Parametry volání metody:
Parametr 1: uživatelské jméno přidělené správcem služby. Veřejné služby jsou k dispozici pod jedním uživatelem uvedeným na stránce popisu rozhraní.
Parametr 2: heslo hashované MD5
Odpověď: hodnota SessionId

Dotazování databázových objektů

Pro dotazování do obsahu databáze slouží tři metody:

  • getschema – vrací seznam všech uložených dotazů a přístupných databázových objektů
  • getstoredqueryresult – volání uloženého dotazu
  • getcomposedqueryresult – volání obecného databázového (SQL) dotazu

Metoda getschema
Parametr volání metody: SessionId – id session vrácené metodou authenticate.
Odpověď: XML – výpis všech přístupných objektů (uložených dotazů, DB schémat, tabulek a atributů)

Metoda getstoredqueryresult
Parametry volání metody:
Parametr 1: SessionId – id session vrácené metodou authenticate.
Parametr 2: Query ID – id uloženého dotazu (zjištěného metodou getstoredqueryresult)
Parametr 3: Rows – počet záznamů, které mají být na výstupu
Parametr 4: Offset – pořadí prvního záznamu na výstupu (stránkování od)
Parametr 5: XMLParametry – XML se strukturou interních parametrů dotazu
Odpověď: XML – výpis výsledku dotazu

Metoda getcomposedqueryresult
Parametry volání metody:
Parametr 1: SessionId – id session vrácené metodou authenticate.
Parametr 2: XMLRequest – XML se strukturou SQL dotazu a parametrů výstupu
Odpověď: XML – výpis výsledku dotazu

Deautentizace je nepovinná a provádí se metodou deauthenticate.
Parametry volání metody:
Parametr 1: SessionId – id session vrácené metodou authenticate.
Odpověď: hodnota 1

Využití služeb

XML-RPC služby lze využít při tvorbě aplikací, které mohou využít potenciálu dat Centrálního datového skladu GIS hl. m. Prahy, aniž by bylo potřeba nakládat s mapovými daty. Typickou úlohou je zjišťování výčtů objektů (a jejich vlastností) dotčených souřadnicově zadaným objektem (bodem, linií, plochou – např. výčet parcelních čísel dotčených uživatelsky zadaným polygonem), nebo zjišťování informací o objektech na základě jejich prostorové koincidence s vybranými prvky jiných tříd (např. zjišťování ceny pozemků cenové mapy pro parcelu katastru nemovitostí vybranou na základě čísla parcelního a ID katastrálního území).

XML-RPC služby mohou sloužit také jako jednoduchá stahovací služba pro geografická data. Vzhledem k tomu, že geometrie prvků může být předávána jako běžná hodnota sloupce (atributu), lze služby využít i jako distribuční nebo aktualizační zdroj.



Aktuality


RSS metadat mapových služeb: Rss2


Archív aktualit