stephan.meissl at eox.at
even.rouault at mines-paris.org
fabian.schindler at eox.at
- Last Updated
Table of Contents
INSPIRE is the name of an European directive, establishing an infrastructure for spatial information in Europe to support Community environmental policies, and policies or activities which may have an impact on the environment.
The INSPIRE Download Service is an implementation of the INSPIRE Technical Guidance Download Services v3.1 on top of the WFS Server, version 2.0 (implementation explained in the previous chapter) and an implementation of Technical Guidance for the implementation of INSPIRE Download Services using Web Coverage Services on top of WCS Server, version 2.0. The INSPIRE schemas contain extensions to OGC WFS and WCS schemas.
In order to achieve INSPIRE Download Service compliance, the following enhancements have been implemented in MapServer:
Activation of INSPIRE support (two scenarios)
Multi-language support for certain capabilities fields
Provision of INSPIRE specific metadata
Support for INSPIRE Download Service in MapServer uses a syntax identical to the one used for INSPIRE View Service. Consequently, it is possible to define shared metadata items between Download and View services by using the ows_ prefix instead of wfs_ or wcs_. In the following examples the ows_ prefix is used, as the documentation is meant for both WCS and WFS.
INSPIRE specific metadata can either be referenced in an external INSPIRE service metadata document (scenario 1) or can be directly embedded in the capabilities document (scenario 2). MapServer supports both scenarios.
Activation of the corresponding scenario for INSPIRE support takes place in the WEB.METADATA section of the mapfile through ows_inspire_capabilities. If activated, the corresponding INSPIRE namespace as well as appropriate validation warnings are generated in the capabilities document.
Scenario 1 - activate INSPIRE support using a reference to external service metadata:
WEB METADATA "ows_inspire_capabilities" "url" ... END END
Scenario 2 - activate INSPIRE support using embedded service metadata:
WEB METADATA "ows_inspire_capabilities" "embed" ... END END
INSPIRE requires multi-language support and requests a list of all supported languages as well as the default language in the capabilities document. Based on the language parameter in the GetCapabilities request, certain specific metadata values, namely
need to be provided in the requested language (both at the WEB.METADATA and LAYER.METADATA levels). If the language is not supported (or no language parameter is present), the default language has to be used.
For INSPIRE download service WCS, only the WEB.METADATA fields have an effect, as the INSPIRE and language specific metadata are only relevant for the service itself and is not required on the level of coverages.
As an extension, also not encouraged by the INSPIRE Download Services technical guidance, MapServer supports language dependent reference data like
All supported languages have to be specified as comma separated list (first language is default) through wfs_languages in the WEB.METADATA section of the mapfile. This language parameter is also added to the OnlineResource in the GetCapabilities output:
WEB METADATA ... "ows_languages" "eng,ger" #first default, values according ISO 639-2/B ... END END
For language specific metadata values, a key extension method is applied:
WEB METADATA ... "ows_title.eng" "myservicetitle" "ows_title.ger" "myservicetitleger" "ows_abstract" "mylayerabstract" #fallback "ows_abstract.ger" "mylayerabstractger" ... END END LAYER METADATA "wfs_title" "title: province" "wfs_title.fre" "titre: province" "wfs_abstract" "abstract: province" "wfs_abstract.fre" "resume: province" ... END ... END
For language dependent reference data, a similar approach like the run-time substitution feature of MapServer has been followed (only DATA and CONNECTION values with %language% are substituted):
... LAYER NAME TN.RoadTransportNetwork.RoadLink DATA "road_%language%" ... END ...
If the language is not supported (or no language parameter is present), the default language is substituted.
Depending on the scenario, additional metadata information is required to support the specification. The INSPIRE related fields are provided below.
Scenario 1 - INSPIRE related fields using referenced external service metadata:
WEB METADATA "ows_inspire_capabilities" "url" "ows_languages" "eng,ger" #first default, values according ISO 639-2/B "ows_inspire_metadataurl_href" "http://INSPIRE.service/metadata" "ows_inspire_metadataurl_format" "application/vnd.ogc.csw.capabilities.response_xml" "ows_inspire_dsid_code" "mycode" "ows_keywordlist" "ogc,wfs,gml" "ows_title" "myservicetitle" "ows_abstract" "myabstract" "ows_fees" "conditions unknown" #value either "no conditions apply"|default "conditions unknown"|<specific conditions> "wfs_accessconstraints" "None" #value according ISO 19115 (MD_RestrictionCode codelist) or default "None" "ows_contactorganization" "MapServer" #responsible organization "ows_contactposition" "owner" #responsible organization, value according "INSPIRE Metadata Regulation" (part D6) ... END END
Scenario 2 - INSPIRE related fields using embedded service metadata:
WEB METADATA "ows_inspire_capabilities" "embed" "ows_languages" "eng,ger" #first default, values according ISO 639-2/B "ows_inspire_temporal_reference" "2011-09-19" #date of last revision, value according YYYY-MM-DD "ows_inspire_mpoc_name" "mympocname" #point of contact "ows_inspire_mpoc_email" "firstname.lastname@example.org" #point of contact "ows_inspire_metadatadate" "2011-09-19" "ows_inspire_resourcelocator" "http://myinspireresource" #URL for ResourceLocator "ows_inspire_keyword" "infoMapAccessService" #value according "classification of spatial data services" "ows_inspire_dsid_code" "mycode" "ows_inspire_dsid_ns" "http://mycode" "ows_keywordlist" "ogc,wfs,gml" "ows_title" "myservicetitle" "ows_abstract" "myabstract" "ows_fees" "conditions unknown" #value either "no conditions apply"|default "conditions unknown"|<specific conditions> "ows_accessconstraints" "None" #value according ISO 19115 (MD_RestrictionCode codelist) or default "None" "ows_contactorganization" "MapServer" #responsible organization "ows_contactposition" "owner" #responsible organization, value according "INSPIRE Metadata Regulation" (part D6) ... END END
this mailing list exchange gives a few hints how to fill the wfs_inspire_dsid_code metadata item.
regarding scenario 2, <inspire_common:ResourceType> is always set to service and <inspire_common:SpatialDataServiceType> is always set to download, both values can't be altered through the mapfile
conformity is always set to not evaluated, based on the latest INSPIRE Metadata Implementing Rules (page 7), a specification document, the specification date and a specification URI or URL need to be provided for degree conformant/not conformant, which is currently not implemented