User-defined dictionary types Schemas defining dictionaries and definitions

238 Copyright © 2007 Open Geospatial Consortium, Inc. All Rights Reserved. Authors of application schemas may create their own dictionary types if GML lacks the desired construct. To do this, authors shall ensure that the object elements of these definition types are in the substitution group either directly or indirectly of the corresponding GML object element: gml:Dictionary. All rules specified in Clauses 7 and 15 shall be followed.

21.11 Schemas defining values

21.11.1 Introduction

GML allows for user defined value types. Such value types may be used to express the property types of feature and other types of GML object. The basic root types for user-defined values are defined in 7.2.2.1. An alternative form for the expression of values is contained in 16.4. This is used mainly to provide values for the gml:resultOf parameter for an observation.

21.11.2 Import GML value objects schema components

The application schema shall import the GML schema as described in 21.2.3. Any GML profile referenced from the application schema shall include at least the gml:Value group and all schema components used by this element.

21.11.3 Construction of new value types

New value types may be created by derivation typically by restriction from any of the root types shown in Table 9. Table 9 — Construction of new value types Content model Description gml:MeasureType A numerical quantity with a unit of measure uom gml:CategoryType A classification gml:CountType A count of occurrences, incidences etc. Some standard value types can be found in the schema components specified in 16.3.

21.12 GML profiles of the GML schema

Typically a GML application schema will only require a limited subset of the schema components of the GML schema. It is recommended to identify and document the GML profile, see Clause 20, required by a GML application schema. Subclauses 21.3 to 21.11 contain some guidelines which schema components may be required depending on the type of the GML application schema. NOTE 1 Annex G contains a method to automatically create a GML profile based on a list of schema components explicitly required by a GML application schema. As a starting point, consider the following guidelines: a In an application schema modelling geographic features, gml:AbstractFeature and all schema components required by this element are required. See Clause 9. Copyright © 2007 Open Geospatial Consortium, Inc. All Rights Reserved. 239 b In an application schema modelling also feature collections, gml:AbstractFeatureMemberType and gml:AggregationAttributeGroup are required, too, as well as all schema components required by them. See Clause 7. c If the features have properties which make use of units of measure, gml:MeasureType and all specific subtypes, e.g. gml:LengthType, are required as well as all schema components required by them see Clause 8. gml:BaseUnit, gml:DerivedUnit, andor gml:ConventionalUnit and all schema components required by them, see Clause 16 are not required unless the application is defining units of measure such as appear in a units of measure dictionary. d If the application schema uses 0-dimensional spatial geometries, gml:Point is required and all schema components required by it. See Clause 10. e If the application schema uses only simple 1-dimensional spatial geometries with linear interpolation, only gml:LineString is required and all schema components required by it. See Clause 10. f If the application schema uses additional interpolation types, gml:Curve and any number of curve segments depending on the application but at least one are required. Again, this includes all schema components required by these elements. See 10.5.10. g If the application schema uses only simple 2-dimensional spatial geometries with linear interpolation along their boundaries without sharing boundary elements, only gml:Polygon and gml:LinearRing are required and all schema components required by them. See Clause 10. h If the application schema uses additional interpolation types or surface patches, gml:Surface and any number of surface patches depending on the application but at least one are required. If surfaces shall share geometric primitives along their boundaries, gml:Ring is required, too. Again, this includes all schema components required by these elements. See 10.5.10. i If the application schema uses 3-dimensional spatial geometries, gml:Solid is required and all schema components required by it. See 10.5.10. j The geometric aggregates schema components described in Clause 11 are required only, if the features use geometric objects that are collections of geometric primitives in their spatial properties. k The geometric complex and composites schema components described in Clause 11 are required only, if the features use geometric complexes in their spatial properties. l The topology schema components described in Clause 13 are required only, if the features have topology properties. m The Coordinate Reference System schema components described in Clause 12 are required only, if the application requires constructing or processing Coordinate Reference System dictionary entries and their supporting components. EXAMPLE 1 Prime Meridians, Geodetic Datums, etc. are supporting components. n The temporal schemas described in Clause 14 is required only, if the application schema is concerned with time dependent feature properties or dynamic features. o The coverage schema components described in Clause 19 are required only, if the application involves constructing or processing coverages. EXAMPLE 2 Remotely sensed images, aerial photographs, soil distribution, digital elevation models are typical coverages.