LayerManager / layman

Publishing geospatial vector data online
GNU General Public License v3.0
10 stars 3 forks source link

Implicit namespace in WFS-T fails #812

Closed index-git closed 1 year ago

index-git commented 1 year ago

As of now, WFS-T queries with implicit namespace like

<Transaction xmlns="http://www.opengis.net/wfs" service="WFS" version="1.1.0"
  xsi:schemaLocation="http://www.opengis.net/wfs http://schemas.opengis.net/wfs/1.1.0/wfs.xsd"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <Update typeName="filip:poly" xmlns:filip="http://filip">
    <Property>
      <Name>wkb_geometry</Name>
      <Value>
        <Polygon xmlns="http://www.opengis.net/gml" srsName="EPSG:3857">
          <exterior>
            <LinearRing srsName="EPSG:3857">
              <posList srsDimension="2">1766017.811 11424089.3044 -2106309.2073 3245917.4174 2674829.2541 3522473.9546
                4613901.549156107 6717360.945902297 4492452.1402 11187040.8439 1766017.811 11424089.3044</posList>
            </LinearRing>
          </exterior>
        </Polygon>
      </Value>
    </Property>
    <Filter xmlns="http://www.opengis.net/ogc">
      <FeatureId fid="poly.1" />
    </Filter>
  </Update>
</Transaction>

fails in Layman geoserver proxy: wfst_implicit_namespace_error Nevertheless, they are processed by GeoServer without a problem.

Options:

  1. Enable such queries in Layman GS proxy (see https://stackoverflow.com/questions/6920073/how-to-use-xpath-from-lxml-on-null-namespaced-nodes/6937247#6937247)
  2. Send only queries with explicit namespaces.
jirik commented 1 year ago

In case of such request, Layman does not create not-yet existing attribute. This could be problem.