You are on page 1of 123

Implementing INSPIRE Data

Transformation Models and Web


Services with FME to support
European SDI for both 2D and 3D
Dean Hintz
Ken Bragg
Sren Dupke

Agenda
INSPIRE GML
Consuming
Writing (basic, advanced, 3D)
Validation
Conterra INSPIRE solution pack
INSPIRE Services
Atom Feeds
OGC Services

Tutorial Setup
FME INSPIRE Tutorial:
https://knowledge.safe.com/articles/How_To/INSPIRE
Download source data and work spaces

Tutorial Exercises / Demos


1.
2.
3.
4.
5.
6.
7.
8.

Reading: Protected Sites, Parcels, Hydrography


Writing: Natural Hazards
Validation: HazardAreas, Parcels
Writing: 3D Buildings
Conterra: INSPIRE Solution Pack
Atom Feeds
Web Services
New Stuff

FME Technology Capabilities


Translate spatial
and non-spatial
data from one
format to
another
350+
supported
formats in FME
2015

Transform spatial
and non-spatial
data into the
precise data
model you
need

FME and INSPIRE


Consume INSPIRE Leverage existing INSPIRE content
and services
Schema Transformation* the hard problem that FME
makes easier and automates. (e.g. conterras ISP for FME)
Publishing INSPIRE INSPIRE writer and web service
support easily meet INSPIRE requirements - no code!
Complex Geometries FMEs powerful data modeling
supports raster coverages, surfaces, 3D, point clouds,
needed for Annex II, III
Web Services - workspace as web service broker
via FMEServer**

INSPIRE Data Harmonization


Supported by FME
Consumption
Data assessment

Assembly
Formats, Joins
Transformation
schema, geometry

INSPIRE SDI
Data Sharing
Publication
Web Services, GML
Validation
QA, XSD, values

FME Bridges the Gap


Proprietary

Open
Standards

Consuming INSPIRE data and Services


INSPIRE services should be results oriented
and driven by user requirements
FME takes the pain out of reading and
leveraging complex GML and web services
Data Inspector makes it easy
Visualize all data types: 2D / 3D, vector /
raster, non-spatial / complex geometries
Consume directly from URLs or web services
Inspect complex data models and geometries

Your INSPIRE Viewer: Data Inspector

Read any GML

XML vs. Relational


Relational
attribute1

attribute2

Active
Date_From

Active
Date_To

John

Vancouver

11-22-99

12-11-09

June

Surrey

02-25-05

9-15-10

XML documents are often very nested or object


oriented.
GIS is geared to working with flat or relational
structures.

Consuming INSPIRE GML


A. Schema make sure you have a valid one
B. Make sure its actually GML
C. Axis order & other settings
D. Validity - check against the schema
E. Index lists to map relationally
F. Properties to ignore boundedBy (for ArcGIS)

INSPIRE Reader Configuration

INSPIRE GML Reader:


Example settings

Map Objects as Attributes

Map properties as XML

Flatten XML

List braces to empty_string

Properties to ignore:
boundedBy

Axis order - Yikes!

SE Protected Sites KML

Make it
stop!

Does this look


SCARRRY?

Schema Based Writing


Makes GML writing EASY
Map directly to destination
feature
type fields, like other formats
Multiple, complex geometry
support
XMLTemplater not needed for
GML!

Schema Based Writing

1. Add GML writer & schema


2. Add source data reader
3. Data structuring and
transformation
4. GML geometry
5. Validation & viewing

Add a GML Writer

GML Writer / Add


Dataset Dialogue

3b. Add a GML Writer


GML Writer / Add
Dataset Dialogue

3c. GML Geometry

UKHO Flood Data to INSPIRE


Natural Hazards

3. The Solution: Result

The Solution: Key Take-aways


FME worries about the XML structure - so you
dont have to.
Key point - set the geometry name
FME can validate and pretty print

4. Validation
XMLValidator transformer (syntax and schema)
Many other FME validation transformers to check
attribute values, geometry...
Dont forget to inspect!
Logical validation business rules

Validation and Viewing


'element 'MultiSurface' is not allowed for
content model '(AbstractSurface)''
'element 'namespace' is not allowed for
content model
'(localId,namespace,versionId?)''
'element 'inspireId' is not allowed
for content model
'(metaDataProperty*,description?
,descriptionReference?,identifier?
,name*,boundedBy?,location?,be
ginLifeSpanVersion,determination
Method,endLifeSpanVersion?,insp
ireId,typeOfHazard,validityPeriod
?,source*,geometry,likelihoodOfO
ccurrence,magnitudeOrIntensity
+)''

4. The Solution

4. The Secret to Success

look at the xml errors from top


order matters
start simple
understand whats really required

FME & 3D: Key Concepts


3D Geometry Types
o

Surface, Mesh, Solid

Geometry structure
o

Aggregation, Traits, GQuery

Appearances
Instances

3D Formats
Adobe 3D PDF
Autodesk 3DS
AutoCAD Civil 3D
AutoCAD DWG/DXF/RealDWG
Bentley Microstation
CityGML
COLLADA / KML
DirectX
Esri Geodatabase
Free File Geodatabase API
Esri Shape
Google SketchUp
IFC
LandXML
LAS / LAZ
Oracle Spatial Object
Oracle Spatial Point Cloud
Point Cloud XYZ
Revit
three.js
VRML
Wavefront OBJ
XML / GML
X3D

CAD

VECTOR

RASTER

DATABASE

BIM/3D

WEB

POINT CLOUD

FME & 3D: 3D Geometry types


Surface

Mesh

Solid

Surface
Face

Basic 3D Unit
Bounded by Polygon

CompositeSurface

Collection of connected Faces


Consistent front/back directions on Faces

MultiSurface

Collection of Faces and/or


CompositeSurfaces

Mesh
High efficiency surface storage

Solid
Box

3D solid primitive
Not really useful

Extrusion

Base Face and extrusion


direction/distance

BRepSolid

Solid defined by closed


CompositeSurface
boundary

FME Geometry
Model

Geometry Structure
Multi Level

Hierarchy Structure reflected in geometry


Each level can be named

Traits and Attributes

Attributes only on feature


Traits are attributes on geometry

Geometry Query

Operate on desired geometry level without


deconstructing aggregate

Appearances
Colors

Diffuse, Ambient, Emissive, Alpha

Textures

Image applied to Faces

Shared Items
Model
s
ID =
456

Appearance
s
ID =
245

CityGML to INSPIRE BuildingPart

GIS Result: CityGML LOD3 Model

KML / COLLADA: Georeferenced Result

Mount Vernon

George Washingtons home, constructed between 1758 and 1778


Mount Vernon Ladies Association tasked with restoration, interpretation,
and preservation of grounds and structures
Mansion laser scanned to create architectural-quality HBIM in Revit by
Quinn Evans Architects

I35 Bridge CityGML

GeometryValidator for 3D
Checks for solids with inverted faces,
dangling surfaces, unsealed solids, etc
Flag errors with descriptions and locations
Chain multiple validators to isolate
problems of interest (e.g 2d before 3d)
Repair option

Example INSPIRE Solutions


by FME Partners

con terra (> 50 implementations across Europe)


Metria, Sweden (Protected Areas; Transportation)
1-Spatial; Dotted Eyes, UK
AED Sicad (NAS to INSPIRE conversions)
Spatialworld, Finland (National Land Survey)
Veremes, France (INSPIRE writer testing)
Vicrea, NL
GIM, BE
SWECO, Denmark, GST

con terra FME INSPIRE


Solution Pack Highlights
Simplify data transformation and schema mapping for ArcGIS for INSPIRE
Predefined FME Workbench templates help jump start the data
migration and Harmonization process
Connect your existing databases to the standardized ESRI INSPIRE
Geodatabase
Automate data load and update processes
Quality assurance and metadata
Publish once and use many times

Components of the FME


INSPIRE Solution Pack

Additional INSPIRE information


Tutorial workspace (complete sample mapping [AdminUnits])
Additional HTML Workbench Help (description of INSPIRE GDB data model)
Direct access to the INSPIRE data specification (link to specific themes)

Additional functionality
Template workspaces (destination schema and predefined workspaces)
Destination data schema for all Annex 1 themes (INSPIRE GDB of ArcGIS
for INSPIRE http://resources.arcgis.com/de/content//
arcgis-inspire/1.0/about )

More than 100 additional INSPIRE transformers


INSPIRE specific value and attribute mapping (voidable values)
transformer for recurrent tasks (ID management, lifespan setter)

Example:
Denmark GST - ATOM Feed
Thanks to Peter Laulund and longtime FME fanatic.

Using Data from an


INSPIRE ATOM Download Service
At Safe we believe data should be available to use
and share!

Accessing GST Denmark ATOM


Feed Data

Accessing GST Denmark ATOM


Feed Data Workspace Detail
1. Parameter for Municipality (kommune)
2. Read Download Link from ATOM XML
3. Add Password to FTP Link
4. Download Zip file
5. Unzip and Read and Translate to Shape

Build an INSPIRE Atom Download


Service with FME Server

Build an INSPIRE Atom Download


Service with FME Server
1. FME Workspace to create XML ATOM Feed
->Published to FME Server Data Streaming Service
2. FME Workspace to create and zip INSPIRE GML
-> Published to FME Server Data Download Service

No
Code
Code!!

5. WFS Service

Build any web service!

Any service is now a workspace away.


FME Data Streaming service delivers
response.

5. The Solution: FME Workspace


as
Web Service Broker for WFS
GetCapabilities Request

Response XML

FME WFS
Workspace

FME Server

5. The Solution: FME Workspace


as
Web Service Broker for WFS
describeFeatureType Request

Response XML

FME WFS
Workspace

FME Server

5. The Solution: FME Workspace


as
Web Service Broker for WFS
getFeature Request

Response XML

FME WFS
Workspace

FME Server

5. The Solution: FME Workspace


as
Web Service Broker for WFS
GetCapabilities Request

FME WxS
Workspace

Response XML
GetFeature Request

FME Server
Response GML

5. The Solution: WFS Workspace

Workspace
Parameters

http://inspire-safe-software.fmecloud.com:80/fmedatastreaming/
INSPIRE/INSPIRE_WFS.fmw?SERVICE=WFS&VERSION=1.1.0
&REQUEST=GetFeature&TYPENAME=NamedPlace&MAXFEATURES=1111

WFS => Publish GML to


FMEServer Data Streaming

Inspector: WFS Reader - settings

INSPIRE WFS:
Geographic Names

INSPIRE WFS:
Cadastral Parcels

Parcels with XML Filter Query

WFS Server: Setup


1. Make sure workspace is fully configured for your
WFS workspace for your server (users, paths,
defaults)
2. Test locally for each WFS request type
3. Publish to data streaming service and upload all
required resources
4. Test with WFS client including all filter types

WFS Client: Troubleshooting


Copy http request from inspector log to browser
to test server responses
Download GML with browser to test if problem is
with WFS client / server or GML reading
Try removing all constraints except for max
features
Try specifying local schema file (.xsd)

5. The Secret to Success


FME log can help find out whats working - isolate
any issues to client or server
Can be used to build all types of web services from
WFS, WMS, WMTS, Odata, SOS, etc.
FME makes it easy to use, leverage and produce
web services

6. To and from GIS


Nested object structure vs. Relational
Schema mapping
Nested (XML)

Relational (FME Workbench)

<Contact>
<name>John</name>
<city>Vancouver</city>
<activeDate>
<from>11-22-99</from>
<to>12-11-09</to>
</activeDate>

name = John
city = Vancouver
activeDate.from = 11-22-99
activeDate.to = 12-11-09

Database Loader

Protected Sites to Geodatabase

Protected Sites Geodatabase Result

6. To and from GIS:


PostGIS to AIXM World Airports

The Secret to Success


Schema Mapping
Feature types
Attributes
Lists
Data model knowledge > XML knowledge
Schema mapping is what FME is all about!
FME can also manage all your validation needs

INSPIRE Trends
Projects demonstrate harmonization principles:
assembly, transformation, validation and publication

Integration between proprietary and open standards


especially as deployment moves to regional and local agencies

Increased focus on consuming INSPIRE services


Need for spatial data services that support common client data streams
PDF, KML, HTML etc

Seeing more simplistic / pragmatic architectures


(atom feeds rather than WFS)
Infrastructure components becoming more modular to ease integration
(REST APIs)

Success = User isnt aware they are accessing INSPIRE

Cool New Stuff


Coming soon . New Tree View
Schema update to version 4.0
Convert GML to client friendly formats: KML, PDF,
GeoJSON, PNG
More Templates / Tutorials for:
OGC Services
Coverages
GML No Schema Reader (GreenBuildingXML)
Its only gonna get easier!

Training & Knowledge


Transfer

Getting Started
Tutorials
Webinars

Free Online
Courses
Hands-on,
instructor lead
training

Free Self-Paced
Learning
On-demand courses
Demos & Knowledge
Base

Key points on the FME GML Writer

GML writing in schema mode uses destination model


captured from the application schema (xsd)

map directly to destination feature type fields, like


other formats

multiple, complex geometry support


geometry names and traits

voidable attributes in output GML / FME null support

XMLTemplater no longer needed for GML writing, but still


useful for other XML generation like metadata

INSPIRE Data Harmonization


Supported by FME
Consumption
Data assessment

Assembly
Formats, Joins
Transformation
schema, geometry

INSPIRE SDI
Data Sharing
Publication
Web Services, GML
Validation
QA, XSD, values

FME and INSPIRE


FME simplifies the process of achieving EU INSPIRE*
compliance - without any coding - through its abilities to:
Read INSPIRE data using a number of readers,
including the INSPIRE GML Reader
Prepare data for contribution to INSPIRE through data
transformation and schema mapping
Write INSPIRE GML using the INSPIRE GML Writer,
with built-in application schemas
Validate INSPIRE GML to ensure compliance with EU
standards
Share INSPIRE data using FME Servers web services

FME:
The tool for INSPIRE GML and Services
FME: A complete toolset for
creating, transforming,
distributing and using INSPIRE
data and services.
No coding! No XSLT!

Q&A

Thank You!
Questions?
More information:
Dean Hintz dean@safe.com
Ken Bragg ken.bragg@safe.com
Sren Dupke s.dupke@conterra.de

FME & INSPIRE: http://safe.com/inspire


FME INSPIRE Tutorial:
https://knowledge.safe.com/articles/How_To/INSPIRE

Easily write GML with FMEs


application schema capabilities
FME & GML Basics
How to Write Application Schema GML:
1. Add GML writer & schema
2. Add source data reader
3. Data structuring and transformation
4. GML geometry
5. Validation & viewing

GML Basics

Nested object structure vs. Relational (parent.child)


Unique IDs
Coordinate system
Namespace
Application schema / XSD
Elements & Properties (GML) vs. Features & Attributes
Nested (XML)

Relational (FME
Workbench)

<Contact>
<name>John</name>
<city>Vancouver</city>
<activeDate>
<from>11-22-99</from>
<to>12-11-09</to>
</activeDate>

name = John
city = Vancouver
activeDate.from = 11-22-99
activeDate.to = 12-11-09

3. Structuring and transformation

4. GML Geometry

Validation and Viewing

Complex GML Exercises


Reading INSPIRE
Samples and data challenges

Writing INSPIRE: Cadastral Parcels


Adding a writer and constructing geometry

Validation
Metadata
AIXM Airports
INSPIRE Buildings

FME 2014 GML Developments

Improvements to GML Reader to capture


full schema model
New GML writer write
any GML that FME can read
New generic web services
published workspace handles

message brokering and data


publish virtually any web service
and data stream
see OGC Web Services afternoon workshop

FME 2014 GML Developments


(contd)
New INSPIRE & AIXM writers
Improvements to GML / INSPIRE reading
Null support
Bug fixes / More geometry types

Ability for server to parse input URL


XML writer fragment mode (for very large files)*
2014 SP1
Pretty printing
List copying ( list1{} to list2{}.name etc)

FME 2014 GML Developments


(contd)
Conterras ISP for FME v2.0 to include GML writer
ESRI / ArcGIS for INSPIRE not required - est Fall 2014

HALE extension for FME


More training materials: webinars, FMEpedia, etc
FME 2014 SP2
INSPIRE schema update
Enhancements to support nested geometry for
Annex III buildings etc
CityGML fixes

Agenda
BIM to GIS Overview
challenges and opportunities

FME and BIM


formats and function

BIM to GIS
Demos: IFC/Revit to CityGML & KML

Other examples and use cases

BIM to GIS Overview


BIM: powerful tool to manage information
throughout the building life cycle
Challenge: rich BIM models gather dust while
facility managers re-digitize building plans
Opportunity: FMEs BIM consumption and
conversion tools leverage valuable BIM data
Potential: planning, maintenance, energy,
sustainability, security, emergency response

Why extract from BIM?


Visualization planning, site suitability
2D floor plans - routing, maintenance
Analysis - space management: scheduling /
leasing, energy / HVAC
Construction management as built vs design
Facilities management maintain and replace
components, work plans, reporting
Updates keep BIM current, add reference links

Conversion Challenges

BIM too complex for most GIS applications


Data model differences and gaps

Limited geo-referencing
File size / instanced geometries
Schema mapping

object vs relational

which source feature types match GIS ones

External references

Why FME and BIM?


BIM software exports

overly complex (IFC)

overly simplified (DWG, Excel)


FME

keep the info you need

discard the info you dont

preserve the meaning or intent

place it in the right location

BIM to GIS: Transformation


Schema mapping
Resolving relationships
Geometry

Conversion / Extrusion
Instances
Appearances
Validation

Georeferencing

IFC to CityGML - Comparison


Both Hierarchical
Less levels in CityGML
Different component types
Solid vs. Surface

IFC100 to CityGML LOD2 Workspace

1.
2.
3.
4.
5.

Read source IFC model


Create a single mesh
Set Building attributes and traits
Georeference
Write CityGML

CityGML LOD2 Result

Revit / IFC to CityGML LOD3 Workflow

Read IFC / Revit reader (hierarchical view)


Schema map IFC to CityGML feature types and fields
Geometry conversion solid to surface (CSG to B-rep)
Relationship preservation (parent / child)
CityGML object construction, LODs, format attributes
Building parts, roofs, walls, floors
Openings (window and door hierarchy)

Write CityGML

IFC200 to CityGML LOD3 Workspace

CityGML LOD3 to COLLADA/KML

Read source CityGML


Create a single mesh
Set Attributes and traits for CityGML features
Reproject from EPSG:2248 to LL84
Write to KML (COLLADA is auto-generated and
linked)

CityGML to KML Workspace

Other Examples

My Vernon
Leesburg Courthouse
I-35 Bridge
University of Washington
HOK
Data distribution
Geometry Validation
Updating and writing IFC

BIM to GIS via Data Interop


Revit: Add coordinates and
rotation from project north to
true north
Export to Revit Archive(.rvz)
with FME Revit Exporter,
attributes to spreadsheet
Import to ArcGIS with Data
Interoperability Extension
(FME)
Reconnect attribution

Stakeholder Access to Information


Browser delivery provides
data to everyone, even
fire suppressant system
designer
Historical data identifies
plaster from 1950 vs.
1787
Framing details assist with
optimal routing

A navigable, queriable world provides minute detail and the big picture to all
stakeholders BIM/GIS pros or not.

Distribution: 3DPDF, KML, GeoDB, OBJ

Optional Extra Section: 3D Concepts

Transformers
Create

Creator, FaceReplacer, Extruder, SurfaceModeller, CSGBuilder

Modify

Clipper, Triangulator, GeometryCoercer, GeometryValidator, MeshMerger

Appearances

AppearanceSetter, AppearanceExtractor, GeometryColorSetter

Instances

Instantiator

Transformers
Shared Items

SharedItemAdder, SharedItemRetreiver, SharedItemIDSetter,


SharedItemIDExtractor

Structure/Traits

GeometryPartExtractor, GeometryPropertySetter, GeometryPropertyExtractor,


GeometryPropertyRenamer, GeometryPropertyRemover, TraitMerger

Who we work with

CityGML to INSPIRE Buildings

Resources
Documentation - 3D Support
http://docs.safe.com/fme/html/FME_Transformers/FME_Transformers.htm#geometry/FME_3D_Suppo
rt.htm

FMEpedia 3D Landing Page


http://fmepedia.safe.com/topic/3D
http://fmepedia.safe.com/articles/How_To/3D-Tutorial

Demo Models
Medallion:
Pole 1:
Pole 2:
House:

https://3dwarehouse.sketchup.com/model.html?id=328b2563208452451432fd505d2dea30
https://3dwarehouse.sketchup.com/model.html?id=u6996889e-eb44-416e-be2d-dff5300d8265
https://3dwarehouse.sketchup.com/model.html?id=e9a21787b95645893b15bbb3b8c2c5e
https://3dwarehouse.sketchup.com/model.html?id=a05876468fc8fc65e72cf94dbba6e90c

You might also like