Your SlideShare is downloading. ×
XSLT for INSPIRE Transformation by Dutch Kadaster in ESDIN
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

XSLT for INSPIRE Transformation by Dutch Kadaster in ESDIN

846
views

Published on

Slides of presentation given at EuroGeographics KEN workshop on INSPIRE Data Harmonization, Paris oct 8-9, 2013: http://www.eurogeographics.org/event/inspire-ken-schema-transformation-workshop. …

Slides of presentation given at EuroGeographics KEN workshop on INSPIRE Data Harmonization, Paris oct 8-9, 2013: http://www.eurogeographics.org/event/inspire-ken-schema-transformation-workshop. Describes the XSLT-based INSPIRE Transformation technique used by Dutch Kadaster in EuroGeographics ESDIN INSPIRE project (2009-2011).

Published in: Technology

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
846
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
8
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. XSLT FOR INSPIRE TRANSFORMATION In ESDIN by Kadaster KEN - Paris - Oct 8, 2013
  • 2. About Me Independent Open Source Geospatial Professional Secretary OSGeo Dutch Local Chapter Member of the Dutch OpenGeoGroep Just van den Broecke just@justobjects.nl www.justobjects.nl
  • 3. OPEN SOURCE FOR INSPIRE MAKES SENSE Picture from: http://cameronshorter.blogspot.com
  • 4. 3. COMMUNITY ENABLER
  • 5. INSPIRE Projects 2009-2011 Dutch Kadaster - Kademo Lab - EURADIN and ESDIN inspire.kademo.nl - Ebrahim Hemmatnia - Ko van Raamsdonk - Haico van derVegt 2011 Kadaster - INSPIRE Transformations Key Registries Data CP,AD,TN,GN,HY inspire.kademo.nl 2011-2013 PDOK - National GeoPortal with INSPIRE www.pdok.nl 2010-now - cooperation deegree community - Lat/lon, Occam Labs www.deegree.org
  • 6. Talk 1 XSLT - what, how ESDIN - INSPIRE transformation Kadaster Talk 2 formalizing approach from Talk 1 using Stetl framework for INSPIRE AGENDA
  • 7. EXTENSIBLE STYLESHEET LANGUAGE (XSL) Origins : SGML+DSSSL ==> XSL for XML documents W3C XSL Working Group First called “XSL”, then split into three standards 1.XSL Transformations (XSLT) 2.XSL Formatting Objects “FOP” 3.XPath - XML Navigation/Query Language
  • 8. PRINCIPLE The XSLT processor takes one or more XML source documents, plus one or more XSLT stylesheet modules, and processes them to produce an output document. The XSLT stylesheet contains a collection of template rules: instructions and other directives that guide the processor in the production of the output document. http://en.wikipedia.org/wiki/XSLT
  • 9. EXAMPLE http://en.wikipedia.org/wiki/XSLT Input XML Document
  • 10. EXAMPLE http://en.wikipedia.org/wiki/XSLT XSLT Stylesheet Document
  • 11. EXAMPLE http://en.wikipedia.org/wiki/XSLT XML Result Document
  • 12. EXAMPLE http://en.wikipedia.org/wiki/XSLT HTML Generation with Alternative XSLT Stylesheet
  • 13. EXAMPLE http://en.wikipedia.org/wiki/XSLT (X)HTML Result Document (alternative Stylesheet)
  • 14. XSLT PRINCIPLES Basically Tree Transformation Input: well-formed XML document Output: XML document or anything “text” (SQL!) Declarative, rule-based, functional, recursive But also: Structured and Procedural (named templates)
  • 15. XSLT PRO’S Well-established (sinds 1999) stable standards huge amount of knowledge on the web Optimized XSLT tools in any programming language XML-based, same base language as source/target docs Compact, reusable stylesheets (ala subroutines) Extension points for custom code
  • 16. XSLT PRO’S CONT. TEXT
  • 17. IN THE BEGINNING... "In the Beginning was the Command Line" By Neal Stephenson http://www.cryptonomicon.com/beginning.html
  • 18. XSLT CONS Complex intellectual challenge: thinking declarative/functional poorly understood, often messy stylesheets Poor scalability with large documents No GUI INSPIRE: only model transform (no coordinate transform)
  • 19. IMPLEMENTATION
  • 20. INSPIRE - WHAT WFS WMS CSW WPS . .Local Data INSPIRE Data Web Services
  • 21. INSPIRE - DATA THEMES
  • 22. INSPIRE - TRANSFORMATIONS source: Geonovum.nl
  • 23. KADASTER - PHASE 1 COMBINED TRANSFORMATION On-the-fly TransformationOffline Transformation National Data (Oracle) Extract Transform Load (ETL) INSPIRE Data (PostGIS) Web Feature Service (WFS) INSPIRE GML
  • 24. OSGeo - Bolsena - 2010
  • 25. KADASTER - PHASE II OFFLINE TRANSFORM + DEEGREE INSPIRE View Service (WMS) Extract Transform Load (ETL) INSPIRE Feature Store (BLOB or Hybrid) INSPIRE Download Service (WFS) deegree 3 INSPIRE Publish 1) WFS-T 2) deegree loader Configuration Data - INSPIRE Data Themes (XSD) - Data Mappings (XML) - WMS Styling (SLD) Kadaster Data (Oracle)
  • 26. KADASTER - PHASE II REUSABLE ETL + SERVICES INSPIRE View Service (WMS) Extract Transform Load (ETL) INSPIRE Feature Store (BLOB or Hybrid) INSPIRE Download Service (WFS) deegree 3 INSPIRE Publish 1) WFS-T 2) deegree loader Configuration Data - INSPIRE Data Themes (XSD) - Data Mappings (XML) - WMS Styling (SLD) Kadaster Data (Oracle) ReusableSpecific
  • 27. KADASTER - PHASE II ETL CHAIN
  • 28. ETL CHAIN - TOOLS • Extract • internal tools: e.g. Oracle to Shapefile or XML • Transform • GDAL/OGR - Coordinate and create Simple Features (GML) • XSLT - Model Transformation • Load • directly in PostGIS database • via deegree FeatureStore Loader • via WFS-T
  • 29. SOFTWARE STACK Architecture PostGIS WFS deegree Local Data Scripts GDAL XSLT Unix shell ETL INSPIRE Download/View Services Tomcat Java J2EE Server Heron Mapping Client WFS-TFSLoad WMS SLD data flow API (web service) API storage ESDIN Test Framework Now Stetl!
  • 30. XSLT STRUCTURE Local CP GML to INSPIRE SpatialDataset Local CP GML to INSPIRE GML Generate CP INSPIRE GML Reusable XSLT ScriptsReusable XSLT Scripts Theme CP Local AU GML to INSPIRE SpatialDataset Local AU GML to INSPIRE GML Generate AU INSPIRE GML Theme AU Local GN GML to INSPIRE SpatialDataset Local GN GML to INSPIRE GML Generate GN INSPIRE GML Theme GN Called by All Locally Specific XSL Generic XSL XSLT Template Call
  • 31. XSLT - 3 MAIN STEPS/SCRIPTS 1.Generate Spatial Dataset GML Container (specific) 2.Extract data values from local OGR simple feature data (specific) 3. Call XSLT template per Theme Feature type (generic)
  • 32. XSLT - STEP 1
  • 33. XSLT - STEP 2
  • 34. XSLT - STEP 3
  • 35. XSLT - REUSE
  • 36. THE “GUI” validated file contentproject files commands run deegree
  • 37. CONCLUSIONS 1.XSLT for INSPIRE (Model) transformations ?YES 2.XSLT shines in combination with OGR and PostGIS 3.Don’t Develop INSPIRE Transforms in isolation but in context of your global INSPIRE SDI Architecture 4. Kadaster overall approach in ESDIN worked well
  • 38. GETTING INVOLVED
  • 39. INSPIRE @ OSGEO http://lists.osgeo.org/mailman/listinfo/inspire-data http://wiki.osgeo.org/wiki/INSPIRE_data_experiments MAILING LIST WIKI
  • 40. LINKS STETL PROJECT SITE DOCU DEMOS AND INFO http://inspire.kademo.nl http://inspire-foss.org http://stetl.org

×