URLs as resources: now URLs are literals <dcat:accessURL>https://example.com/download</dcat:accessURL> but should be resources <dcat:accessURL rdf:resource="https://example.com/download"/>
email addresses with mailto://: also email addresses should become resources. <vcard:hasEmail>noreply@example.com</vcard:hasEmail> should be resources with mailto-protocol indicated <vcard:hasEmail rdf:resource="mailto://noreply@example.com"/>
language tags: dct:title and dct:description literals need a language tag. Ideally this also works with multilingual records.
dcat:Catalog: include a catalog description in the DCAT output. Catalog properties such as dct:license should ideally be made configurable.
dct:publisher: dcat:contactPoint is already provided with various roles, but DCAT also requires a dct:publisher property.
dct:accessRights: the DCAT converter does not seem to map it.
Additionally, also this deserves some further thought:
URIs for blank nodes: Now resources like dcat:Dataset, dcat:CatalogRecord, skos:Concept do not have a URI. For dcat:Dataset and dcat:CatalogRecord the URI could perhaps be made configurable. For skos:Concept, the URI could be taken from the link (gmx:Anchor) if available.
Now that the OGC API DCAT feed can export an entire catalog (see also https://github.com/geonetwork/geonetwork-microservices/pull/59), it would be great to pick up the work left on the DCAT converter.
The opendata.vlaanderen.be/validator DCAT Validator gave me the following suggestions:
URLs as resources: now URLs are literals
<dcat:accessURL>https://example.com/download</dcat:accessURL>
but should be resources<dcat:accessURL rdf:resource="https://example.com/download"/>
email addresses with mailto://: also email addresses should become resources.
<vcard:hasEmail>noreply@example.com</vcard:hasEmail>
should be resources with mailto-protocol indicated<vcard:hasEmail rdf:resource="mailto://noreply@example.com"/>
language tags: dct:title and dct:description literals need a language tag. Ideally this also works with multilingual records.
dcat:Catalog: include a catalog description in the DCAT output. Catalog properties such as dct:license should ideally be made configurable.
dct:publisher: dcat:contactPoint is already provided with various roles, but DCAT also requires a dct:publisher property.
dct:accessRights: the DCAT converter does not seem to map it.
Additionally, also this deserves some further thought: