-
-
Notifications
You must be signed in to change notification settings - Fork 155
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
suggestion for implementing wms/wmts/wfs/... links in record.geojson #815
base: master
Are you sure you want to change the base?
Conversation
dc15c53
to
08d05aa
Compare
@pvgenuchten can you rebase? |
08d05aa
to
a8ce743
Compare
a8ce743
to
3fe98a7
Compare
if 'OGC:WMS' in link['protocol'].upper(): | ||
link2['rel'] = 'map' | ||
link2['templated'] = 'true' | ||
# assumes link['url'] includes '&layers=...', else link['name'] contains layername(s) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
alternative would be to use owslib.wms130.__build_getmap_request (but challenge to replace bbox array for {bbox}
)
'count': {'type': 'number', 'format': 'integer'}} | ||
link2['type'] = 'application/gml+xml' | ||
|
||
#elif 'OSGEO:TMS' in link['protocol'].upper(): |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
or better/also to use xyz (both not in catinterop yet, see OSGeo/Cat-Interop#42)
@pvgenuchten can you rebase/update this PR? |
Overview
populate links in record.geojson for common link types using the suggested templated approach
Related Issue / Discussion
in #814 I raised the question how record.geojson links are modelled from the pycsw datamodel for the typical wms/wfs protocols. This PR presents a suggestion for implementation
Additional Information
A lot of conventions are adopted and discussions are taking place on how one can model a link between a iso19139 metadata record and a specific layer in ows capabilities. In general 2 approaches are common, append on the metadatalink to the service the &layers is parameter to detail the relevant layer, others adopted the &layers={onlineresource.name} convention. This PR supports both cases (but will cause problems if none of the 2 are implemented)
To identify the type of link, the catinterop identifier of the protocol is assumed in link[type], else the link will be treated as a generic link
Contributions and Licensing
(as per https://github.com/geopython/pycsw/blob/master/CONTRIBUTING.rst#contributions-and-licensing)