450 likes | 547 Views
INSPIRE IR Development Status Transformation Services. Lassi Lehto. Agenda. Concept in Directive Interpretation Current plan for the IR Coordinate Transformation Service Relevant standards: WCTS, WCTS as WPS Summary. Concept in Directive, Preamble, Point 17.
E N D
INSPIRE IR Development StatusTransformation Services Lassi Lehto
Agenda • Concept in Directive • Interpretation • Current plan for the IR • Coordinate Transformation Service • Relevant standards: WCTS, WCTS as WPS • Summary
Concept in Directive, Preamble, Point 17 • Network services are necessary for sharing spatial data between the various levels of public authority in the Community. Those network services should make it possible to discover, transform, view and download spatial data and to invoke spatial data and e-commerce services.
Concept in Directive, Article 7(3) • Spatial data sets shall be made available in conformity with the implementing rules either through the adaptation of existing spatial data sets or through the transformation services referred to point (d) of Article 11(1).
Concept in Directive, Article 11(1) • Member States shall establish and operate a network of the following services for the spatial data sets and services for which metadata have been created in accordance with this Directive: (d) transformation services, enabling spatial data sets to be transformed with a view to achieving interoperability;
Concept in Directive, Article 11(3) • The transformation services referred to in point (d) of paragraph 1 shall be combined with the other services referred to in that paragraph in such a way as to enable all those services to be operated in conformity with the implementing rules provided for in Article 7(1).
Transformation Service Transformation Service, opaque INSPIRE Application Compatible Service Incompatible Service Incompatible Service Incompatible Content Compatible Content Incompatible Content
Transformation Service, pre-process INSPIRE Application 3 1 Transformation Service 2 Compatible Service Incompatible Service Incompatible Service Incompatible Content Compatible Content Incompatible Content
Transformation Service, post-process INSPIRE Application Transformation Service 1 2 Compatible Service Incompatible Service Incompatible Service Incompatible Content Compatible Content Incompatible Content
Transformation Types • Coordinate Reference System Transformation • Application Schema Transformation • Data content • Metadata • Style Transformation • Service Protocol Transformation
Service Classification in Metadata IR • 401: Coordinate conversion service • 402: Coordinate transformation service • 403: Coverage/vector conversion service • 404: Image coordinate conversion service • 405: Rectification service • 406: Ortorectification service • 407: Sensor geometry model adjustement service • 408: Image geometry model conversion service • 601: Temporal reference system transformation service • 804: Geographic format conversion service
Practical Considerations • In many cases the transformation could be integrated within the respective content access service • A separate service instance justified • Reuse with several content services • No expertise available in organization • Fixed, closed software architectures • Ad hoc needs • Might be run periodically offline
Transformation Service, integrated INSPIRE Application Protocol Transformation Compatible Service Incompatible Service Protocol Transformation Incompatible Service Content Transformation Content Transformation Incompatible Content Compatible Content Incompatible Content
Current Plans • Start with Coordinate Transformation Service • IR Draft 07/2008 • Adoption 11/2008 • Continue with Schema Transformation Service • No timetable set • Pilot study in planning
Coordinate Transformation Service • Potential reference specifications • Web Coordinate Transformation Service (WCTS) • Web Processing Service (WPS)
Web Coordinate Transformation Service (WCTS) • OGC Discussion Paper, 2005-04-13, version 0.3.0 • Minor update to version 0.4.1 (2007-10-08) • Relatively mature paper • No further action in OGC • Three participants required to form a SWG • Few (prototypical) service implementations • Mostly discontinued • No support in client applications
Web Coordinate Transformation Service (WCTS) • GetCapabilities • General service metadata • Transform • Carry out a transformation or conversion • IsTransformable • Find out if service is able to transf. between given CRSs • GetTransformation • Get the transformation definition, encoded in GML • GetResourceByID • Get the definition of a CRS, transf. or method
Web Processing Service (WPS) • OGC Implementation Specification, version 1.0.0, 2007-06-08 • Lots of interest in R&D • Increasing number of implementations • A generic processing service interface encapsulating various different service types • Beneficial in the view of the number of the different processing service types
Web Processing Service (WPS) • GetCapabilities • General service metadata • DescribeProcess • Detailed process-specific metadata • Execute • Run a process
WCTS as a WPS; operation/process • A task defined in WCTS as public operation of the interface (like ‘Transform’) becomes a process inside WPS ‘Execute’ operation • WCTS: Transform • WPS: Execute (Transform) • Could be defined as an AP of the base standard
Summary • Transformation service; concept in Directive • An alternative for adaptation of datasets • Multiple interpretations • Integrated <-> Independent • Real-time <-> Batch-oriented • Coordinates/schema/style/protocol • Coordinate Transformation Service • Two approaches related to interface standard • WCTS, WPS(WCTS) • Pilot study on Schema Transformation Service
WCTS as a WPS; Transform params • Parameters of the WCTS Transform operation can be applied as such in WPS Execute(Transform) • SourceCRS, TargetCRS -> LiteralData • InputData -> ComplexData
WCTS as a WPS; metadata • WPS server GetCapabilities lists process offerings; real process metadata is found through DescribeProcess operation • GetCapabilities/ProcessOfferings/Process/Identifier = Transform • DescribeProcess(Transform) -> process metadata
WPS GetCapabilities Transform
WPS DescribeProcess(Transform) 1/4 <?xml version="1.0" encoding="UTF-8"?> <!--This example describes a coordinate transformation command that accepts coordinates encoded as GML Simple Features profile compliant features. The results can be returned directly as output, or stored by the service as a web-accessible resource. Ongoing processing status reports are not available. Authors: Lassi Lehto and Janne Kovanen, Finnish Geodetic Institute. --> <wps:ProcessDescriptions xmlns:wps="http://www.opengis.net/wps/1.0.0" xmlns:ows="http://www.opengis.net/ows/1.1" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.opengis.net/wps/1.0.0 ..\wpsDescribeProcess_response.xsd" service="WPS" version="1.0.0" xml:lang="en"> <ProcessDescription wps:processVersion="2" storeSupported="true" statusSupported="false"> <ows:Identifier>Transform</ows:Identifier> <ows:Title>Transform coordinates.</ows:Title> <ows:Abstract>Transforms coordinates from a given source CRS to the indicated target CRS. Accepts input as GML Simple Features encoded features and provides the same encoding as output.</ows:Abstract> <ows:Metadata xlink:title="coordinate transformation"/> <ows:Metadata xlink:title="coordinate conversion"/> <ows:Metadata xlink:title="GML"/> <wps:Profile>urn:ogc:wps:1.0.0:coordinateTransformation</wps:Profile>
<DataInputs> <Input minOccurs= "1" maxOccurs="1"> <ows:Identifier>SourceCRS</ows:Identifier> <ows:Title>Source Coordinate Reference System</ows:Title> <ows:Abstract>Indiaction of the CRS the input dataset is presented in.</ows:Abstract> <LiteralData> <ows:DataType ows:reference="http://www.w3.org/TR/xmlschema-2/#anyURI">anyURI</ows:DataType> <ows:AllowedValues> <ows:Value>urn:ogc:def:crs:EPSG:6.12:4258</ows:Value> <ows:Value>urn:ogc:def:crs:EPSG:6.12:3386</ows:Value> <ows:Value>urn:ogc:def:crs:EPSG:6.12:2391</ows:Value> … </ows:AllowedValues> <DefaultValue>urn:ogc:def:crs:EPSG:6.12:2393</DefaultValue> </LiteralData> </Input> <Input minOccurs= "1" maxOccurs="1"> <ows:Identifier>TargetCRS</ows:Identifier> <ows:Title>Target Coordinate Reference System</ows:Title> <ows:Abstract>Indiaction of the CRS the output dataset is requested in.</ows:Abstract> <LiteralData> <ows:DataType ows:reference="http://www.w3.org/TR/xmlschema-2/#anyURI">anyURI</ows:DataType> <ows:AllowedValues> <ows:Value>urn:ogc:def:crs:EPSG:6.12:3067</ows:Value> </ows:AllowedValues> <DefaultValue>urn:ogc:def:crs:EPSG:6.12:3067</DefaultValue> </LiteralData> </Input> 2/4
3/4 <Input minOccurs="1" maxOccurs="1"> <ows:Identifier>InputData</ows:Identifier> <ows:Title>GML SF-encoded input dataset</ows:Title> <ows:Abstract>Input dataset as GML Simple Features compliant features.</ows:Abstract> <ComplexData maximumMegabytes="5"> <Default> <Format> <MimeType>text/xml</MimeType> <Encoding>UTF-8</Encoding> <Schema>http://geoinfo.fgi.fi/schema/Cpoints.xsd</Schema> </Format> </Default> <Supported> <Format> <MimeType>text/xml</MimeType> <Encoding>UTF-8</Encoding> <Schema>http://geoinfo.fgi.fi/schema/Cpoints.xsd</Schema> </Format> <Format> <MimeType>text/xml</MimeType> <Encoding>UTF-8</Encoding> <Schema>http://schemas.opengis.net/gml/3.1.1/profiles/gmlsfProfile/1.0.0/gmlsf.xsd</Schema> </Format> </Supported> </ComplexData> </Input> </DataInputs>
4/4 <ProcessOutputs> <Output> <ows:Identifier>TransformedData</ows:Identifier><ows:Title>Transformed dataset</ows:Title> <ows:Abstract>GML stream containing the resulting transformed dataset.</ows:Abstract> <ComplexOutput> <Default> <Format> <MimeType>text/xml</MimeType><Encoding>UTF-8</Encoding> <Schema>http://geoinfo.fgi.fi/schema/Cpoints.xsd</Schema> </Format> </Default> <Supported> <Format> <MimeType>text/xml</MimeType><Encoding>UTF-8</Encoding> <Schema>http://geoinfo.fgi.fi/schema/Cpoints.xsd</Schema> </Format> <Format> <MimeType>text/xml</MimeType><Encoding>UTF-8</Encoding> <Schema>http://schemas.opengis.net/gml/3.1.1/profiles/gmlsfProfile/1.0.0/gmlsf.xsd</Schema> </Format> </Supported> </ComplexOutput> </Output> </ProcessOutputs> </ProcessDescription> </wps:ProcessDescriptions>
WPS Execute(Transform) 1/3 <?xml version="1.0" encoding="UTF-8" standalone="yes"?> <!-- Execute operation request for coordinate transformation. Authors: Lassi Lehto and Janne Kovanen, Finnish Geodetic Institute.--> <wps:Execute service="WPS" version="1.0.0" xmlns:wps="http://www.opengis.net/wps/1.0.0" xmlns:ows="http://www.opengis.net/ows/1.1" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.opengis.net/wps/1.0.0 ..\wpsExecute_request.xsd"> <ows:Identifier>Transform</ows:Identifier> <wps:DataInputs> <wps:Input> <ows:Identifier>SourceCRS</ows:Identifier> <wps:Data> <wps:LiteralData>urn:ogc:def:crs:EPSG:6.12:2392</wps:LiteralData> </wps:Data> </wps:Input> <wps:Input> <ows:Identifier>TargetCRS</ows:Identifier> <wps:Data> <wps:LiteralData>urn:ogc:def:crs:EPSG:6.12:3067</wps:LiteralData> </wps:Data> </wps:Input>
2/3 <wps:Input> <ows:Identifier>InputData</ows:Identifier> <wps:Data> <wps:ComplexData> <cp:Cpoints xmlns:cp="http://www.fgi.fi/Cpoints" xmlns:gml="http://www.opengis.net/gml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.fgi.fi/Cpoints http://geoinfo.fgi.fi/schema/Cpoints.xsd"> <gml:boundedBy> <gml:Envelope srsName="urn:ogc:def:crs:EPSG:6.12:2392"> <gml:lowerCorner/><gml:upperCorner/> </gml:Envelope> </gml:boundedBy> <cp:featureMembers> <cp:Cpoint> <cp:location> <gml:Point><gml:pos>6798345.234 2546976.432</gml:pos></gml:Point> </cp:location> </cp:Cpoint> <cp:Cpoint>….</cp:Cpoint> </cp:featureMembers> </cp:Cpoints> </wps:ComplexData> </wps:Data> </wps:Input> </wps:DataInputs>
3/3 <wps:ResponseForm> <wps:ResponseDocument storeExecuteResponse="true" lineage="true" status="true"> <wps:Output asReference="true"> <ows:Identifier>TransformedData</ows:Identifier> </wps:Output> </wps:ResponseDocument> </wps:ResponseForm> </wps:Execute>