[mapserver-commits] r11945 - sandbox/inspire_soc2011/mapserver
svn at osgeo.org
svn at osgeo.org
Fri Jul 15 17:29:29 EDT 2011
Author: stefanl
Date: 2011-07-15 14:29:29 -0700 (Fri, 15 Jul 2011)
New Revision: 11945
Modified:
sandbox/inspire_soc2011/mapserver/rfc73.rst
Log:
first draft of rfc ready
Modified: sandbox/inspire_soc2011/mapserver/rfc73.rst
===================================================================
--- sandbox/inspire_soc2011/mapserver/rfc73.rst 2011-07-15 16:23:49 UTC (rev 11944)
+++ sandbox/inspire_soc2011/mapserver/rfc73.rst 2011-07-15 21:29:29 UTC (rev 11945)
@@ -7,7 +7,7 @@
:Date: 2011/07/01
:Author: gsoc2011
:Contact:
-:Last Edited: 2011/07/13
+:Last Edited: 2011/07/15
:Status:
:Version: MapServer 6.2
:Id:
@@ -20,6 +20,7 @@
- Activation of INSPIRE support (two scenarios)
- Multi-language support for certain capabilities fields
- Provision of INSPIRE specific metadata
+- Style section for root layer and possibly existing group layers
This RFC aggregates and extends the already provided ideas/solutions regarding INSPIRE view service support.
@@ -57,7 +58,10 @@
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 GetCapabilites request, certain specific metadata values, namely
- "wms_title"
- "wms_abstract"
+ - "wms_rootlayer_title"
- "wms_rootlayer_abstract"
+ - "wms_group_title"
+ - "wms_group_abstract"
as well as language dependent reference data like
- DATA "shapes/rivers.shp"
need to be provided in the requested language. If the language is not supported (or no language parameter is present), the default language has to be used.
@@ -82,8 +86,8 @@
WEB
METADATA
...
- "wms_title_eng" "Transport networks: Road Link"
- "wms_title_ger" "Verkehrsnetze: Strassensegment"
+ "wms_title_eng" "myservicetitle"
+ "wms_title_ger" "myservicetitleger"
"wms_abstract" "mylayerabstract" #to test fallback
"wms_abstract_ger" "mylayerabstractger"
...
@@ -114,16 +118,13 @@
"wms_metadataurl_href" "http://INSPIRE.service/metadata"
"wms_metadataurl_format" "application/vnd.ogc.csw.capabilities.response_xml"
"wms_inspire_keyword" "infoMapAccessService" #value according "classification of spatial data services"
- "wms_title" "Transport networks: Road Area"
+ "wms_title" "myservicetitle"
"wms_abstract" "myabstract"
"wms_fees" "conditions unknown" #value either "no conditions apply"|default "conditions unknown"|<specific conditions>
"wms_accessconstraints" "None" #value according ISO 19115 (MD_RestrictionCode codelist) or default "None"
"wms_contactorganization" "MapServer" #responsible organisation
"wms_contactposition" "owner" #responsible organisation, value according "INSPIRE Metadata Regulation" (part D6)
...
- "wms_inspire_style_name" "inspire_common:DEFAULT" #style name
- "wms_inspire_style_title" "mystyletitle" #style title
- ...
END
END
@@ -141,46 +142,42 @@
"wms_inspire_mpoc_email" "mympocemail" #point of contact
"wms_inspire_metadatadate" "2011-09-19" #value according YYYY-MM-DD
"wms_inspire_keyword" "infoMapAccessService" #value according "classification of spatial data services"
- "wms_title" "Transport networks: Road Area"
+ "wms_title" "myservicetitle"
"wms_abstract" "myabstract"
"wms_fees" "conditions unknown" #value either "no conditions apply"|default "conditions unknown"|<specific conditions>
"wms_accessconstraints" "None" #value according ISO 19115 (MD_RestrictionCode codelist) or default "None"
"wms_contactorganization" "MapServer" #responsible organisation
"wms_contactposition" "owner" #responsible organisation, value according "INSPIRE Metadata Regulation" (part D6)
...
- "wms_inspire_style_name" "inspire_common:DEFAULT" #style name
- "wms_inspire_style_title" "mystyletitle" #style title
- ...
END
END
Notes:
- a) several fields require certain values, these values are not validated by MapServer itself, instead a manual validation against the `INSPIRE schemas`_ or the `WMS INSPIRE tester`_ is recommended
- b) only one keyword through "wms_inspire_keyword" is supported, a possibly provided "wms_keywordlist" will be ignored
- c) as suggested in this document_ regarding scenario 2, <inspire_common:ResourceType> is always set to service and <inspire_common:SpatialDataServiceType> is always set to view, both values can't be altered through the mapfile
- d) for the root layer, the style name is set through "wms_inspire_style_name" (inspire_common:DEFAULT), the style title through "wms_inspire_style_title"
- e) as discussed here_, the usage of group/classgroup in the mapfile is necessary to set the layer style name to the according value (inspire_common:DEFAULT).
- f) as suggested in Ticket 3850_, the layer style titles can be overwritten through wms_style_<stylename>_title, the layer style legendURLs through wms_style_<stylename>_legendurl_* (width, height, format and href need to be provided)
+- several fields require certain values, these values are not validated by MapServer itself, instead a manual validation against the `INSPIRE schemas`_ or the `WMS INSPIRE tester`_ is recommended
+- only one keyword through "wms_inspire_keyword" is supported, a possibly provided "wms_keywordlist" will be ignored
+- as suggested in this document_ regarding scenario 2, <inspire_common:ResourceType> is always set to service and <inspire_common:SpatialDataServiceType> is always set to view, both values can't be altered through the mapfile
+5. Style section for root layer and possibly existing group layers
+------------------------------------------------------------------
+
+For regular layers, the `concept of GROUP and CLASSGROUP`_ can be used to to set the layer style name to the according value. Additionally - as suggested in Ticket 3850_ - the layer style titles can be overwritten through wms_style_<stylename>_title and the layer style legendURLs through wms_style_<stylename>_legendurl_* (width, height, format and href need to be provided).
+
::
...
LAYER
NAME TN.RoadTransportNetwork.RoadLink
DATA road
- TEMPLATE "ttt"
METADATA
"wms_title_eng" "Transport networks: Road Link"
"wms_title_ger" "Verkehrsnetze: Strassensegment"
- "wms_abstract" "mylayerabstract" #to test fallback
- "wms_abstract_ger" "mylayerabstractger"
- "wms_keywordlist" "mylayerkeyword1,mylayerkeyword2"
- "wms_style_inspire_common:DEFAULT_title" "mylayerstyletitle" #override style title
- "wms_style_inspire_common:DEFAULT_legendurl_width" "mylayerstylelegendurlwidth" #override style legendurl (mandatory: width, height, format, href)
- "wms_style_inspire_common:DEFAULT_legendurl_height" "mylayerstylelegendurlheight"
- "wms_style_inspire_common:DEFAULT_legendurl_format" "mylayerstylelegendurlformat"
- "wms_style_inspire_common:DEFAULT_legendurl_href" "mylayerstylelegendurlhref"
+ ...
+ "wms_style_inspire_common:DEFAULT_title" "mylayerstyletitle" #style title
+ "wms_style_inspire_common:DEFAULT_legendurl_width" "85" #override style legendurl (mandatory: width, height, format, href)
+ "wms_style_inspire_common:DEFAULT_legendurl_height" "40"
+ "wms_style_inspire_common:DEFAULT_legendurl_format" "image/png"
+ "wms_style_inspire_common:DEFAULT_legendurl_href" "http://path/to/onlineresource...roadlink"
END
...
END
@@ -202,8 +199,69 @@
END
...
+The following method is suggested to support (customizable) style sections in the root layer
-5. Implementation details
+- use wms_style_name in the WEB.METADATA section to add a style section to the root layer
+- use wms_style_title to override the style title (optional)
+- use wms_style_legendurl_* to override width, heigth, format and href of the legendURL (optional)
+
+and possibly existing group layers
+
+- use wms_group_style_name in the first corresponding LAYER.METADATA section to add a style section to the group layer
+- use wms_group_style_title to override the style title (optional)
+- use wms_group_style_legendurl_* to override width, heigth, format and href of the legendURL (optional)
+
+::
+
+ ...
+ WEB
+ METADATA
+ ...
+ "wms_style_name" "inspire_common:DEFAULT" #style name
+ "wms_style_title" "myroadarealayerstyletitle" #style title
+ "wms_style_legendurl_width" "85" #override style legendurl (mandatory: width, height, format, href)
+ "wms_style_legendurl_height" "40"
+ "wms_style_legendurl_format" "image/png"
+ "wms_style_legendurl_href" "http://path/to/onlineresource...roadarea"
+ END
+ END
+
+ LAYER
+ NAME TN.RailTransportNetwork.RailwayLink
+ GROUP TN.CommonTransportElements.TransportLink
+ DATA road
+ METADATA
+ "wms_group_title_eng" "Transport networks: Generic Transport Link"
+ "wms_group_title_ger" "Verkehrsnetze: Generisches Verkehrssegment"
+ "wms_group_abstract" "mygenerictransportlinklayerabstract" #to test fallback
+ "wms_group_abstract_ger" "mygenerictransportlinklayerabstract"
+ "wms_group_style_name" "inspire_common:DEFAULT" #style name
+ "wms_group_style_title" "mygenerictransportlinklayerstyletitle" #style title
+ "wms_group_style_legendurl_width" "85" #override style legendurl (mandatory: width, height, format, href)
+ "wms_group_style_legendurl_height" "40"
+ "wms_group_style_legendurl_format" "image/png"
+ "wms_group_style_legendurl_href" "http://path/to/onlineresource...generictransportlink"
+ "wms_title_eng" "Transport networks: Railway Link"
+ "wms_title_ger" "Verkehrsnetze: Eisenbahnverbindung"
+ "wms_abstract" "myrailwaylinklayerabstract" #to test fallback
+ "wms_abstract_ger" "myrailwaylinklayerabstractger"
+ ...
+ END
+ ...
+ END
+
+Provided that ability, 3 levels of hierarchy can be achieved as done in the example mapfiles.
+
+::
+
+ TN.RoadTransportNetwork.RoadArea
+ +--- TN.RoadTransportNetwork.RoadLink
+ +--- TN.CommonTransportElements.TransportLink
+ +--- TN.RailTransportNetwork.RailwayLink
+ +--- TN.AirTransportNetwork.AirLink
+
+
+6. Implementation details
-------------------------
In order to implement this enhancement, the following changes need to be implemented in the MapServer codebase:
@@ -216,7 +274,7 @@
6) override style titles and legendURLs if specified in mapfile (e.g. "wms_style_<stylename>_title")
7) add warnings for missing but mandatory INSPIRE specific metadata
-5.1 Files affected
+6.1 Files affected
------------------
The following files will be modified by this RFC:
@@ -227,17 +285,17 @@
mapows.c
mapwms.c
-5.2 MapScript issues
+6.2 MapScript issues
--------------------
This change provides new functionality with no MapScript issues being considered.
-5.3 Backwards compatibility issues
+6.3 Backwards compatibility issues
----------------------------------
This change provides new functionality with no backwards compatibility issues being considered.
-6. Solution
+7. Solution
-----------
The code for this RFC can be found in the inspire_soc2011_ sandbox.
@@ -249,7 +307,7 @@
Related (but currently not addressed) tickets:
- Ticket 1632_: support for named group layers using wms_layer_group
-7. Tests
+8. Tests
--------
2 example mapfiles were created for testing purposes:
@@ -258,7 +316,7 @@
The GetCapabilites responses with these mapfiles validate against the `INSPIRE schemas`_ as well as the `WMS INSPIRE tester`_ without warnings/errors.
-8. Voting history
+9. Voting history
-----------------
...
@@ -269,7 +327,7 @@
.. _runtime-substitution: http://mapserver.org/cgi/runsub.html
.. _inspire_soc2011: https://svn.osgeo.org/mapserver/sandbox/inspire_soc2011
.. _document: http://www.neogeo-online.net/blog/wp-content/uploads/2011/04/MAPSERVER_INSPIRE.pdf
-.. _here: http://lists.osgeo.org/pipermail/mapserver-INSPIRE/2011-April/000027.html
+.. _`concept of GROUP and CLASSGROUP`: http://lists.osgeo.org/pipermail/mapserver-inspire/2011-April/000027.html
.. _3608: http://trac.osgeo.org/mapserver/ticket/3608
.. _3850: http://trac.osgeo.org/mapserver/ticket/3850
.. _1632: http://trac.osgeo.org/mapserver/ticket/1632
More information about the mapserver-commits
mailing list