Sensorthings API === ###### tags: `nchc` # UML數據模型 下圖為OGC SensorThings API的UML數據模型,其中定義了不同的實體以及他們的屬性,同時展示了不同實體之間的關系。 ![](https://i.imgur.com/XvkWvdQ.png) 在 OGC SensorThings API 所定義的標準資料模型中,一個真實物件或虛擬物件可視為一個 Thing。Thing 的最終已知位置以 Location 表示,而其過去所在位置的歷史軌跡可以配合 HistoricalLocation 表示。一個 Thing 可以擁有多個 Datastream,每個 Datastream 可作為一組 Observation 的集合,但這些 Observation 須由同一個 Sensor 針對相同感興趣的現象 ObservedProperty 所產生。而 Observation 所觀測之特徵物須以 FeaturesOfInterest 描述。 # API介面說明 ## URI介面 OGC SensorThings API 服務將相同類型的實體分組為實體集合。每個實體都有唯一的標識符和一對多屬性。此外,如果實體與其他實體集合中的實體保持關係,則這種類型的關係用導航屬性(即navigationLink和associationLink)表示。 因此,為了對資源執行查詢,第一步是通過URI尋址目標資源。這裡有使用三個主要組成部分的URI,即:(1)網路服務之URI,(2)資源的路徑,以及(3)查詢選項。另外,服務之URI由兩部分組成:(1)SensorThings服務的位置和(2)版本號。版本號的格式如下所示: “v” majorversionnumber + “.” + minorversionnumber ![](https://i.imgur.com/GFBOHfx.png) # Things Thing可能是一個實體世界的物件(實體的物體),也可能是信息世界(虛擬的物體),可被識別和整合進入通訊網路[ITU-T Y.2060]。 Thing是創建SensorThings模型結構的起點,一個Thing有Location(位置)和一個或多個Datastreams(數據流)來Observation(觀測)。一個最精簡的Thing可在不指定Location和Datastreams的情況下創建。同時,Thing也可以通過嵌套Location和Datastreams來創建。 # Locations Location(位置)實體記錄Thing(s)關聯的位置。一個Thing的Location實體被定義為Thing最後已知的位置(物理位置)。 當一個location(物理位置)存在多種encodingType(編碼類型)時,此時的Thing可關聯多個Locations。 # HistoricalLocations Thing的HistoricalLocation(歷史位置)實體提供了Thing的當前(最後已知)和之前所有locations的時間。 # Datastreams 同一個Sensor(傳感器)測量同一個ObservedProperty(觀測屬性)Observations(觀測)的集合,稱之為Datastream(數據流)。 # ObservedProperties 一個ObservedProperty特指一個觀測值(Observation)的現象。 # Observations 一個Observation(觀測)是一種測量或者是測算一個屬性值的行為,SensorThings中的一個Observation代表一個ObservedPropert中單個Sensor的讀取值。一個物理設備(Sensor)發送Observations給一個指定的Datastream。同時,一個Observation需要一個FeatureOfInterest(被觀測物)實體。如果請求中什麽都沒有提供FeatureOfInterest,那麽這個Datastream所關聯的Thing的Location,將被作為FeatureOfInterest指定為新的Observation。 # FeaturesOfInterest 一個Observation(觀測)的動作實際是將一個數據被指定給了一種現象,這種現象可理解為一個特征屬性,也就是Observation[OGC and ISO 19156:2011]的FeatureOfInterest(被觀測物)。在物聯網的環境中,許多Observations的FeatureOfInterest就是這個Thing的Location。舉例來說,一個WiFi連接恒溫器的FeatureOfInterest可以是這個恒溫器的Location(比如放置這個恒溫器的客廳)。但在遙感中,FeatureOfInterest就是這個恒溫器被感測到的地理範圍。 # 查詢選項 使用查詢選項可以簡化在SensorThings中獲得所需信息的請求。以下列出的所有查詢選項都可以使用在SensorThings的各個實體中,可能選項具體使用會有些微差別。 SensorThings查詢選項可以分為兩種類型,一類主要用於指定請求的返回屬性,\$expand和\$select屬於這類。另一類主要用於對返回的結果設限、過濾或者重新排序,\$orderby、\$top、\$skip、\$count和$filter屬於這類。 參考資料: - https://ci.taiwan.gov.tw/dsp/sta_guide.aspx - https://ci.taiwan.gov.tw/dsp/doc/%E5%9C%B0%E9%9C%87%E8%A7%80%E6%B8%AC%E8%B3%87%E6%96%99%E8%A6%8F%E7%AF%84%E6%96%87%E4%BB%B6.pdf - https://developers.sensorup.com/docs/zh-tw/#introduction
{"metaMigratedAt":"2023-06-15T04:09:41.368Z","metaMigratedFrom":"Content","title":"Sensorthings API","breaks":true,"contributors":"[{\"id\":\"e45d140e-dd05-405c-a456-ebe4cb60e65c\",\"add\":2594,\"del\":13}]"}
Expand menu