Globally unique identifiers Informative

OpenGIS © Specification OGC 04-094 Copyright © Open Geospatial Consortium, Inc 2005 17 This string could be used as if it were fully opaque in many contexts, but it would be more useful if it were actually a URL or URN which could be used to directly access the object it identifies in the native format of the object. The encoding of the URL or URN would be entirely implementation-specific. One note on the use of URNs: not many implementations will actually be able to resolve and fetch data objects; it may be mostly only usable as a unique identifier string. Using a URL or URN is helpful for applications that need only simple access to the raw objects since no interface details need to be known. This mode of accessidentification is also helpful for integration with high-level XML technologies such as RDF or XSLT, and even for debugging purposes.

7.2 Feature state

A GML application schema provides the definition of features served by a WFS. Clause 8 describes how a client can request an XML document containing the GML application schema definition of one or more feature types served by a WFS. Such application schema definitions shall conform to the OpenGIS Geography Markup LanguageGML Implementation Specification, version 3.1.1 [2]. A client application uses the GML application schema definition of a feature type to refer to feature instances of that feature type, and to refer to the names and types of all the properties of those feature instances. The values of all properties of a feature instance constitute the state of that feature instance. A client application references feature instances by the name of their feature type and the names and values of feature properties. A client application asks a transactional WFS to alter the state of a feature through insert, update, and delete operation requests. Likewise, a client application uses the GML application schema definitions of XML identifiers for feature and feature property element types to refer to feature and feature property element instances and to access them using the GetGmlObject operation.

7.3 Property names

A web feature service refers to feature property names defined in a GML application schema. However, since the state of a feature must be expressed in GML and thus XML, the property names used by a web feature service must also be valid element and attribute names as described in the Extensible Markup Language XML 1.0 [5] specification. In addition, property names may be namespace qualified as described in Namespaces in XML [7] . The following definitions are taken from clauses 2 3 of that document: [4] NCName ::= Letter | _ NCNameChar An XML Name, minus the : [5] NCNameChar ::= Letter | Digit | . | - | _ | CombiningChar | Extender [6] QName ::= Prefix :? LocalPart [7] Prefix ::= NCName [8] LocalPart ::= NCName OpenGIS © Specification OGC 04-094 Copyright © Open Geospatial Consortium, Inc 2005 18 The definitions of the components Letter, Digit, CombiningChar and Extender are defined in annex B of [5]. Finally, note that the standard though not mandatory GML lexical pattern is for property names to be in lowerCamelCase [2]. Example Examples of valid property names are: age, Temperature, _KHz, myns:InWaterA_1M.wkbGeom Examples of invalid property names are: +Domain, 123_SomeName 7.4 Property references 7.4.1 Introduction As mentioned in the introduction, GML allows geographic features to have complex or aggregate non-geometric properties. A problem thus arises about how components of the complex value of such properties should be referenced in the various places where property references are required e.g. query and filter expressions. A WFS must use XPath [8] expressions, as defined in this document, for referencing the properties and components of the value of properties of a feature encoded as XML elements or attributes.

7.4.2 XPath expressions

The XML Path Language [8] specification is a language for addressing parts of a XML document, or in the case of this specification, for referencing XML elements and attributes within the description of a feature. This specification does not require a WFS implementation to support the full XPath language. In order to keep the implementation entry cost as low as possible, this specification mandates that a WFS implementation must support the following subset of the XPath language:

1. A WFS implementation must support abbreviated relative location paths.

2. Relative location paths are composed of one or more steps separated by the path separator ‘’. 3. The first step of a relative location path may correspond to the root element of the feature property being referenced or to the root element of the feature type with the next step corresponding to the root element of the feature property being referenced.