Interface AttributeType<V>

Type Parameters:
V - the type of attribute values. If the attribute supports multi-occurrences, then this is the type of elements (not the collection type).
All Superinterfaces:
IdentifiedType, PropertyType
All Known Subinterfaces:
DynamicAttributeType<V>

@Classifier(METACLASS) @UML(identifier="AttributeType", specification=ISO_19109) public interface AttributeType<V> extends PropertyType
Definition of an attribute in a feature type. The name of attribute type is mandatory. The name scope is typically the name of the feature type containing this attribute, but this is not mandatory. The scope could also be defined by the ontology for example.
Note: compared to the Java language, AttributeType is equivalent to Field while FeatureType is equivalent to Class.

Value type

Attributes can be used for both spatial and non-spatial properties. Some examples are:
Attribute value type examples
Attribute name Value type
Building shape Geometry
Building owner Responsibility
Horizontal accuracy PositionalAccuracy

Attribute characterization

An Attribute can be characterized by other attributes. For example, an attribute that carries a measurement (e.g. air temperature) may have another attribute that holds the measurement accuracy (e.g. ±0.1°C). Such accuracy can be stored as a characteristic of the measurement attribute.

The characteristics() method in this AttributeType interface returns a description of all characteristics that attributes of this type may have. The actual characteristics values can be stored on a record-by-record basis in the Attribute.characteristics() map. However, in the common case of characteristics having a constant value for all records in a dataset, the constant can be given by the characteristic default value and Attribute.characteristics() may return an empty map (at implementation choice).

Since:
3.1
See Also: