, Volume 96, Issue 5, pp 355–379 | Cite as

Personalised code generation from large schema sets for geospatial mobile applications

  • Alain Tamayo
  • Carlos Granell
  • Laura Díaz
  • Joaquín Huerta


XML and XML Schema are used in the geospatial domain for the definition of standards that enhance the interoperability between producers and consumers of spatial data. The size and complexity of these geospatial standards and their associated schemas have been growing with time reaching levels of complexity that make it difficult to build systems based on them in a timely and cost-effective manner. The problem of producing XML processing code based on large schemas has been traditionally solved by using XML data binding generators. Unfortunately, this solution is not always effective when code is generated for resource-constrained devices, such as mobile phones. Large and complex schemas often result in the production of code with a large size and a complicated structure that might not fit the device limitations. In this article we present the instance-based XML data binding approach to produce more compact application-specific XML processing code for geospatial applications targeted to mobile devices. The approach tries to reduce the size and complexity of the generated code by using information about how schemas are used by individual applications. Our experimental results suggest a significant simplification of XML Schema sets to the real needs of client applications accompanied by a substantial reduction of size of the generated code.


XML processing XML schema Code generator Mobile applications XML data binding 

Mathematics Subject Classification

68P05 Data structures 68P30 Coding and information theory (compaction, compression, models of communication, encoding schemes, etc.) 


  1. 1.
    Lee C, Percivall G (2008) Standards-based computing capabilities for distributed geospatial applications. Computer 41:50–57CrossRefGoogle Scholar
  2. 2.
    López-Pellicer F, Béjar-Hernández R, Florczyk A, Muro-Medrano P, Zarazaga-Soria F (2011) A review of the implementation of OGC Web Services across Europe. Int J Spatial Data Infrastruct Res 6:168–186Google Scholar
  3. 3.
    Anthes G (2011) Invasion of the mobile apps. Commun ACM 54:16–18CrossRefGoogle Scholar
  4. 4.
    Canali C, Colajanni M, Lancellotti R (2009) Performance evolution of mobile web-based services. IEEE Internet Comput 13:60–68CrossRefGoogle Scholar
  5. 5.
    Tamayo A, Granell C, Huerta J (2011) Dealing with large schema sets in mobile SOS-based applications. In: Proceedings of the 2nd international conference on computing for geospatial research and applications, COM.Geo ’11, New York, NY, USA. ACM, pp 1–9Google Scholar
  6. 6.
    Barkstrom B (2011) When is it sensible not to use XML? Earth Sci Inform 4:45–53CrossRefGoogle Scholar
  7. 7.
    Kangasharju J, Lindholm T, Tarkoma S (2007) XML messaging for mobile devices: from requirements to implementation. Comput Netw 51:4634–4654CrossRefMATHGoogle Scholar
  8. 8.
    Walker M, Turnbull R, Sim N (2007) Future mobile devices: an overview of emerging device trends, and the impact on future converged services. BT Technol J 25:120–125CrossRefGoogle Scholar
  9. 9.
    Benatallah B, Casati F, Grigori D, Nezhad H, Toumani F (2005) Developing adapters for web services integration. Advanced information systems engineering. In: Pastor O, Falca̋o e Cunha J (eds) Lecture notes in computer science, vol 3520. Springer, Berlin, pp 415–429Google Scholar
  10. 10.
    Herrington J (2003) Code generation in action. Manning Publications Co., GreenwichGoogle Scholar
  11. 11.
    Van Engelen RA, Gallivan KA (2002) The gSOAP toolkit for web services and peer-to-peer computing networks. In: Proceedings of the 2nd IEEE/ACM international symposium on cluster computing and the Grid, CCGRID ’02, Washington, DC, USA. IEEE Computer SocietyGoogle Scholar
  12. 12.
    Zimmermann O, Milinski S, Craes M, Oellermann F (2004): Second generation web services-oriented architecture in production in the finance industry. In: Companion to the 19th annual ACM SIGPLAN conference on Object-oriented programming systems, languages, and applications, OOPSLA ’04, New York, NY, USA. ACM, pp 283–289Google Scholar
  13. 13.
    Tamayo A, Granell C, Huerta J (2011) 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. Lisbon, Portugal. ACMGoogle Scholar
  14. 14.
    Tamayo A, Viciano P, Granell C, Huerta J (2011) Empirical study of sensor observation services server instances. Advancing geoinformation science for a changing world. In: Geertman S, Reinhardt W, Toppen F (eds) Lecture notes in geoinformation and cartography. Springer, Berlin, pp 185–209Google Scholar
  15. 15.
    Google (2012) Accessed 28 Nov 2012
  16. 16.
    W3C (2008) Extensible Markup Language (XML) 1.0 (Fifth Edition). Accessed 28 Nov 2012
  17. 17.
    Kay MH (2003) XML five years on: a review of the achievements so far and the challenges ahead. In: Proceedings of the 2003 ACM symposium on Document engineering, DocEng ’03. ACM, pp 29–31Google Scholar
  18. 18.
    Wilde E (2003) XML technologies dissected. IEEE Internet Comput 7:74–78CrossRefGoogle Scholar
  19. 19.
    Wilde E, Glushko RJ (2008) XML fever. Commun ACM 51:40–46CrossRefGoogle Scholar
  20. 20.
    W3C (2004) XML Schema Part 1: Structures Second Ed. Accessed 28 Nov 2012
  21. 21.
    W3C (2005) XML Schema Part 2: Datatypes Second Ed. Accessed 28 Nov 2012
  22. 22.
    Bray T (2003) XML Is Too Hard For Programmers. Accessed 28 Nov 2012
  23. 23.
    McLaughlin B (2002) Java and XML Data Binding. O’Reilly & Associates Inc., SebastopolMATHGoogle Scholar
  24. 24.
    Lämmel R, Meijer E (2007) Revealing the x/o impedance mismatch: changing lead into gold. In: Proceedings of the 2006 international conference on Datatype-generic programming, SSDGP’06. Springer, Berlin, pp 285–367Google Scholar
  25. 25.
    OGC (2006) OpenGIS Web Mapping Server Implementation Specification 1.3.0. Accessed 28 Nov 2012
  26. 26.
    OGC (2005) OpenGIS Web Feature Service Implementation Specification 1.1.0. Accessed 28 Nov 2012
  27. 27.
    OGC (2007) Sensor Observation Service 1.0.0. Accessed 28 Nov 2012
  28. 28.
    Lu CT, Dos Santos R, Sripada L, Kou Y (2007) Advances in GML for geospatial applications. GeoInformatica 11:131–157CrossRefGoogle Scholar
  29. 29.
    OGC (2004) OpenGIS Geography Markup Language (GML) Implementation Specification 3.1.1. Accessed 28 Nov 2012
  30. 30.
    OGC (2007) OpenGIS Geography Markup Language (GML) Encoding Standard 3.2.1. Accessed 28 Nov 2012
  31. 31.
    OGC (2007) Observations and Measurements-Part 1-Observation schema. Accessed 28 Nov 2012
  32. 32.
    Reichardt M (2010) Open standards-based geoprocessing Web services to support the study and management of hazard and risk. Geomat Nat Hazards Risk 1(2):171–184CrossRefGoogle Scholar
  33. 33.
    Foerster T, Schäffer B, Baranski B, Brauner J (2011) Geospatial web services for distributed processing: applications and scenarios. In: Zhao P, Di L (eds) Geospatial web services: advances in information interoperability. IGI Global, Hershey, pp 245–286Google Scholar
  34. 34.
    Pichler C, Strommer M, Huemer C (2010) Size matters!? Measuring the complexity of XML schema mapping models. In: Proceedings of the IEEE Congress on Services. IEEE, pp 497–502Google Scholar
  35. 35.
    Rahm E (2011) Towards large-scale schema and ontology matching. Schema matching and mapping. In: Bellahsene Z, Bonifati A, Rahm E (eds) Data-centric systems and applicationsXML fever. Springer, Berlin, pp 3–27Google Scholar
  36. 36.
    Villegas A, Olivé A (2010) A method for filtering large conceptual schemas. In: Proceedings of the 29th international conference on Conceptual modeling, ER’10. Springer, Berlin, pp 247–260Google Scholar
  37. 37.
    Käbisch S, Peintner D, Heuer J, Kosch H (2010) Efficient and flexible XML-based data-exchange in microcontroller-based sensor actor networks. In: Proceedings of the 2010 IEEE 24th international conference on advanced information networking and applications workshops, WAINA ’10, pp 508–513Google Scholar
  38. 38.
    Kangasharju J, Tarkoma S, Lindholm T (2005) Xebu: a binary format with schema-based optimizations for XML data. In: Proceedings of the 6th international conference on web information systems engineering, vol 3806. Springer, Berlin, pp 528–535Google Scholar
  39. 39.
    W3C (2011) Efficient XML Interchange (EXI) Format 1.0. Accessed 28 Nov 2012
  40. 40.
    Tamayo A, Granell C, Huerta J (2012) Using SWE standards for ubiquitous environmental sensing: a performance analysis. Sensors 12(9):12026–12051CrossRefGoogle Scholar
  41. 41.
    Lindholm T, Kangasharju J (2008) How to edit gigabyte XML files on a mobile phone with XAS, RefTrees, and RAXS. In: Proceedings of the 5th annual international conference on mobile and ubiquitous systems: computing, networking, and services, Mobiquitous ’08, pp 1–10Google Scholar
  42. 42.
    Tarkoma S, Kangasharju J, Lindholm T, Raatikainen K (2006) Fuego: experiences with mobile data communication and synchronization. In: Proceedings of the 2006 IEEE 17th international symposium on personal, indoor and mobile radio, communications, pp 1–5Google Scholar
  43. 43.
    Bex GJ, Neven F, Vansummeren S (2007) Inferring XML schema definitions from XML data. In: Proceedings of the 33rd international conference on Very large data bases, VLDB ’07. VLDB Endowment, pp 998–1009Google Scholar
  44. 44.
    Hegewald J, Naumann F, Weis M (2006) XStruct: efficient schema extraction from multiple and large XML documents. In: Proceedings of the 22nd international conference on data engineering workshops. IEEEGoogle Scholar
  45. 45.
    Min JK, Ahn JY, Chung CW (2003) Efficient extraction of schemas for XML documents. Inf Process Lett 85(1):7–12CrossRefMATHMathSciNetGoogle Scholar
  46. 46.
    Doyle J, Bertolotto M, Wilson D (2010) Evaluating the benefits of multimodal interface design for CoMPASS-a mobile gis. GeoInformatica 14:135–162CrossRefGoogle Scholar
  47. 47.
    Goh D, Sepoetro L, Qi M, Ramakhrisnan R, Theng YL, Puspitasari F, Lim EP (2007): Mobile tagging and accessibility information sharing using a geospatial digital library. Asian Digital Libraries. Looking Back 10 Years and Forging New Frontiers. In: Goh D, Cao T, Slvberg I, Rasmussen E (ed) Lecture notes in computer science, vol 4822. Springer, Berlin, pp 287–296Google Scholar
  48. 48.
    Nusser S, Miller L, Clarke K, Goodchild M (2003) Geospatial IT for mobile field data collection. Commun ACM 46:45–46Google Scholar
  49. 49.
    Simon R, Fröhlich P (2007) A mobile application framework for the geospatial web. In: Proceedings of the 16th international conference on World Wide Web, WWW ’07. ACM, pp 381–390Google Scholar
  50. 50.
    Tsou MH (2004) Integrated mobile gis and wireless internet map servers for environmental monitoring and management. Cartogr Geogr Inf Sci 31(3):153–165CrossRefGoogle Scholar
  51. 51.
    Jändmsä and J, Luimula M, Schulte J, Stasch C, Jirka S, Schöandning J (2010) A mobile data collection framework for the sensor web. In: Proceedings of the ubiquitous positioning indoor navigation and location based service (UPINLBS). IEEE, pp 1–8Google Scholar
  52. 52.
    Müller R, Fabritius M, Mock M (2011) An OGC compliant sensor observation service for mobile sensors. Advancing geoinformation science for a changing world. In: Geertman S, Reinhardt W, Toppen F (eds) Lecture notes in geoinformation and cartography. Springer, Berlin, pp 163–184Google Scholar
  53. 53.
    Rouached M, Baccar S, Abid M (2012) RESTful sensor web enablement services for wireless sensor networks. In: Proceedings of the 2012 IEEE 8th world congress on services. IEEE, pp 65–72Google Scholar
  54. 54.
    Hartikainen VM, Liimatainen P, Mikkonen T (2006) On mobile java memory consumption. In: Proceedings of the 14th Euromicro international conference on parallel, distributed, and network-based processing. IEEE, pp 1–7Google Scholar
  55. 55.
    Wilson S, Kesselman J (2000) Java platform performance: strategies and tactics. Addison-Wesley, BostonGoogle Scholar
  56. 56.
    Tamayo A, Granell C, Huerta J (2012) Measuring complexity in OGC web services XML schemas: pragmatic use and solutions. Int J Geogr Inf Sci 26(6):1109–1130CrossRefGoogle Scholar
  57. 57.
    Martens W, Neven F, Schwentick T, Bex GJ (2006) Expressiveness and complexity of XML schema. ACM Trans Database Syst 31:770–813CrossRefGoogle Scholar
  58. 58.
    Møller A, Schwartzbach MI (2006) An introduction to XML and web technologies. Addison-Wesley Longman Publishing, BostonGoogle Scholar
  59. 59.
    Chidamber SR, Kemerer CF (1994) A metrics suite for object oriented design. IEEE Trans Softw Eng 20:476–493CrossRefGoogle Scholar
  60. 60.
    Beyer D, Lewerentz C, Simon F (2000) Impact of inheritance on metrics for size, coupling, and cohesion in object-oriented systems. In: Proceedings of the 10th international workshop on new approaches in software measurement. Springer, London, pp 1–17Google Scholar
  61. 61.
    Chirila CB, Ruzsilla M, Crescenzo P, Pescaru D, Tundrea E (2006) Towards a reengineering tool for java based on reverse inheritance. In: In Proceedings of the 3rd Romanian-Hungarian joint symposium on applied computational intelligenceGoogle Scholar
  62. 62.
    Bungartz HJ, Eckhardt W, Mehl M, Weinzierl T (2008) Dastgen-a data structure generator for parallel c++ hpc software. In: Proceedings of the 8th international conference on Computational Science, Part III. Springer, Berlin, pp 213–222Google Scholar
  63. 63.
    Cicchetti A, Ruscio DD, Eramo R, Pierantonio A (2008) Automating co-evolution in model-driven engineering. In: Proceedings of the 2008 12th international IEEE enterprise distributed object computing conference, Washington, DC, USA. IEEE, pp 222–231Google Scholar
  64. 64.
    Lagorio G, Servetto M, Zucca E (2009) Flattening versus direct semantics for featherweight jigsaw. In: Proceedings of the International Workshop on Foundations of Object Oriented Languages. ACMGoogle Scholar
  65. 65.
    Bungartz HJ, Eckhardt W, Weinzierl T, Zenger C (2010) A precompiler to reduce the memory footprint of multiscale pde solvers in c++. Future Gener Comput Syst 26:175–182CrossRefGoogle Scholar
  66. 66.
    Gamma E, Helm R, Johnson R, Vlissides J (1995) Design Patterns. Addison-Wesley, BostonGoogle Scholar
  67. 67.
    Arago P, Tamayo A, Viciano P, Huerta J, Díaz L (2011) Forest fire survey and processing tool for android-based mobile devices. In: Proceedings of the INSPIRE Conference 2011, Edinburgh, ScotlandGoogle Scholar
  68. 68.
    Tamayo A, Viciano P, Granell C, Huerta J (2011) Sensor observation service client for android mobile phones. In: Proceedings of Workshop on Sensor Web Enablement (SWE 2011), Banff, CanadaGoogle Scholar
  69. 69.
    Tamayo A, Granell C, Díaz L, Huerta J (2012) Building standards-based geoprocessing mobile clients. In: Gensel J, Josselin D, Vandenbroucke D (eds) Proceedings of the 15th AGILE international conference on geographic information science (AGILE 2012). Avignon, FranceGoogle Scholar
  70. 70.
    Tamayo A (2011) XML Data Binding for Geospatial Mobile Applications. Phd Thesis, Universitat Jaume I, Castellón de la Plana, Spain Accessed 19 Mar 2013

Copyright information

© Springer-Verlag Wien 2013

Authors and Affiliations

  • Alain Tamayo
    • 1
  • Carlos Granell
    • 2
  • Laura Díaz
    • 1
  • Joaquín Huerta
    • 1
  1. 1.Institute of New Imaging TechnologiesUniversitat Jaume ICastellón de la PlanaSpain
  2. 2.European Commission, Joint Research CentreInstitute for Environment and SustainabilityIspraItaly

Personalised recommendations