120 likes | 213 Views
LIXE - Project Studying XML in Location-Based Services. University of Jyväskylä, Faculty of Information Technology Prof. Jari Veijalainen Jouni Markkula Artem Katasnov Republica Corp. Eetu Ojanen Diego Ballvé. Architectures & Specifications Related to LBS.
E N D
LIXE - ProjectStudying XML in Location-Based Services University of Jyväskylä, Faculty of Information Technology Prof. Jari Veijalainen Jouni Markkula Artem Katasnov Republica Corp. Eetu Ojanen Diego Ballvé
Architectures & Specifications Related to LBS Location Interoperability Forum (LIF) • MLP - Mobile Location Protocol: • http://www.locationforum.org/publicdownload/LIF-TS-101-v2.0.0.zip Open GIS Consortium (OGC) • GML - Geographic MarkUp Language: • http://www.opengis.net/gml/01-029/GML2.pdf • WMS - Web Map Service: • http://www.opengis.org/techno/specs/01-047r2.pdf • WFS - Web Feature Service: • http://www.opengis.org/techno/RFC13.pdf Open Location Services initiative (OpenLS) • http://www.openls.org WAP Forum • WAP Location Framework (adoption of LIF MLP) Recently Open Mobile Alliance (OMA) • http://www.openmobilealliance.org
General LBS Architecture • LCS (Location Service): provides location of mobile users. • LQB (Location Query Block): a wrapper of LCS into LIF Mobile Location Protocol (MLP). • LCA (Location Attachment Block): if needed, attaches location information to a request. • Portal service: the gateway to LBS. • LBS: information service utilizing location data. • Core spatial application and data services: building blocks for LBSs. • XML encoded messages • HTTP Post as binding mechanism
X-Fetch Wrapper • Data conversion to XMLaccording to rules specifiedwith Data Extraction Language • Any input format • Any output XML format • Data Extraction Language (DEL) isevaluated and published bythe W3C • www.w3.org/TR/data-extraction
X-Fetch Performer • Reading and parsing XML streams (and files) • Low memory consumption • Synchronous reading and writing • SAX application program interface • MAP file • Rules for data processing • Where to route the data • In which format to routethe data • J2EE compatible
LBS Architecture and X-FETCH The blue blocks have to deal with: • XML processing (requests, responses) • Data streams (HTTP connection streams) • Message generation based on templates. +
X-FETCH LBS Demo: process [1/2] • Gateway: Generates XML formated request to Location Attachement Block. • LAB Servlet: Performer processes HTTP request (XML) and generates a LIF MLP request for Location Query Block. • LQB Servlet: Performer transforms LIF MLP request into LCS protocol’s request for Location Server. • LQB Servlet: Wrapper reads LCS response and convert it into LIF MLP response. • LAB Servlet: Wrapper takes in LIF MLP response and combines with the original user’s request, forwarding it to Portal.
X-FETCH LBS Demo: process [2/2] • Portal Servlet: Performer processes HTTP request from LAB and generates WFS request for Web Feature Server. • WFS Servlet: Performer processes WFS request into SQL (spatial) query for GML adapter. • GML Adapter: uses SQL to query Oracle 9i Database and, combined with Oracle SDO API, generates GML response. • WFS Servlet: Packs multiple queries results into a single WFS response (GML). • Portal Servlet: Performer processes WFS response and returns to client whether XHTML or GML, according to the request.
Stage 2 Stage 1 Parking Place Stage 3 Music Festival • The environment is a Music Festival • Limited, temporarily densely populated area • Several stages • Several eating and drinking places • People active, mobile and social • Assumptions • People have mobile terminals • Supporting positioning • Positioning accuracy ~10 m Hamburgers Pizza & Beer
Planned LBS • Concentration on “Pull” services (Mobile Originated Location Request) • Stage Information • The real-time schedule of performers • Text-based output • Find Food & Drink • Finding eating & drinking places according preferences and present location • Text-based and/or map based output • Navigation support • Find Friend • Finding identified friends • Map-based output • Meeting request • Text-based and/or map based output
Implemented LBS • What’s Up page • Stage Info page • Restaurants (list) • Restaurant Info (more info about given restaurant)