-
Notifications
You must be signed in to change notification settings - Fork 29
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
Possibility to add server information in service description #4
Comments
I think it should be a broader discussion in the SWG. Capabilities were in a very early version of the specification draft. There was a specific link to it, similar to this: PATH/v1.0/Capabilities. In OData, I believe it has something like $metadata, and it returns service metadata. The OData way is quite comprehensive, but follows EDXML. Why don't you prepare a presentation for the Orlando SWG? Or we can have SWG telecons early September? (after summer) |
You're right, in OData you can access metadata of the service via |
A clearer diff of the changes is here: |
notes from 2018-08-17 telecon discussions: the only information (as far as we know for now) that has to have an additional document to offer the information is MQTT relevant information, e.g., MQTT URL, websocket supported or not?, port number 1883 and/or 9001? |
I've updated the proposal to only contain the mqtt bits. Something that might be a point of discussion:
|
Explore naming "capabilities" something else |
How about We also ran into another situation where probing the server for supported extensions becomes problematic: when you want to use several optional features or extensions at the same time. If I want to fetch data using data arrays, with a filter based on interval logic functions, I may have to do several requests before I actually get any data.
We could add a simple list of implemented extensions (and optional features?) to the
Any future extensions can define their keyword to be added to this list. |
I agree with adding implementation extensions there as well. That could be very useful for clients. |
I've updated the PR with the proposed changes: https://github.com/opengeospatial/sensorthings/pull/60/files |
Additional points that came up in the Telco at 2019-04-23:
|
In the telco of 2019-05-08 this was discussed some more:
|
The URLs of the official extensions could be:
Would it make sense to add a key to indicate the core "version"?
This could allow the service to advertise all versions of the API it supports. If a client gets the URL for v1.1, it could find out that the service also supports v2.0, and then switch to v2.0 instead... |
I don't see the problem of adding extensions to the standard. The only thing that could be a concern to the standard is if something couples with the standard data model in a way that the standard data model cannot be used standalone. Other than that anything could be a feature/extension of a specific implementation. Whether an extension interferes with this fact, we would not know either with or without vendor-prefix.
|
Sorry, I forgot to add that bit of the discussion. The vendor prefix was to ensure there are no collisions in the tags. We don't want the situation where vendor A creates an extension called Using URLs that point to the actual description of the extension solves that issue in a much nicer way, since one can't have two different descriptions at the same URL. And it even helps a user in finding out what an extension actually does. So that means the vendor prefix bit can be removed. Adding the line that the extensions |
Thanks a lot for the clarification. |
We might want to look at OGC API and see how can we align with it. Example
http://docs.opengeospatial.org/DRAFTS/17-069r1.html#_declaration_of_conformance_classes |
Adding the conformance declaration as a separate url sounds like a good idea, to increase compatibility with the OGC API. This should probably be a separate issue. Using the conformance classes in our serviceSettings list also makes a lot of sense. One problem there is that some of the optional things we have in the spec does not have a separate requirement or conformance class (PUT and JSON Patch). Would it be worth it to specify separate requirements for those? Should the list contain the full list of requirements? Or can a class be a placeholder for "all requirements in the class are implemented"? |
The ITU-T has now also published the (OGC?) SensorThings API, but without conformance classes or requirement definitions. Will it be a problem for the adoption of v1.1 by the ITU, if we use conformance classes pointing to opengis.net, or URLs pointing to docs.opengeospatial.org in our serverSettings definition? |
IMHO, I don't see any issue. |
Will the ITU-T have no problems publishing the document with requirements that point to opengis.net? |
If you look at Table 11 or Table 14, it points to ogc domain (e.g., SensorML http://www.opengis.net/doc/IS/SensorML/2.0). For v1.1, I plan to use a similar way, that is a code list for the declaration of conformance classes. I don't see any issue as some examples are already there. As I mentioned, the content of the OGC standard and ITU-T standard will be the same, except for (1) the requirement classes and conformance classes, and (2) forward, introduction, summary (which are informative anyways). |
Based on my analysis of the INSPIRE Download Service Requirements, I have the following wish-list for the server info page:
|
|
I've updated the PR #60, by grouping the data model requirements classes into a new requirements class. Since every implementation has to implement all of those, grouping those requirements classes greatly shortens the conformance class list. |
Fixed with the publication of Sensing v1.1. |
Section 9.2.1 of the SensorThings API Specification defines that a HTTP GET call to the service root URI has to return a JSON object with a property named value. Is it allowed, according to the standard, to return additional information like this?
And if so, are there any consideration to standardize any of the capabilities like the supportedEncoding in a later version?
The text was updated successfully, but these errors were encountered: