Defines the structure and content of views of real-world phenomenon. The phenomenon to represent (or a fundamental unit of information) is called a feature. The term “feature” may be used in different contexts:
- Feature types
Define the structure of real-world representations. A feature type lists the attributes, operations or associations to other features (collectively called “properties” or “characteristics”) that a feature can have.
- Feature instances (often called only Features)
Hold the content (or values) that describe one specific real-world object.Example: the “Eiffel tower” is a feature instance belonging to the “Tower” feature type.
- Simple features
Are instances of a feature type with no association to other features, and where all attributes have [1 … 1] multiplicity. Such simple features are very common.
NamingEach feature type has a name, which should be unique. Those names are the main criterion used for checking if a feature type is assignable from another type. Names can be scoped for avoiding name collision.
Class hierarchyThe class hierarchy for feature types is derived from ISO 19109 specification. The class hierarchy for feature instances is closely related:
├─ Feature type
└─ Property type
├─ Attribute type
├─ Feature association role
├─ Feature (sparse or dense)
├─ Attribute (singleton or multi-valued)
└─ Feature association (singleton or multi-valued)
InstantiationClasses defined in this package are rarely instantiated directly (by a
Instead, those classes are instantiated indirectly by invoking a method on a parent container,
or by using a builder. The starting point is
FeatureType, which may be created by a
FeatureTypeBuilder or may be provided by a
DataStore reading a data file.
FeatureType has been obtained,
Features can be instantiated by calls to the
Feature instance has been obtained,
Attributes can be instantiated indirectly
by calls to the
ClassDescriptionAn instance of an feature association role containing the associated feature.An instance of an attribute type containing the value of an attribute in a feature.An instance of a feature type containing values for a real-world phenomena.Identification and description information inherited by property types and feature types.Describes the behaviour of a feature type as a function or a method.Indicates the role played by the association between two features.Definition of an attribute in a feature type.Abstraction of a real-world phenomena.Identifies the columns to include in the table formatted by
FeatureFormat.A set of predefined operations expecting a
Featureas input and producing an
Attributeas output.Static methods working on features or attributes.Specifies whether trajectories are represented in a single moving feature instance or fragmented in distinct static feature instances.