FT_Feature The Abstract Model for Feature, Feature Identifier, Identifier Scope,

3. The Abstract Model for Feature, Feature Identifier, Identifier Scope,

Identifier Change Registry, Feature Repository and Feature Collection

3.1. FT_Feature

3.1.1. FT_FeatureType

An FT_Feature is of one FT_FeatureType. An FT_Feature must yield its type on demand to an OpenGIS client in a ‘well known’ format. The term “well known” in this context means defined using some means commonly understandable by OpenGIS clients. This could be explicitly defined in the implementation specification but preferably some means available through the underlying distribution technology will be used . An FT_Feature may yield its type when demanded directly or by passing a reference to a ‘FT_FeatureType’ object.

3.1.2. FT_FeatureAttribute

An FT_Feature has associated FT_FeatureAttributes. Each FT_FeatureAttribute is has a value within the valid domain of the attribute. Names and types of FT_FeatureAttributes are defined by the classes in the AT_Attribute package they inherit from. The full range of sub-classes of AT_Attribute reflects the range of possible attribute types that can be used on features and relationships. AT_IntegerAttribute value : Integer from AT_Attribute AT_StringAttribute value : String from AT_Attribute AT_XXXXAttribute value : XXXX from AT_Attribute FT_IntegerFeatureAttribute FT_StringFeatureAttribute FT XXXXFeatureAttribute FT_FeatureAttribute Figure 3-1 The FT_FeatureAttribute A subset of the attributes of an FT_Feature may be geometric. This subset may, among other things, represent the spatial extent of the FT_Feature. This subset may be empty for FT_Features of some FT_FeatureTypes. In this specification, the UML takes precedence over text when the UML is more specific. The OpenGIS ® Abstract Specification Page 40 Volume 5: Topic 5: Features many others ....... The domain of type is an enumeration of datatypes that can be used for feature and relationship attributes. These are essentially an agreed set of simple datatypes together with some geometic datatypes. This is mirrored by the sub-classes of AT_Attribute. AT_AttributeType name : String type AT_Attribute AT_IntegerAttribute value : Integer AT_StringAttribute value : String AT_XXXXAttribute value : XXXX Figure 3-2 The AT_Attribute Package The OpenGIS ® Abstract Specification Page 41 Volume 5: Topic 5: Features the sub-class of FT_FeatureAttribute that is instantiated is defined by FT_FeatureAttributeType.type AT_AttributeType name : String type from AT_Attribute FT_FeatureAttributeTyp FT_FeatureType name : String 1 0.. +defines 1 +has attribute type 0.. FT_FeatureAttribute 1 0.. +has type 1 +has instance 0.. FT_Feature 1 0.. +has type 1 +has instance 0.. 1 +has attribute {cardinality is the same as FT_FeatureType.has attribute t } +the feature 1 Figure 3-3 The FT_FeatureType The OpenGIS ® Abstract Specification Page 42 Volume 5: Topic 5: Features

3.1.3. FT_FeatureIdentifier

An FT_Feature has a single identifier that is unique within a single FT_IdentifierScope and, in general, independent of the value of any or all of its associated attributes