Skip to content
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

Use targed gml namespace if boundedBy/geometry is in gml namespace #1550

Merged
merged 2 commits into from
Nov 30, 2023

Conversation

dstenger
Copy link
Contributor

@dstenger dstenger commented Jul 26, 2023

Fixes #1548
Please also see this issue for description of the bug.

The problem is that in Blob mode the namespace of the GML version of the original features is used (e.g. GML 3.2). This namespace is also used partly to write the response body although another GML version is expected (e.g. GML 3.1) leading to the documented exception.

This PR ensures that the targed GML namespace is used to write boundedBy and first geometry element if the geometry is in GML namespace preventing the mixing of GML versions.

@dstenger dstenger added bug error issue and bug (fix) WFS deegree Web Feature Service labels Jul 26, 2023
@tfr42 tfr42 added this to the 3.5.1 milestone Jul 26, 2023
@dstenger
Copy link
Contributor Author

Another test should be done checking whether the generated GML 3.1 (from GML 3.2 Blob store) is schema valid.

@stephanr
Copy link
Member

stephanr commented Jul 26, 2023

The fix seems to be reasonable to fix the output to be valid XML again.

Currently, I can not estimate what output will appear for GML3.2 blob data after the fix is applied.
Will the FeatureCollection contain a geometry in GML 3.2 or GML 3.1 ?
Another question would be if the Capabilities for this endpoint contains both GML versions or only 3.2.

If the endpoint only shows GML3.2, or can be changed to, as supported output format in the capabilities, another approach may be to force GML3.2 output in the case of BLOB storage.
This might be not compliant to OGC WFS 1.1.0 but at least consistent and an alternative to rewrite geometries of BLOB storage to different GML versions.

@tfr42 tfr42 modified the milestones: 3.5.1, 3.5.2 Aug 9, 2023
@tfr42
Copy link
Member

tfr42 commented Aug 23, 2023

The description of this PR shall be extended with the information how it behaves with the fix (paste the GML output here) for the different GML versions.

@tfr42 tfr42 modified the milestones: 3.5.2, 3.5.3 Aug 23, 2023
@tfr42 tfr42 modified the milestones: 3.5.3, 3.5.4 Nov 9, 2023
@tfr42
Copy link
Member

tfr42 commented Nov 30, 2023

The PR ensures that the namespace for GML that matches the WFS GetFeature request is set in the response.

Delimitation:

  • The PR does not address the issue of the schemas generated for GML 3.1 being incorrect.
  • The PR also does not fix the issue of a GML 3.1 geometry being output correctly in GML 3.2 when the type has changed from 3.1 to 3.2 (and vice versa).
  • The PR does not ensure that GML 3.1.1 or 3.2.2 are fully supported.

@tfr42
Copy link
Member

tfr42 commented Nov 30, 2023

Open tasks:

  • add hint to documentation about non transforming GML 3.1 to 3.2 and vice versa apply to blob store.

@stephanr stephanr merged commit 0539679 into deegree:main Nov 30, 2023
@tfr42 tfr42 deleted the fixUnboundGmlNamespace-1548 branch November 30, 2023 15:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug error issue and bug (fix) WFS deegree Web Feature Service
Projects
None yet
Development

Successfully merging this pull request may close these issues.

WFS 1.1.0 GetFeature Request fails with BLOB Mode
4 participants