-
Notifications
You must be signed in to change notification settings - Fork 29
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Proximate vs Ultimate FoI #169
Comments
I am curious if this effort helps in resolving a limitation we ran into when implementing the SOS 2.0 specification. The most common military concept that matched "feature of interest" was/is "area of interest," but another concept was the "target of interest." Neither of these really synergized well with declaring the sensor ID as the feature of interest. So the profile practice of always using a sensor/monitoring station ID as the feature of interest didn't really work for us. However, we understood why communities would do this, because it offered a reasonably robust way to performed filtered queries to return lists of sensor IDs when the SOS 2.0 standard did not offer such an operation. Personally, I would advocate that an observation service should consider including operations focused on robust filtered queries and subscriptions that returned lists of sensor IDs (features that are sensors) but keep that concept separate from the feature of interest (features that are the focus of a sensor's observations) and maintain/improve the capabilities related to FoI discovery and access. Is there a conceptual conflict that precludes treating these as separate concepts altogether and building out the interface/API specifications to support them both well with use case -oriented operations? |
Why would you want to split the Observations for the same Feature into multiple Datastreams? Unless there is any updates (such as in the ObservedArea: Datastream or feature:Feature) that causes filtering parameters to change, how would it be effective? |
For the same reason why we split the Observations for the same Thing into multiple Datastreams. Most Features have time series of Observations for may ObservedProperties, and currently those are all lumped together. ObservedProperties for Feature 5044 In the case where the Feature is a Sample this doesn't matter, since samples don't generally have time series attached to them. But for that we have the proximateFeatureOfInterest relation directly from the Observation. |
Since we now link Feature to a Datastream and essentially create partitioned Datastreams on a per Feature basis, how relevant is observedArea::Datastream?
|
In the moving car measuring air quality example there is no ultimate FoI, only proximate PoIs, linked through the Observation. In that case the observedArea may still be useful even though it's importance has clearly decreased. Though, to be honest, I've never used the field. Unlike Datastream/phenomenonTime, I've used that for graphs. |
The field is also useful for storage optimizations at the data layer on the server side (space-time partitioning?) and improves efficiency for queries filtering Datastreams over a certain region only. Another use case could be when a user wants to create ObservedProperty partitioned Datastreams only and then they could only link ProximateFeatureOfInterest to the Observation. Example: Methane monitoring over an upstream facility, where the methane leak for the overall site (observedArea) is more relevant than individual Features (wells, unloading spots, etc.) within the site. |
In OMS, we've differentiated FoI into proximate- and ultimateFeatureOfInterest. How do we implement this in STA?
Initial work has been done in the WQ IE, resulting in the following UML:
https://raw.githubusercontent.com/hylkevds/FROST-Server.Plugin.WaterQualityIE/temp/Datamodel-SensorThingsApi-WaterQualityIE.drawio.png
The approach taken here takes into account that proximate vs. ultimate FoI is not a modification the FoI class itself, its just the role this Feature takes for the Observation. Thus:
The text was updated successfully, but these errors were encountered: