[DAS2] locations and writeback behavior
Andrew Dalke
dalke at dalkescientific.com
Sat Aug 19 14:04:31 UTC 2006
Assume there is the requirement that parent node locations must
cover children locations. What does the server do on writeback
for the following circumstances:
Case #1. the parent feature has no locations
Foo: -- no locations --
Bar: (10, 20)
Baz: (50, 60)
Here are 6 possibilities:
1. reject the writeback
2. accept it and use an implicit location of (10, 60)
(implicit means the record is not modified and clients
downloading feature Foo will not get any locations for it
but the server will act as if it was present.)
3. accept it and use an implicit location of [(10, 20), (50, 60)]
4. accept it and insert the location (10, 60) (explict; clients
fetching feature Foo will see the server inserted locations)
5. accept it and explicitly insert the locations [(10, 20), (50, 60)]
6. accept it unchanged; range searches will always fail because
the root node has no locations
Case #2. the parent feature has a location which does not overlap
all of the children
Foo: (15, 85)
Bar: (10, 20)
Baz: (50, 60)
Case #3: the parent has multiple locations; the parent's locations
overlap those of the children
Foo: (10, 30), (40, 66), (543, 567)
Bar: (10, 20)
Baz: (50, 60)
Case #4: the parent has a single location which is broader than
those of the children
Foo: (10, 567)
Bar: (10, 20)
Baz: (50, 60)
Case #5: the children contain multiple locations, the parent
covers them all
Foo: (10, 100)
Bar: (10, 20), (22, 24)
Baz: (50, 60), (70, 80)
The server already does some validation for cyclic detection.
It can easily check for ranges as well. As I understand things
the answers should be:
Case #1: reject (parent must cover all children locations)
Case #2: reject (parent must cover all children locations)
Case #3: reject (parent can only have a single location per segment)
Case #4: accept, and use the broader range
Case #5: accept (leaves and leaves only may have multiple
locations on the same segment)
and the reasons for these answers are:
- it doesn't make sense to have location-less parents when
the children don't have locations
- it makes the search algorithm work correctly
Andrew
dalke at dalkescientific.com
More information about the DAS2
mailing list