FME Version
Files
Introduction
As part of the INSPIRE Directive*, EU countries are required to submit cadastral parcel** data in the INSPIRE specified format. As of FME 2021.2, it is easier to both read and write INSPIRE GML. This example demonstrates how FME can be used to manipulate cadastre data and transform it into INSPIRE Annex I cadastral parcels. In the demo, French EDIGEO*** data is transformed into INSPIRE compliant GML, utilizing the INSPIRE Cadastral Parcels XML schema (XSD). The process outlined in the demo to write INSPIRE compliant GML can be applied to other INSPIRE themes.
In this example, EDIGEO cadastre data is read using the EDIGEO Reader. The demo utilizes municipality and cadastral section data for INSPIRE CadastralZoning, and parcel data for INSPIRE CadastralParcels.
- IDs are added to the data, including NationalID to nationalCadastralReference, IDU to inspireId.Identifier.localId, and gml_id based on a UUID (FR.IGN.CP.@Value(_uuid)).
- The features are then reprojected to the required coordinate system, ETRS89.
- The data is also augmented with attributes defined in the INSPIRE Cadastral Parcels data specifications, such as datetime and area information.
- Then, schema mapping is performed; the source feature attributes are mapped to the corresponding attributes in the destination schema.
- Multiple-geometry is assembled as required for INSPIRE cadastral parcels using a combination of GeometryPropertySetters, InsidePointReplacer (for referencePoint) and Aggregator to nest the geometry.
- Finally, CadastralParcel and CadastralZoning features are generated using the INSPIRE GML Writer.
- The GML can be verified by reading it with the INSPIRE GML Reader in Data Inspector, and can be validated with the XMLValidator in the validation workspace.
Transforming EDIGEO Data into INSPIRE Cadastral Parcels GML
This is the typical extract, transform and load (ETL) process for extracting data from operational systems, transforming it and loading it into INSPIRE compliant GML. Implementation will vary on source data and INSPIRE theme involved.
Step-by-step Instructions
1. Read Source EDIGEO Cadastre Data Using the EDIGEO Reader
National French cadastre data is often stored in EDIGEO format. Municipality (commune) and cadastral section data (section cadastrale) is used for CadastralZoning features, while parcel data (parcelle) is used for CadastralParcel features. Cadastral zonings are intermediary areas used in the division of national territory while cadastral parcels are the most basic unit of area, according to the INSPIRE cadastral parcels data specifications.
2. Generate IDs as Required By the INSPIRE Application Schema
A National ID and a GML ID are created to fulfill the INSPIRE cadastral parcel data specifications. The National ID is mapped to the nationalCadastralReference, a national thematic identifier. Additionally, GML IDs are generated automatically at both the feature level and geometry level as needed by the writer.
3. Augment Required Fields
For cadastral parcels, a datetime attribute is created and populated, which later is mapped to beginLifespanVersion, the spatial object insertion or modification date and time. Parcel area is calculated by first reprojecting the data, then using an AreaCalculator. For cadastral zoning, a level attribute is created to store the level of cadastral zoning for each feature. The municipality data receives a 1st order value, while the cadastral section data receives a 2nd order value.
4. Reproject To the Official Coordinate System
The INSPIRE Directive requires that cadastral parcels be published in ETRS89 (EPSG:4258), or for systems outside of ETRS89, in the ITRS reference system. As France is within ETRS89, the cadastre data is reprojected to ETRS89 using the Reprojector. Additionally, as the French coordinate system RGF93 is based on ETRS89, there is no loss of accuracy from coordinate transformation.
5. Schema Mapping
The source attributes are mapped to the destination attributes, to ensure that the correct source attributes are sent to the required destination attributes. Mapping is guided by required fields for the INSPIRE application schema. For example, the Attribute Copier maps source field nationalZoningReference to destination field nationalCadastralZoningReference.
XML Schema - Attribute name mapping
6. Geometry Transformation Through Assembling Required Multi-Geometry
First, the name is set for each geometry. Cadastral zoning has two geometry names, ‘surfaceMember’ for the inner geometry, the cadastral sections, and ‘geometry’ for the outer geometry, the municipality. Cadastral parcels also have two geometry names, ‘geometry’ and ‘referencePoint’. The ‘geometry’ name is for the parcel geometry, while the ‘referencePoint’ name is for the point geometry inside the parcel, for example the centroid of the cadastral parcel geometry. Geometries are then combined using the Aggregator to create multi-part geometry as per INSPIRE geometry requirements.
7. INSPIRE GML Writing
INSPIRE GML is written using the INSPIRE GML Writer. In the INSPIRE GML Writer, under the User Attributes tab, note the xml_geometry data type. The xml_geometry fields dictate the geometry name required for geometries to be mapped correctly into the destination GML object. The output feature’s root level geometry names must correspond to the names of these xml_geometry fields, or the geometries will be dropped.
Note that for nested geometries, only the root level geometry name shows up on the FME destination feature type output schema as an xml_geometry field. To find out the names for any required inner geometries, you need to examine a sample GML file, a UML data structure diagram, or the corresponding GML application schema. In this case the CadastralParcels.xsd contains an element definition for <element name="geometry" type="gml:MultiSurfacePropertyType">. This inherits from <element name="surfaceMember" type="gml:SurfacePropertyType"> in the GML schemas. So that is why we need to set the geometry name of the inner geometry to 'surfaceMember' and then the outer geometry to 'geometry' for the CadastralZoning feature type.
Additionally, notice the parent.child notation for nested object hierarchy, such as inspireId.Identifier.localId. Also note that the list{} notation is used for series when an element can occur more than once, for example there can be multiple spellings for the same place name.
INSPIRE CasdastralParcel Feature Type Properties
Adding the INSPIRE Writer and Feature Types to the Workspace
In order to add an INSPIRE writer and destination feature types, you need to import the destination feature type definitions from the appropriate schemas. User defined schemas will not work in this case.
- Add the INSPIRE Writer in “by Themes” mode, and under INSPIRE Themes select Cadastral Parcels
- Select ‘No’ to add a new feature type to the writer, or delete the blank one that is auto-generated
- Go to Writer > Import Feature Types
- Under Application Schema, select the Cadastral Parcels theme again (this is where the XML Schema Definition (XSD) is referenced). Press ‘OK’ twice.
- Choose the feature type(s) for which INSPIRE Writer(s) will be generated. For this demo, CadastralParcel and CadastralZoning feature types were selected.
- Connect the output data flow to the appropriate feature type(s)
The import feature type option automatically scans the selected schemas and creates destination feature types with all possible fields and geometries for those themes. Then the main challenge is to restructure the features and map the fields and geometries to those destination schemas as shown in this example.
Result
Cadastral parcels GML read by the INSPIRE GML Reader in Data Inspector. Note the nested ID field structure and complex, multi-part geometry, ‘geometry’ and ‘referencePoint’, as required for INSPIRE cadastral parcels.
Data Source: Direction générale des Finances Publiques - Cadastre; Updated: 2013
* INSPIRE is a European Union directive that aims to create a spatial data infrastructure of EU data, which will enable policy making, especially environmental, across boundaries. INSPIRE also aims to improve public access to spatial information. For more information please visit the INSPIRE website.
** For further information on cadastral parcels, please visit the INSPIRE Forum's cadastral parcels page.
*** EDIGEO is a French standard for the exchange of geographic information and is commonly used for cadastral data.
Comments
0 comments
Please sign in to leave a comment.