-
Notifications
You must be signed in to change notification settings - Fork 12
Documentation: 52N specific features
Jan Speckamp edited this page Aug 28, 2020
·
8 revisions
- When POSTing an entity, the user can supply a custom
@iot.id
by specifying it in the JSON payload. If no custom id is supplied, the server autogenerates an uuid.
- The combination of phenomenonTime+resultTime is restricted to be unique across all Observations observing the same Feature in a Datastream. This prevents insertion of duplicate Observations with different results for the same timestamp. (see also Issue#120)
- A 52North SOS (since v5.0.0) can be run parallel to the STA using the same datasource and many entities are available in both platforms in parallel. Contact us for further information about this feature.
- When POSTing an Observation with a parameter name defined in
server.feature.observation.samplingGeometry
(http://www.opengis.net/def/param-name/OGC-OM/2.0/samplingGeometry
by default), the samplingGeometry is added to the Observation and is available as samplingGeometry in the SOS Interface.
The phenomenonTime is designed to represent the temporal boundaries of all Observations of the Datastream. Clients (e.g. Helgoland) rely on this information to be accurate, which is not given when Observations are added dynamically and e.g. the Datastream is not patched to reflect those changes. The 52N STA therefore behaves the following way:
- Value of Datastream->phenomenonTime is ignored when Datastream is posted/updated
- Datastream->phenomenonTime is automatically updated when related observations are added/removed/updated
- Version information about the STA version is available during runtime under the custom endpoint
/version
.
- by setting
server.feature.escapeId
the STA can be configured to automatically escape single-quoted identifiers. Note: This only affects inbound HTTP Requests, MQTT and the serialized responses are still based on the version without single quotes.
- by setting
server.feature.mqttReadOnly
andserver.feature.httpReadOnly
the STA can be started in read-only Mode. All HTTP POST and PUT Requests will be dropped with HTTP Status 405, all MQTT Publish Messages will be dropped silently.
- by setting
server.feature.mqttPublishTopics
the user can control which MQTT Topics are accepting publish messages (Observations
-only in the standard)
[optional] automatic extension of FOI geometry (linked via id in Thing->properties) if Thing->Location changes.
- when
server.feature.updateFOI
is enabled and a Location is posted that is linked to a Thing which has a parameter calledupdateFOI
that has the id of an FeatureOfInterest as value, the referenced FeatureOfInterest is automatically extended by the geometry of the Location. - This is used to capture data on moving Things, where the FOI is an ever expanding Linestring
- when
server.feature.variableEncodingType
is enabled the checks for encodingType (standard only allows PDF and SensorML2 as encodingTypes) are bypassed. - Note: This only influences encodingType when SensorEntity is posted/patched directly, not when it is inserted nested inside a Datastream (deep insert)
- when
server.feature.isMobile
is enabled and Thing->properties contains the property"isMobile":true
all newly created Datasets are created with DatasetTypetrajectory
. - This allows for Interoperability with the 52North Helgoland API
- Observations can be annotated with their vertical extend (range or fixed value) using Observation->Parameters. This allows for Observations using the same FOI and the same Timestamp to be inserted into the STA. Currently only numeric values are supported.
- If the vertical extend is a single value:
-
server.feature.observation.verticalFromTo
defines theObservation->Parameters->name
where the vertical component is imported from - If the vertical extend is a range:
-
server.feature.observation.verticalFrom
defines theObservation->Parameters->name
where the lower bound is imported from -
server.feature.observation.verticalTo
defines theObservation->Parameters->name
where the upper bound is imported from
-