Firstly, I am very new to FME so there may be a very simple solution that I have overlooked - if so, apologies!
I'm using FME Desktop 2018.1, converting a shapefile containing soil polygons (Annexe III) to INSPIRE compliant GML. In designing the workbench I have followed the general workflow outlined in some of the INSPIRE writing tutorials here (Cadastral parcels, flood zones etc), plus have a workbench from a collaborator at another organisation who is doing a very similar exercise - unfortunately she did her translation using the INSPIRE Solution Pack, and that's not an option for us (too expensive) so I haven't been able to follow it exactly.
I have managed to create and rename all of the required attributes, and the last transformer before the writer is the GeometryPropertySetter where I have set the Geometry Name to 'geometry' as advised in multiple places. If I connect an inspector to the output port, everything looks fine. Likewise, I can connect a GeometryValidator and XMLValidator and neither give errors.
When I connect to the INSPIRE GML writer, the translation runs successfully with no errors, all of the features are written out, but none of them have geometry. If I look at the file in Data Inspector, the gml file retains the coordinate system (EPSG:4328), and has the correct feature type (in this case SoilBody), but for each of the features all of the extents are listed as 'nan', and the number of vertices = 0. fme_geometry is 'fme_undefined' and fme_type is 'fme_no_geom'.
I have set the properties of the writer so it uses the INSPIRE Themes setting, and have tried 3.0 and 4.0 from the built in options; I have also pointed it at the application schema file soil.xsd (both 3.0 and 4.0 downloaded directly from the INSPIRE website) but all give the same result.
Can someone suggest anything I can try please?