- All Superinterfaces:
- All Known Subinterfaces:
public interface Aggregate extends ResourceA collection of resources. An aggregate can have any number of components. Each component can be another aggregate, thus forming a tree of resources. Different kinds of aggregate may exist for various reasons, for example (adapted from ISO 19115):
- Series: a generic collection of resources that share similar characteristics
(theme, date, resolution, etc.). The exact definition is determined by the data provider.
ScopeCode.SERIESfor more examples.
- Sensor series: a collection of resources observed by the same sensor.
- Platform series: a collection of resources observed by sensors installed on the same platform. The components of a platform series are sensor series. Those components usually share the same geospatial geometry.
- Production series: a collection of resources produced using the same process. Members of a production series share lineage and processing history.
- Initiative: a collection of resources related by their participation in a common initiative.
- Transfer aggregate: a set of resources collected for the purpose of transfer. The components may be the results of an ad hoc query, for example on a Web Service.
DataStoreinstances.MetadataAggregates should have
ScopeCode.INITIATIVEif applicable. If not too expensive to compute, the names of all components should be listed as associated resources with an
Defined in the
Collection<? extends Resource> components() throws DataStoreExceptionReturns the children resources of this aggregate. The returned collection contains the resources listed by their name in the following metadata elements. The returned collection may contain more resources if the metadata are incomplete, and the resources do not need to be in the same order:
The name of each child resource in the returned collection is given by the following metadata element:
titleLazy resource instantiationIf the collection instantiates components only when first needed, and if a checked exception occurs during invocation of a
Iteratormethod, then the collection or the iterator should wrap the exception in a
- all children resources that are components of this aggregate. Never
DataStoreException- if an error occurred while fetching the components.