1) The Applicable Legislation ELI (http://data.europa.eu/eli/reg_impl/2023/138/oj) must be applied to Datasets and Distributions(resources) for HVD items. There may be distributions of a dataset that are not covered by the HVD, and they would not contain this value.
2) The HVD Category must be part of a specific codelist.
3) While the HVD profile should be included in the base catalog, there must be a catalog returning only hvd datasets and resources for reporting purposes.
Draft version of HVD 2.2.0 compliance
1) Adds support for codelists as a concept, and uses them for the HVD Category
2) Uses appropriate rdf typing to pass the shaql validation.
3) Provides a read-only profile to provide a HVD only catalog at {base url}/catalog.ttl?profiles=euro_dcat_ap_hvd_220
4) Extracts resource_to_graph into overridable methods.
Todo:
[ ] Shaql validation in automatic testing
[ ] meta link to the HBD only catalog.
[ ] HVD Category rdf is read on import, should be lazy
I'm not clear that I'm hooking into the best place to provide the HVD only catalog.
The resource refactoring is pretty severe to just be able to drop resources out of the graph, there might be a better way.
I'm also not clear that a narrow subclass is a great idea to provide a minimized catalog, because if it's configured as a default profile, it would remove all non-hvd datasets from the catalog.
Context:
The HVD Spec (https://github.com/SEMICeu/DCAT-AP/tree/master/releases/2.2.0-hvd) has a few specific requirements:
1) The Applicable Legislation ELI (http://data.europa.eu/eli/reg_impl/2023/138/oj) must be applied to Datasets and Distributions(resources) for HVD items. There may be distributions of a dataset that are not covered by the HVD, and they would not contain this value. 2) The HVD Category must be part of a specific codelist. 3) While the HVD profile should be included in the base catalog, there must be a catalog returning only hvd datasets and resources for reporting purposes.
Draft version of HVD 2.2.0 compliance
1) Adds support for codelists as a concept, and uses them for the HVD Category 2) Uses appropriate rdf typing to pass the shaql validation. 3) Provides a read-only profile to provide a HVD only catalog at
{base url}/catalog.ttl?profiles=euro_dcat_ap_hvd_220
4) Extracts resource_to_graph into overridable methods.Todo: