SlideShare a Scribd company logo
Geospatial ETL with Stetl
-
“TamingYour Rich GML”
Just van den Broecke
OSGeo Bolsena Codesprint 2013, Bolsena, Italy
June 4, 2012
www.justobjects.nl
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
OSGeo - Bolsena - 2010
BOLSENA
2012
ALLES VORBEI ?
BOLSENA
2012
BOLSENA
2012
We have a
Problem
The Rich GML
Problem
Rich GML = Complex Mess
INSPIRE
Dutch National DSs
AFIS-ALKIS-ATKIS
.
.
“Semi GML”
e.g. Dutch Addresses & Buildings (BAG)
The Streetname!
Application Schema GML
e.g. INSPIRE Addresses
Complex
Model
Transformations
100+ MB
GML Files
Millions
of
Objects
10s of Millions
of
<Elements>
Multiple
Transformation
Steps
Solution is
Spatial ETL
A.K.A.
ThankYou
for your
Attention!
But what about...
....FOSS ?
... Stetl?
FOSS ETL - Lower Level
Each Powerful by Itself
ogr2ogr
FOSS ETL - High Level
FOSS ETL - DIY ? (No!)
FOSS ETL - How to Combine?
=+ + ?
ogr2ogr
Example - 2011 INSPIRE-FOSS
http://inspire.kademo.nl/doc/design-etl.html
Good ideas but
hard to scale
and reuse.
Need Framework
FOSS ETL - Add Python to Equation
=+ + ?( )
ogr2ogr
=+ +
Stetl
( )
ogr2ogr
Stetl
=
Simple
Streaming
Spatial
Speedy
ETL
Process Chain
Input Filter Output
gml
Filter
Stetl concepts
Speed: Streaming
Input Filter Output
gml
Stetl concepts
Speed: Going Native
Input Filter Output
gml
ogr2ogr sETLsETL
Native C Libs/Progs
Calls
Stetl concepts
Example: GML to PostGIS
Reader
XML
Splitter
ogr2ogr
gml
Stetl concepts
Example: INSPIRE Model Transform
ogr2ogr XSLT Writer
gml
Stetl concepts
Example: deegree Store
ogr2ogr XSLT
deegree
Writer
Stetl concepts
Process Chain - How?
Input Filters Output
Stetl concepts
Example: XML to Shape
The Source
Example: XML to Shape
The XSLT Script
Example: XML to Shape
XSLT Transform to GML
Example: XML to Shape
XML
Input
XSLT
Filter
ogr2ogr
Output
Example: XML to Shape
The SETL Chain Config File
Process
Chain
Reader
XSLT
ogr2ogr
Example: XsltFilter Python
from util import Util, etree
from filter import Filter
from packet import FORMAT
log = Util.get_log("xsltfilter")
class XsltFilter(Filter):
# Constructor
def __init__(self, configdict, section):
Filter.__init__(self, configdict, section, consumes=FORMAT.etree_doc, produces=FORMAT.etree_doc)
self.xslt_file_path = self.cfg.get('script')
self.xslt_file = open(self.xslt_file_path, 'r')
# Parse XSLT file only once
self.xslt_doc = etree.parse(self.xslt_file)
self.xslt_obj = etree.XSLT(self.xslt_doc)
self.xslt_file.close()
def invoke(self, packet):
if packet.data is None:
return packet
return self.transform(packet)
def transform(self, packet):
packet.data = self.xslt_obj(packet.data)
log.info("XSLT Transform OK")
return packet
Example Components
Input Filters Output
Stetl concepts
XMLFile XSLT GMLFile
ogr2gml GMLSplitter gml2ogr
LineStream XMLValidator WFS-T
deegree* FeatureExtractor deegree*
YourInput YourFilter YourOutput
[etl]
chains = input_xml_file|my_filter|output_std
[input_xml_file]
class = inputs.fileinput.XmlFileInput
file_path = input/cities.xml
# My custom component
[my_filter]
class = my.myfilter.MyFilter
[output_std]
class = outputs.standardoutput.StandardXmlOutput
class MyFilter(Filter):
# Constructor
def __init__(self, configdict, section):
Filter.__init__(self, configdict, section, consumes=FORMAT.etree_doc,
produces=FORMAT.etree_doc)
def invoke(self, packet):
log.info("CALLING MyFilter OK!!!!")
return packet
Your Own Components
Stetl concepts
Step 1- Define Class
Step 2- Config Class
Data Structures
Stetl concepts
✴ Components exchange Packets
✴ Packet contains data and status
✴ Data formats:
xml_line_stream
etree_doc
etree_feature_array
xml_doc_as_string
any
deegree Integration
Stetl concepts
✴Input
DeegreeBlobstoreInput
✴Output
DeegreeBlobstoreInput
DeegreeFSLoaderOutput
WFSTOutput
Cases
✴INSPIRE Download Services
publish to deegree store (WFS)
GML files (for Atom Feed)
✴National GML Datasets
GML to PostGIS (Top10NL, BGT)
[etl]
chains = input_sql_pre|schema_name_filter|output_postgres,
input_big_gml_files|xml_assembler|transformer_xslt|output_ogr2ogr,
input_sql_post|schema_name_filter|output_postgres
# Pre SQL file inputs to be executed
[input_sql_pre]
class = inputs.fileinput.StringFileInput
file_path = sql/drop-tables.sql,sql/create-schema.sql
# Post SQL file inputs to be executed
[input_sql_post]
class = inputs.fileinput.StringFileInput
file_path = sql/delete-duplicates.sql
# Generic filter to substitute Python-format string values like {schema} in string
[schema_name_filter]
class = filters.stringfilter.StringSubstitutionFilter
# format args {schema} is schema name
format_args = schema:{schema}
[output_postgres]
class = outputs.dboutput.PostgresDbOutput
database = {database}
host = {host}
port = {port}
user = {user}
password = {password}
schema = {schema}
# The source input file(s) from dir and produce gml:featureMember elements
[input_big_gml_files]
class = inputs.fileinput.XmlElementStreamerFileInput
file_path = {gml_files}
element_tags = featureMember
Top10NL Extract
Case: INSPIRE DL Services -
Dutch Addresses
Source
<GML>
NLExtract
Stetl
deegree
WFS
INSPIRE
<GML>
Atom
Feed
INSPIRE
Addresses
Dutch
Addresses+
Buildings
deegree
blobstore
Stetl
ThankYou !
stetl.org
github.com/justb4/stetl
inspire-foss.org

More Related Content

What's hot

Introduction to kotlin + spring boot demo
Introduction to kotlin + spring boot demoIntroduction to kotlin + spring boot demo
Introduction to kotlin + spring boot demo
Muhammad Abdullah
 
J s-o-n-120219575328402-3
J s-o-n-120219575328402-3J s-o-n-120219575328402-3
J s-o-n-120219575328402-3
Ramamohan Chokkam
 
eMan Dev Meetup: Kotlin For Android (part 03/03) 18.5.2017
eMan Dev Meetup: Kotlin For Android (part 03/03) 18.5.2017eMan Dev Meetup: Kotlin For Android (part 03/03) 18.5.2017
eMan Dev Meetup: Kotlin For Android (part 03/03) 18.5.2017
eMan s.r.o.
 
Introduction kot iin
Introduction kot iinIntroduction kot iin
Introduction kot iin
Jedsada Tiwongvokul
 
Javascript2839
Javascript2839Javascript2839
Javascript2839
Ramamohan Chokkam
 
UKOUG Tech14 - Using Database In-Memory Column Store with Complex Datatypes
UKOUG Tech14 - Using Database In-Memory Column Store with Complex DatatypesUKOUG Tech14 - Using Database In-Memory Column Store with Complex Datatypes
UKOUG Tech14 - Using Database In-Memory Column Store with Complex Datatypes
Marco Gralike
 
Kotlin advanced - language reference for android developers
Kotlin advanced - language reference for android developersKotlin advanced - language reference for android developers
Kotlin advanced - language reference for android developers
Bartosz Kosarzycki
 
OakTable World 2015 - Using XMLType content with the Oracle In-Memory Column...
OakTable World 2015  - Using XMLType content with the Oracle In-Memory Column...OakTable World 2015  - Using XMLType content with the Oracle In-Memory Column...
OakTable World 2015 - Using XMLType content with the Oracle In-Memory Column...
Marco Gralike
 
Miracle of std lib
Miracle of std libMiracle of std lib
Miracle of std lib
Jedsada Tiwongvokul
 
Generics past, present and future
Generics  past, present and futureGenerics  past, present and future
Generics past, present and future
RichardWarburton
 
Autumn collection JavaOne 2014
Autumn collection JavaOne 2014Autumn collection JavaOne 2014
Autumn collection JavaOne 2014
José Paumard
 
TclOO: Past Present Future
TclOO: Past Present FutureTclOO: Past Present Future
TclOO: Past Present Future
Donal Fellows
 
#살아있다 #자프링외길12년차 #코프링2개월생존기
#살아있다 #자프링외길12년차 #코프링2개월생존기#살아있다 #자프링외길12년차 #코프링2개월생존기
#살아있다 #자프링외길12년차 #코프링2개월생존기
Arawn Park
 
Learn You a Frege for Great Good!
Learn You a Frege for Great Good!Learn You a Frege for Great Good!
Learn You a Frege for Great Good!
y_taka_23
 
Adventures in TclOO
Adventures in TclOOAdventures in TclOO
Adventures in TclOO
Donal Fellows
 
Starting with JSON Path Expressions in Oracle 12.1.0.2
Starting with JSON Path Expressions in Oracle 12.1.0.2Starting with JSON Path Expressions in Oracle 12.1.0.2
Starting with JSON Path Expressions in Oracle 12.1.0.2
Marco Gralike
 
Intro to Kotlin
Intro to KotlinIntro to Kotlin
Intro to Kotlin
Magda Miu
 
Kotlin Developer Starter in Android projects
Kotlin Developer Starter in Android projectsKotlin Developer Starter in Android projects
Kotlin Developer Starter in Android projects
Bartosz Kosarzycki
 
Oracle Developer Day, 20 October 2009, Oracle De Meern, Holland: Oracle Datab...
Oracle Developer Day, 20 October 2009, Oracle De Meern, Holland: Oracle Datab...Oracle Developer Day, 20 October 2009, Oracle De Meern, Holland: Oracle Datab...
Oracle Developer Day, 20 October 2009, Oracle De Meern, Holland: Oracle Datab...
Marco Gralike
 
ODTUG Webcast - Thinking Clearly about XML
ODTUG Webcast - Thinking Clearly about XMLODTUG Webcast - Thinking Clearly about XML
ODTUG Webcast - Thinking Clearly about XML
Marco Gralike
 

What's hot (20)

Introduction to kotlin + spring boot demo
Introduction to kotlin + spring boot demoIntroduction to kotlin + spring boot demo
Introduction to kotlin + spring boot demo
 
J s-o-n-120219575328402-3
J s-o-n-120219575328402-3J s-o-n-120219575328402-3
J s-o-n-120219575328402-3
 
eMan Dev Meetup: Kotlin For Android (part 03/03) 18.5.2017
eMan Dev Meetup: Kotlin For Android (part 03/03) 18.5.2017eMan Dev Meetup: Kotlin For Android (part 03/03) 18.5.2017
eMan Dev Meetup: Kotlin For Android (part 03/03) 18.5.2017
 
Introduction kot iin
Introduction kot iinIntroduction kot iin
Introduction kot iin
 
Javascript2839
Javascript2839Javascript2839
Javascript2839
 
UKOUG Tech14 - Using Database In-Memory Column Store with Complex Datatypes
UKOUG Tech14 - Using Database In-Memory Column Store with Complex DatatypesUKOUG Tech14 - Using Database In-Memory Column Store with Complex Datatypes
UKOUG Tech14 - Using Database In-Memory Column Store with Complex Datatypes
 
Kotlin advanced - language reference for android developers
Kotlin advanced - language reference for android developersKotlin advanced - language reference for android developers
Kotlin advanced - language reference for android developers
 
OakTable World 2015 - Using XMLType content with the Oracle In-Memory Column...
OakTable World 2015  - Using XMLType content with the Oracle In-Memory Column...OakTable World 2015  - Using XMLType content with the Oracle In-Memory Column...
OakTable World 2015 - Using XMLType content with the Oracle In-Memory Column...
 
Miracle of std lib
Miracle of std libMiracle of std lib
Miracle of std lib
 
Generics past, present and future
Generics  past, present and futureGenerics  past, present and future
Generics past, present and future
 
Autumn collection JavaOne 2014
Autumn collection JavaOne 2014Autumn collection JavaOne 2014
Autumn collection JavaOne 2014
 
TclOO: Past Present Future
TclOO: Past Present FutureTclOO: Past Present Future
TclOO: Past Present Future
 
#살아있다 #자프링외길12년차 #코프링2개월생존기
#살아있다 #자프링외길12년차 #코프링2개월생존기#살아있다 #자프링외길12년차 #코프링2개월생존기
#살아있다 #자프링외길12년차 #코프링2개월생존기
 
Learn You a Frege for Great Good!
Learn You a Frege for Great Good!Learn You a Frege for Great Good!
Learn You a Frege for Great Good!
 
Adventures in TclOO
Adventures in TclOOAdventures in TclOO
Adventures in TclOO
 
Starting with JSON Path Expressions in Oracle 12.1.0.2
Starting with JSON Path Expressions in Oracle 12.1.0.2Starting with JSON Path Expressions in Oracle 12.1.0.2
Starting with JSON Path Expressions in Oracle 12.1.0.2
 
Intro to Kotlin
Intro to KotlinIntro to Kotlin
Intro to Kotlin
 
Kotlin Developer Starter in Android projects
Kotlin Developer Starter in Android projectsKotlin Developer Starter in Android projects
Kotlin Developer Starter in Android projects
 
Oracle Developer Day, 20 October 2009, Oracle De Meern, Holland: Oracle Datab...
Oracle Developer Day, 20 October 2009, Oracle De Meern, Holland: Oracle Datab...Oracle Developer Day, 20 October 2009, Oracle De Meern, Holland: Oracle Datab...
Oracle Developer Day, 20 October 2009, Oracle De Meern, Holland: Oracle Datab...
 
ODTUG Webcast - Thinking Clearly about XML
ODTUG Webcast - Thinking Clearly about XMLODTUG Webcast - Thinking Clearly about XML
ODTUG Webcast - Thinking Clearly about XML
 

Viewers also liked

M Phone
M PhoneM Phone
Jessica R
Jessica RJessica R
Jessica R
jessicaro09
 
jessica
jessicajessica
jessica
jessicaro09
 
Ed3508powerpoint
Ed3508powerpointEd3508powerpoint
Ed3508powerpoint
shantelmohrmann
 
Depoimento da E.M. Sebastião Antônio Leal sobre o PDE-Escola
Depoimento da E.M. Sebastião Antônio Leal sobre o  PDE-EscolaDepoimento da E.M. Sebastião Antônio Leal sobre o  PDE-Escola
Depoimento da E.M. Sebastião Antônio Leal sobre o PDE-Escola
pdescola
 
Living My Life
Living My LifeLiving My Life
Living My Life
nalogirl
 
Taming Rich GML with Stetl - FOSS4G 2013 Nottingham
Taming Rich GML with Stetl - FOSS4G 2013 NottinghamTaming Rich GML with Stetl - FOSS4G 2013 Nottingham
Taming Rich GML with Stetl - FOSS4G 2013 Nottingham
Just van den Broecke
 
XSLT for INSPIRE Transformation by Dutch Kadaster in ESDIN
XSLT for INSPIRE Transformation by Dutch Kadaster in ESDINXSLT for INSPIRE Transformation by Dutch Kadaster in ESDIN
XSLT for INSPIRE Transformation by Dutch Kadaster in ESDIN
Just van den Broecke
 
E Learning In India
E Learning In IndiaE Learning In India
E Learning In India
guestf421ad
 
Il media planning nel mercato dei giochi di abilità a distanza: il fenomeno d...
Il media planning nel mercato dei giochi di abilità a distanza: il fenomeno d...Il media planning nel mercato dei giochi di abilità a distanza: il fenomeno d...
Il media planning nel mercato dei giochi di abilità a distanza: il fenomeno d...
Marco Vitarelli
 
The Heron Mapping Client - Overview, Functions, Concepts
The Heron Mapping Client - Overview, Functions, Concepts The Heron Mapping Client - Overview, Functions, Concepts
The Heron Mapping Client - Overview, Functions, Concepts
Just van den Broecke
 
NLExtract voor BAG - overview
NLExtract voor BAG - overviewNLExtract voor BAG - overview
NLExtract voor BAG - overview
Just van den Broecke
 

Viewers also liked (12)

M Phone
M PhoneM Phone
M Phone
 
Jessica R
Jessica RJessica R
Jessica R
 
jessica
jessicajessica
jessica
 
Ed3508powerpoint
Ed3508powerpointEd3508powerpoint
Ed3508powerpoint
 
Depoimento da E.M. Sebastião Antônio Leal sobre o PDE-Escola
Depoimento da E.M. Sebastião Antônio Leal sobre o  PDE-EscolaDepoimento da E.M. Sebastião Antônio Leal sobre o  PDE-Escola
Depoimento da E.M. Sebastião Antônio Leal sobre o PDE-Escola
 
Living My Life
Living My LifeLiving My Life
Living My Life
 
Taming Rich GML with Stetl - FOSS4G 2013 Nottingham
Taming Rich GML with Stetl - FOSS4G 2013 NottinghamTaming Rich GML with Stetl - FOSS4G 2013 Nottingham
Taming Rich GML with Stetl - FOSS4G 2013 Nottingham
 
XSLT for INSPIRE Transformation by Dutch Kadaster in ESDIN
XSLT for INSPIRE Transformation by Dutch Kadaster in ESDINXSLT for INSPIRE Transformation by Dutch Kadaster in ESDIN
XSLT for INSPIRE Transformation by Dutch Kadaster in ESDIN
 
E Learning In India
E Learning In IndiaE Learning In India
E Learning In India
 
Il media planning nel mercato dei giochi di abilità a distanza: il fenomeno d...
Il media planning nel mercato dei giochi di abilità a distanza: il fenomeno d...Il media planning nel mercato dei giochi di abilità a distanza: il fenomeno d...
Il media planning nel mercato dei giochi di abilità a distanza: il fenomeno d...
 
The Heron Mapping Client - Overview, Functions, Concepts
The Heron Mapping Client - Overview, Functions, Concepts The Heron Mapping Client - Overview, Functions, Concepts
The Heron Mapping Client - Overview, Functions, Concepts
 
NLExtract voor BAG - overview
NLExtract voor BAG - overviewNLExtract voor BAG - overview
NLExtract voor BAG - overview
 

Similar to Geospatial ETL with Stetl

Geospatial ETL with Stetl - GeoPython 2016
Geospatial ETL with Stetl - GeoPython 2016Geospatial ETL with Stetl - GeoPython 2016
Geospatial ETL with Stetl - GeoPython 2016
Just van den Broecke
 
Stetl for INSPIRE Data Transformation
Stetl for INSPIRE Data TransformationStetl for INSPIRE Data Transformation
Stetl for INSPIRE Data Transformation
Just van den Broecke
 
5 Minute Intro to Stetl
5 Minute Intro to Stetl5 Minute Intro to Stetl
5 Minute Intro to Stetl
Just van den Broecke
 
Real World Experience With Oracle Xml Database 11g An Oracle Ace’s Perspectiv...
Real World Experience With Oracle Xml Database 11g An Oracle Ace’s Perspectiv...Real World Experience With Oracle Xml Database 11g An Oracle Ace’s Perspectiv...
Real World Experience With Oracle Xml Database 11g An Oracle Ace’s Perspectiv...
Marco Gralike
 
OPP2010 (Brussels) - Programming with XML in PL/SQL - Part 1
OPP2010 (Brussels) - Programming with XML in PL/SQL - Part 1OPP2010 (Brussels) - Programming with XML in PL/SQL - Part 1
OPP2010 (Brussels) - Programming with XML in PL/SQL - Part 1
Marco Gralike
 
XMLDB Building Blocks And Best Practices - Oracle Open World 2008 - Marco Gra...
XMLDB Building Blocks And Best Practices - Oracle Open World 2008 - Marco Gra...XMLDB Building Blocks And Best Practices - Oracle Open World 2008 - Marco Gra...
XMLDB Building Blocks And Best Practices - Oracle Open World 2008 - Marco Gra...
Marco Gralike
 
XML - State of the Art
XML - State of the ArtXML - State of the Art
XML - State of the Art
Jakub Malý
 
20100707 e z_rmll_gig_v1
20100707 e z_rmll_gig_v120100707 e z_rmll_gig_v1
20100707 e z_rmll_gig_v1
Gilles Guirand
 
Enrich Your Models With OCL
Enrich Your Models With OCLEnrich Your Models With OCL
Enrich Your Models With OCL
Edward Willink
 
The Ebook Developer's Toolbox - ebookcraft 2016 - Sanders Kleinfeld
The Ebook Developer's Toolbox - ebookcraft 2016 - Sanders Kleinfeld The Ebook Developer's Toolbox - ebookcraft 2016 - Sanders Kleinfeld
The Ebook Developer's Toolbox - ebookcraft 2016 - Sanders Kleinfeld
BookNet Canada
 
Introduction to meta-programming in scala
Introduction to meta-programming in scalaIntroduction to meta-programming in scala
Introduction to meta-programming in scala
Alessandro Marrella
 
"Getting Started with XSLT" presentation slides
"Getting Started with XSLT" presentation slides"Getting Started with XSLT" presentation slides
"Getting Started with XSLT" presentation slides
Russell Ward
 
Implementing the Genetic Algorithm in XSLT: PoC
Implementing the Genetic Algorithm in XSLT: PoCImplementing the Genetic Algorithm in XSLT: PoC
Implementing the Genetic Algorithm in XSLT: PoC
jimfuller2009
 
Semantic RDF based integration framework for heterogeneous XML data sources
Semantic RDF based integration framework for heterogeneous XML data sourcesSemantic RDF based integration framework for heterogeneous XML data sources
Semantic RDF based integration framework for heterogeneous XML data sources
Deniz Kılınç
 
Transforming xml with XSLT
Transforming  xml with XSLTTransforming  xml with XSLT
Transforming xml with XSLT
Malintha Adikari
 
Advanced Tagless Final - Saying Farewell to Free
Advanced Tagless Final - Saying Farewell to FreeAdvanced Tagless Final - Saying Farewell to Free
Advanced Tagless Final - Saying Farewell to Free
Luka Jacobowitz
 
Scala in Practice
Scala in PracticeScala in Practice
Scala in Practice
Francesco Usai
 
Elk devops
Elk devopsElk devops
Elk devops
Ideato
 
Xml Java
Xml JavaXml Java
Xml Java
cbee48
 
XML Tools for Perl
XML Tools for PerlXML Tools for Perl
XML Tools for Perl
Geir Aalberg
 

Similar to Geospatial ETL with Stetl (20)

Geospatial ETL with Stetl - GeoPython 2016
Geospatial ETL with Stetl - GeoPython 2016Geospatial ETL with Stetl - GeoPython 2016
Geospatial ETL with Stetl - GeoPython 2016
 
Stetl for INSPIRE Data Transformation
Stetl for INSPIRE Data TransformationStetl for INSPIRE Data Transformation
Stetl for INSPIRE Data Transformation
 
5 Minute Intro to Stetl
5 Minute Intro to Stetl5 Minute Intro to Stetl
5 Minute Intro to Stetl
 
Real World Experience With Oracle Xml Database 11g An Oracle Ace’s Perspectiv...
Real World Experience With Oracle Xml Database 11g An Oracle Ace’s Perspectiv...Real World Experience With Oracle Xml Database 11g An Oracle Ace’s Perspectiv...
Real World Experience With Oracle Xml Database 11g An Oracle Ace’s Perspectiv...
 
OPP2010 (Brussels) - Programming with XML in PL/SQL - Part 1
OPP2010 (Brussels) - Programming with XML in PL/SQL - Part 1OPP2010 (Brussels) - Programming with XML in PL/SQL - Part 1
OPP2010 (Brussels) - Programming with XML in PL/SQL - Part 1
 
XMLDB Building Blocks And Best Practices - Oracle Open World 2008 - Marco Gra...
XMLDB Building Blocks And Best Practices - Oracle Open World 2008 - Marco Gra...XMLDB Building Blocks And Best Practices - Oracle Open World 2008 - Marco Gra...
XMLDB Building Blocks And Best Practices - Oracle Open World 2008 - Marco Gra...
 
XML - State of the Art
XML - State of the ArtXML - State of the Art
XML - State of the Art
 
20100707 e z_rmll_gig_v1
20100707 e z_rmll_gig_v120100707 e z_rmll_gig_v1
20100707 e z_rmll_gig_v1
 
Enrich Your Models With OCL
Enrich Your Models With OCLEnrich Your Models With OCL
Enrich Your Models With OCL
 
The Ebook Developer's Toolbox - ebookcraft 2016 - Sanders Kleinfeld
The Ebook Developer's Toolbox - ebookcraft 2016 - Sanders Kleinfeld The Ebook Developer's Toolbox - ebookcraft 2016 - Sanders Kleinfeld
The Ebook Developer's Toolbox - ebookcraft 2016 - Sanders Kleinfeld
 
Introduction to meta-programming in scala
Introduction to meta-programming in scalaIntroduction to meta-programming in scala
Introduction to meta-programming in scala
 
"Getting Started with XSLT" presentation slides
"Getting Started with XSLT" presentation slides"Getting Started with XSLT" presentation slides
"Getting Started with XSLT" presentation slides
 
Implementing the Genetic Algorithm in XSLT: PoC
Implementing the Genetic Algorithm in XSLT: PoCImplementing the Genetic Algorithm in XSLT: PoC
Implementing the Genetic Algorithm in XSLT: PoC
 
Semantic RDF based integration framework for heterogeneous XML data sources
Semantic RDF based integration framework for heterogeneous XML data sourcesSemantic RDF based integration framework for heterogeneous XML data sources
Semantic RDF based integration framework for heterogeneous XML data sources
 
Transforming xml with XSLT
Transforming  xml with XSLTTransforming  xml with XSLT
Transforming xml with XSLT
 
Advanced Tagless Final - Saying Farewell to Free
Advanced Tagless Final - Saying Farewell to FreeAdvanced Tagless Final - Saying Farewell to Free
Advanced Tagless Final - Saying Farewell to Free
 
Scala in Practice
Scala in PracticeScala in Practice
Scala in Practice
 
Elk devops
Elk devopsElk devops
Elk devops
 
Xml Java
Xml JavaXml Java
Xml Java
 
XML Tools for Perl
XML Tools for PerlXML Tools for Perl
XML Tools for Perl
 

More from Just van den Broecke

Just's Career Highlights - Version 2
Just's Career Highlights - Version 2Just's Career Highlights - Version 2
Just's Career Highlights - Version 2
Just van den Broecke
 
Just's Career Highlights - Version 1
Just's Career Highlights - Version 1Just's Career Highlights - Version 1
Just's Career Highlights - Version 1
Just van den Broecke
 
Open Sensor Networks
Open Sensor NetworksOpen Sensor Networks
Open Sensor Networks
Just van den Broecke
 
Open Sensor Networks with LoRa TTN and SensorThings API
Open Sensor Networks with LoRa TTN and SensorThings APIOpen Sensor Networks with LoRa TTN and SensorThings API
Open Sensor Networks with LoRa TTN and SensorThings API
Just van den Broecke
 
Sensor SDI in PDOK with Smart Emission Platform
Sensor SDI in PDOK with Smart Emission PlatformSensor SDI in PDOK with Smart Emission Platform
Sensor SDI in PDOK with Smart Emission Platform
Just van den Broecke
 
osgeonl-opening-foss4gnl-2018
osgeonl-opening-foss4gnl-2018osgeonl-opening-foss4gnl-2018
osgeonl-opening-foss4gnl-2018
Just van den Broecke
 
OSGeo.nl-NewYearsParty-2018-Opening
OSGeo.nl-NewYearsParty-2018-OpeningOSGeo.nl-NewYearsParty-2018-Opening
OSGeo.nl-NewYearsParty-2018-Opening
Just van den Broecke
 
Opening OSGeo.nl Day 2017
Opening OSGeo.nl Day 2017Opening OSGeo.nl Day 2017
Opening OSGeo.nl Day 2017
Just van den Broecke
 
Smart Emission Data Platform
Smart Emission Data PlatformSmart Emission Data Platform
Smart Emission Data Platform
Just van den Broecke
 
De Levenscyclus van Open Geodata met Open Source Tools
De Levenscyclus van Open Geodata met Open Source ToolsDe Levenscyclus van Open Geodata met Open Source Tools
De Levenscyclus van Open Geodata met Open Source Tools
Just van den Broecke
 
NLExtract Project - OGT Award Pitch GeoBuzz 2016
NLExtract Project - OGT Award Pitch GeoBuzz 2016NLExtract Project - OGT Award Pitch GeoBuzz 2016
NLExtract Project - OGT Award Pitch GeoBuzz 2016
Just van den Broecke
 
Smart Emission - Citizens measuring Air Quality - Overview
Smart Emission - Citizens measuring Air Quality - OverviewSmart Emission - Citizens measuring Air Quality - Overview
Smart Emission - Citizens measuring Air Quality - Overview
Just van den Broecke
 
Smart Emission - Data - Viewers - Standards
Smart Emission - Data - Viewers - StandardsSmart Emission - Data - Viewers - Standards
Smart Emission - Data - Viewers - Standards
Just van den Broecke
 
3D Breakthrough Meeting - 3D Standards progress
3D Breakthrough Meeting - 3D Standards progress3D Breakthrough Meeting - 3D Standards progress
3D Breakthrough Meeting - 3D Standards progress
Just van den Broecke
 
Wandelen met GPS en De Evolutie van Navigatie
Wandelen met GPS en De Evolutie van NavigatieWandelen met GPS en De Evolutie van Navigatie
Wandelen met GPS en De Evolutie van Navigatie
Just van den Broecke
 
OSGeo.nl - Year 2014 Highlights
OSGeo.nl - Year 2014 HighlightsOSGeo.nl - Year 2014 Highlights
OSGeo.nl - Year 2014 Highlights
Just van den Broecke
 
Nederland Ontsloten! OSGeo.nl Dag 2014
Nederland Ontsloten! OSGeo.nl Dag 2014Nederland Ontsloten! OSGeo.nl Dag 2014
Nederland Ontsloten! OSGeo.nl Dag 2014
Just van den Broecke
 
Big Data - Introduction and Research Topics - for Dutch Kadaster
Big Data - Introduction and Research Topics - for Dutch KadasterBig Data - Introduction and Research Topics - for Dutch Kadaster
Big Data - Introduction and Research Topics - for Dutch Kadaster
Just van den Broecke
 
SensorWeb SOS Pilot RIVM/Geonovum - Status
SensorWeb SOS Pilot RIVM/Geonovum - StatusSensorWeb SOS Pilot RIVM/Geonovum - Status
SensorWeb SOS Pilot RIVM/Geonovum - Status
Just van den Broecke
 
Introducing OSGeo.nl - The Dutch Language Local Chapter of OSGeo
Introducing OSGeo.nl - The Dutch Language Local Chapter of OSGeoIntroducing OSGeo.nl - The Dutch Language Local Chapter of OSGeo
Introducing OSGeo.nl - The Dutch Language Local Chapter of OSGeo
Just van den Broecke
 

More from Just van den Broecke (20)

Just's Career Highlights - Version 2
Just's Career Highlights - Version 2Just's Career Highlights - Version 2
Just's Career Highlights - Version 2
 
Just's Career Highlights - Version 1
Just's Career Highlights - Version 1Just's Career Highlights - Version 1
Just's Career Highlights - Version 1
 
Open Sensor Networks
Open Sensor NetworksOpen Sensor Networks
Open Sensor Networks
 
Open Sensor Networks with LoRa TTN and SensorThings API
Open Sensor Networks with LoRa TTN and SensorThings APIOpen Sensor Networks with LoRa TTN and SensorThings API
Open Sensor Networks with LoRa TTN and SensorThings API
 
Sensor SDI in PDOK with Smart Emission Platform
Sensor SDI in PDOK with Smart Emission PlatformSensor SDI in PDOK with Smart Emission Platform
Sensor SDI in PDOK with Smart Emission Platform
 
osgeonl-opening-foss4gnl-2018
osgeonl-opening-foss4gnl-2018osgeonl-opening-foss4gnl-2018
osgeonl-opening-foss4gnl-2018
 
OSGeo.nl-NewYearsParty-2018-Opening
OSGeo.nl-NewYearsParty-2018-OpeningOSGeo.nl-NewYearsParty-2018-Opening
OSGeo.nl-NewYearsParty-2018-Opening
 
Opening OSGeo.nl Day 2017
Opening OSGeo.nl Day 2017Opening OSGeo.nl Day 2017
Opening OSGeo.nl Day 2017
 
Smart Emission Data Platform
Smart Emission Data PlatformSmart Emission Data Platform
Smart Emission Data Platform
 
De Levenscyclus van Open Geodata met Open Source Tools
De Levenscyclus van Open Geodata met Open Source ToolsDe Levenscyclus van Open Geodata met Open Source Tools
De Levenscyclus van Open Geodata met Open Source Tools
 
NLExtract Project - OGT Award Pitch GeoBuzz 2016
NLExtract Project - OGT Award Pitch GeoBuzz 2016NLExtract Project - OGT Award Pitch GeoBuzz 2016
NLExtract Project - OGT Award Pitch GeoBuzz 2016
 
Smart Emission - Citizens measuring Air Quality - Overview
Smart Emission - Citizens measuring Air Quality - OverviewSmart Emission - Citizens measuring Air Quality - Overview
Smart Emission - Citizens measuring Air Quality - Overview
 
Smart Emission - Data - Viewers - Standards
Smart Emission - Data - Viewers - StandardsSmart Emission - Data - Viewers - Standards
Smart Emission - Data - Viewers - Standards
 
3D Breakthrough Meeting - 3D Standards progress
3D Breakthrough Meeting - 3D Standards progress3D Breakthrough Meeting - 3D Standards progress
3D Breakthrough Meeting - 3D Standards progress
 
Wandelen met GPS en De Evolutie van Navigatie
Wandelen met GPS en De Evolutie van NavigatieWandelen met GPS en De Evolutie van Navigatie
Wandelen met GPS en De Evolutie van Navigatie
 
OSGeo.nl - Year 2014 Highlights
OSGeo.nl - Year 2014 HighlightsOSGeo.nl - Year 2014 Highlights
OSGeo.nl - Year 2014 Highlights
 
Nederland Ontsloten! OSGeo.nl Dag 2014
Nederland Ontsloten! OSGeo.nl Dag 2014Nederland Ontsloten! OSGeo.nl Dag 2014
Nederland Ontsloten! OSGeo.nl Dag 2014
 
Big Data - Introduction and Research Topics - for Dutch Kadaster
Big Data - Introduction and Research Topics - for Dutch KadasterBig Data - Introduction and Research Topics - for Dutch Kadaster
Big Data - Introduction and Research Topics - for Dutch Kadaster
 
SensorWeb SOS Pilot RIVM/Geonovum - Status
SensorWeb SOS Pilot RIVM/Geonovum - StatusSensorWeb SOS Pilot RIVM/Geonovum - Status
SensorWeb SOS Pilot RIVM/Geonovum - Status
 
Introducing OSGeo.nl - The Dutch Language Local Chapter of OSGeo
Introducing OSGeo.nl - The Dutch Language Local Chapter of OSGeoIntroducing OSGeo.nl - The Dutch Language Local Chapter of OSGeo
Introducing OSGeo.nl - The Dutch Language Local Chapter of OSGeo
 

Recently uploaded

GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
Neo4j
 
A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...
sonjaschweigert1
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
ControlCase
 
20240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 202420240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 2024
Matthew Sinclair
 
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
Neo4j
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
DianaGray10
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
Ana-Maria Mihalceanu
 
How to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For FlutterHow to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For Flutter
Daiki Mogmet Ito
 
Microsoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdfMicrosoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdf
Uni Systems S.M.S.A.
 
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdfUni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems S.M.S.A.
 
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to ProductionGenerative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Aggregage
 
20 Comprehensive Checklist of Designing and Developing a Website
20 Comprehensive Checklist of Designing and Developing a Website20 Comprehensive Checklist of Designing and Developing a Website
20 Comprehensive Checklist of Designing and Developing a Website
Pixlogix Infotech
 
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
SOFTTECHHUB
 
Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
Alpen-Adria-Universität
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
Octavian Nadolu
 
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Speck&Tech
 
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with SlackLet's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
shyamraj55
 
Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1
DianaGray10
 
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
Edge AI and Vision Alliance
 
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
Neo4j
 

Recently uploaded (20)

GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
 
A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
 
20240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 202420240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 2024
 
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
 
How to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For FlutterHow to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For Flutter
 
Microsoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdfMicrosoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdf
 
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdfUni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdf
 
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to ProductionGenerative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to Production
 
20 Comprehensive Checklist of Designing and Developing a Website
20 Comprehensive Checklist of Designing and Developing a Website20 Comprehensive Checklist of Designing and Developing a Website
20 Comprehensive Checklist of Designing and Developing a Website
 
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
 
Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
 
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
 
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with SlackLet's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
 
Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1
 
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
 
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
 

Geospatial ETL with Stetl