XML Schema definition of GML language

Copyright © 2007 Open Geospatial Consortium, Inc. All Rights Reserved. 23 NOTE The corresponding schema document in Annex C is identified by the following location-independent name using URN syntax: urn:x-ogc:specification:gml:schema-xsd:gmlBase:3.2.1 7.2.2 Base objects 7.2.2.1 AbstractObject An abstract convenience element gml:AbstractObject is declared as follows: element name=AbstractObject abstract=true This element has no type defined, and is therefore implicitly in accordance with the rules of W3C XML Schema an XML Schema anyType. It is used as the head of an XML Schema substitution group which unifies complex content and certain simple content elements used for datatypes in GML, including the gml:AbstractGML substitution group. NOTE gml:AbstractObject is defined primarily to act as a variable in certain aggregate patterns where it is necessary to allow either elements in the gml:AbstractGML substitution group, or certain complex content or simple content elements to be valid in an instance. A GML dataset also called a data instance or data document is represented by an object element. This object may in turn be a collection of GML objects.

7.2.2.2 AbstractGML, AbstractGMLType

The most basic components for representations of identifiable objects are described in the schema as follows: element name=AbstractGML type=gml:AbstractGMLType abstract=true substitutionGroup=gml:AbstractObject complexType name=AbstractGMLType abstract=true sequence group ref=gml:StandardObjectProperties sequence attribute ref=gml:id use=required complexType group name=StandardObjectProperties sequence element ref=gml:metaDataProperty minOccurs=0 maxOccurs=unbounded element ref=gml:description minOccurs=0 element ref=gml:descriptionReference minOccurs=0 element ref=gml:identifier minOccurs=0 element ref=gml:name minOccurs=0 maxOccurs=unbounded sequence group The abstract element gml:AbstractGML is ―any GML object having identity‖. It acts as the head of an XML Schema substitution group, which may include any element which is a GML feature, or other object, with identity. This is used as a variable in content models in GML core and application schemas. It is effectively an abstract superclass for all GML objects. The pairing of gml:AbstractGML and gml:AbstractGMLType shows a basic pattern used in the GML schema, whereby each GML object type is represented by a global element declaration, which has an associated XML Schema type definition. The name of an element representing a GML object indicates the conceptual meaning of