1) The document proposes a framework for building standards-based geospatial processing mobile clients.
2) The framework includes a network communication library optimized for mobile devices and a code generator that simplifies XML schemas and produces compact code.
3) It was tested on sample applications and allows mobile clients to execute Web Processing Service requests, though it currently only supports the GML encoding and synchronous requests.
Building Standards-Based Geoprocessing Mobile Clients
1. Building Standards-Based
Geoprocessing Mobile Clients
Alain Tamayo , Carlos Granell, Laura Díaz, Joaquín Huerta
Geospatial Technologies Research Group, Universitat Jaume I, Spain
AGILE 2012, Avignon, France
2. 1 . Introduction
OGC standards define a set of web service interfaces and encoding
formats to exchange geospatial information: maps, geographical
features, satellite imagery, etc.
Most of the protocols are
based on XML for textual
data.
XML
The structure of the data is
defined using XML Schema
3. 1 . Introduction
The Web Processing Service (WPS) specification aims to
expose any kind of (geospatial) processes as web services.
In contrast to other OGC specifications, WPS presents an
additional challenge as providers may define their own input
and output data encodings formats.
4. 1. Introduction
Mobile devices have had a rapid evolution
making it possible for users to access Web
content anytime, anywhere.
The main drawback of mobile devices is battery life.
4
5. 2. Problem
Geospatial applications based on OGC specifications have not
had a wide adoption on mobile devices.
• Complexity of schemas
• Potential large size of
transferred information
5
6. 3 . Complexity
Type Definition Hierarchy GML 2.0.0
Type Definition Hierarchy GML 3.1.1
6
8. 4. Pragmatic solutions
• Reuse of existing libraries
• Advantages: reduced implementation cost
• Disadvantages:
• Not many WPS libraries available, and even less that
can be executed in a mobile device
• XML data binding tools
• Advantages: enhanced productivity
• Disadvantages:
• Structure of generated code do not match the structure of your
classes
• Code with large size, not suited for mobile devices
8
9. 5. Goal
• Build a framework that simplifies the development of
WPS mobile clients:
• Communication library supporting the basic network level
data exchange
• A code generator that allows to generate compact code for
XML-based exchanged messages
9
10. 6 . Network Communication Library
• Optimized to have the minimum possible size:
• Support only mandatory bindings of operations
• Prefer RawDataOutput to ResponseDocument as output
response
• Customized outgoing message packaging (template-based
serialization)
11. 7 . Code Generator
• Use of XML documents to determine how schemas are
used by the application (Instance-based data binding
[Tamayo et al, 2011])
• Disabling parsing or serialization operations as needed
• Ignoring sections of the instance files
• Use of streaming APIs for low-level XML manipulation
[Tamayo et al, 2011] A. Tamayo, C. Granell, and J. Huerta. Instance-based XML data binding for mobile devices. In Proceedings of the 3rd
International Workshop on Middleware for Pervasive Mobile and Embedded Computing, M-MPAC’2011, 2011
12. 8. Instance-based XML data binding
Assumptions:
- Actual implementations do not use the whole specification schemas.
- A set of representative XML documents is available to drive the
schema simplification process.
14. 10. Limitations and Challenges
• Limitations:
• Only GML-Packet schema in 52 North WPS server
supported in Execute requests
• Only synchronous requests are supported
• Challenges:
• Sheer size of XML schemas
• Exchange of large volumes of data (binary formats?)
[Tamayo et al, 2011] A. Tamayo, C. Granell, and J. Huerta. Instance-based XML data binding for mobile devices. In Proceedings of the 3rd
International Workshop on Middleware for Pervasive Mobile and Embedded Computing, M-MPAC’2011, 2011
15. 11. Conclusions
• We have presented the WPS Mobile Framework (WMFW),
that allows building customized WPS clients targeted to
mobile devices.
• The framework provides a light-weight communication
layer and customized XML data binding code generation
that produces binary code with a low memory footprint
and acceptable performance.