Spatial Filtering via Bounding Box
100
Copyright © 2010 Open Geospatial Consortium, Inc.
Figure 33: Spatial filtering using bounding boxes
The figure illustrates a use case in which all events that fall within a certain distance around the remaining flight path of an airplane are of interest. All other events shall be
removed using a filter with the
dwithin
spatial operator. In the upper box, the inexactness introduced when filtering using the bounding box of an event’s geometry is irrelevant
because the geometry itself is very small compared to the buffer implied by the spatial operator. In the lower box, the inexactness becomes relevant. Even though the event itself
– for example a weather observation or forecast thunderstorm, volcanic ash cloud etc. – is no longer of interest to the airplane, it will be reported to it. The event’s geometry is
not within distance to the remaining flight path – however, the bounding box computed
from the event’s geometry is. Apparently, it depends upon the use case and the geometries of the involved events whether the inexactness of using bounding boxes for
filtering is significant or not.
One way to solve the issue of inexact boundary information would be to allow more detailed geometries in the boundedBy property of a GML feature. A comparable solution
would be to add a common
spatialExtent
property to each event type used in a domain that is populated with the according geometry the revised Event Model defines such a
property - see section 12.2.4 for further information. One thing to keep in mind is that spatial filtering using simple bounding boxes is usually
faster compared to filtering where more complex geometries are used. This advantage may outweigh the issue when doing filtering using bounding boxes. However, additional
factors may be important as well, for example to keep the amount of irrelevant data that is transmitted to a client as low as possible e.g. important in networks with bandwidth
limitations. The priority of the various factors depend upon the given use case.
Copyright © 2010 Open Geospatial Consortium, Inc.
101 Another issue using bounding boxes for filtering is that the property is optional in GML
features. Currently, no rules or policies exist with which the behavior to populate the boundedBy property of a feature is governed. A data provider is free to populate the
property for a given feature.
Note: when doing eventing some domains, for example the aviation domain, use events that contain information about multiple features
– the event itself also being a feature. In that case, both the event itself and the contained features may have a spatial context from which bounding box information is computed
and provided. Clients thus need to take care that they reference the correct boundedBy property in the filter statements they create.
To fully support spatial filtering upon boundedBy data, clients need to know if all the events with spatial context populate this property with correct data. At the moment a
service does not indicate that this is supported. This may be doable using a service’s metadata.
In addition, rules for populating the boundedBy property for a given feature type should be developed. Ideally, the according instructions are machine readable so that a service
can discover them at runtime and compute the boundary of a feature on-the-fly. It would be good to investigate an according mechanism in the future, as it would benefit the
filtering of events in multiple domains. Without such a mechanism, the boundary of an event would necessarily have to be provided by the service that generated the event in the
first place.