Summary of rules for GML profiles

226 Copyright © 2007 Open Geospatial Consortium, Inc. All Rights Reserved. Note that this does not imply that all elements and attributes in the GML document are defined by a single GML application schema. The schema components referenced from the GML document may be contained in any number of GML application schemas or other XML Schemas.

21.1.2 GML object elements in other XML documents

Elements of GML objects may occur in XML documents that are not GML documents, too. The XML document shall validate against an XML Schema document that imports directly or indirectly the GML schema or a GML profile and optionally one or more GML application schemas. EXAMPLE GML object elements may be used in request and response messages of Web Services.

21.2 GML application schemas

21.2.1 Introduction

A GML application schema is an XML Schema, conforming to the rules outlined in this clause, which describes one or more types of geographic object, components of geographic objects or metadata, including dictionaries and definitions, used in the definition of geographic objects. A GML application schema defines a vocabulary for a particular domain of discourse by defining and describing the terms of that vocabulary see ISO 19109 as follows: An application schema may reference directly concrete, global GML elements including groups and attributes including attributeGroups whose names and content models accurately represent components of the vocabulary it defines. EXAMPLE 1 This includes property elements like gml:name or gml:description, object elements like gml:Observation, gml:Dictionary, or gml:Point, and attributes like gml:id. An application schema may declare new elements and attributes in its own namespace using GML types when the vocabulary it defines needs to include different names for the same content models to distinguish their semantic roles. The element declared in the application schema will be in a different namespace, and may be used in an instance document. EXAMPLE 2 gml:EnvelopeType may be used unmodified as the content model for an element xmml:Interval. EXAMPLE 3 gml:LengthType may be used unmodified as the content model for an element ex:height. EXAMPLE 4 gml:PointPropertyType may be used directly as the content model for a property element ex:representativePoint. An application schema may derive new types in its own namespace by extension of GML types when the vocabulary it defines needs to include components with additional, domain-specific properties. NOTE The definition of application-specific feature types requires that the content model of the feature types is derived from gml:AbstractFeatureType, typically by extension. EXAMPLE 5 The definition of new geometry types not specified in the GML schema, but required by an application, e.g. an ellipse. An application schema may derive new types in its own namespace by restriction of GML types when the vocabulary it defines needs to include more specialized versions of GML types that restrict the cardinality or type of their properties.