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

RDF DCAT end point #50

Closed
nmtoken opened this issue Jun 11, 2019 · 11 comments
Closed

RDF DCAT end point #50

nmtoken opened this issue Jun 11, 2019 · 11 comments

Comments

@nmtoken
Copy link

nmtoken commented Jun 11, 2019

ref: https://geonetwork-opensource.org/manuals/3.6.x/en/api/rdf-dcat.html

Is there an end point?

I know you can get RDF DCAT from a path like:

{your service}/srv/eng/rdf.metadata.get?uuid={some_uuid}

or

{your service}/srv/eng/rdf.metadata.get?id={some_id}

but I can't find an end point

@fxprunayre
Copy link
Member

Maybe use the dcat output schema in CSW ?

@nmtoken
Copy link
Author

nmtoken commented Oct 8, 2019

Possibly, but then documentation (latest now https://geonetwork-opensource.org/manuals/3.8.x/fr/api/index.html) seems wrong listing CSW and RDF DCAT end point as separate items

I guess i'm just dumb, and it's probably

{your server}/{your catalogue}/srv/eng/rdf.metadata.get?

If I do that on a GN 3.8.0.0 instance I get a message like:

{"error": { "message": "java.lang.Exception: Request must contain a UUID (uuid) or an ID (id)" , "class": "RuntimeException" , "request": {} } }

Which is promising, I guess I was expecting a way or interrogating the endpoint to discover capabilities, available records etc like a CSW endpoint, but perhaps you can just get a record if you somehow already know it's identifier?

@archaeogeek
Copy link
Contributor

rdf.search allows you to get multiple records, and you can filter on (eg category) with rdf.search?_cat=foo. There's already an issue (#38) to get some documentation into that page. I don't think there's a method of discovering capabilities though, although it would be nice if there was...

@fxprunayre
Copy link
Member

I think we should avoid to put too much efforts in search API doc as this will change a lot with Elasticsearch move and some of the services may even be removed ...

@nmtoken
Copy link
Author

nmtoken commented Oct 8, 2019

So to summarise currently:

{your server}/{your catalogue}/srv/eng/rdf.metadata.get?uuid={some_uuid}

gets a RDF record and

{your server}/{your catalogue}/srv/eng/rdf.search?

gets a dcat:Catalog RDF response describing all records in the catalogue, but there is no link between the dcat:dataset rdf:resource URL and the RDF record URL, ~ there's no link with form {your server}/{your catalogue}/srv/eng/rdf.metadata.get?uuid={some_uuid}, so even if we said the endpoint was {your server}/{your catalogue}/srv/eng/rdf something wouldn't be as expected.

Possibly my starting point should be the, also undocumented, OpenSearch resource?

{your server}/{your catalogue}/srv/eng/portal.opensearch

which gives me inter al.

<Url type="application/rdf+xml" template="{your server}/{your catalogue}/srv/eng/rdf.search?any={searchTerms}&hitsPerPage={count?}&bbox={geo:box?}&geometry={geo:geometry?}&name={geo:locationString?}"/>

I'm not sure what effort should be put into documentation; some documentation would be good to describe what's currently available, and even a note to say what is likely to get replaced.

@fxprunayre
Copy link
Member

https://trac.osgeo.org/geonetwork/wiki/proposals/DCATandRDFServices may help but is probably not completely up to date.

@archaeogeek
Copy link
Contributor

I'm definitely in favour of some documentation on these blank pages- even if it's just the very basics outlined above. Something is better than nothing, and it's not a lot of effort. I'm happy to add the basics, if others can then add to it as they explore further. @nmtoken would you be able to contribute?

@fxprunayre Also definite +1 for a note on which endpoints are likely to be deprecated as I'm sure I'm not the only one who uses various endpoints for business-critical functions and would be in a lot of trouble if they were dropped!

@nmtoken
Copy link
Author

nmtoken commented Oct 9, 2019

@archaeogeek I'll contribute if I'm able.

@archaeogeek
Copy link
Contributor

@nmtoken and @fxprunayre I've submitted this PR #70 to get a basic page started. Any contributions gratefully accepted!

@pvgenuchten
Copy link

slightly related here may be the future ogc-api-records endpoint, we have not yet considered how to adopt it, it will be an open api endpoint returning records (in various encodings i'd imagine).
I hope we can consider this endpoint in the upcoming elastic refactor

@archaeogeek
Copy link
Contributor

Closing as cd5202c provides basics, anything additional can be added as a new issue

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

4 participants