Download Technical Guidance for the INSPIRE Schema Transformation Network PDF

TitleTechnical Guidance for the INSPIRE Schema Transformation Network
Author
LanguageEnglish
File Size576.8 KB
Total Pages92
Table of Contents
                            Document Information
1. Executive Summary
2. Introduction
	2.1 Purpose
	2.2 Scope
	2.3 Intended Audience
	2.4 Terms and Definitions
	2.5 Structure of the Document
3. Architectural Goals and Constraints
	3.1 EC Regulations
	3.2 Mapping Flexibility
	3.3 Open Interfaces
	3.4 Statelessness
	3.5 Separation of Control Messages from Data Transfer
	3.6 Schema Agnostic
	3.7 Automated Process
4. Use Case View
	4.1 Correspondence Between Use Cases and INSPIRE Regulation
		4.1.1 Use Case Traceability
		4.1.2 Get Transformation Service Metadata
		4.1.3 Transform
		4.1.4 Link Transformation Service
	4.2 Query Transformation
	4.3 Actors
	4.4 Use Case: Store Configuration
	4.5 Use Case: Transform Data
	4.6 Use Case: Gather Technical Information
5. Logical View
	5.1 Referenced Standards
		• SOAP and WSDL SOAP [24] is a protocol for exchanging structured information, based on XML. The SOAP versions and technical d
		• WS-Addressing WS-Addressing [25] is the leading standard to aid the creation of asynchronous methods in SOAP web services. I
		• Rule Interchange Format (RIF)
		• Geography Markup Language (GML)
	5.2 Component Diagram
	5.3 Transformation Service
		Transformation Service
		5.3.1 Technical Principles
			5.3.1.1 Web Service Technology
			5.3.1.2 Parameter Passing
			5.3.1.3 Feature Data Access
			5.3.1.4 Configuration Data Access
			5.3.1.5 Synchronicity
	5.4 (External Component) Schema Mapping Designer
	5.5 (External Component) XML Repository
	5.6 (External Component) Source Datastore
	5.7 (External Component) Target Datastore
	5.8 (External Component) Service Registry
	5.9 (External Component) Client Application
	5.10 (External Component) Supporting Systems
	5.11 (External Component) Backoffice Tools
	5.12 Web Service Operations
		5.12.1 WSDL Operation
			5.12.1.1Technical Detail
			5.12.1.2Parameters
		5.12.2 Transform Operation
			5.12.2.1Technical Detail
			5.12.2.2Parameters
			5.12.2.3Exception conditions
		5.12.3 Link Transformation Service Operation
			5.12.3.1Technical Detail
			5.12.3.2Parameters
			5.12.3.3Exception conditions
	5.13 Use-Case Realizations
		5.13.1 Store Configuration
		5.13.2 Transform Data
		5.13.3 Gather Technical Information
6. Data View
	6.1 Rationale for Choice of Schema Description Language
	6.2 Schema Mapping Interchange Format
		6.2.1 Language Features
		6.2.2 RIF Normative and Presentation Syntaxes
		6.2.3 Spatial Extensions
			6.2.3.1 RIF-Geometry dialect
			6.2.3.2 Black-box approach
		6.2.4 Spatial Functions and Predicates for INSPIRE Transformations within RIF-PRD
		6.2.5 RIF Usage Guidelines
	6.3 Schema Mapping Definition Process (Supplementary)
7. System Qualities
	7.1 Interoperability and Vendor Neutrality
	7.2 Extensibility
	7.3 Capacity
	7.4 Availability
	7.5 Performance
	7.6 Handling of Credentials
	7.7 Error Policy
	7.8 Reliability, Security, Quality of Service, Rights Management, etc. (Supplementary)
	7.9 Testing Policy (Supplementary)
8. Implementation View (Supplementary)
	8.1 Web Service Interface
	8.2 Data Manipulation Engine
	8.3 Spatial Process and Support
	8.4 Configuration Parser
	8.5 User Interface
9. Deployment View (Supplementary)
Appendix A: Interface Specifications
Appendix B: Sample SOAP Requests
	Sample Transform Operation Request Message
	Sample Schema Description Document
	Sample Mapping Document
Appendix C: Rationale for use of Rule Interchange Format
	Requirement for a Mapping Interchange Format
	Mapping Transfer Language versus End-Use Language
	Selection of Rule Interchange Format
		Query View Transformation (QVT)
		Extensible Stylesheet Language Transformations (XSLT)
		Rules Interface Format (RIF)
Appendix D: Compatibility of Rule Interchange Format and GML
Appendix E: Common Transformations Expressed Using Rule Interchange Format
	Patterns Drawn From Third-Party Research
		Case 1: Single Correspondences (One-To-One)
		Case 2: Single Correspondences (Many-To-One)
		Case 3: Single Correspondences (One-To-Many)
		Case 4: Single Correspondences (Many-To-Many)
		Case 5: Missing Correspondences (Source Lacks Data)
		Case 6: Missing Correspondences (Target Lacks Data)
		Case 7: Multiple Correspondences (Choice)
		Case 8: Multiple Correspondences (Structural)
		Case 9: Duplicate Correspondences
	Pattern Drawn From INSPIRE Testing Activities
		Case 10 Straight Mapping Including Sub-Attribute Level
		Case 11: Default Value Setting
		Case 12: Functional Value Setting
		Case 13: Domain Mapping
		Case 14: Classifying
		Case 15: Class Inheritance
		Case 16: Assignment Of Unique Identifier Values
		Case 17: Complex Operations
		Case 18: Intermediate Objects
Appendix F: Supported Simple Features Functions and Predicates
Appendix G: Definitions, Acronyms, Abbreviations and Initials
Appendix H: References
                        
Document Text Contents
Page 1

Rob Walker
Consultancy











Technical Guidance for the
INSPIRE Schema Transformation Network Service


EC JRC Contract

Notice 2009/S 107-153973









Authors: Mark Howard, Simon Payne,
Richard Sunderland

Date: 12 July 2010
Version: 3.0
Status: Final

Page 2

Technical Guidance Version: 3.0



INSPIRE Schema Transformation Network Service Date: 15 Dec
2010




Page 2 of 92




Document Information
This is the Technical Guidance for the INSPIRE Schema Transformation Network Service.

Purpose
This technical guidance document provides a concrete interface specification and supporting
documentation for INSPIRE Transformation Network Services (TNS). This will enable
interoperability by alleviating ambiguities that could arise from different interpretations of
required operations and parameters. It forms the second deliverable within the scope of work
for the EC JRC Contract Notice 2009/S 107-153973, as awarded to RSW Geomatics, 1Spatial
and Rob Walker Consultancy.

Legal Notice
Neither the European Commission nor any person acting on behalf of the Commission is
responsible for the use which might be made of the following information.

The views expressed in this publication are the sole responsibility of the authors and do not
necessarily reflect the views of the European Commission.

Page 46

Technical Guidance Version: 3.0

INSPIRE Schema Transformation Network Service Date: 15 Dec 2010




Page 46 of 92


Could perform poorly in a rules engine

Table 24 Comparison of Methods of Including Spatial Functions in RIF
A generic set of spatial functions and predicates for INSPIRE style transformations was
developed during the prototyping phase to enable interoperability with common spatial
operations and this forms the basis of the recommended approach for the Schema
Transformation Network Service. See the following Section 6.2.4 for a key recommendation in
this respect. Appendix F to this document also contains additional information about this.

6.2.4 Spatial Functions and Predicates for INSPIRE Transformations within RIF-PRD
This section describes the approach that we recommend should be used for the encoding of
references to spatial operations within normative-syntax RIF-PRD documents. This applies to
the expression of transformations upon data instances such that they involve operations on
geometric attributes. Since there is no existing standard for such RIF expressions, it is
proposed that we take the OGC Simple Feature Access Specification version 1.2 as the basis
for defining a standardised approached to use of class and method name IRIs, since this is
the recommended standard for geometric data types and definitions referred to in the
INSPIRE data specifications (see e.g. Requirement 7 of the INSPIRE Data Specification
Hydrography, [68]).


The Extended Backus-Naur Form (EBNF, see [67]) is a well-known meta-syntax for defining
context-free grammars and is used in many computing contexts. For the TNS Technical
Guidance, the EBNF production for <iri> will be:



<iri> ::= ٰhttp://www.opengeospatial.org/standards/sfaٰ

ٰ/ٰ <interface-name> [ ٰ#ٰ <method-name> ]



This definition depends on certain non-terminals defined elsewhere:

interface-name : interface name.

method-name : method name.

The interface name will be that of the interface type for any given geometry, as this ensures
that conflict is avoided when multiple classes implement the same method.

The list of supported operations for the Schema Transformation Network Service prototype is
given in Appendix F to this document. This provides an illustration of the approach proposed
in this section.

Recommendation: when referring to spatial functions and predicates within
a RIF document, use the OGC Simple Feature Access Specification version
1.2 as the basis for identifying and naming function and predicate
placeholders.



6.2.5 RIF Usage Guidelines
RIF is intended to be used by mapping designer tool authors such that the design user
interface is capable of generating semantically and syntactically valid RIF documents at the
conclusion of the mapping definition process. This section and Appendix E together describe
ways RIF can be used to capture mapping conditions and transformation actions, and explore
the expressiveness inherent in the language that makes it suitable for this purpose.

Page 47

Technical Guidance Version: 3.0

INSPIRE Schema Transformation Network Service Date: 15 Dec 2010




Page 47 of 92


We recommend that RIF be used in these ways:

• To define production rules for mapping attributes from source to target feature
instances.

• To create target objects based on simple classifications derived from analysis of
source instance enumeration-type attributes.

• To define complex classifications of conceptual types based on analysis of source
data, and iterate over those types to populate target schema.



We do not advise that RIF be used in the following ways:

• Implement spatial or other utility functions (beyond defining operation signatures and
parameter datatypes).



Some common patterns that can be applied to facilitate RIF rule authoring are:



If…Then…Do

This is the basic pattern that governs imperative processing of a transformation.

If

( And

( (* logical conditions *)

Or

(

(* logical conditions *)

)

)

)

Then

( Do

(

(* actions *)

)

)



The If clause contains the set of mapping conditions that must hold true in order to proceed
to apply the actions in the Then clause. Note that And and Or clauses are used as part of
the conditions. The Do clause contains the actions that effect the production of the target
output.



Assert / Modify / Retract

These actions correspond to the SQL statements INSERT, UPDATE and DELETE.

(* create new tn-ra:RailwayStationNode *)

Do

( Assert

( ?iId New()

?iId #

?iId[base:localId->xsd:string(?featureId) base:namespace->"AN.LMO"^^xsd:string]

)

Page 91

Technical Guidance Version: 3.0

INSPIRE Schema Transformation Network Service Date: 15 Dec 2010




Page 91 of 92


[20] OGC Simple Features Interface Standard (SFS),
http://www.opengeospatial.org/standards/sfa.

[21] See http://lists.w3.org/Archives/Public/public-rif-comments/2009Aug/0024.html.

[22] Logic Foundations of Object-Oriented and Frame-Based Languages (Kifer M.,
Lausen G., Wu J.) at http://www.cs.sunysb.edu/~kifer/TechReports/flogic.pdf.

[23] INSPIRE Initial Operating Capability Task Force (IOC TF),
http://inspire.jrc.ec.europa.eu/index.cfm/pageid/481.

[24] SOAP Version 1.2, http://www.w3.org/TR/soap/.

[25] WS-Addressing, W3C Member Submission 10 August 2004,
http://www.w3.org/Submission/ws-addressing/.

[26] OpenGIS Geography Markup Language,
http://www.opengeospatial.org/standards/gml.

[27] INSPIRE Registry, http://inspire-registry.jrc.ec.europa.eu/.

[28] Web Services Interoperability Organisation (WS-I) Basic Profile Version 1.1,
http://www.ws-i.org/Profiles/BasicProfile-1.1.html.

[29] Service-Oriented Architecture,
http://en.wikipedia.org/wiki/Service-oriented_architecture.

[30] Web Ontology Language – Description Logics (OWL-DL),
http://www.w3.org/TR/2004/REC-owl-guide-20040210/#OwlVarieties.

[31] Unified Modeling Language (UML), http://www.uml.org/.

[32] Interactive Instruments’ ShapeChange,
http://www.interactive-instruments.de/index.php?id=28&L=1.

[33] Electronic Business using eXtensible Markup Language (ebXML),
http://www.ebxml.org/.

[34] OGC Web Feature Service (WFS), http://www.opengeospatial.org/standards/wfs.

[35] For WFS-T, see WFS Version 1.1.0,
http://portal.opengeospatial.org/files/?artifact_id=8339.

[36] W3C RDF Vocabulary Description Language (RDF Schema) Version 1.0,
http://www.w3.org/TR/rdf-schema/.

[37] Web Ontology Language (OWL), http://www.w3.org/TR/owl-features/.

[38] XML Schema Version 1.0, http://www.w3.org/TR/xmlschema-1/.

[39] RIF Overview, http://www.w3.org/TR/rif-overview/.

[40] OMG MetaObject Facility (MOF), http://www.omg.org/mof/.

[41] AtlanMod Transformation Language (ATL),
http://www.emn.fr/z-info/atlanmod/index.php/Main_Page.

[42] OMG Query/View/Transformation (QVT) Version 1.0,
http://www.omg.org/spec/QVT/1.0/.

[43] XSL Transformation (XSLT) Version 1.0, http://www.w3.org/TR/xslt.

[44] World-Wide Web Consortium (W3C), http://www.w3.org/.

[45] RIF Use Case Vocabulary Mapping for Data Integration,
http://www.w3.org/TR/rif-ucr/#Vocabulary_Mapping_for_Data_Integration.

[46] RIF Working Group website, http://www.w3.org/2005/rules/wiki/RIF_Working_Group.

http://www.opengeospatial.org/standards/sfa
http://lists.w3.org/Archives/Public/public-rif-comments/2009Aug/0024.html
http://www.cs.sunysb.edu/~kifer/TechReports/flogic.pdf
http://inspire.jrc.ec.europa.eu/index.cfm/pageid/481
http://www.w3.org/TR/soap/
http://www.w3.org/Submission/ws-addressing/
http://www.opengeospatial.org/standards/gml
http://inspire-registry.jrc.ec.europa.eu/
http://www.ws-i.org/Profiles/BasicProfile-1.1.html
http://en.wikipedia.org/wiki/Service-oriented_architecture
http://www.w3.org/TR/2004/REC-owl-guide-20040210/#OwlVarieties
http://www.uml.org/
http://www.interactive-instruments.de/index.php?id=28&L=1
http://www.ebxml.org/
http://www.opengeospatial.org/standards/wfs
http://portal.opengeospatial.org/files/?artifact_id=8339
http://www.w3.org/TR/rdf-schema/
http://www.w3.org/TR/owl-features/
http://www.w3.org/TR/xmlschema-1/
http://www.w3.org/TR/rif-overview/
http://www.omg.org/mof/
http://www.emn.fr/z-info/atlanmod/index.php/Main_Page
http://www.omg.org/spec/QVT/1.0/
http://www.w3.org/TR/xslt
http://www.w3.org/
http://www.w3.org/TR/rif-ucr/#Vocabulary_Mapping_for_Data_Integration
http://www.w3.org/2005/rules/wiki/RIF_Working_Group

Page 92

Technical Guidance Version: 3.0

INSPIRE Schema Transformation Network Service Date: 15 Dec 2010




Page 92 of 92


[47] A Classification of Schema Mappings and Analysis of Mapping Tools (F. Legler, IBM
Deutschland Entwicklung GmbH & F. Naumann, Hasso-Plattner-Institut, Potsdam,
2006, see http://www.btw2007.de/paper/p449.pdf.

[48] See RIF-PRD test case available at http://www.w3.org/2005/rules/wiki/Modify_loop.

[49] Rule Interchange Format Core Dialect, http://www.w3.org/TR/rif-core/.

[50] For a general definition of data quality, see http://en.wikipedia.org/wiki/Data_quality

[51] Geographic Profile of the Ontology Mapping Language, see Humboldt project
document A5.2-D3 [3.3] Conceptual Schema Specification and Mapping,
http://community.esdi-humboldt.eu/attachments/50/987-
conceptual_schema_specification_and_mapping-fhg-igd-001-final.pdf.

[52] Ontology Mapping Language, http://www.omwg.org/TR/d7/rdf-xml-syntax/.

[53] 1Spatial’s Radius Studio Rules Language, see
http://www.1spatial.com/products/index.php?ov=2#1269858704773_1/5.

[54] Safe Software’s FME Workbench, see http://www.safe.com/products/overview.php.

[55] ISO-19113:2002, Geographic information -- Quality principles,
http://www.iso.org/iso/catalogue_detail.htm?csnumber=26018.

[56] INSPIRE Consolidated UML Model,
http://inspire.jrc.ec.europa.eu/index.cfm/pageid/541/downloadid/1707.

[57] Microsoft .NET Framework, http://www.microsoft.com/net/.

[58] JAXB 2.0, https://jaxb.dev.java.net/.

[59] Geoserver, http://geoserver.org/display/GEOS/Welcome.

[60] INSPIRE Geoportal, see http://www.inspire-geoportal.eu/.

[61] FreebXML, see http://www.freebxml.org/.

[62] INSPIRE Schema Transformation Network Service Prototype Report.

[63] Accept-Language HTTP Header, see http://www.w3.org/Protocols/rfc2616/rfc2616-
sec14.html Section 14.4

[64] Xlink: see for a general introduction, http://en.wikipedia.org/wiki/XLink.

[65] Web Services Description Language (WSDL), see
http://en.wikipedia.org/wiki/Web_Services_Description_Language.

[66] Google AJAX Search API, http://code.google.com/apis/ajaxsearch/documentation/.

[67] Extended Backus-Naur Form,
http://en.wikipedia.org/wiki/Extended_Backus%E2%80%93Naur_Form.

[68] INSPIRE Data Specification on Hydrography – Guidelines,
http://inspire.jrc.ec.europa.eu/documents/Data_Specifications/INSPIRE_DataSpecifica
tion_HY_v3.0.1.pdf.













http://www.btw2007.de/paper/p449.pdf
http://www.w3.org/2005/rules/wiki/Modify_loop
http://www.w3.org/TR/rif-core/
http://en.wikipedia.org/wiki/Data_quality
http://community.esdi-humboldt.eu/attachments/50/987-conceptual_schema_specification_and_mapping-fhg-igd-001-final.pdf
http://community.esdi-humboldt.eu/attachments/50/987-conceptual_schema_specification_and_mapping-fhg-igd-001-final.pdf
http://www.omwg.org/TR/d7/rdf-xml-syntax/
http://www.1spatial.com/products/index.php?ov=2#1269858704773_1/5
http://www.safe.com/products/overview.php
http://www.iso.org/iso/catalogue_detail.htm?csnumber=26018
http://inspire.jrc.ec.europa.eu/index.cfm/pageid/541/downloadid/1707
http://www.microsoft.com/net/
https://jaxb.dev.java.net/
http://geoserver.org/display/GEOS/Welcome
http://www.inspire-geoportal.eu/
http://www.freebxml.org/
http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html
http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html
http://en.wikipedia.org/wiki/XLink
http://en.wikipedia.org/wiki/Web_Services_Description_Language
http://code.google.com/apis/ajaxsearch/documentation/
http://en.wikipedia.org/wiki/Extended_Backus%E2%80%93Naur_Form
http://inspire.jrc.ec.europa.eu/documents/Data_Specifications/INSPIRE_DataSpecification_HY_v3.0.1.pdf
http://inspire.jrc.ec.europa.eu/documents/Data_Specifications/INSPIRE_DataSpecification_HY_v3.0.1.pdf

Similer Documents