Hello everyone,
We are running a Geoserver instance with Postgres/PostGIS backend. Everything
seems to work fine so far, except for WFS with GML.
We have two specific issues here:
1) The auto-generated feature IDs (see [1]) do not comply with the QName
convention. We use UUIDs to identify our datasets and Geoserver seems to uses
this UUID directly to generate Feature IDs. Since QNames must not start with a
number, we get invalid GML for roughly 10 out of 16 datasets. Most
Validators/Clients we have tested fail to parse this GML (QGIS among them).
2) Geoserver uses Postgres column names as feature attribute names. Since
Postgres column names are not restricted to QNames (e.g. "12345", "km/s" are
valid column names), we sometimes run into similar issues here.
Is this intended behavior, i.e. is the dataset provider responsible for
ensuring QName compliant attribute names, or is it a bug?
Kind regards,
Matthias
p.s.: Geoserver version is 2.8.3
[1]:
<gml:featureMember>
<ckandev:402b28fe-af35-463f-a78f-47f121cea236
fid="402b28fe-af35-463f-a78f-47f121cea236.1">
<ckandev:X>51.003874</ckandev:X>
<ckandev:Y>13.726043</ckandev:Y>
<ckandev:Timestamp>2012-07-20T:10:00GMT+1</ckandev:Timestamp>
<ckandev:Place>Bannewitz</ckandev:Place>
<ckandev:Zn_1000_-_400___micro_g_per_g_>127.3936706</ckandev:Zn_1000_-_400___micro_g_per_g_>
<ckandev:Zn_400_-_100___micro_g_per_g_>418.9342066</ckandev:Zn_400_-_100___micro_g_per_g_>
<ckandev:Zn_100_-_63___micro_g_per_g_>743.5718278</ckandev:Zn_100_-_63___micro_g_per_g_>
<ckandev:Zn_63_-_0.45___micro_g_per_g_>528.2146161</ckandev:Zn_63_-_0.45___micro_g_per_g_>
<ckandev:Zn_SUMM___micro_g_per_g_>377.8245751</ckandev:Zn_SUMM___micro_g_per_g_>
<ckandev:Cu_1000_-_400___micro_g_per_g_>48.0749849</ckandev:Cu_1000_-_400___micro_g_per_g_>
<ckandev:Cu_400_-_100___micro_g_per_g_>112.1762429</ckandev:Cu_400_-_100___micro_g_per_g_>
<ckandev:Cu_100_-_63___micro_g_per_g_>164.8965903</ckandev:Cu_100_-_63___micro_g_per_g_>
<ckandev:Cu_63_-_0.45___micro_g_per_g_>151.0506145</ckandev:Cu_63_-_0.45___micro_g_per_g_>
<ckandev:Cu_SUMM___micro_g_per_g_>105.0860617</ckandev:Cu_SUMM___micro_g_per_g_>
<ckandev:Cd_1000_-_400___micro_g_per_g_>0.056641806</ckandev:Cd_1000_-_400___micro_g_per_g_>
<ckandev:Cd_400_-_100___micro_g_per_g_>0.166999107</ckandev:Cd_400_-_100___micro_g_per_g_>
<ckandev:Cd_100_-_63___micro_g_per_g_>0.264253773</ckandev:Cd_100_-_63___micro_g_per_g_>
<ckandev:Cd_63_-_0.45___micro_g_per_g_>0.278181578</ckandev:Cd_63_-_0.45___micro_g_per_g_>
<ckandev:Cd_SUMM___micro_g_per_g_>0.1663264</ckandev:Cd_SUMM___micro_g_per_g_>
<ckandev:Shape>
<gml:Point srsName="http://www.opengis.net/gml/srs/epsg.xml#4326">
<gml:coordinates xmlns:gml="http://www.opengis.net/gml"
decimal="." cs="," ts=" ">13.726043,51.003874</gml:coordinates>
</gml:Point>
</ckandev:Shape>
</ckandev:402b28fe-af35-463f-a78f-47f121cea236>
</gml:featureMember>