locationName, locationReference FeaturePropertyType, FeatureArrayPropertyType

48 Copyright © 2007 Open Geospatial Consortium, Inc. All Rights Reserved. complexType name=FeaturePropertyType sequence minOccurs=0 element ref=gml:AbstractFeature sequence attributeGroup ref=gml:OwnershipAttributeGroup attributeGroup ref=gml:AssociationAttributeGroup complexType At times it is useful to define a property containing an array of other features. This is done using a feature array property type as defined by the following content model: complexType name=FeatureArrayPropertyType sequence minOccurs=0 maxOccurs=unbounded element ref=gml:AbstractFeature sequence complexType

9.5 Geometry properties

Application-specific names shall be chosen for geometry properties in GML application schemas. The names of the properties should be chosen to express the semantics of the value. Using application specific names is the preferred method for names of properties including geometry properties. There are no inherent restrictions in the type of geometry property a feature type may have as long as the property value is a geometry object substitutable for gml:AbstractGeometry. EXAMPLE 1 A RadioTower feature type could have a location that returns a point geometry to identify its location through a representative point, and have another geometry property called floorSpace that returns a surface geometry describing its physical structure, and have yet a third geometry property called serviceArea that returns a surface geometry describing the area in which its transmissions can be received reliably. complexType name=RadioTowerType complexContent extension base=gml:AbstractFeatureType sequence element name=location type=gml:PointPropertyType element name=floorSpace type=gml:SurfacePropertyType element name=serviceArea type=gml:SurfacePropertyType -- … -- sequence extension complexContent complexType The GML schema includes predefined property types that may be used as types of geometry property element. Copyright © 2007 Open Geospatial Consortium, Inc. All Rights Reserved. 49 Table 4 — Predefined geometry property types XML Schema property type Associated geometry object types element names PointPropertyType Point CurvePropertyType AbstractCurve LineString Curve OrientableCurve CompositeCurve SurfacePropertyType AbstractSurface Polygon Surface OrientableSurface CompositeSurface SolidPropertyType AbstractSolid Solid CompositeSolid MultiPointPropertyType MultiPoint MultiCurvePropertyType MultiCurve MultiSurfacePropertyType MultiSurface MultiSolidPropertyType MultiSolid MultiGeometryPropertyType MultiGeometry PointArrayPropertyType Points CurveArrayPropertyType AbstractCurves LineStrings Curves OrientableCurves CompositeCurves SurfaceArrayPropertyType AbstractSurfaces Polygons Surfaces OrientableSurfaces CompositeSurfaces SolidArrayPropertyType AbstractSolids Solids CompositeSolids