This documents illustrates the mappings defined in GeoDCAT-AP, as implemented in the iso-19139-to-dcat-ap.xsl
XSLT.
- Used namespaces
- Reference code lists for metadata elements
- Mapping summary
- Mappings of individual metadata elements
For a number of INSPIRE metadata elements, this document proposes the use of URI code list registers. These registers include:
- Code lists defined in the INSPIRE Metadata Regulation [INSPIRE-MD-REG], and made available through the URI registers operated by the INSPIRE Registry [INSPIRE-REGISTRY].
- URI registers operated by the Publications Office of the EU, whose use is recommended in DCAT-AP.
Metadata elements (ISO 19115 / INSPIRE) | Code list URI | Code lists | Status |
---|---|---|---|
Metadata language | http://publications.europa.eu/resource/authority/language |
Language register operated by the Metadata Registry of the Publications Office of the EU [MDR-LANG] | stable |
Resource language | |||
Resource type | http://inspire.ec.europa.eu/metadata-codelist/ResourceType |
Register operated by the INSPIRE Registry for resource types defined in ISO 19115 | stable |
Service type | http://inspire.ec.europa.eu/metadata-codelist/SpatialDataServiceType |
Register operated by the INSPIRE Registry for service types, as defined in [INSPIRE-MD-REG] | stable |
Topic category | http://inspire.ec.europa.eu/metadata-codelist/TopicCategory |
Register operated by the INSPIRE Registry for topic categories defined in ISO 19115 | stable |
Keyword denoting one of the INSPIRE spatial data themes | http://inspire.ec.europa.eu/theme |
INSPIRE spatial data theme register operated by the INSPIRE Registry | stable |
Keyword denoting one of the spatial data service categories | http://inspire.ec.europa.eu/metadata-codelist/SpatialDataServiceCategory |
Register operated by the INSPIRE Registry for spatial data service categories defined in ISO 19119 | stable |
Degree of conformity | http://inspire.ec.europa.eu/metadata-codelist/DegreeOfConformity |
Register operated by the INSPIRE Registry for degrees of conformity, as defined in [INSPIRE-MD-REG] | stable |
Responsible party role | http://inspire.ec.europa.eu/metadata-codelist/ResponsiblePartyRole |
Register operated by the INSPIRE Registry for responsible party roles, as defined in [INSPIRE-MD-REG] | stable |
Format / Encoding | http://publications.europa.eu/resource/authority/file-type |
File type register operated by the Metadata Registry of the Publications Office of the EU [MDR-FT] | stable |
http://inspire.ec.europa.eu/media-types |
Register of media types used for datasets in INSPIRE download services | testing | |
Maintenance frequency (Maintenance information) | http://publications.europa.eu/resource/authority/frequency |
Frequency code register operated by the Metadata Registry of the Publications Office of the EU [MDR-FR] | stable |
http://inspire.ec.europa.eu/metadata-codelist/MaintenanceFrequencyCode |
Register operated by the INSPIRE Registry for maintenance frequency codes defined in ISO 19115. The register is not yet available, and the code list URI is tentative. | unstable | |
Spatial representation type | http://inspire.ec.europa.eu/metadata-codelist/SpatialRepresentationTypeCode |
Register operated by the INSPIRE Registry for spatial representation type codes defined in ISO 19115. The register is not yet available, and the code list URI is tentative. | unstable |
The following sections provide a summary of the alignments defined in GeoDCAT-AP.
The alignments are grouped as follows:
- Alignment for metadata records (metadata on metadata)
- Alignments for resource metadata common to datasets, series and services
- Alignments for resource metadata specific to datasets and series
- Alignments for resource metadata specific to services
The alignments supported only in the extended profile of GeoDCAT-AP are in bold.
The domain of the mappings is dcat:CatalogRecord
, with the exception of metadata standard title and version, whose domain is dct:Standard
.
Metadata elements (ISO 19115 / INSPIRE) | Mappings | Mapping status | Comments | ||
---|---|---|---|---|---|
Property and/or attribute | Range | ||||
Metadata point of contact | prov:qualifiedAttribution |
prov:Attribution |
testing | Only for the extended profile | |
dcat:contactPoint |
vcard:Kind |
testing | Only for the extended profile | ||
Metadata date | dct:modified |
xsd:date |
testing | ||
Metadata language | dct:language |
dct:LinguisticSystem |
stable | ||
Metadata file identifier | dct:identifier |
rdfs:Literal |
stable | Only for the extended profile | |
Metadata character encoding | cnt:characterEncoding |
rdfs:Literal |
stable | Only for the extended profile | |
Metadata standard | dct:conformsTo |
dct:Standard |
stable | The metadata standard is modelled with dct:Standard , and it is described by a title and a version - see below |
|
* Metadata standard name | dct:title |
rdf:PlainLiteral |
stable | The domain is dct:Standard |
|
* Metadata standard version | owl:versionInfo |
rdf:PlainLiteral |
stable | The domain is dct:Standard |
As a rule, the domain of the mappings is either dcat:Dataset
(when the element is used for datasets and series) or dctype:Service
/ dcat:Catalog
(when the element is used for services). However, “starred” elements – i.e., elements whose name is preceded by an asterisk (“*”) – are those having as domain either dcat:Distribution
(when the element is used for datasets and series) or dctype:Service
/ dcat:Catalog
(when the element is used for services).
Metadata elements (ISO 19115 / INSPIRE) | Mappings | Mapping status | Comments | ||
---|---|---|---|---|---|
Property | Range | ||||
Resource title | dct:title |
rdf:PlainLiteral |
stable | ||
Resource abstract | dct:description |
rdf:PlainLiteral |
stable | ||
Resource type | Any type | dct:type |
skos:Concept |
stable | Only for the extended profile |
Data set | rdf:type |
dcat:Dataset |
stable | ||
Data set series | |||||
Service | dcat:Catalog |
stable | For catalogue / discovery services | ||
dctype:Service |
stable | For all the other services. Only for the extended profile | |||
Spatial extent | dct:spatial |
dct:Location |
stable | Spatial extent / coverage is specified as a geographic identifier and/or bounding box - see below | |
Spatial extent: Geographic identifier | Code | dct:spatial |
rdfs:Resource (URI reference) |
stable | If the geographic identifier is an HTTP URI. |
dct:identifier |
xsd:anyURI |
stable | If the geographic identifier is a URN. The domain is dct:Location |
||
skos:prefLabel |
rdf:PlainLiteral |
stable | If the geographic identifier is a textual label. The domain is dct:Location |
||
Authority | skos:inScheme |
skos:ConceptScheme |
stable | If the geographic identifier is an HTTP URI, the information about the authority is omitted. The domain is dct:Location |
|
Spatial extent: Geographic bounding box | locn:geometry |
locn:Geometry (rdfs:Literal or rdfs:Class ) |
stable | The recommendation is to use WKT or GML literals, encoded as per the GeoSPARQL specification. The domain is dct:Location |
|
Temporal reference | Temporal extent | dct:temporal |
dct:PeriodOfTime |
stable | |
Date of publication | dct:issued |
xsd:date |
stable | ||
Date of last revision | dct:modified |
xsd:date |
stable | ||
Date of creation | dct:created |
xsd:date |
stable | Only for the extended profile | |
Spatial resolution | rdfs:comment |
rdf:PlainLiteral |
unstable | Only for the extended profile. To be replaced with an appropriate mapping to a standard vocabulary, when available | |
Conformance result / Conformity (Data quality) | Any degree | prov:wasUsedBy |
prov:Activity |
testing | Only for the extended profile |
Conformant | dct:conformsTo |
dct:Standard |
stable | ||
Not conformant | - | - | |||
Not evaluated | - | - | |||
* Use limitation / Conditions for access and use | dct:license |
dct:LicenseDocument |
testing | For datasets and dataset series, the domain is dcat:Distribution . |
|
* Access constraints, other constraints / Limitations on public access | dct:accessRights |
dct:RightsStatement |
testing | For datasets and dataset series, the domain is dcat:Distribution . |
|
Responsible organisation | Any role | prov:qualifiedAttribution |
prov:Attribution |
unstable | Only for the extended profile. |
Resource provider | - | - | |||
Custodian | - | - | |||
Owner | dct:rightsHolder |
foaf:Agent |
stable | Only for the extended profile | |
User | - | - | |||
Distributor | - | - | |||
Originator | - | - | |||
Point of contact | dcat:contactPoint |
vcard:Kind |
stable | ||
Principal investigator | - | - | |||
Processor | - | - | |||
Publisher | dct:publisher |
foaf:Agent |
stable | ||
Author | dct:creator |
foaf:Agent |
testing | Only for the extended profile. |
As a rule, the domain of the mappings is dcat:Dataset
. However, “starred” elements – i.e., elements whose name is preceded by an asterisk (“*”) – are those having as domain dcat:Distribution
.
Metadata elements | Mappings | Mapping status | Comments | ||
---|---|---|---|---|---|
Property and/or attribute | Range | ||||
Online resource / Resource locator | * Download | dcat:accessURL |
rdfs:Resource |
stable | The domain is dcat:Distribution |
Information | foaf:page |
foaf:Document |
testing | ||
* Offline access | dcat:accessURL |
rdfs:Resource |
testing | The domain is dcat:Distribution |
|
* Order | dcat:accessURL |
rdfs:Resource |
testing | The domain is dcat:Distribution |
|
Search | foaf:page |
foaf:Document |
testing | ||
missing | dcat:landingPage |
foaf:Document |
stable | ||
Resource identifier / Unique resource identifier | dct:identifier |
rdfs:Literal |
testing | ||
Resource language | dct:language |
dct:LinguisticSystem |
stable | ||
Keyword | dcat:theme |
skos:Concept |
stable | For keywords from controlled vocabularies (as the INSPIRE spatial data themes and GEMET) | |
dcat:keyword |
rdfs:Literal |
stable | For free text keywords | ||
Topic category | dct:subject |
skos:Concept |
testing | Only for the extended profile. | |
Maintenance frequency (Maintenance information) | dct:accrualPeriodicity |
rdfs:Resource |
stable | ||
Lineage | dct:provenance |
dct:ProvenanceStatement |
stable | ||
Coordinate reference system | dct:conformsTo |
rdfs:Resource |
unstable | Only for the extended profile. To be replaced with an appropriate mapping to a standard vocabulary, when available | |
Temporal reference system | dct:conformsTo |
rdfs:Resource |
unstable | Only for the extended profile. To be replaced with an appropriate mapping to a standard vocabulary, when available | |
* Spatial representation type | adms:representationTechnique |
rdfs:Resource |
testing | Only for the extended profile. The domain is dcat:Distribution |
|
* Format / Encoding | dct:format |
dct:MediaTypeOrExtent |
testing | The domain is dcat:Distribution |
|
* Character encoding | cnt:characterEncoding |
rdfs:Literal |
testing | Only for the extended profile. The domain is dcat:Distribution |
The domain of the mappings is dcat:Catalog
for catalogue / discovery service, and dctype:Service
for all the other services.
Metadata elements | Mappings | Mapping status | Comments | ||
---|---|---|---|---|---|
Property and/or attribute | Range | ||||
Online resource / Resource locator | Any function | foaf:homepage |
foaf:Document |
testing | |
Coupled resource | dct:hasPart |
dcat:Dataset |
stable | Only for the extended profile | |
Spatial data service type | dct:type |
skos:Concept |
testing | Only for the extended profile | |
Keyword | dct:subject |
skos:Concept |
testing | Only for the extended profile. For keywords from controlled vocabularies (as the INSPIRE spatial data themes and GEMET) | |
dc:subject |
rdfs:Literal |
testing | Only for the extended profile. For free text keywords | ||
Spatial data service category | dct:type |
skos:Concept |
testing | Only for the extended profile. For spatial data service categories defined in ISO 19119 |
This section illustrates with examples specific metadata elements whose mappings are not completely described in the mapping summary.
If specified with an HTTP URI (see how):
<dct:spatial rdf:resource="http://publications.europa.eu/resource/authority/continent/EUROPE"/>
If specified with a literal:
<dct:spatial rdf:parseType="Resource">
<!-- Code -->
<skos:prefLabel xml:lang="en">Location > Continent > Europe</skos:prefLabel>
<skos:inScheme>
<!-- Authority -->
<skos:ConceptScheme>
<rdfs:label xml:lang="en">NASA/GCMD Location Keywords</rdfs:label>
<dct:modified rdf:datatype="http://www.w3.org/2001/XMLSchema#date">2009-01-01</dct:modified>
</skos:ConceptScheme>
</skos:inScheme>
</dct:spatial>
The XSLT outputs a geographic bounding box in multiple encodings, namely, the ones recommended in GeoDCAT-AP (i.e., WKT and GML), and GeoJSON.
To denote the datatype of the GeoJSON literal, the URL of the relevant IANA Media Type is used.
<dct:spatial rdf:parseType="Resource">
<!-- As WKT -->
<locn:geometry rdf:datatype="http://www.opengis.net/ont/geosparql#wktLiteral"><![CDATA[POLYGON((-6.41736 55.7447,2.05827 55.7447,2.05827 49.8625,-6.41736 49.8625,-6.41736 55.7447))]]></locn:geometry>
<!- As GML -->
<locn:geometry rdf:datatype="http://www.opengis.net/ont/geosparql#gmlLiteral"><![CDATA[<gml:Envelope srsName="http://www.opengis.net/def/crs/OGC/1.3/CRS84"><gml:lowerCorner>-6.41736 49.8625</gml:lowerCorner><gml:upperCorner>2.05827 55.7447</gml:upperCorner></gml:Envelope>]]></locn:geometry>
<!-- As GeoJSON -->
<locn:geometry rdf:datatype="https://www.iana.org/assignments/media-types/application/vnd.geo+json"><![CDATA[{"type":"Polygon","crs":{"type":"name","properties":{"name":"urn:ogc:def:crs:OGC:1.3:CRS84"}},"coordinates":[[[-6.41736,55.7447],[2.05827,55.7447],[2.05827,49.8625],[-6.41736,49.8625],[-6.41736,55.7447]]]}]]></locn:geometry>
</dct:spatial
This is currently mapped to a free text field (namely, rdfs:comment
).
The text is built by using the following pattern:
-
If spatial resolution is specified with a distance:
Spatial resolution (distance): <distance> <uom>
-
If spatial resolution is specified with an equivalent scale:
Spatial resolution (equivalent scale): 1:<denominator>
Examples:
<rdfs:comment xml:lang="en">
Spatial resolution (distance): 5 km
</rdfs:comment>
<rdfs:comment xml:lang="en">
Spatial resolution (equivalent scale): 1:10000
</rdfs:comment>
GeoDCAT-AP provides only a partial mapping for data quality information, limited to the component "conformance result".
<dct:conformsTo rdf:parseType="Resource">
<dct:title xml:lang="en">COMMISSION REGULATION (EU) No 1089/2010 of 23 November 2010 implementing Directive 2007/2/EC of the European Parliament and of the Council as regards interoperability of spatial data sets and services</dct:title>
<dct:issued rdf:datatype="http://www.w3.org/2001/XMLSchema#date">2010-12-08</dct:issued>
</dct:conformsTo>
If the conformity specification is specified with an HTTP URI (see how)
<dct:conformsTo rdf:resource="http://eur-lex.europa.eu/LexUriServ/LexUriServ.do?uri=CELEX:32010R1089:EN:NOT"/>
<prov:wasUsedBy>
<prov:Activity>
<prov:qualifiedAssociation rdf:parseType="Resource">
<prov:hadPlan rdf:parseType="Resource">
<!-- Specification -->
<prov:wasDerivedFrom>
<rdf:Description rdf:about="http://eur-lex.europa.eu/LexUriServ/LexUriServ.do?uri=CELEX:32010R1089:EN:NOT">
<dct:title xml:lang="en">COMMISSION REGULATION (EU) No 1089/2010 of 23 November 2010 implementing Directive 2007/2/EC of the European Parliament and of the Council as regards interoperability of spatial data sets and services</dct:title>
<dct:issued rdf:datatype="http://www.w3.org/2001/XMLSchema#date">2010-12-08</dct:issued>
</rdf:Description>
</prov:wasDerivedFrom>
</prov:hadPlan>
</prov:qualifiedAssociation>
<!-- Conformance result / conformity degree -->
<prov:generated rdf:parseType="Resource">
<dct:type rdf:resource="http://inspire.ec.europa.eu/metadata-codelist/DegreeOfConformity/conformant"/>
<dct:description xml:lang="en">See the referenced specification</dct:description>
</prov:generated>
</prov:Activity>
</prov:wasUsedBy>
If the conformity specification is specified with an HTTP URI (see how)
<prov:wasUsedBy>
<prov:Activity>
<prov:qualifiedAssociation rdf:parseType="Resource">
<prov:hadPlan rdf:parseType="Resource">
<!-- Specification -->
<prov:wasDerivedFrom rdf:resource="http://eur-lex.europa.eu/LexUriServ/LexUriServ.do?uri=CELEX:32010R1089:EN:NOT"/>
</prov:hadPlan>
</prov:qualifiedAssociation>
<!-- Conformance result / conformity degree -->
<prov:generated rdf:parseType="Resource">
<dct:type rdf:resource="http://inspire.ec.europa.eu/metadata-codelist/DegreeOfConformity/conformant"/>
<dct:description xml:lang="en">See the referenced specification</dct:description>
</prov:generated>
</prov:Activity>
</prov:wasUsedBy>
When the role is "contact point":
<dcat:contactPoint>
<vcard:Organization>
<vcard:fn xml:lang="en">European Environment Agency</vcard:fn>
<vcard:hasEmail rdf:resource="mailto:[email protected]"/>
<vcard:hasURL rdf:resource="http://www.eea.europa.eu/"/>
<vcard:hasTelephone rdf:resource="tel:+4533367100"/>
<vcard:hasAddress>
<vcard:Address>
<vcard:street-address>Kongens Nytorv 6</vcard:street-address>
<vcard:locality>Copenhagen</vcard:locality>
<vcard:region>K</vcard:region>
<vcard:postal-code>1050</vcard:postal-code>
<vcard:country-name>Denmark</vcard:country-name>
</vcard:Address>
</vcard:hasAddress>
</vcard:Organization>
</dcat:contactPoint>
For all the other roles:
<dct:publisher>
<foaf:Organization>
<foaf:name xml:lang="en">European Environment Agency</foaf:name>
<foaf:mbox rdf:resource="mailto:[email protected]"/>
<foaf:workplaceHomepage rdf:resource="http://www.eea.europa.eu/"/>
<foaf:phone rdf:resource="tel:+4533367100"/>
<locn:address>
<locn:Address>
<locn:thoroughfare>Kongens Nytorv 6</locn:thoroughfare>
<locn:postName>Copenhagen</locn:postName>
<locn:adminUnitL2>K</locn:adminUnitL2>
<locn:postCode>1050</locn:postCode>
<locn:adminUnitL1>Denmark</locn:adminUnitL1>
</locn:Address>
</locn:address>
</foaf:Organization>
</dct:publisher>
In addition to the mapping supported in the core profile, the extended profile uses the following mapping. It makes use of the PROV ontology. The responsible organisation is specified with prov:agent
, whereas the role is specified by using dct:type
, with the relevant role from the responsible party role code list operated by the INSPIRE registry.
<prov:qualifiedAttribution>
<prov:Attribution>
<prov:agent>
<!-- Responsible organisation -->
<vcard:Organization>
<vcard:fn xml:lang="en">European Environment Agency</vcard:fn>
<vcard:hasEmail rdf:resource="mailto:[email protected]"/>
<vcard:hasURL rdf:resource="http://www.eea.europa.eu/"/>
<vcard:hasTelephone rdf:resource="tel:+4533367100"/>
<vcard:hasAddress>
<vcard:Address>
<vcard:street-address>Kongens Nytorv 6</vcard:street-address>
<vcard:locality>Copenhagen</vcard:locality>
<vcard:region>K</vcard:region>
<vcard:postal-code>1050</vcard:postal-code>
<vcard:country-name>Denmark</vcard:country-name>
</vcard:Address>
</vcard:hasAddress>
</vcard:Organization>
</prov:agent>
<!-- Responsible party role -->
<dct:type rdf:resource="http://inspire.ec.europa.eu/metadata-codelist/ResponsiblePartyRole/pointOfContact"/>
</prov:Attribution>
</prov:qualifiedAttribution>
A coordinate reference system is denoted with dct:type
, with the HTTP URI from the INSPIRE Registry concerning the glossary term "Spatial Reference System".
This mapping is unstable, and might be revised in future versions of GeoDCAT-AP.
If specified with an HTTP URI (see how):
<dct:conformsTo>
<rdf:Description rdf:about="http://www.opengis.net/def/crs/EPSG/0/32630">
<dct:type rdf:resource="http://inspire.ec.europa.eu/glossary/SpatialReferenceSystem"/>
</rdf:Description>
</dct:conformsTo>
If specified with a URN from the OGC registry:
<dct:conformsTo>
<!-- HTTP URI mapped from the URN -->
<rdf:Description rdf:about="http://www.opengis.net/def/crs/EPSG/0/32632">
<dct:type rdf:resource="http://inspire.ec.europa.eu/glossary/SpatialReferenceSystem"/>
<!-- Original URN -->
<dct:identifier rdf:datatype="http://www.w3.org/2001/XMLSchema#anyURI">urn:ogc:def:crs:EPSG:7.1:32632</dct:identifier>
</rdf:Description>
</dct:conformsTo>
If specified with a URN not from the OGC registry:
<dct:conformsTo rdf:parseType="Resource">
<dct:type rdf:resource="http://inspire.ec.europa.eu/glossary/SpatialReferenceSystem"/>
<dct:identifier rdf:datatype="http://www.w3.org/2001/XMLSchema#anyURI">urn:xxx:xxx:xxx:32632</dct:identifier>
<!-- If the codespace is available -->
<skos:inScheme>
<skos:ConceptScheme>
<dct:title xml:lang="en">EPSG</dct:title>
</skos:ConceptScheme>
</skos:inScheme>
<!-- If the version is available -->
<owl:versionInfo xml:lang="en">7.1</owl:versionInfo>
</dct:conformsTo>
If specified with a literal:
<dct:conformsTo rdf:parseType="Resource">
<dct:type rdf:resource="http://inspire.ec.europa.eu/glossary/SpatialReferenceSystem"/>
<skos:prefLabel xml:lang="en">32632</skos:prefLabel>
<!-- If the codespace is available -->
<skos:inScheme>
<skos:ConceptScheme>
<dct:title xml:lang="en">EPSG</dct:title>
</skos:ConceptScheme>
</skos:inScheme>
<!-- If the version is available -->
<owl:versionInfo xml:lang="en">7.1</owl:versionInfo>
</dct:conformsTo>
If specified with an HTTP URI (see how):
<dct:format rdf:resource="http://publications.europa.eu/resource/authority/file-type/TIFF"/>
If specified with a literal:
<dct:format rdf:parseType="Resource">
<rdfs:label xml:lang="en">TIFF</rdfs:label>
</dct:format>