Folks
I'm going slightly mad trying to get a transformation from shapefile to INSPIRE GML to run successfully. I've succeeded with about a dozen, but one particular file just refuses to play ball. When I first tried it, it crashed midway through, so I've spent a large amount of time trying to make sure the input data is free of errors.
I imported it into PostGIS and ran validity checks, then ran it through the QGIS topology and geometry checkers (and corrected everything they threw up using some of the GRASS tools available, and manual editing where they couldn't correct the problem automatically), then connected the shapefile to a GeometryValidator transformer and it says there aren't any issues. But... when I try and run the whole process, it just hangs up. The sticking point seems to be the SurfaceBuilder transformer; when I connect an inspector to it I'm getting the following warnings:
Dissolving a donut produced more than one outer shell. Picking a representative to output
Hit data-shattering case as 0 new nodes were created after phase 20, compared to 2 nodes created after phase 19.
To resolve the above issue, try setting a tolerance if your transformer has a Tolerance parameter
Constructing donut from feature #5500 of 112102
Constructing donut from feature #39500 of 112102
Constructing donut from feature #112102 of 112102...
It just never completes after this, just sits at this point.
As well as the SurfaceBuilder there is a FaceReplacer and they are the only transformers with tolerance settings available. I've set them to 'ignore' and tried various combinations of values but it hasn't made any difference.
Can anybody suggest things to try? The donut numbers above don't seem to correspond to feature_ids in the shapefile, so if there are 3 polygons which are causing the process to fail, is there a way to identify what/where they are so I can look at them more closely?
Thanks
Malcolm