[GeoNetwork-devel] [GeoNetwork opensource Developer website] #694: Do not support only Polygon in gmd:EX_BoundingPolygon

#694: Do not support only Polygon in gmd:EX_BoundingPolygon
-------------------------+--------------------------------------------------
Reporter: fxp | Owner: geonetwork-devel@…
     Type: enhancement | Status: new
Priority: major | Milestone: Future release
Component: General | Version:
Keywords: |
-------------------------+--------------------------------------------------
Some community profiles allows to use point or linestring in
gmd:EX_BoundingPolygon element. Those type of geometry are not indexed or
displayed for the time being.

Example:
{{{
<gmd:geographicElement>
<gmd:EX_BoundingPolygon>
         <!-- Example for geometry with multiple points: -->
         <gmd:polygon>
                 <gml:MultiPoint gml:id="mp01">
                         <gml:pointMember>
                                 <gml:Point gml:id="point01">
                                         <gml:description>This is the
description</gml:description>
                                         <gml:identifier
codeSpace="http://www.seadatanet.org/urnurl/&quot;&gt;PT01&lt;/gml:identifier&gt;
                                         <gml:name>Point 1</gml:name>
                                         <gml:pos>35.47 -5.54</gml:pos>
                                 </gml:Point>
                         </gml:pointMember>
                         <gml:pointMember>
                                 <gml:Point gml:id="point02">
                                         <gml:description/>
                                         <gml:identifier
codeSpace="http://www.seadatanet.org/urnurl/&quot;&gt;PT02&lt;/gml:identifier&gt;
                                         <gml:name>Point 2</gml:name>
                                         <gml:pos>36.15 -5.54</gml:pos>
                                 </gml:Point>
                         </gml:pointMember>
                 </gml:MultiPoint>
         </gmd:polygon>
         <!-- Example for geometry with multiple tracks: -->
         <!--
         <gmd:polygon>
                 <gml:MultiCurve gml:id="mc01">
                         <gml:curveMember>
                                 <gml:LineString gml:id="ls01">
                                         <gml:description>This is line
1</gml:description>
                                         <gml:name xmlns=""
codeSpace="http://www.seadatanet.org/urnurl/&quot;&gt;line1&lt;/gml:name&gt;
                                         <gml:posList>-68.548849 73.889864
-61.408617 72.824456 -58.026401 68.136664 -56.523193 62.38344 -49.007153
59.400296</gml:posList>
                                 </gml:LineString>
                         </gml:curveMember>
                         <gml:curveMember>
                                 <gml:LineString gml:id="ls02">
                                         <gml:description>This is line
2</gml:description>
                                         <gml:name xmlns=""
codeSpace="http://www.seadatanet.org/urnurl/&quot;&gt;line2&lt;/gml:name&gt;
                                         <gml:posList>112.963503 17.636232
114.842479 14.866168 114.842479 11.030688 111.084463 8.473704 106.574831
5.916728</gml:posList>
                                 </gml:LineString>
                         </gml:curveMember>
                         <gml:curveMember>
                                 <gml:LineString gml:id="ls03">
                                         <gml:description>This is line
3</gml:description>
                                         <gml:name xmlns=""
codeSpace="http://www.seadatanet.org/urnurl/&quot;&gt;line3&lt;/gml:name&gt;
                                         <gml:posList>-76.816333 -36.777203
-77.192141 -43.722611 -80.198605 -47.195299 -78.319565 -50.400867
-74.561741 -54.674947 -70.052045 -57.079131</gml:posList>
                                 </gml:LineString>
                         </gml:curveMember>
                 </gml:MultiCurve>
         </gmd:polygon>
         -->
         <!-- Example for geometry with multiple surfaces: -->
         <!--
         <gmd:polygon>
                 <gml:MultiSurface gml:id="ms01">
                         <gml:surfaceMember>
                                 <gml:Polygon gml:id="pol01">
<gml:description></gml:description>
                                         <gml:identifier
codeSpace="http://www.seadatanet.org/urnurl/&quot;&gt;surf01&lt;/gml:identifier&gt;
                                         <gml:name>Surface 1</gml:name>
                                         <gml:exterior>
                                                 <gml:LinearRing>
                                                         <gml:posList>36.1
-4.44 37.3 -4.44 37.3 -3.61 36.1 -3.61 36.1 -4.44</gml:posList>
                                                 </gml:LinearRing>
                                         </gml:exterior>
                                 </gml:Polygon>
                         </gml:surfaceMember>
                         <gml:surfaceMember>
                                 <gml:Polygon gml:id="pol02">
<gml:description></gml:description>
                                         <gml:identifier
codeSpace="http://www.seadatanet.org/urnurl/&quot;&gt;surf02&lt;/gml:identifier&gt;
                                         <gml:name>Surface 2</gml:name>
                                         <gml:exterior>
                                                 <gml:LinearRing>
                                                         <gml:posList>35 5
36 5 36 6 35 6 35 5</gml:posList>
                                                 </gml:LinearRing>
                                         </gml:exterior>
                                 </gml:Polygon>
                         </gml:surfaceMember>
                 </gml:MultiSurface>
         </gmd:polygon>
         -->
</gmd:EX_BoundingPolygon>
</gmd:geographicElement>
}}}
In the example, point and curve are not supported, multiSurface is.

  * In view mode, add support to draw those types of features
  * In edit mode, add support to create those types of features
  * Indexing: Those type of element could not be added to an ESRI shapefile
(ie. mix of geometry types) but could be handled with PostGIS spatial
index.

--
Ticket URL: <http://trac.osgeo.org/geonetwork/ticket/694&gt;
GeoNetwork opensource Developer website <http://sourceforge.net/projects/geonetwork/&gt;
GeoNetwork opensource is a standards based, Free and Open Source catalog application to manage spatially referenced resources through the web. It provides powerful metadata editing and search functions as well as an embedded interactive web map viewer. This website contains information related to the development of the software.