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