IOT語義互操作性之本體論
這個(gè)系列文章描述了一個(gè)單一的語義數(shù)據(jù)模型來支持物聯(lián)網(wǎng)和建筑、企業(yè)和消費(fèi)者的數(shù)據(jù)轉(zhuǎn)換。 這種模型必須簡(jiǎn)單可擴(kuò)展, 以便能夠在各行業(yè)領(lǐng)域之間實(shí)現(xiàn)插件化和互操作性。 對(duì)于一個(gè)目前從事智能硬件的老碼農(nóng),覺得這些文字具有積極的參考意義。在這第二部分, 嘗試確定上層本體在解決元數(shù)據(jù)挑戰(zhàn)中的作用, 以及如何能夠提高可伸縮性。
- “There are two words for everything.” – E.V. Lucas
什么是本體論?
本體論作為科學(xué)的一部分, 有很多面孔。 起初, 本體論是關(guān)于"存在"哲學(xué)的一部分, 也是描述世界的物體、現(xiàn)象和規(guī)律的通用知識(shí)體系。
近年來, 本體論的發(fā)展已經(jīng)從人工智能領(lǐng)域轉(zhuǎn)向語義網(wǎng)。 網(wǎng)絡(luò)上的本體論, 包括從對(duì)一般網(wǎng)頁內(nèi)容(如 schema.org)進(jìn)行分類, 到銷售產(chǎn)品及其功能(如亞馬遜網(wǎng)站)。
作為語義互操作性的促進(jìn)者, 本體提供了與特定領(lǐng)域(例如醫(yī)療保健)元數(shù)據(jù)標(biāo)識(shí)符相關(guān)的概念,提供了一個(gè)標(biāo)準(zhǔn)化的分類。 本體雖然包含了分類學(xué)和詞庫的特性, 但在術(shù)語和屬性之間使用嚴(yán)格的語義關(guān)系, 目標(biāo)是以機(jī)器可讀形式來表示知識(shí)(圖15)。 [7]
[圖15 | 語義層次]
用于開發(fā)本體的方法對(duì)于促進(jìn)可伸縮性至關(guān)重要, 必須考慮所有相關(guān)的應(yīng)用程序。 本系列文章考慮的應(yīng)用包括五個(gè)相互關(guān)聯(lián)行業(yè)的商業(yè)和物聯(lián)網(wǎng)使用案例——房屋、能源、零售、醫(yī)療和運(yùn)輸及物流。
雖然句法語言(例如 OWL、 RDF 和 RDFS)可以用來構(gòu)建本體論, 而本節(jié)將關(guān)注與任何特定建模語言無關(guān)的方法論。
一致性的受控詞表
受控詞表是經(jīng)過精心挑選的詞匯和短語(即術(shù)語)的集合, 這些詞匯和短語在不同的語境中都被賦予了明確的含義。 一個(gè)詞匯表可以用來保持本體發(fā)展的一致性, 它定義了術(shù)語背后的上下文關(guān)系。
登記中心控制的詞匯表中的所有術(shù)語都有一個(gè)毫不含糊的、非冗余的定義。 如果多個(gè)術(shù)語可以用來表示同一事物, 則應(yīng)將其中一個(gè)術(shù)語定義為受控詞表中的***術(shù)語, 其他術(shù)語被列為同義詞或別名(見圖16和IOT語義交互性之詞匯定義)。
[圖16 | 別名和翻譯的受管制術(shù)語]
受控詞表應(yīng)該為全球應(yīng)用提供各國(guó)家語言支持。 代表知識(shí)領(lǐng)域內(nèi)術(shù)語的標(biāo)準(zhǔn)詞匯可以從各種組織(例如 lov.okfn.org)免費(fèi)獲得。
對(duì)每件事物都有一個(gè)對(duì)象類
本體可以通過一組類來提供域概念的標(biāo)準(zhǔn)化分類。 每個(gè)類(概念)都可以表示可以唯一標(biāo)識(shí)的類似事物或?qū)ο蟮念悇e。 類被定義為反映其對(duì)象(實(shí)例)所獨(dú)有的屬性、限制和關(guān)系。 類可以表示物理對(duì)象, 例如傳感器和人員以及信息對(duì)象, 例如商業(yè)交易[ ISO 11179]。 一個(gè)本體, 連同一組個(gè)別的類實(shí)例, 構(gòu)成一個(gè)知識(shí)庫。 [8]
一個(gè)類的層次結(jié)構(gòu)
像分類法一樣, 本體可以在分層結(jié)構(gòu)中定義其類, 這種結(jié)構(gòu)可以根據(jù)需要進(jìn)行深度定義(圖17)。 類(如傳感器或執(zhí)行器)可以是另一類(設(shè)備)的子類(類型)。
[圖17 | 本體的層次結(jié)構(gòu)]
所有子類都繼承類的屬性。 例如, 如果 Power 狀態(tài)是設(shè)備類的一個(gè)屬性, 那么所有傳感器和執(zhí)行器對(duì)象都會(huì)有這個(gè)屬性。
屬性在適用于其所有對(duì)象(包括子類)的最普通類附加一個(gè)屬性。 由于所有類都是對(duì)象的類型, 所以類層次結(jié)構(gòu)有一個(gè)根類, 即對(duì)象, 它包含所有對(duì)象繼承的標(biāo)識(shí)符(一個(gè) O-DEF 分類屬性)(見圖19)。
雖然這種方法與面向?qū)ο蟪绦蛟O(shè)計(jì)相似, 但它代表了從編程中抽象出來的元數(shù)據(jù)。 代表本體的元數(shù)據(jù)可以在一個(gè)存儲(chǔ)庫(ISO 11179)中從任何編程環(huán)境中抽象出來。
跨行業(yè)領(lǐng)域互動(dòng)的***層
***對(duì)象類(例如 ODEF 核心索引)可以促進(jìn)不同領(lǐng)域(如建筑物、零售、醫(yī)療保健)的數(shù)據(jù)交換和互操作性, 因?yàn)樗鼈兇_保以統(tǒng)一和語義兼容的方式使用基本術(shù)語。
本系列文章中確定的各組織機(jī)構(gòu)語義數(shù)據(jù)模型包括了支持其目標(biāo)行業(yè)和使用情況的***級(jí)別類別(圖18)。
[圖18 | 各聯(lián)盟的***對(duì)象類]
雖然術(shù)語可能不同, 但各聯(lián)盟集團(tuán)有許多基本概念(類)。 這些概念的"混合"可以形成一個(gè)能夠支持行業(yè)的特定用例和跨行業(yè)互操作性的上層本體(圖19)。
[圖19 | 混合、跨行業(yè)***等級(jí)]
根對(duì)象類的名稱和描述屬性可以描述這些***類, 并包含在術(shù)語表中:
- Information Model 資訊模型
- Asset 資產(chǎn)
- Product 產(chǎn)品
- Location 位置
- Party 派對(duì)
- Transaction 交易
- System 系統(tǒng)
- Process 過程
- Rule 規(guī)則
- Event 活動(dòng)
- Relationship 關(guān)系
雖然個(gè)人和組織被一些財(cái)團(tuán)模型(O-DEF, schema.org)認(rèn)為是***的類, 但它們都是商業(yè)模式中一個(gè)Party概念的子類(GS1 EDI, ARTS ODM)。 締約方類包括人員和組織共有的屬性, 并允許一個(gè)類與業(yè)務(wù)事務(wù)和其他關(guān)系關(guān)聯(lián)。 [9]締約方能夠擁有法律所有權(quán), 并且可以與根對(duì)象類的所有人屬性有關(guān)。 締約方實(shí)例可以擁有有形(車輛)和無形(銷售訂單)對(duì)象。
盡管在這些聯(lián)合體中沒有明確定義, 但在這種混合方法中包含了一個(gè)***關(guān)系類, 可以從定義多對(duì)多關(guān)系的任何特定本體語言中抽象本體。
信息模型的類
信息模型作為一個(gè)知識(shí)領(lǐng)域, 可以有自己的本體, 可以建立一個(gè)多層次的本體論。 信息模型***對(duì)象類(ODEF Information-set)可用于包含定義信息模型的子類(圖20)。 其中包括:
- Data Type 數(shù)據(jù)類型
- Measurement Unit 測(cè)量組
- Attribute 屬性
- Vocabulary Term 詞匯詞匯
- Role 角色
[圖20 | 一個(gè)信息模型類層次結(jié)構(gòu)]
數(shù)據(jù)類型的本體
數(shù)據(jù)類型和測(cè)量單位(如 QUDT.org)的本體論可以為商業(yè)和技術(shù)提供基礎(chǔ)語義互操作性。
數(shù)據(jù)類型類可以作為信息模型的子類來建模。 基于數(shù)字電子學(xué)的所有數(shù)據(jù)都表示為***級(jí)別的比特(0和1) , 數(shù)據(jù)類型類的比特屬性可以由所有子類繼承。 數(shù)字和字符串是原子數(shù)據(jù)類型(數(shù)據(jù)類型類的直接子類) , 因?yàn)樗鼈兊闹挡荒苡幂^小的部分來描述。 Integer 和 Float原語可以定義為數(shù)類的子類(如 schema.org)。 標(biāo)準(zhǔn)組織已經(jīng)定義了原子和原始數(shù)據(jù)類型(例如, ISO.org 11404, W3.org XML Schema) , 但是它們之間的不一致是難以管理的。
具有唯一屬性的附加數(shù)據(jù)類型(如數(shù)量)可以從原始數(shù)據(jù)類型中派生出來, 并定義為它們的子類。 然而, 在編程語言和組織數(shù)據(jù)服務(wù)中, 具體的原始數(shù)據(jù)類型和派生數(shù)據(jù)類型的使用情況各不相同, 限制了語義互操作性(圖21)。
[圖21 | 聯(lián)盟組織的數(shù)據(jù)類型]
一個(gè)術(shù)語的數(shù)據(jù)類型
一個(gè)術(shù)語數(shù)據(jù)類型(類似于 Haystack 的"marker")可以被屬性(類似于 Haystack 的“tag”)來分別與對(duì)象類層次結(jié)合使用。
與受控詞表一起使用時(shí), 術(shù)語屬性的值可以表示一個(gè) Term 對(duì)象。 例如, 在圖19中, 根對(duì)象類的 Name 屬性分配給術(shù)語數(shù)據(jù)類型。根對(duì)象類Name 屬性的值與受控詞表中的"對(duì)象"項(xiàng)有關(guān)(圖16)。
術(shù)語的概念也可以作為信息模型的一個(gè)子類(圖20)。
關(guān)系的數(shù)據(jù)類型
關(guān)系數(shù)據(jù)類型(類似于 Haystack 的"Ref")可以分配給一個(gè)屬性, 以表示與同一個(gè)或不同類對(duì)象的關(guān)系。 例如, 根對(duì)象類的類屬性分配給關(guān)系數(shù)據(jù)類型(圖19)。 屬性類的"內(nèi)部類"屬性也分配給關(guān)系數(shù)據(jù)類型(圖20)。 在這種情況下, 關(guān)系表示在類對(duì)象中對(duì)屬性對(duì)象的限制。
分配給關(guān)系數(shù)據(jù)類型的屬性應(yīng)該僅限于單個(gè)類中的對(duì)象, 這應(yīng)該是適當(dāng)反映關(guān)系的最嚴(yán)格子類。
用于測(cè)量的數(shù)量數(shù)據(jù)類型
商業(yè)和技術(shù)依賴于經(jīng)過測(cè)量的數(shù)字, 其中大多數(shù)都有單位。 數(shù)據(jù)類型本體可以定義一個(gè)測(cè)量的數(shù)據(jù)類型(scheman.org中的數(shù)值)來作為數(shù)據(jù)類型的子類。 數(shù)據(jù)類型也可以定義為量數(shù)據(jù)類型的每個(gè)類型或"維度"的測(cè)量。 例如, 圖21中的一個(gè)溫度數(shù)據(jù)類型(UN/CEFACT Temp-Measure類型)可以定義為數(shù)量子類的實(shí)例。
通過將貨幣量建模是另一種測(cè)量類型, 包括值轉(zhuǎn)換在內(nèi)的過程可以在所有測(cè)量類型中歸一化。 一種機(jī)制(類似于 xe.com)可以用來檢索與貨幣單位相關(guān)的轉(zhuǎn)換因素(貨幣兌換率)的動(dòng)態(tài)價(jià)值變化。
一個(gè)測(cè)量單位的類
最廣泛使用的單位系統(tǒng)是國(guó)際單位制, 即 SI。 ISO 80000-1進(jìn)一步定義了 SI 和國(guó)際數(shù)量體系(ISQ)的數(shù)量和單位。
單元類可以作為信息模型的子類來建模。 圖22顯示了數(shù)據(jù)集 中每個(gè)對(duì)象繼承的對(duì)象類的屬性(標(biāo)識(shí)符、名稱、類)。 該圖還包括由對(duì)象的類屬性標(biāo)識(shí)的類(單元)屬性。
[圖22 具有對(duì)象和單位屬性的單元類示例實(shí)例]
一個(gè)單位標(biāo)識(shí)符(如 華氏度)與數(shù)據(jù)集中的數(shù)量值(例如 Haystack 標(biāo)記數(shù)據(jù))配對(duì), 可以在所確定的單位對(duì)象內(nèi)解析一個(gè)數(shù)量數(shù)據(jù)類型(如溫度)。單元對(duì)象的屬性也可以支持單元轉(zhuǎn)換過程(圖23)。
[圖23 | 使用帶轉(zhuǎn)換屬性的單元實(shí)例進(jìn)行溫度值轉(zhuǎn)換]
對(duì)象的角色
角色的概念(如 O-DEF 中的概念)描述了一個(gè)可以由特定上下文中對(duì)象執(zhí)行的函數(shù)。 角色類可以作為信息模型的子類來建模, 并且可以包含適用于不同對(duì)象類的實(shí)例(圖24)。
[圖24 | 具有對(duì)象和角色屬性的角色類示例實(shí)例]
關(guān)系類中的一個(gè)實(shí)例可以將角色的實(shí)例分配給對(duì)象。 一個(gè)對(duì)象可以有多個(gè)角色。 例如, 一個(gè)人的實(shí)例可以有員工、父母和乘客的角色。 一種設(shè)備的實(shí)例可以是傳感器和通信器。 許多設(shè)備的目的是承擔(dān)與人相同的角色。 因此, 角色可以分配給對(duì)象類。
一些角色(客戶)有一個(gè)相應(yīng)的反向角色(供應(yīng)商)。 當(dāng)一個(gè)客戶角色被分配給一個(gè)締約方(以 ARTS ODM 為模型)時(shí), 將相應(yīng)的供應(yīng)商角色分配給另一締約方以形成貿(mào)易關(guān)系。
References
7 Harpring, Patricia, “Introduction to Controlled Vocabularies”, 2010 J. Paul Getty Trust.
8 Noy, Natalya F. and McGuinness, Deborah L. “Ontology Development 101: A Guide to Creating Your First Ontology”, protégé.Stanford.edu, 2001.
9 Hay, David C., Data Model Patterns: Conventions of Thought, Dorset House Publishers, Inc. (New York: 1996)
【本文來自51CTO專欄作者“老曹”的原創(chuàng)文章,作者微信公眾號(hào):喔家ArchiSelf,id:wrieless-com】