dictionary

Table of Contents

top

Schema Document Properties

Target Namespacehttp://www.opengis.net/gml
Version3.2.0
Element and Attribute Namespaces
  • Global element and attribute declarations belong to this schema's target namespace.
  • By default, local element declarations belong to this schema's target namespace.
  • By default, local attribute declarations have no namespace.
Schema Composition
  • This schema includes components from the following schema document(s):
DocumentationSee ISO/DIS 19136 Clause 16. Many applications require definitions of terms which are used within instance documents as the values of certain properties or as reference information to tie properties to standard information values in some way. Units of measure and descriptions of measurable phenomena are two particular examples. It will often be convenient to use definitions provided by external authorities. These may already be packaged for delivery in various ways, both online and offline. In order that they may be referred to from GML documents it is generally necessary that a URI be available for each definition. Where this is the case then it is usually preferable to refer to these directly. Alternatively, it may be convenient or necessary to capture definitions in XML, either embedded within an instance document containing features or as a separate document. The definitions may be transcriptions from an external source, or may be new definitions for a local purpose. In order to support this case, some simple components are provided in GML in the form of - a generic gml:Definition, which may serve as the basis for more specialized definitions - a generic gml:Dictionary, which allows a set of definitions or references to definitions to be collected These components may be used directly, but also serve as the basis for more specialised definition elements in GML, in particular: coordinate operations, coordinate reference systems, datums, temporal reference systems, and units of measure. Note that the GML definition and dictionary components implement a simple nested hierarchy of definitions with identifiers. The latter provide handles which may be used in the description of more complex relationships between terms. However, the GML dictionary components are not intended to provide direct support for complex taxonomies, ontologies or thesauri. Specialised XML tools are available to satisfy the more sophisticated requirements.
Application Datadictionary.xsd
More information at: urn:opengis:specification:gml:schema-xsd:dictionary:v3.2.0.

Declared Namespaces

PrefixNamespace
Default namespacehttp://www.w3.org/2001/XMLSchema
xmlhttp://www.w3.org/XML/1998/namespace
gmlhttp://www.opengis.net/gml
Schema Component Representation
<schema targetNamespace="http://www.opengis.net/gml" elementFormDefault="qualified" version="3.2.0">
<include schemaLocation="gmlBase.xsd"/>
...
</schema>
top

Global Declarations

Element: Definition

NameDefinition
Typegml:DefinitionType
Nillableno
Abstractno
DocumentationThe basic gml:Definition element specifies a definition, which can be included in or referenced by a dictionary. The content model for a generic definition is a derivation from gml:AbstractGMLType. The gml:description property element shall hold the definition if this can be captured in a simple text string, or the gml:descriptionReference property element may carry a link to a description elsewhere. The gml:identifier element shall provide one identifier identifying this definition. The identifier shall be unique within the dictionaries using this definition. The gml:name elements shall provide zero or more terms and synonyms for which this is the definition. The gml:remarks element shall be used to hold additional textual information that is not conceptually part of the definition but is useful in understanding the definition.
XML Instance Representation
<gml:Definition
gml:id="[1]">
<gml:metaDataProperty> ... </gml:metaDataProperty> [0..*]
<gml:description> ... </gml:description> [0..1]
<gml:descriptionReference> ... </gml:descriptionReference> [0..1]
<gml:identifier> ... </gml:identifier> [1]
<gml:name> ... </gml:name> [0..*]
<gml:remarks> ... </gml:remarks> [0..1]
</gml:Definition>
Schema Component Representation
<element name="Definition" type="gml:DefinitionType" substitutionGroup="gml:AbstractGML"/>
top

Element: DefinitionCollection

  • This element can be used wherever the following element is referenced:
NameDefinitionCollection
Typegml:DictionaryType
Nillableno
Abstractno
Application Datadeprecated
XML Instance Representation
<gml:DefinitionCollection
gml:id="[1]"
aggregationType="gml:AggregationType [0..1]">
<gml:metaDataProperty> ... </gml:metaDataProperty> [0..*]
<gml:description> ... </gml:description> [0..1]
<gml:descriptionReference> ... </gml:descriptionReference> [0..1]
<gml:identifier> ... </gml:identifier> [1]
<gml:name> ... </gml:name> [0..*]
<gml:remarks> ... </gml:remarks> [0..1]
Start Choice [0..*]
<gml:dictionaryEntry> ... </gml:dictionaryEntry> [1]
<gml:indirectEntry> ... </gml:indirectEntry> [1]
End Choice
</gml:DefinitionCollection>
Schema Component Representation
<element name="DefinitionCollection" type="gml:DictionaryType" substitutionGroup="gml:Definition"/>
top

Element: DefinitionProxy

  • This element can be used wherever the following element is referenced:
NameDefinitionProxy
Typegml:DefinitionProxyType
Nillableno
Abstractno
Application Datadeprecated
XML Instance Representation
<gml:DefinitionProxy
gml:id="[1]">
<gml:metaDataProperty> ... </gml:metaDataProperty> [0..*]
<gml:description> ... </gml:description> [0..1]
<gml:descriptionReference> ... </gml:descriptionReference> [0..1]
<gml:identifier> ... </gml:identifier> [1]
<gml:name> ... </gml:name> [0..*]
<gml:remarks> ... </gml:remarks> [0..1]
<gml:definitionRef> ... </gml:definitionRef> [1]
</gml:DefinitionProxy>
Schema Component Representation
<element name="DefinitionProxy" type="gml:DefinitionProxyType" substitutionGroup="gml:Definition"/>
top

Element: Dictionary

  • This element can be used wherever the following element is referenced:
NameDictionary
Typegml:DictionaryType
Nillableno
Abstractno
DocumentationSets of definitions may be collected into dictionaries or collections. A gml:Dictionary is a non-abstract collection of definitions. The gml:Dictionary content model adds a list of gml:dictionaryEntry properties that contain or reference gml:Definition objects. A database handle (gml:id attribute) is required, in order that this collection may be referred to. The standard gml:identifier, gml:description, gml:descriptionReference and gml:name properties are available to reference or contain more information about this dictionary. The gml:description and gml:descriptionReference property elements may be used for a description of this dictionary. The derived gml:name element may be used for the name(s) of this dictionary. for remote definiton references gml:dictionaryEntry shall be used. If a Definition object contained within a Dictionary uses the descriptionReference property to refer to a remote definition, then this enables the inclusion of a remote definition in a local dictionary, giving a handle and identifier in the context of the local dictionary.
XML Instance Representation
<gml:Dictionary
gml:id="[1]"
aggregationType="gml:AggregationType [0..1]">
<gml:metaDataProperty> ... </gml:metaDataProperty> [0..*]
<gml:description> ... </gml:description> [0..1]
<gml:descriptionReference> ... </gml:descriptionReference> [0..1]
<gml:identifier> ... </gml:identifier> [1]
<gml:name> ... </gml:name> [0..*]
<gml:remarks> ... </gml:remarks> [0..1]
Start Choice [0..*]
<gml:dictionaryEntry> ... </gml:dictionaryEntry> [1]
<gml:indirectEntry> ... </gml:indirectEntry> [1]
End Choice
</gml:Dictionary>
Schema Component Representation
<element name="Dictionary" type="gml:DictionaryType" substitutionGroup="gml:Definition"/>
top

Element: definitionMember

NamedefinitionMember
Typegml:DictionaryEntryType
Nillableno
Abstractno
Application Datadeprecated
XML Instance Representation
<gml:definitionMember
owns="boolean [0..1]"
xlink:type="simple [0..1]"
xlink:href="[0..1]"
xlink:role="[0..1]"
xlink:arcrole="[0..1]"
xlink:title="[0..1]"
xlink:show="[0..1]"
xlink:actuate="[0..1]"
nilReason="gml:NilReasonType [0..1]"
gml:remoteSchema="[0..1]">
Start Sequence [0..1]
<gml:Definition> ... </gml:Definition> [1]
End Sequence
</gml:definitionMember>
Schema Component Representation
<element name="definitionMember" type="gml:DictionaryEntryType" substitutionGroup="gml:dictionaryEntry"/>
top

Element: definitionRef

NamedefinitionRef
Typegml:ReferenceType
Nillableno
Abstractno
Application Datadeprecated
XML Instance Representation
<gml:definitionRef
owns="boolean [0..1]"
xlink:type="simple [0..1]"
xlink:href="[0..1]"
xlink:role="[0..1]"
xlink:arcrole="[0..1]"
xlink:title="[0..1]"
xlink:show="[0..1]"
xlink:actuate="[0..1]"
nilReason="gml:NilReasonType [0..1]"
gml:remoteSchema="[0..1]"/>
Schema Component Representation
<element name="definitionRef" type="gml:ReferenceType"/>
top

Element: dictionaryEntry

  • The following elements can be used wherever this element is referenced:
NamedictionaryEntry
Typegml:DictionaryEntryType
Nillableno
Abstractno
DocumentationThis property element contains or refers to the definitions which are members of a dictionary. The content model follows the standard GML property pattern, so a gml:dictionaryEntry may either contain or refer to a single gml:Definition. Since gml:Dictionary is substitutable for gml:Definition, the content of an entry may itself be a lower level dictionary. Note that if the value is provided by reference, this definition does not carry a handle (gml:id) in this context, so does not allow external references to this specific definition in this context. When used in this way the referenced definition will usually be in a dictionary in the same XML document.
XML Instance Representation
<gml:dictionaryEntry
owns="boolean [0..1]"
xlink:type="simple [0..1]"
xlink:href="[0..1]"
xlink:role="[0..1]"
xlink:arcrole="[0..1]"
xlink:title="[0..1]"
xlink:show="[0..1]"
xlink:actuate="[0..1]"
nilReason="gml:NilReasonType [0..1]"
gml:remoteSchema="[0..1]">
Start Sequence [0..1]
<gml:Definition> ... </gml:Definition> [1]
End Sequence
</gml:dictionaryEntry>
Schema Component Representation
<element name="dictionaryEntry" type="gml:DictionaryEntryType"/>
top

Element: indirectEntry

NameindirectEntry
Typegml:IndirectEntryType
Nillableno
Abstractno
Application Datadeprecated
XML Instance Representation
<gml:indirectEntry>
<gml:DefinitionProxy> ... </gml:DefinitionProxy> [1]
</gml:indirectEntry>
Schema Component Representation
<element name="indirectEntry" type="gml:IndirectEntryType"/>
top

Element: remarks

Nameremarks
Typestring
Nillableno
Abstractno
XML Instance Representation
<gml:remarks> string </gml:remarks>
Schema Component Representation
<element name="remarks" type="string"/>
top

Global Definitions

Complex Type: DefinitionBaseType

Super-types:gml:AbstractGMLType < DefinitionBaseType (by restriction)
Sub-types:
NameDefinitionBaseType
Abstractno
XML Instance Representation
<...
gml:id="[1]">
<gml:description> ... </gml:description> [0..1]
<gml:name> ... </gml:name> [0..*]
</...>
Schema Component Representation
<complexType name="DefinitionBaseType">
<complexContent>
<restriction base="gml:AbstractGMLType">
<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"/>
<element ref="gml:name" minOccurs="0" maxOccurs="unbounded"/>
</sequence>
<attribute ref="gml:id" use="required"/>
</restriction>
</complexContent>
</complexType>
top

Complex Type: DefinitionProxyType

Super-types:gml:AbstractGMLType < DefinitionBaseType (by restriction) < DefinitionType (by extension) < DefinitionProxyType (by extension)
Sub-types:None
NameDefinitionProxyType
Abstractno
Application Datadeprecated
XML Instance Representation
<...
gml:id="[1]">
<gml:description> ... </gml:description> [0..1]
<gml:name> ... </gml:name> [0..*]
<gml:remarks> ... </gml:remarks> [0..1]
</...>
Schema Component Representation
<complexType name="DefinitionProxyType">
<complexContent>
<extension base="gml:DefinitionType">
<sequence>
<element ref="gml:definitionRef"/>
</sequence>
</extension>
</complexContent>
</complexType>
top

Complex Type: DefinitionType

Super-types:gml:AbstractGMLType < DefinitionBaseType (by restriction) < DefinitionType (by extension)
Sub-types:
NameDefinitionType
Abstractno
XML Instance Representation
<...
gml:id="[1]">
<gml:description> ... </gml:description> [0..1]
<gml:name> ... </gml:name> [0..*]
<gml:remarks> ... </gml:remarks> [0..1]
</...>
Schema Component Representation
<complexType name="DefinitionType">
<complexContent>
<extension base="gml:DefinitionBaseType">
<sequence>
<element ref="gml:remarks" minOccurs="0"/>
</sequence>
</extension>
</complexContent>
</complexType>
top

Complex Type: DictionaryEntryType

Super-types:gml:AbstractMemberType < DictionaryEntryType (by extension)
Sub-types:None
NameDictionaryEntryType
Abstractno
XML Instance Representation
<...
owns="boolean [0..1]"
xlink:type="simple [0..1]"
xlink:href="[0..1]"
xlink:role="[0..1]"
xlink:arcrole="[0..1]"
xlink:title="[0..1]"
xlink:show="[0..1]"
xlink:actuate="[0..1]"
nilReason="gml:NilReasonType [0..1]"
gml:remoteSchema="[0..1]">
Start Sequence [0..1]
End Sequence
</...>
Schema Component Representation
<complexType name="DictionaryEntryType">
<complexContent>
<extension base="gml:AbstractMemberType">
<sequence minOccurs="0">
<element ref="gml:Definition"/>
</sequence>
<attributeGroup ref="gml:AssociationAttributeGroup"/>
</extension>
</complexContent>
</complexType>
top

Complex Type: DictionaryType

Super-types:gml:AbstractGMLType < DefinitionBaseType (by restriction) < DefinitionType (by extension) < DictionaryType (by extension)
Sub-types:None
NameDictionaryType
Abstractno
XML Instance Representation
<...
gml:id="[1]"
aggregationType="gml:AggregationType [0..1]">
<gml:description> ... </gml:description> [0..1]
<gml:name> ... </gml:name> [0..*]
<gml:remarks> ... </gml:remarks> [0..1]
Start Choice [0..*]
End Choice
</...>
Schema Component Representation
<complexType name="DictionaryType">
<complexContent>
<extension base="gml:DefinitionType">
<choice minOccurs="0" maxOccurs="unbounded">
<element ref="gml:dictionaryEntry"/>
<element ref="gml:indirectEntry"/>
</choice>
<attributeGroup ref="gml:AggregationAttributeGroup"/>
</extension>
</complexContent>
</complexType>
top

Complex Type: IndirectEntryType

Super-types:None
Sub-types:None
NameIndirectEntryType
Abstractno
Application Datadeprecated
XML Instance Representation
<...>
<gml:DefinitionProxy> ... </gml:DefinitionProxy> [1]
</...>
Schema Component Representation
<complexType name="IndirectEntryType">
<sequence>
<element ref="gml:DefinitionProxy"/>
</sequence>
</complexType>
top

Legend

Complex Type:

Schema Component Type

AusAddress

Schema Component Name
Super-types:Address < AusAddress (by extension)
Sub-types:
  • QLDAddress (by restriction)
If this schema component is a type definition, its type hierarchy is shown in a gray-bordered box.
NameAusAddress
Abstractno
The table above displays the properties of this schema component.
XML Instance Representation
<... country="Australia">
<unitNo> string </unitNo> [0..1]
<houseNo> string </houseNo> [1]
<street> string </street> [1]
Start Choice[1]
<city> string </city> [1]
<town> string </town> [1]
End Choice
<state> AusStates </state> [1]
<postcode> string <<pattern = [1-9][0-9]{3}>> </postcode> [1]?
</...>

The XML Instance Representation table above shows the schema component's content as an XML instance.

Schema Component Representation
<complexTypename="AusAddress">
<complexContent>
<extensionbase="Address">
<sequence>
<elementname="state" type="AusStates"/>
<elementname="postcode">
<simpleType>
<restrictionbase="string">
<patternvalue="[1-9][0-9]{3}"/>
</restriction>
</simpleType>
</element>
</sequence>
<attributename="country" type="string" fixed="Australia"/>
</extension>
</complexContent>
</complexType>
The Schema Component Representation table above displays the underlying XML representation of the schema component. (Annotations are not shown.)
top

Glossary

Abstract (Applies to complex type definitions and element declarations). An abstract element or complex type cannot used to validate an element instance. If there is a reference to an abstract element, only element declarations that can substitute the abstract element can be used to validate the instance. For references to abstract type definitions, only derived types can be used.

All Model Group Child elements can be provided in any order in instances. See: http://www.w3.org/TR/xmlschema-1/#element-all.

Choice Model Group Only one from the list of child elements and model groups can be provided in instances. See: http://www.w3.org/TR/xmlschema-1/#element-choice.

Collapse Whitespace Policy Replace tab, line feed, and carriage return characters with space character (Unicode character 32). Then, collapse contiguous sequences of space characters into single space character, and remove leading and trailing space characters.

Disallowed Substitutions (Applies to element declarations). If substitution is specified, then substitution group members cannot be used in place of the given element declaration to validate element instances. If derivation methods, e.g. extension, restriction, are specified, then the given element declaration will not validate element instances that have types derived from the element declaration's type using the specified derivation methods. Normally, element instances can override their declaration's type by specifying an xsi:type attribute.

Key Constraint Like Uniqueness Constraint, but additionally requires that the specified value(s) must be provided. See: http://www.w3.org/TR/xmlschema-1/#cIdentity-constraint_Definitions.

Key Reference Constraint Ensures that the specified value(s) must match value(s) from a Key Constraint or Uniqueness Constraint. See: http://www.w3.org/TR/xmlschema-1/#cIdentity-constraint_Definitions.

Model Group Groups together element content, specifying the order in which the element content can occur and the number of times the group of element content may be repeated. See: http://www.w3.org/TR/xmlschema-1/#Model_Groups.

Nillable (Applies to element declarations). If an element declaration is nillable, instances can use the xsi:nil attribute. The xsi:nil attribute is the boolean attribute, nil, from the http://www.w3.org/2001/XMLSchema-instance namespace. If an element instance has an xsi:nil attribute set to true, it can be left empty, even though its element declaration may have required content.

Notation A notation is used to identify the format of a piece of data. Values of elements and attributes that are of type, NOTATION, must come from the names of declared notations. See: http://www.w3.org/TR/xmlschema-1/#cNotation_Declarations.

Preserve Whitespace Policy Preserve whitespaces exactly as they appear in instances.

Prohibited Derivations (Applies to type definitions). Derivation methods that cannot be used to create sub-types from a given type definition.

Prohibited Substitutions (Applies to complex type definitions). Prevents sub-types that have been derived using the specified derivation methods from validating element instances in place of the given type definition.

Replace Whitespace Policy Replace tab, line feed, and carriage return characters with space character (Unicode character 32).

Sequence Model Group Child elements and model groups must be provided in the specified order in instances. See: http://www.w3.org/TR/xmlschema-1/#element-sequence.

Substitution Group Elements that are members of a substitution group can be used wherever the head element of the substitution group is referenced.

Substitution Group Exclusions (Applies to element declarations). Prohibits element declarations from nominating themselves as being able to substitute a given element declaration, if they have types that are derived from the original element's type using the specified derivation methods.

Target Namespace The target namespace identifies the namespace that components in this schema belongs to. If no target namespace is provided, then the schema components do not belong to any namespace.

Uniqueness Constraint Ensures uniqueness of an element/attribute value, or a combination of values, within a specified scope. See: http://www.w3.org/TR/xmlschema-1/#cIdentity-constraint_Definitions.

top