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

KVP request example for WCS 2.0 GetCapabilities is incorrect #106

Closed
nmtoken opened this issue Aug 28, 2014 · 1 comment
Closed

KVP request example for WCS 2.0 GetCapabilities is incorrect #106

nmtoken opened this issue Aug 28, 2014 · 1 comment

Comments

@nmtoken
Copy link
Contributor

nmtoken commented Aug 28, 2014

The documentation on this page http://mapserver.org/ogc/wcs_server.html#wcs-2-0 is incorrect with respect the KVP request example for WCS 2.0 GetCapabilities.

Specifically the example says that the syntax should be:

GetCapabilities

http://www.yourserver.com/wcs?SERVICE=wcs&VERSION=2.0.1
&REQUEST=GetCapabilities

However, the version parameter is incorrect here. Following OWS common, the negotiation for version in the GetCapabilities request is performed using the acceptversions parameter; only once a version has been negotiated do subsequent requests (GetCoverage, DescribeCoverage) use the version parameter.

Also use of a lower case "wcs" is also incorrect. Similarly to WMS and WFS (parameter values are case sensitive) the correct service parameter value is actually "WCS".

So the example should be:
http://www.yourserver.com/wcs?SERVICE=WCS&ACCEPTVERSIONS=2.0.1& REQUEST=GetCapabilities&

Other examples should also be updated to use the uppercase "WCS" over lowercase "wcs"

@yjacolin
Copy link
Contributor

Hello,

The standard says:

Requirement 3 /req/get-kvp/case-sensitivity:

Keys shall be case insensitive, values shall be case sensitive.

While this requirement is strict, the corresponding conformance test tentatively does not
stamp an implementation non-conformant if it is elastic in also recognizing a wrong case in
values, as long as this does not cause a conflict.
Example “REQUEST=GETCAPABILITIES” allows unambiguous recognition of the canonical
value “GetCapabilities”. For coverage identifiers, on the other hand, case distinction is essential.

So it seems that lowercase is correct as it does not cause conflict. But I think the document should use the same case for all request to not be confusing.

About VERSION parameter, Web COmmon service says:

(Deprecated: The specification version was optional in the GetCapabilities
operation request for all OGC Web Services to support client-server version
negotiation.)

So we have to change either to http://www.yourserver.com/wcs?SERVICE=WCS&REQUEST=GetCapabilities& or to http://www.yourserver.com/wcs?SERVICE=WCS&ACCEPTVERSIONS=1.0.0,2.0.1& REQUEST=GetCapabilities&

Note to myseslf, changes needed:

  • Unchanged KVP parameters (VERSION: add deprecated label)
  • KVP request examples (VERSION -> ACCEPTVERSIONS, add a list, wcs -> WCS)

I will prepare a PR soon. Thanks.

Y.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants