Package org.apache.sis.feature
package org.apache.sis.feature
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.
Naming
Each 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 hierarchy
The class hierarchy for feature types is derived from ISO 19109 specification. The class hierarchy for feature instances is closely related:Types | Instances |
---|---|
Identified type ├─ Feature type └─ Property type ├─ Attribute type ├─ Feature association role └─ Operation |
Object ├─ Feature (sparse or dense) └─ Property ├─ Attribute (singleton or multi-valued) └─ Feature association (singleton or multi-valued) |
Instantiation
Classes defined in this package are rarely instantiated directly (by anew
statement).
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.
Once a FeatureType
has been obtained, Feature
s can be instantiated by calls to the
FeatureType.newInstance()
method.
Once a Feature
instance has been obtained, Attribute
s can be instantiated indirectly
by calls to the Feature.setPropertyValue(…)
method.- Since:
- 0.5
- Version:
- 1.1
-
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.An association implementation which delegate its work to the parent feature.Specialization of
AssociationView
when the amount of values can be only zero or one.An attribute implementation which delegate its work to the parent feature.Specialization ofAttributeView
when the amount of values can be only zero or one.Implementation ofAbstractAttribute.characteristics()
map.Implementation of the map returned byDefaultAttributeType.characteristics()
.Finds a feature type common to all given types.Indicates the role played by the association between two features.Definition of an attribute in a feature type.Abstraction of a real-world phenomena.A feature in which most properties are expected to be provided.An operation computing the envelope that encompass all geometries found in a list of attributes.Formats features or feature types in a tabular format.Identifies the columns to include in the table formatted byFeatureFormat
.Thrown when a property value cannot be computed.A set of predefined operations expecting aFeature
as input and producing anAttribute
as output.Static methods working on features or attributes.Place-holder for an interface not available in GeoAPI 3.0.Field<V>Base class of property that can be stored in aAbstractFeature
instance.Base class of property types having a value and a multiplicity.Specifies whether trajectories are represented in a single moving feature instance or fragmented in distinct static feature instances.Thrown when a feature fails at least one conformance test.A link operation, which is like a redirection or an alias.An instance of an association role containing an arbitrary number of values.An instance of an attribute type containing an arbitrary number of values.A feature type identified only by its name.Place-holder for an interface not available in GeoAPI 3.0.A list containing 0 or 1 value.An attribute or association implementation which delegate its work to the parent feature.An instance of an association role containing at most one value.An instance of an attribute type containing at most one value.A feature in which only a small fraction of properties are expected to be provided.An operation concatenating the string representations of the values of multiple properties.A pseudo-converter returning the identifier of a feature.Provides validation methods to be shared by different implementations.