SEMICeu / DCAT-AP

This is the issue tracker for the maintenance of DCAT-AP
https://joinup.ec.europa.eu/solution/dcat-application-profile-data-portals-europe
76 stars 24 forks source link

Add more properties on DataService #272

Closed matthiaspalmer closed 3 months ago

matthiaspalmer commented 1 year ago

Data services may need to be viewed independently from datasets in a Catalog. This is stated clearly e.g. in chapter 14: "Whereas a data service is an entity in its own right. It provides access to datasets or it provides data processing functions."

In this scenario we think additional properties would make sense. We suggest to at least consider the following properties that are present in the Swedish profile DCAT-AP-SE2:

For examples of data service that may be needed to be viewed independently from datasets we suggest to consider at least the following cases:

  1. Data service serving no datasets, e.g. data processing services
  2. Data services serving many datasets
fabiankirstein commented 8 months ago

I would like to second this request. Although in DCAT it is already supported to use all properties from dcat:Resource, explicitly listing certain properties in DCAT-AP will increase the reusability and help implementers.

For instance, independent data service could be displayed in faceted/filtered search view. Many Open Data portals offer filtering for publishers, keywords, etc.

I would see the following properties as essential:

However, a discussion about the exact selection should continue.

@matthiaspalmer Wouldn't you say dcat:endpointDescription is already a kind of Documentation (foaf:page)?

matthiaspalmer commented 8 months ago

@fabiankirstein, I think dcat:endpointDescription is closer to dcterms:conformsTo, i.e. have a more formal character than a pointer to a more general documentation resource intended for humans, i.e. via foaf:page. This is supported by the usage note in dcat3.

For a dataset you have dcterms:conformsTo on both the dataset and the distribution level, giving you the option to be more specific on the expression for each distribution. For a dataservice you may need to indicate the workings of the API via openapi / swagger / RAML etc. you do this with the dcat:endpointDescription and use dcterms:conformsTo to point to the wider specification being implemented. This still leaves the need for documentation targeting humans, hence the need for foaf:page.