SEMICeu / iso-19139-to-dcat-ap

Reference XSLT-based implementation of GeoDCAT-AP
European Union Public License 1.2
15 stars 9 forks source link

Adding transformation for including DCAT-AP themes #6

Open AntoRot opened 3 years ago

AntoRot commented 3 years ago

As explained in the section B.6.8.1 in the draft of GeoDCAT-AP v. 2.0.0, for conformance with DCAT-AP, GeoDCAT-AP records MUST also include keywords from the EU Vocabularies Data Theme Named Authority List.

An improvement of the XSLT could be adding the transformation from INSPIRE themes, included in the INSPIRE XML record, to DCAT-AP themes, based on the alignments between the related controlled vocabularies.

andrea-perego commented 3 years ago

@AntoRot , I've added a tentative implementation of the mappings in PR https://github.com/SEMICeu/iso-19139-to-dcat-ap/pull/7

To be reviewed before merging.

AntoRot commented 3 years ago

@andrea-perego I performed some tests and the implementation seems work.

The transformation could be also extended to cover the INSPIRE themes encoded with gco:CharacterString element at least in English language, leaving to the reusers to further include additional extensions to take into account the themes expressed in other MS languages.

andrea-perego commented 3 years ago

Thanks, @AntoRot .

About extending the mapping as you suggest, the version of the GeoDCAT-AP XSLT used by the European Data Portal (EDP) is already doing it, for all languages. So, we could build upon the approach used there.

The question is whether this feature should be part of the reference GeoDCAT-AP XSLT, or it is rather more in scope with customised versions of the XSLT used in production environments (as the EDP one).

For instance, applying this extension will significantly increase the complexity of the XSLT with a possible impact on its efficiency. By contrast, the URI-based mapping has not these issue, and it is designed for metadata records following the INSPIRE recommendations of using URIs for the themes.

What is your view on this, @AntoRot ?