Opened 13 years ago

#694 new enhancement

Do not support only Polygon in gmd:EX_BoundingPolygon

Reported by: fxp Owned by: geonetwork-devel@…
Priority: major Milestone: Future release
Component: General Version:
Keywords: Cc:

Description

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/">PT01</gml:identifier>
					<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/">PT02</gml:identifier>
					<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/">line1</gml:name>
					<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/">line2</gml:name>
					<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/">line3</gml:name>
					<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/">surf01</gml:identifier>
					<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/">surf02</gml:identifier>
					<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.

Change History (0)

Note: See TracTickets for help on using tickets.