| java.lang.Object org.deegree.ogcwebservices.wfs.FeatureDisambiguator
FeatureDisambiguator | class FeatureDisambiguator (Code) | | Responsible for the normalization of feature collections that are going to be persisted (i.e.
inserted into a
org.deegree.io.datastore Datastore ). This is necessary, because it is up
to WFS clients whether feature ids (gml:id attribute) are provided in an insert/update request or
not.
After processing, the resulting feature collection meets the following requirements:
- Every member feature (and subfeature) has a unique feature id that disambiguates it. Note
that this id is only momentarily valid, and that the final feature id is generated by the
FeatureIdAssigner class in a later step.
- Features that are equal according to the annotated schema (deegreewfs:IdentityPart
declarations) are represented by the same feature instance.
- Complex feature properties use xlink to specify their content if necessary.
- Root features in the feature collection never use xlinks.
author: Markus Schneider author: last edited by: $Author: apoth $ version: $Revision: 9345 $, $Date: 2007-12-27 08:22:25 -0800 (Thu, 27 Dec 2007) $ |
Method Summary | |
boolean | checkForAnonymousFeatures() Checks if any anonymous features (without id) are present in the feature collection. | FeatureCollection | mergeFeatures() Merges all "equal" feature (and subfeature) instances in the associated feature collection
that do not have a feature id. |
FeatureDisambiguator | FeatureDisambiguator(FeatureCollection fc)(Code) | | Creates a new FeatureDisambiguator to disambiguate the given feature
collection.
Parameters: fc - feature collection to disambiguate |
checkForAnonymousFeatures | boolean checkForAnonymousFeatures()(Code) | | Checks if any anonymous features (without id) are present in the feature collection.
true, if one or more anonymous features are present, false otherwise |
mergeFeatures | FeatureCollection mergeFeatures() throws DatastoreException(Code) | | Merges all "equal" feature (and subfeature) instances in the associated feature collection
that do not have a feature id. Afterwards, every feature (and subfeature) in the collection
has a unique feature id.
It is considered an error if there is more than root feature with the same id after the
identification of equal features.
Furthermore, there is always only one feature instance with a certain id, i.e. "equal"
features are represented by the same feature instance.
"merged" feature collection throws: DatastoreException - |
|
|