gmlsf.xsd GML 3.1.1 Simplified Features profile Levels 0 and 1. Copyright (c) 2006 Open Geospatial Consortium, Inc. All Rights Reserved. The "_GeometricAggregate" element is the abstract head of the substitution group for all geometric aggregates. This is the abstract root type of the geometric aggregates. A property that has a geometric aggregate as its value domain shall contain an appropriate geometry element encapsulated in an element of this type. A MultiPoint is defined by one or more Points, referenced through pointMember elements. A property that has a collection of points as its value domain shall contain an appropriate geometry element encapsulated in an element of this type. A MultiCurve is defined by one or more Curves, referenced through curveMember elements. A property that has a collection of curves as its value domain shall contain an appropriate geometry element encapsulated in an element of this type. A MultiSurface is defined by one or more Surfaces, referenced through surfaceMember elements. A property that has a collection of surfaces as its value domain shall contain an appropriate geometry element encapsulated in an element of this type. This property element contains the Point element. This property element contains the surface element. A surface element is any element which is substitutable for "_Surface". Curve is a 1-dimensional primitive. Curves are continuous, connected, and have a measurable length in terms of the coordinate system. A curve is composed of one or more curve segments. The curve segments are connected to one another, with the end point of each segment except the last being the start point of the next segment in the segment list. The orientation of the curve is positive. This element encapsulates the segments of the curve. The "_CurveSegment" element is the abstract head of the substituition group for all curve segment elements, i.e. continuous segments of the same interpolation mechanism. Curve segment defines a homogeneous segment of a curve. This property element contains a list of curve segments. The order of the elements is significant and shall be preserved when processing the array. A container for an array of curve segments. This property element contains the curve element. A curve element is any element which is substitutable for "_Curve". A LineStringSegment is a curve segment that is defined by two or more coordinate tuples, with linear interpolation between them. Note: LineStringSegment implements GM_LineString of ISO 19107. The attribute "interpolation" specifies the curve interpolation mechanism used for this segment. This mechanism uses the control points and control parameters to determine the position of this curve segment. For a LineStringSegment the interpolation is fixed as "linear". The "_SurfacePatch" element is the abstract head of the substituition group for all surface pach elements describing a continuous portion of a surface. A surface patch defines a homogenuous portion of a surface. This property element contains a list of surface patches. The order of the elements is significant and shall be preserved when processing the array. A container for an array of surface patches. A PolygonPatch is a surface patch that is defined by a set of boundary curves and an underlying surface to which these curves adhere. The curves are coplanar and the polygon uses planar interpolation in its interior. Implements GM_Polygon of ISO 19107. The attribute "interpolation" specifies the interpolation mechanism used for this surface patch. Currently only planar surface patches are defined in GML 3, the attribute is fixed to "planar", i.e. the interpolation method shall return points on a single plane. The boundary of the patch shall be contained within that plane. A Surface is a 2-dimensional primitive and is composed of one or more surface patches. The surface patches are connected to one another. The orientation of the surface is positive ("up"). The orientation of a surface chooses an "up" direction through the choice of the upward normal, which, if the surface is not a cycle, is the side of the surface from which the exterior boundary appears counterclockwise. Reversal of the surface orientation reverses the curve orientation of each boundary component, and interchanges the conceptual "up" and "down" direction of the surface. If the surface is the boundary of a solid, the "up" direction is usually outward. For closed surfaces, which have no boundary, the up direction is that of the surface patches, which must be consistent with one another. Its included surface patches describe the interior structure of the Surface. This element encapsulates the patches of the surface. CurveInterpolationType is a list of codes that may be used to identify the interpolation mechanisms specified by an schema. SurfaceInterpolationType is a list of codes that may be used to identify the interpolation mechanisms specified by an application schema. The "_Surface" element is the abstract head of the substituition group for all (continuous) surface elements. An abstraction of a surface to support the different levels of complexity. A surface is always a continuous region of a plane. A property that has a surface as its value domain shall contain an appropriate geometry element encapsulated in an element of this type. A Polygon is a special surface that is defined by a single surface patch. The boundary of this patch is coplanar and the polygon uses planar interpolation in its interior. It is backwards compatible with the Polygon of GML 2. A boundary of a surface consists of a number of rings. In the normal 2D case, one of these rings is distinguished as being the exterior boundary. In a general manifold this is not always possible, in which case all boundaries shall be listed as interior boundaries, and the exterior will be empty. A boundary of a surface consists of a number of rings. The "interior" rings seperate the surface / surface patch from the area enclosed by the rings. Encapsulates a ring to represent the surface boundary property of a surface. A LinearRing is defined by four or more coordinate tuples, with linear interpolation between them; the first and last coordinates must be coincident. The "posList" element provides a compact way to specifiy the coordinates of the control points, if all control points are in the same coordinate reference systems and belong to this ring only. The number of direct positions in the list must be at least four. The "_Geometry" element is the abstract head of the substituition group for all geometry elements of GML 3. This includes pre-defined and user-defined geometry elements. Any geometry element must be a direct or indirect extension/restriction of AbstractGeometryType and must be directly or indirectly in the substitution group of "_Geometry". A geometric property shall contain any geometry element encapsulated in an element of this type. All geometry elements are derived directly or indirectly from this abstract supertype. A geometry element may have an identifying attribute ("gml:id"), a name (attribute "name") and a description (attribute "description"). It may be associated with a spatial reference system (attribute "srsName"). The following rules shall be adhered: - Every geometry type shall derive from this abstract type. - Every geometry element (i.e. an element of a geometry type) shall be directly or indirectly in the substitution group of _Geometry. In general this reference points to a CRS instance of gml:CoordinateReferenceSystemType (see coordinateReferenceSystems.xsd). For well known references it is not required that the CRS description exists at the location the URI points to. If no srsName attribute is given, the CRS must be specified as part of the larger context this geometry element is part of, e.g. a geometric element like point, curve, etc. It is expected that this attribute will be specified at the direct position level only in rare cases. The "_GeometricPrimitive" element is the abstract head of the substituition group for all (pre- and user-defined) geometric primitives. This is the abstract root type of the geometric primitives. A geometric primitive is a geometric object that is not decomposed further into other primitives in the system. All primitives are oriented in the direction implied by the sequence of their coordinate tuples. A Point is defined by a single coordinate tuple. A property that has a point as its value domain shall contain an appropriate geometry element encapsulated in an element of this type. The "_Curve" element is the abstract head of the substituition group for all (continuous) curve elements. An abstraction of a curve to support the different levels of complexity. The curve can always be viewed as a geometric primitive, i.e. is continuous. A property that has a curve as its value domain shall contain an appropriate geometry element encapsulated in an element of this type. A LineString is a special curve that consists of a single segment with linear interpolation. It is defined by two or more coordinate tuples, with linear interpolation between them. It is backwards compatible with the LineString of GML 2. DirectPosition instances hold the coordinates for one position in the coordinate reference system (CRS) referenced in a larger element. In this case, the CRS shall be assumed to be the value referenced in the containing object's CRS. DirectPositionList instances hold the coordinates for a sequence of direct positions within the same coordinate reference system (CRS). Envelope defines an extent using a pair of positions defining opposite corners in arbitrary dimensions. The first direct position is the "lower corner" (a coordinate position consisting of all the minimal ordinates for each dimension for all points within the envelope), the second one the "upper corner" (a coordinate position consisting of all the maximal ordinates for each dimension for all points within the envelope). In general this reference points to a CRS instance of gml:CoordinateReferenceSystemType (see coordinateReferenceSystems.xsd). For well known references it is not required that the CRS description exists at the location the URI points to. An abstract feature provides a set of common properties, including id, name and description inherited from AbstractGMLType, plus boundedBy. A concrete feature type must derive from this type and specify additional properties in an application schema. A abstract feature base type, that shall include an identifying attribute ('id'). Bounding shape. This abstract element is the head of a substitutionGroup hierararchy which may contain either simpleContent or complexContent elements. It is used to assert the model position of "class" elements declared in other GML schemas. Global element which acts as the head of a substitution group that may include any element which is a GML feature, object, geometry or complex value This content model group makes it easier to construct types that derive from AbstractGMLType and its descendents "by restriction". A reference to the group saves having to enumerate the standard object properties. Multiple names may be provided. These will often be distinguished by being assigned by different authorities, as indicated by the value of the codeSpace attribute. In an instance document there will usually only be one name per authority. All complexContent GML elements are directly or indirectly derived from this abstract supertype to establish a hierarchy of GML types that may be distinguished from other XML types by their ancestry. Elements in this hierarchy must have an ID and are thus referenceable. A pattern or base for derived types used to specify complex types corresponding to a UML aggregation association. An instance of this type serves as a pointer to a remote Object. Database handle for the object. It is of XML type ID, so is constrained to be unique in the XML document within which it occurs. An external identifier for the object in the form of a URI may be constructed using standard XML and XPointer methods. This is done by concatenating the URI for the document, a fragment separator, and the value of the id attribute. Attribute group used to enable property elements to refer to their value remotely. It contains the simple link components from xlinks.xsd, with all members optional. These attributes can be attached to any element, thus allowing it to act as a pointer. Label for the object, normally a descriptive name. An object may have several names, typically assigned by different authorities. The authority for a name is indicated by the value of its (optional) codeSpace attribute. The name may or may not be unique, as determined by the rules of the organization responsible for the codeSpace. Contains a simple text description of the object. Restricted to only allow a text string, as done in GML 3.2. XML List based on XML Schema double type. An element of this type contains a space-separated list of double values Name or code with an (optional) authority. Text token. If the codeSpace attribute is present, then its value should identify a dictionary, thesaurus or authority for the term, such as the organisation who assigned the value, or the dictionary from which it is taken. A text string with an optional codeSpace attribute. Number with a scale. The value of uom (Units Of Measure) attribute is a reference to a Reference System for the amount, either a ratio or position scale. A set of values, representing a list of token with the lexical value space of NCName. The tokens are seperated by whitespace.