Nyugat-Magyarországi Egyetem Geoinformatikai Kar Magyar Tudomány Ünnepe 2007 A térinformatika mindenkié GIS fejlesztés Web platformra nyílt forráskódú ingyenes eszközökkel Kottyán László adjunktus
Tartalom Kliens szerver kommunikáció, Ajax Mashup API-k Szervezetek, szabványok Kliens - szerver WebGIS megoldások GeoServer- MapBuilder MapGuide Open Source
Ajax = Asynchronous JavaScript and XML Előzmények: kattints és várj, keretek, iframe, JavaScript, DOM, XMLHttp. Technológiák: Kliens oldal: XML/XHTML, DOM, JavaScript, XMLHttp, XSLT, CSS Szerver oldal: PHP, Java szervlet,.net (Zakas et. al., 2007). Az Ajax megoldásban a JavaScript közvetlenül kommunikál a szerverrel, az XMLHttpRequest objektumon keresztül. Ezáltal a JavaScript az oldal ismételt letöltése nélkül cserélhet adatot a webszerverrel. (W3 Schools) A lényeg: felhasználói élmény fokozása, új felhasználói interakciók A Web 2.0 része. Példák: Google Suggest, Gmail, Google Maps
Lekérdezés HTTP-kérés Internet Adatok Adatbázis Webszerver HTML, CSS Böngésző Szerver Hagyományos webes alkalmazásmodell Kliens Lekérdezés HTTP-kérés Internet JavaScript hívás Adatbázis Adatok Webszerver XML adatok Ajax motor HTML, CSS GUI Szerver Forrás: Garrett, 2005 alapján Ajax-alapú webes alkalmazásmodell Böngésző Kliens
Google Maps API Mashup alkalmazások készítése Magáncélra ingyenes Megjelenítés: vezérlőelemek, térkép mozgatása, információs ablakok, jelölők Szolgáltatások: KML és GeoRSS, geokódolás, keresés Egyéb megoldások: Yahoo! Maps Web Services - Geocoding API, Virtual Earth Interactive SDK, OpenLayers
http://maps.google.com/maps/geo?q=1.+pirosalma, +Szekesfehervar,+HU&output=kml&key=...
Az első mashup:www.chicagocrime.org
Webes projektek: Open Source Geospatial Foundation Mapbender MapBuilder MapGuide Open Source MapServer OpenLayers (OSGeo)
Open Geopatial Consortium Az OGC (Open Geospatial Consortium) egyik fő küldetése a nyílt térinformatikai szabványok kidolgozása. Néhány: a GML (Geography Markup Language) szabvány a térbeli, geometriai adatok leírására szolgál. (Cox et al., 2005 ) a Web Map Service (WMS) használatával a kiszolgáló a térbeli információkat, dinamikusan generált digitális képi állományként közvetíti a kliens alkalmazás részére. (Beaujardiere, 2006 ) a Web Feature Service (WFS) lehetővé teszi a kliensek számára a kiszolgálók által biztosított, GML-ben kódolt térbeli adatok elérését, támogatja az INSERT, UPDATE, DELETE, QUERY és DISCOVERY műveleteket végrehajtását a geometriai elemeken. (Vretanos, 2005 ). A WMS és WFS kérés - kiszolgálás a Http protokollon keresztül valósul meg. a Styled Layer Descriptor (SLD) egy XML schema, amellyel a WMS, WFS, WCS (Web Coverage Service) adatok kliensoldali megjelenítése írható le. (Lalonde, 2002)
http://www2.demis.nl/wms/wms.asp?service=wms&wms=bluemarbl&version =1.1.0&Request=GetMap&BBox=-20,- 40,60,40&SRS=EPSG:4326&Width=400&Height=400&Layers=Earth%20Im age,borders,coastlines&format=image/gif WMS/WFS szerver lekérdezés: GetCapabilities Biztonság: GeoXACML (Geospatial extensible Access Control Markup Language) az Oasis XACML szabvány kiterjesztése a térbeli adatokra, amely lehetővé teszi biztonsági politika és hozzáférés szabályozási rendszer kialakítását a szolgáltatásalapú térbeli adatinfrastruktúrákhoz. A GeoXACML jelenleg még nem OGC szabvány, azonban megoldást kínál a OGC szabványok alapján fejlesztett alkalmazások adatvédelmi elemeinek kialakítására. (OGC, 2007)
GeoXACML architektúra (GeoXACML, 2007)
GeoServer Nyílt forráskódú, támogatja az OGC WFS- T és WMS protokolljait, amelyekkel többek között JPEG, PNG, SVG, KML/KMZ, GML, PDF és Shapefile típusú adatokat szolgáltat a kliensek számára. Webszerver: TomCat, Jetty, OC4J, JBoss Adatbázisok: PostGIS, Oracle, ArcSDE, DB2, MySQL, (GeoServer, 2007)
Főbb funkciói Adat konfiguráció Adattár beállítás: kapcsolat kialakítása az adatforráshoz Feature típus készítés: a kapcsolódó adattárakból a vektoros térképi információk, rétegek beállítása Coverage tárolás: a képi állományok típusának és helyének meghatározása Coverage készítés: a képek beállításai Adatkezelés Az OGC Web Map Service protokollal a kliens alkalmazások számára a térképi információk raszteres állományokként történő elérését teszi lehetővé a GeoServer Az OGC Web Feature Service protokollal a kliensek hozzáférhetnek a GML formában kódolt térbeli adatokhoz. A GeoServer lehetővé teszi a WFS műveletek (INSERT, UPDATE, DELETE, QUERY, DISCOVERY) használatát is a Http protokollon keresztül.
MapBuilder A MapBuilder egy térképező kliens alkalmazás, amely böngészőben fut. Képes megjeleníteni a WMS, WFS, GeoRSS és Google Maps adatokat. A MapBuilder a térképek azonnali megjelenítéséhez AJAX technikát alkalmaz. (MapBuilder, 2007)
GeoServer MapBuilder alkalmazás architektúrája
MapGuide Open Source A MapGuide Open Source (MGOP) az Autodesk cég ingyenes, nyílt forráskódú szoftver platformja Web alapú GIS alkalmazások fejlesztéséhez. Felépítés: MapGuide Server : feladata a kliens kérések kiszolgálása, ehhez hét szolgáltatást biztosít (Site Service, Resource Service, Drawing Service, Feature Service, Mapping Service, Rendering Service, Tile Service). MapGuide Web Server Extensions: belső komponeneseket tartalmaz, amelyek a MapGuide Web API-n kersztül érhetőek el a fejlesztők számára; biztosítja a szerver oldali programozás lehetőségét ASP.NET, Java/JSP és PHP környezetekben; együttműködve a Microsoft IIS vagy az Apache Web szerverekkel Web kiszolgálóként funkcionál. MapGuide Viewer: DWF-alapú vagy AJAX-alapú kliens, amely testreszabható, programozható felhasználói felületet biztosít. MapGuide Web Studio: Web alapú szerkesztő eszköz az adatforrások, rétegek, térképek kezeléséhez. MapGuide Site Administrator: webes adminisztrációs felület, a szerver felügyelethez (MapGuide Open Source, 2007)
Háromrétegű kliens-szerver architektúra. (MapGuide Open Source, 2007)
Légszennyezettségi alkalmazás
Attribútum adatok lekérdezése Keresés funkció
Biomonitoring alkalmazás mintaterület fényképpel
Irodalom 1. Beaujardiere, de la J.(2006), OpenGIS Web Map Server Implementation Specification, OGC 06-042,Open Geospatial Consortium, http://www.opengeospatial.org/standards/wms, (2007.05.11.) 2. Cox, S. et al.(2005), OpenGIS Geography Markup Language (GML) Encoding Specification, OGC 02-023r4, Open Geospatial Consortium, http://www.opengeospatial.org/standards/gml, (2007.05.11.) 3. Garrett, J. J. (2005): Ajax: A New Approach to Web Applications, http://www.adaptivepath.com/ideas/essays/archives/000385.php (2007.10.11.) 4. GeoServer Home, http://docs.codehaus.org/display/geos/home, (2007.05.08.) 5. GeoXACML Home, http://www.geoxacml.org/ (2007.11.10.) 6. Lalonde, W.(2002), Styled Layer Descriptor Implementation Specification, OGC 02-070, Open Geospatial Consortium, http://www.opengeospatial.org/standards/sld, (2007.05.11.) 7. Mapbuilder Home, http://communitymapbuilder.org/, (2007.05.08.) 8. MapGuide Open Source, http://mapguide.osgeo.org, (2007.04.13.) 9. Open Geospatial Consortium (2007), Geospatial extensible Access Control Markup Language (GeoXACML), Draft, (2007.05.11.) 10. OSGeo Home, http://www.osgeo.org/ (2007.11.10) 11. Zakas, N. C., McPeak, J., Fawcett, J. (2007) Professzionális Ajax a második kiadás fordítása, Szak Kiadó, Bicske 12. Vretanos, A. P.(2005), Web Feature Service Implementation Specification, OGC 04-094, Open Geospatial Consortium, http://www.opengeospatial.org/standards/wfs, (2007.05.11.) 13. W3 Schools, AJAX Tutorial, http://www.w3schools.com/ajax/default.asp, (2007.03.19.)