You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
At the last TC meeting I gave a little demo of using STA/OData in Excel.
Here are the differences I found so far:
STA
OData 4.0
OData 4.01
Self Links
@iot.selfLink
@odata.id
@id
NavLinks
@iot.navigationLink
@odata.navigationLink
@navigationLink
ID property
@iot.id
id (@ and . confuse clients)
id (@ and . confuse clients)
Context
@odata.context
@context
Flexible Properties
property type ANY
not supported, cast to Edm.String
Edm.Untyped
Time Interval/Value
phenomenonTime, validTime
not supported, use phenomenonTime.start and phenomenonTime.end
not supported, use phenomenonTime.start and phenomenonTime.end
Non existing entities
404 Not Found
204 No Content
204 No Content
Things that STA has that can not easily be mapped to OData:
Type ANY doesn't exist in OData 4.0. Version 4.01 has Edm.Untyped.
No TimeInterval or TimeValue, only Edm.DateTimeOffset. This is an issue for Observation/phenomenonTime, Observation/validTime, Datastream/phenomenonTime and Datastream/resultTime.
One solution would be to just use Edm.String, but this doesn't help clients. A better solution is to split the interval into intervalProperty.start and intervalProperty.end in the OData interface.
Our test endpoint, for people that would like to try it out:
At the last TC meeting I gave a little demo of using STA/OData in Excel.
Here are the differences I found so far:
@iot.selfLink
@odata.id
@id
@iot.navigationLink
@odata.navigationLink
@navigationLink
@iot.id
id
(@ and . confuse clients)id
(@ and . confuse clients)@odata.context
@context
phenomenonTime
,validTime
phenomenonTime.start
andphenomenonTime.end
phenomenonTime.start
andphenomenonTime.end
404 Not Found
204 No Content
204 No Content
Things that STA has that can not easily be mapped to OData:
Edm.DateTimeOffset
. This is an issue forObservation/phenomenonTime
,Observation/validTime
,Datastream/phenomenonTime
andDatastream/resultTime
.One solution would be to just use
Edm.String
, but this doesn't help clients. A better solution is to split the interval intointervalProperty.start
andintervalProperty.end
in the OData interface.Our test endpoint, for people that would like to try it out:
It's the same server instance, so the database in these three endpoints is the same.
Related to #72
Also in the FROST wiki.
The text was updated successfully, but these errors were encountered: