GeometryPropertyType GeometryArrayPropertyType Abstract geometry .1 AbstractGeometryType

58 Copyright © 2007 Open Geospatial Consortium, Inc. All Rights Reserved. The elements are always contained inline in the array property. Referencing geometry elements or arrays of geometry elements via XLinks is not supported. EXAMPLE All elements in a gml:GeometryArrayPropertyType are of the type gml:AbstractGeometryType including types derived from this abstract base type as long as the element is directly or indirectly substitutable for gml:AbstractGeometry. 10.1.4 Coordinate geometry, vectors and envelopes 10.1.4.1 DirectPositionType, pos complexType name=DirectPositionType simpleContent extension base=gml:doubleList attributeGroup ref=gml:SRSReferenceGroup extension simpleContent complexType element name=pos type=gml:DirectPositionType sch:pattern sch:rule context=gml:pos sch:assert test=notsrsDimension or srsNameThe presence of a dimension attribute implies the presence of the srsName attribute.sch:assert sch:assert test=notaxisLabels or srsNameThe presence of an axisLabels attribute implies the presence of the srsName attribute.sch:assert sch:assert test=notuomLabels or srsNameThe presence of an uomLabels attribute implies the presence of the srsName attribute.sch:assert sch:assert test=notuomLabels and notaxisLabels or uomLabels and axisLabelsThe presence of an uomLabels attribute implies the presence of the axisLabels attribute and vice versa.sch:assert sch:rule sch:pattern Direct position instances hold the coordinates for a position within some coordinate reference system CRS. Since direct positions, as data types, will often be included in larger objects such as geometry elements that have references to CRS, the srsName attribute will in general be missing, if this particular direct position is included in a larger element with such a reference to a CRS. In this case, the CRS is implicitly assumed to take on the value of the containing objects CRS. The attribute group gml:SRSReferenceGroup is described in 10.1.3.2. If no srsName attribute is given, the CRS shall be specified as part of the larger context this geometry element is part of, typically a geometric object like a point, curve, etc. NOTE It is expected that the attribute will be specified at the direct position level only in rare cases. D.2.3.4 specifies the implementation of ISO 19107 DirectPosition by these schema components.

10.1.4.2 DirectPositionListType, posList

complexType name=DirectPositionListType simpleContent extension base=gml:doubleList attributeGroup ref=gml:SRSReferenceGroup attribute name=count type=positiveInteger extension simpleContent complexType Copyright © 2007 Open Geospatial Consortium, Inc. All Rights Reserved. 59 element name=posList type=gml:DirectPositionListType gml:posList instances and other instances with the content model specified by DirectPositionListType hold the coordinates for a sequence of direct positions within the same coordinate reference system CRS. The attribute group ―SRSReferenceGroup‖ is described in 10.1.3.2. If no srsName attribute is given, the CRS shall be specified as part of the larger context this geometry element is part of, typically a geometric object like a point, curve, etc. NOTE It is expected that the attribute srsName will be specified at the direct position level only in rare cases. The optional attribute count specifies the number of direct positions in the list. If the attribute count is present then the attribute srsDimension shall be present, too. The number of entries in the list is equal to the product of the dimensionality of the coordinate reference system i.e. it is a derived value of the coordinate reference system definition and the number of direct positions. D.2.3.4 specifies the implementation of ISO 19107 GM_PointArray using direct positions only by these schema components.

10.1.4.3 geometricPositionGroup

group name=geometricPositionGroup choice element ref=gml:pos element ref=gml:pointProperty choice group GML supports two different ways to specify a geometric position: either by a direct position a data type or a point a geometric object. gml:pos elements are position s that are ―owned‖ by the geometric primitive encapsulating this geometric position. gml:pointProperty elements contain a point that may be referenced from other geometry elements or reference another point defined elsewhere reuse of existing points. D.2.3.4 specifies the implementation of ISO 19107 GM_Position by this choice group.

10.1.4.4 geometricPositionListGroup

group name=geometricPositionListGroup choice element ref=gml:posList group ref=gml:geometricPositionGroup maxOccurs=unbounded choice group GML supports two different ways to specify a list of geometric positions: either by a sequence of geometric positions by reusing the group definition or a sequence of direct positions element gml:posList. The gml:posList element allows for a compact way to specify the coordinates of the positions, if all positions are represented in the same coordinate reference system.