-
-
Notifications
You must be signed in to change notification settings - Fork 99
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
WFS GetFeature POST request with filter fails to evaluate xlink:href attribute #573
Comments
@dstenger can you check this against OGC ETS for FE with TEAM engine please? |
May apply to SE and deegree layer configuration as well, see #587. |
PR is currently under preparation. |
see the related PR #837 and https://github.com/lat-lon/deegree-cli-utility/pull/1 for deegree-cli-utility |
Hi, I'm having troubles applying filters on xlink:href attributes too. I'm using following workspace: https://github.com/de-bkg/deegree-workspace-dlm250-inspire and the fixed deegree version 3.4-RC3-bayldbvdeegree-1.0.0. Within the workspace all INSPIRE categories are implemented with a Feature mapping. When I understand this issue right, it should be mapped as Primitive to be able to apply filters for xlink:href attributes. Unfortunately this leads to a totally removal of the xlink:href attribute within the GML output. For example requesting the hy-n:HydroNode FeatureTypeMapping with following hydroNodeCategory configuration:
Produces: Requesting the same FeatureType with following hydroNodeCategory configuration:
Produces: Actually I can't determine the cause for that behaviour. |
Please verify expected behavior against recent release candidate 3.4-RC5 and report your results here. |
Just upgraded to deegree 3.4-RC5. Still have the issue: When mapping as primitive, I get an empty hy-n:hydroNodeCategory node. I just looked into the schema. hy-n:hydroNodeCategory is a gml:ReferencedType. Maybe it's connected to this type. But I'm pretty sure for other FeatureTypes it worked. |
OK, thank you for the feedback. Can you provide or point me to sample test data for the linked workspace? |
The complete workspace configuration can be found here: https://github.com/de-bkg/deegree-workspace-dlm250-inspire. From the Sample data can be imported from this GetFeature Request: http://sg.geodatenzentrum.de/wfs_dlm250_inspire?service=WFS&request=GetFeature&VERSION=2.0.0&TYPENAMES=hy-n:HydroNode&COUNT=10 Let me know if you need more information. |
I have to confirm Dirk's problem with version 3.4-RC5. Furthermore it seems that it's not possible to use a filter with xlink:href in case of wms layerstyling. Neither a xlink:href filter in a sld nor in a feature layer seems to work. Thematically, this Problem is related to #587 |
I can confirm that PropertyIsEqualTo as below fails to return results on a service running 3.4-RC6
When a GetFeature request shows that the attribute value exists:
|
Summary of the problems described in this issue
|
@nmtoken I assume you are using a SQLFeatureStore with relational mapping? Can you check the configuration of |
Yes, the backed is a PostgreSQL/PostGIS relational database, and mappings are done using a SQLFeatureStore. ge:mappingFrame is part of ge:MappedFeature which has the following mapping:
The complete mapping for the service and the XML schema is: |
@nmtoken Please change your configuration as follows to support filtering on
This is described in the section Mapping strategies for xlink:href attributes in the deegree-webservices Handbook. |
@lgoltz thanks for the feedback. I didn't create the mapping, just implementing it, so I will pass on this advice; I assume the strategy applies to any attributes I want to query, not just xlink:href? |
Yes, but usually other attributes than |
Originally tested against deegree 3.3.13, but can confirm the issue remains in 3.3.14 and 3.4-pre17 releases.
When using a WFS 2 GetFeature POST request where the ValueReference attempts to evaluate an attribute value (tested specifically with xlink:href, may apply to other attributes), deegree fails to return any results. deegree therefore fails the Filter Encoding Minimum Standard Filter conformance class.
For example using the following service end point:
http://194.66.252.155/m4eu/services?
Looking at ge:MappedFeature (ref: http://194.66.252.155/m4eu/services?service=WFS&request=GetFeature&version=2.0.0&typenames=ge:MappedFeature&count=3&)
If we use a PropertyIsNull operator (tests the specified property to see if it exists in the resource being evaluated. ref: OpenGIS Filter Encoding 2.0 Encoding Standard, section 7.7.3.5) as below we get no results, but we can see that ge:mappingFrame/@xLink:href should evaluate.
As a sanity check we can see that a similar filter query using the PropertyIsNull operator but without the xlink:href attribute returns results:
It follows too that using a PropertyIsEqualTo operator to evaluate the value of the attribute also fails:
Just checking that such a query should be possible, here it is working as expected in a GeoServer service.
end point: http://ogc.bgs.ac.uk/digmap625k_gsml32_insp_gs/wfs?
Looking at gsml:MappedFeature (ref: http://ogc.bgs.ac.uk/digmap625k_gsml32_insp_gs/wfs?service=WFS&request=GetFeature&version=2.0.0&typenames=gsml:MappedFeature&count=3&)
The null test returns no results
Whilst the PropertyIsEqualTo request for an xlink:href attribute gives us results
The text was updated successfully, but these errors were encountered: