-
Notifications
You must be signed in to change notification settings - Fork 13
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
Determine implications of OGC API - Common - Part 2 #64
Comments
The SWG on 2020-05-27 agreed that @jerstlouis would review the specifications and estimate the changes needed and how long they might take to apply to the document. @jerstlouis will report back to the SWG on 2020-06-03. |
An important on-going discussion has been happening in Common ( opengeospatial/ogcapi-common#140 ), and it seems like we are finally converging towards solutions to settle the big Collections issue.
|
Thanks @jerstlouis for summarizing this important issue. I have chimed in a bit on opengeospatial/ogcapi-common#140 as much as I can as time permits, so thanks very much for working on this one and reporting back. Thoughts related to OACov:
|
@tomkralidis Thanks!
This has also been bugging me a lot. Currently there are all sorts of naming for the repos and it makes them hard to find, especially when switching between them:
It would be nice to standardize this @ghobona . |
Note we changed ogcapi-records at some point for the consistency. |
@jerstlouis don't forget ogcapi-records! ;) |
@pvretano well at least that is consistent with Features ;) |
And EDR API has not yet got a new branding (OGC API - Environmental Data Retrieval?) |
To summarize points 2 & 3 of the proposal:
The advantages I see from this is that while it preserves full compatibility with the CIS model, it greatly reduces the entry barrier for non-coverage experts, and facilitates a simple implementation for clients & services, including serving simple coverage data by a static server. e.g. only two resources are required for a simple one-file gridded coverage GeoTIFF or netCDF:
(This also happens to nicely mirror Features with {collectionID} and {collectionID}/items) |
This ( opengeospatial/ogcapi-common#140 (comment) ) is the comment from the big Collections discussion in Common which is stirring us towards using more specific relation types, and why I was suggesting "coverage" rather than "items" for the {collectionID}/coverage resource. |
hm, I see the long and involved description, and the different handling in different branches - now I fail to see how I just can get a coverage. How would I do the equivalent of a vanilla GetCoverage, even without subsetting? |
@pebau {collectionID}/coverage {collectionID}/coverage/rangeset , if available, in the case the format (media type) supports both including or omitting the description, and you want to omit the description (but this is more useful together with subsetting, to avoid the description overhead) And {collectionID} is much the equivalent of DescribeCoverage. |
@tomkralidis: just a small fix concerning
CIS is the standardized JSON encoding, so first candidate. We might also add CIS's RDF, BTW. |
@pebau Would you have a link to CIS JSON encoding? Googling for "cis json encoding", first hit is for CoverageJSON :/ ( https://www.w3.org/TR/covjson-overview/ ). So I would suggest we use extracts from the CIS standardized JSON encoding for the properties in {collectionID}, as well as for the optionally linked /coverage/domainset. CIS standard JSON could also be the format of /coverage and /coverage/rangeset if a link is included identified by media type simply "application/json". |
duckduckgoin for "feature" I get a high-ranked Sneakers, high-end apparel and accessories - Feature
If compatible, yes. And, again, IMHO there are further interesting candidates, such as RDF. BTW, as I often have expressed I am not against having a compatible CoverageJSON encoding as a CIS encoding. It just is not there yet, whereas OGC coverage JSON is standard, compatible, and therefore makes sense as primary choice. |
...just for the sake of avoiding misinterpretations: please read previous search results as tongue-in-cheek! |
sorry,today is my day of delivering slicewise:
yes, exactly - conformance class json-coverage. (and to give proper credit: done by Joan Maso) |
@pebau Well I always complain about the term feature, especially when used meaning vector data and unqualified as such ;) Still, it would be nice to do some SEO to improve search results on CIS JSON :) I added CIS JSON and CIS RDF at the head of the list of formats to recommend. If it is possible to convert between CoverageJSON and a CIS-compliant encoding, is "not compatible" really accurate? |
From CoverageJSON (https://www.w3.org/TR/covjson-overview/#cis): The main points of difference are:
I think it will be necessary to accommodate people in both camps :) |
right, calls for OGC's marketing office ;-)
thanks, appreciated!
well...I could bore you with a list of agencies, businesses, research centers, data providers using CIS JSON, with 2-digit Petabytes of offerings. But me engineer would rather go for the technical merits :-)
definitely that would change it: if both can be converted into each other in both directions without loss of information and with all the coverage types, we have a win. FWIW, earlier we have worked with encoding writers wanting to bring in their formats into coverage world, such as NetCDF and GRIB2 and JPEG2000, helping to get this correspondence established. |
@jerstlouis: thanks for sharing - interesting, so that is their view - let's inspect:
actually, CoverageJSON only describes grids, and even only regular grids, so a small subset of CIS JSON. (Note: a bit hard to discover as they have only JSON examples, could not find a comprehensive specification.)
in CIS, this CRS is the common bracket, composed from, say, EPSG for x/y, something else for z, something else for t - so same principle, but one common, coherent mechanism (information not distributed over several places.
so....? but actually it does not start from GML, but from UML,. CIS addresses (and integrates) a far larger ecosystem than CoverageJSON, not just JSON.
so we talk politics now ;-) |
Thanks for sharing your thoughts on that comparison. I will definitely need to dig into these further at some point.
No, we explicitly try to stay away from politics :) This is partly why I think the OGC API specifications do not mandate a specific media type, recognizing the different needs and preferences of different communities. And the recommendation is just to provide a sample of commonly used coverage formats, so I think it would be a fair compromise to include both CIS JSON and CoverageJSON in there. |
couldn't agree more! In the WCS.SWG we had years (literally!) of discussion on "the" default format, every incoming community brought their own and relaunched discussion. In the end we had to give up and accept that "no one size fits all".
As said, no objection, as soon as CoverageJSON is compatible in the sense you defined it: translating back& forth retains the coverage. |
@jerstlouis There is a CoverageJSON standardisation effort, hosted in the WCS SWG, to be started soon. The one technical change that may help compatibility with CIS is the evolution of JSON-LD from 1.0 to 1.1, so there is some work to do besides just editorially producing an OGC standard. The WCS SWG agreed to host the work last year, rather than have a separate, format only, SWG established. It was put back on the WCS agenda a month of so ago. As you say, there are plenty of implementations, and the user community is supportive of an OGC standardisation effort. I just need to get some money and contractual stuff sorted. There is even a moribund GitHub repo in waiting: https://github.com/opengeospatial/CoverageJSON |
All,
Those are multiple reasons to proceed with CIS as mandatory. CoverageJSON can be optional. |
@ghobona In Features, no encoding is mandatory. I do see:
currently in the specs. |
... and there is clause_8_media_types.adoc which says "This API-Coverages standard is built around the OGC Coverage Implementation Schema (CIS). CIS content often includes multi-dimensional coordinates and coordinate reference systems in sensor and analytic space. " |
@ghobona The way I read the specs right now:
This would mean (or might be interpreted in this way) that support for CIS JSON is not mandatory, but recommended (and I think that's a good thing). So I would like to suggest that:
|
…mmon - Part 2: Geospatial data - As discussed in opengeospatial#64 - Other clarifications - Also edited for completeness (e.g. Communication, Contributions)
…mmon - Part 2: Geospatial data - As discussed in opengeospatial#64 - Other clarifications - Also edited for completeness (e.g. Communication, Contributions)
…mmon - Part 2: Geospatial data - As discussed in opengeospatial#64 - Other clarifications - Also edited for completeness (e.g. Communication, Contributions)
…mmon - Part 2: Geospatial data - As discussed in opengeospatial#64 - Other clarifications - Also edited for completeness (e.g. Communication, Contributions)
…mmon - Part 2: Geospatial data - As discussed in opengeospatial#64 - Other clarifications - Also edited for completeness (e.g. Communication, Contributions)
…mmon - Part 2: Geospatial data - As discussed in opengeospatial#64 - Other clarifications - Also edited for completeness (e.g. Communication, Contributions)
…mmon - Part 2: Geospatial data - As discussed in opengeospatial#64 - Other clarifications - Also edited for completeness (e.g. Communication, Contributions)
…mmon - Part 2: Geospatial data - As discussed in opengeospatial#64 - Other clarifications - Also edited for completeness (e.g. Communication, Contributions)
…mmon - Part 2: Geospatial data - As discussed in opengeospatial#64 - Other clarifications - Also edited for completeness (e.g. Communication, Contributions)
…mmon - Part 2: Geospatial data - As discussed in opengeospatial#64 - Other clarifications - Also edited for completeness (e.g. Communication, Contributions)
…mmon - Part 2: Geospatial data - As discussed in opengeospatial#64 - Other clarifications - Also edited for completeness (e.g. Communication, Contributions)
…mmon - Part 2: Geospatial data - As discussed in opengeospatial#64 - Other clarifications - Also edited for completeness (e.g. Communication, Contributions)
…mmon - Part 2: Geospatial data - As discussed in opengeospatial#64 - Other clarifications - Also edited for completeness (e.g. Communication, Contributions)
…mmon - Part 2: Geospatial data - As discussed in opengeospatial#64 - Other clarifications - Also edited for completeness (e.g. Communication, Contributions)
…mmon - Part 2: Geospatial data - As discussed in opengeospatial#64 - Other clarifications - Also edited for completeness (e.g. Communication, Contributions)
…mmon - Part 2: Geospatial data - As discussed in opengeospatial#64 - Other clarifications - Also edited for completeness (e.g. Communication, Contributions)
…mmon - Part 2: Geospatial data - As discussed in opengeospatial#64 - Other clarifications - Also edited for completeness (e.g. Communication, Contributions)
…mmon - Part 2: Geospatial data - As discussed in opengeospatial#64 - Other clarifications - Also edited for completeness (e.g. Communication, Contributions)
20200902: Coverages SWG call: Embedding vs. referencing of DomainSet and RangeType. It was decided to recommend to Common to explicitly allow relative links in the same document in the |
…ated to reflect decision for opengeospatial#64 - A link to both DomainSet and RangeType is also present in /collections/{collectionId} resource links - That link may point to a separate resource (e.g. /collections/{collectionId}/coverage/domainset or /collections/{collectionId}/coverage/rangetype) - That link may also point to a specific property of the collection resource itself e.g. /collections/{collectionId}#DomainSet or /collections/{collectionId}#RangeType - Updated to the latest relation types from the code sprint, following OGC NA guidance that URIs should be URLs (possibly still under discussion)
…ated to reflect decision for opengeospatial#64 - A link to both DomainSet and RangeType is also present in /collections/{collectionId} resource links - That link may point to a separate resource (e.g. /collections/{collectionId}/coverage/domainset or /collections/{collectionId}/coverage/rangetype) - That link may also point to a specific property of the collection resource itself e.g. /collections/{collectionId}#DomainSet or /collections/{collectionId}#RangeType - Updated to the latest relation types from the code sprint, following OGC NA guidance that URIs should be URLs (possibly still under discussion)
PR #87 should address the last remaining aspects of this issues. |
20200909: Coverages SWG call: PR #87 was merged and it was agreed to close this issue. |
The SWG today (2020-05-27) discussed whether the development of OGC API - Common - Part 2: Collections might have implications for OGC API - Coverages. The SWG agreed to revise the document, if possible, to be consistent with OGC API - Common - Part 2: Collections.
The text was updated successfully, but these errors were encountered: