Known Issues for Top10NL
Top10NL is a GML format. For further information, see the GML Reader/Writer.
These are some Top10NL-specific factors as they relate to FME:
Top10NL supports heterogeneous geometries, but not all other formats do. Therefore, when reading Top10NL data, FME will split up any features with heterogeneous geometries into features that agree in their values for all attributes, but which have non-heterogeneous geometries. This will result in some multiple features that differ only in their geometries, since the original features are “spread out” among a set of simpler features.
The Top10NL Writer will then combine those features that agree in their gml_id values back into a single feature with heterogeneous geometry. This technique of split-and-recombine is currently necessary, but does violate a common invariant that GML features each have a unique gml_id value. Special care is required when doing transformations on Top10NL data to maintain the relationship between features that agree in their gml_id values. If the FME features do not have a value for gml_id, a unique value will be assigned.
Since Top10NL allows several geometries per feature, it is not possible to determine automatically what the role of a particular geometry will be. It is therefore necessary to specify what the role of a feature’s geometry will be by setting the attribute gml_geometry_attributeto the appropriate value.
For example, when writing a Wegdeel feature, you might set gml_geometry_property to geometrieVlak or geometriePunt depending on its role. Much of this can be automated with the use of a GeometryFilter transformer and AttributeCreator transformer in FME Workbench. For convenience, when reading from Top10NL, FME will set this property for you, so in most Top10NL-to-Top10NL transformations, no special handling is required.
The Top10NL Writer requires that the features that it is given are valid Top10NL. For example, the Top10 GML specification requires that features of type Gebouw have an attribute called hoogteklasse. If the Top10NL Writer is given a Gebouw feature that does not have such an attribute, the resulting data will not be valid Top10NL (according to their schema document). In these cases, the Top10NL Writer will attempt to fail to write the data rather than allow non-valid Top10NL GML to be written. The onus is then on the user to ensure that the data is both syntactically and semantically valid Top10NL.
Additional Information
Consult the Top10NL Specification on the Dutch National Mapping Agency Kadaster website.