- From: Andrea Perego via GitHub <sysbot+gh@w3.org>
- Date: Sat, 20 Jun 2020 23:11:38 +0000
- To: public-dxwg-wg@w3.org
andrea-perego has just created a new issue for https://github.com/w3c/dxwg: == Service vs endpoint == I propose we consider re-visiting the service-endpoint relationship, based on existing examples where such relationship is 1-to-many. DCAT 2 includes two properties - `dcat:endpointURL` and `dcat:endpointDescription` - for specifying a service endpoint, plus property `dct:conformsTo`, which is used to specify its "protocol". As these properties take as subject a `dcat:DataService`, the service-endpoint relationship is 1-to-1. There are however cases where services have more than one endpoint. As an example, see the following record: https://sdi.eea.europa.eu/catalogue/idp/api/records/29e08b66-e6f6-4b4f-95ad-b582d9fe3df5 The record describes a geospatial "view" service (i.e., a service portraying data on a map) with 2 endpoints, both serving the same dataset, but using different protocols (WMS and ArcGIS REST), and with different endpoint descriptions and URLs. Transformed into DCAT, this record will then be as follows: ````turtle :eea_v_4326_250_k_wise-eionet-monitoring-sites_service a dcat:DataService ; ... dcat:endpointDescription <https://water.discomap.eea.europa.eu/arcgis/rest/services/WISE_SoE/EIONET_MonitoringSite_WM/MapServer> ; dcat:endpointURL <https://water.discomap.eea.europa.eu/arcgis/rest/services/WISE_SoE/EIONET_MonitoringSite_WM/MapServer> ; dct:conformsTo <https://developers.arcgis.com/rest/> ; dcat:endpointDescription <https://water.discomap.eea.europa.eu/arcgis/services/WISE_SoE/EIONET_MonitoringSite_WM/MapServer/WMSServer?request=GetCapabilities&service=WMS> ; dcat:endpointURL <https://water.discomap.eea.europa.eu/arcgis/services/WISE_SoE/EIONET_MonitoringSite_WM/MapServer/WMSServer> ; dct:conformsTo <http://www.opengeospatial.org/standards/wms> ; dcat:servesDataset :eea_v_4326_250_k_wise-eionet_p_2001-2020_v01_r04 ; ... . ```` This case is outlined in DCAT 2 in [Example 49](https://www.w3.org/TR/vocab-dcat-2/#ex-service-gsa), where the solution is to duplicate the service record, and changing only the endpoint protocol, description, and URL. So, the record above should result in two different ones: ````turtle :eea-rest a dcat:DataService ; ... dcat:endpointDescription <https://water.discomap.eea.europa.eu/arcgis/rest/services/WISE_SoE/EIONET_MonitoringSite_WM/MapServer> ; dcat:endpointURL <https://water.discomap.eea.europa.eu/arcgis/rest/services/WISE_SoE/EIONET_MonitoringSite_WM/MapServer> ; dct:conformsTo <https://developers.arcgis.com/rest/> ; dcat:servesDataset :eea_v_4326_250_k_wise-eionet_p_2001-2020_v01_r04 ; ... . :eea-wms a dcat:DataService ; ... dcat:endpointDescription <https://water.discomap.eea.europa.eu/arcgis/services/WISE_SoE/EIONET_MonitoringSite_WM/MapServer/WMSServer?request=GetCapabilities&service=WMS> ; dcat:endpointURL <https://water.discomap.eea.europa.eu/arcgis/services/WISE_SoE/EIONET_MonitoringSite_WM/MapServer/WMSServer> ; dct:conformsTo <http://www.opengeospatial.org/standards/wms> ; dcat:servesDataset :eea_v_4326_250_k_wise-eionet_p_2001-2020_v01_r04 ; ... . ```` I think this approach should be complemented with the possibility of keeping instead a single service with 2 endpoints, as in the original record. It would be up to data providers to decide which one would suit them best. A possible solution is to define a new property (e.g., `dcat:endpoint`), which specifies the endpoint (possibly typed itself as a `dcat:DataService`), along with the endpoint description, URL and protocol. The example above would then be re-written as follows: ````turtle :eea_v_4326_250_k_wise-eionet-monitoring-sites_service a dcat:DataService ; ... dcat:endpoint [ a dcat:DataService ; dcat:endpointDescription <https://water.discomap.eea.europa.eu/arcgis/rest/services/WISE_SoE/EIONET_MonitoringSite_WM/MapServer> ; dcat:endpointURL <https://water.discomap.eea.europa.eu/arcgis/rest/services/WISE_SoE/EIONET_MonitoringSite_WM/MapServer> ; dct:conformsTo <https://developers.arcgis.com/rest/> ; ] ; dcat:endpoint [ a dcat:DataService ; dcat:endpointDescription <https://water.discomap.eea.europa.eu/arcgis/services/WISE_SoE/EIONET_MonitoringSite_WM/MapServer/WMSServer?request=GetCapabilities&service=WMS> ; dcat:endpointURL <https://water.discomap.eea.europa.eu/arcgis/services/WISE_SoE/EIONET_MonitoringSite_WM/MapServer/WMSServer> ; dct:conformsTo <http://www.opengeospatial.org/standards/wms> ; ] ; dcat:servesDataset :eea_v_4326_250_k_wise-eionet_p_2001-2020_v01_r04 ; ... . ```` Please view or discuss this issue at https://github.com/w3c/dxwg/issues/1242 using your GitHub account
Received on Saturday, 20 June 2020 23:11:39 UTC