金家琴,夏翠娟
“本體(Ontology)是對概念體系的明確的、形式化、可共享的規范說明”,“本體是領域知識規范的抽象和描述,表達、共享、重用知識的方法”。本體構建的目的是領域知識的共享和重用,標準化和形式化的領域本體,能夠為信息系統之間的高層互操作提供很好的工具[1]。近年來,在跨領域知識共享和重用的需求推動下,本體成為語義網環境下知識組織和數據語義化表達的關鍵技術,被廣泛應用于關聯數據(Linked Data)和知識圖譜(Knowledge Graph)技術中,以實現互聯網環境下領域知識的語義互操作。
機構(Organization)在管理學中被定義為“由若干個人或群體所組成的、有共同目標和一定邊界的社會實體”。在關聯數據和知識圖譜中,機構被作為一種命名實體(Name Entity),為每一個機構賦予URI,用機器可理解的形式化語言來表示機構的各種特性和與人、地、時、事等其他命名實體之間的關系,在數字人文數據基礎設施構建中有著重要的作用。因而,設計一套靈活可擴展的機構本體模型和詞表是不可回避的問題。機構的名稱、人員、所在地、層級關系和歷史沿革、變遷等屬性特征以及各機構實體間的相互關系等,包含著復雜的語義信息。在關系數據庫模型中,實體和實體間的各種聯系均用二維表表示,一個關系就是一個二維表,這種單一的數據結構在存取數據時效率非常高,但同時也丟失了大量的語義信息,無法實現數據的語義化表達。而本體作為一種共享概念模型的明確的形式化描述,為信息提供了語義表示機制。
國內機構本體方面的研究和實踐有限,構建主體集中于科研機構。理論研究多與機構規范檔以及描述元數據相關,實踐研究多是探索如何利用本體技術構建本機構本體知識庫和信息檢索系統。胡雪環對科研機構的屬性及內外部層級結構等信息進行分析、定義與描述,基于此構建科研機構本體推理規則[2]。馮微峰構建圖情機構功能本體,基于OWL(Web Ontology Language)形式化后具有邏輯推理的功能[3]。呂翔分析國防工業機構主要組織框架的層級結構,介紹了如何通過復用現有本體構建國防工業機構與產品領域本體的整體流程[4]。以上研究與實踐多面向特定需要,但對于如何構建一套通用的、可擴展、可復用的機構本體模型,尚未形成完整的本體詞表和系統性的構建方法。
國外以機構為核心描述對象的本體研究在2000 年左右發展起來,但多數機構本體的構建是依據具體的實踐項目需求,面向應用場景而開發,機構信息多是政府數據或企業信息集成數據[2]。例如,TOVE(Toronto Virtual Enterprise)是一個適合企業建模的集成本體框架的項目,TOVE本體描述了企業結構的基本元素:組織結構、活動、角色、目標、團隊、權利和義務等信息,通過授權將機構與行為聯系起來[5]。以W3C核心機構本體(Core Organization Ontology)為代表的通用機構本體的研究起步較晚。2009年5月,美國政府數據網站data.gov 上線,各國政府紛紛加入“政府開放數據”運動,萬維網上各種各樣的數據集越來越多。英國政府關聯數據工作組(Government Linked Data(GLD)Working Group)(現已關閉)發現本體為不同的政府機構的信息關聯數據發布提供了很好的解決方案,聯合英國的Epimorphics公司開發了一個通用的、可重用的核心機構本體。該本體不提供組織類型、組織目的或角色的類別結構,僅提供允許擴展添加所需的特定子類結構或分類方案所需的核心基礎概念[6]。之后W3C在此基礎上作了多次修改和完善,正式發布推薦標準“核心機構本體ORG”,命名空間為http://www.w3.org/ns/org#。此外,很多數據框架和通用本體也為“機構”專門定義了可復用的術語。比如,Schema:Organization 是學校、NGO組織、公司和教育機構等各類型常用機構的信息詞表(rdfs:comment“Anorganization such as a school,NGO,corporation,club,etc.”@en)[7]。DBpedia 本體是一個涵蓋多領域的通用本體,dbo:Organization類及其屬性是一套通用的組織框架數據集[8]。vcard 本體專注于描述人員和組織,vcard:Organization 與 foaf:Organization、ORG之間存在一些重疊,但它們都可以單獨提供有用的詞匯表,并且在協作使用時也可以提供增強的信息[9]。
機構本體建模的難點在于對機構之間復雜的關系和機構歷史沿革的描述和揭示,如上下級關系、合作關系,由分裂、并購、重組、遷址等事件導致的關系,機構與機構成員之間的關系。隨著時間的推移,包括組織結構、人員、角色、權限和組織目標等在內的機構的各種要素和各類關系,都可能在某些事情的推動下發生變化,如政府機構為了提高行政效率,在橫向上撤并和整合一些職能相近的機構。機構本體模型的設計需要考慮簡捷通用,靈活可擴展,本體詞表的設計則需要定義詞匯或術語來描述隨著時間的變化、機構發生的變化信息以及原始機構和最終機構之間的關系,而目前以機構為核心描述對象的本體詞表大多只是定義和描述了一套適用于各類型機構本身特性的框架數據集。雖然ORG本體定義了org:ChangeEvent 類和屬性org:originalOrganization、org:changedBy、org:resultedFrom、org:resultingOrganization 來描述機構變革的歷史信息(如表1所示)。org:ChangeEvent 類代表一個導致機構發生重大變化的事件,但只適用于最終機構與原始機構完全不同的情況,對于事件發生的時間、地點、人物、關聯事件以及由事件所引發的機構與機構的關系變化(如resulting Organization與originalOrganization的關系)、機構內人員/角色的變化等信息缺乏必要的描述[10]。

表1 W3C的ORG本體中描述機構變化事件的屬性
本文的研究目的就是在現有機構本體研究和技術發展的基礎上,借鑒領域知識本體的構建方法,對機構實體、機構中的人物和角色、事件及其相互關系進行明確的、形式化的揭示和描述,嘗試構建一個在萬維網上通用的、易于復用、靈活可擴展的機構本體模型和詞表。除了定義和描述各類機構的基本框架要素,如組織架構、人員/角色、位置地點等,還記錄引起機構發生變化的事件,支持機構內外各種要素的變化信息,如機構變革、層級結構的調整、歷史傳承,通過各種關系屬性將機構和機構,機構和人員/角色聯系起來,描述機構和機構(包含機構層級結構中的各個子機構)之間的關系、人員/角色在機構內的關系變化等。
本體常常表現為一套體系化的術語詞表及其相互之間關系描述,應包括每一個術語的明確定義及其關系,術語分為類(Class)和屬性(Property)兩種,類是對同一類實體對象的抽象,OWL將屬性分為數據屬性(DataProperty)和對象屬性(ObjectPropery),數據屬性是對類的各種特征的抽象,對象屬性用于表示類與類之間的關系[11]。盡可能復用現有的本體詞表(包含類和屬性)是構建本體的一個重要的參考原則,如W3C核心機構本體ORG詞表就復用了FOAF、GR、OPMV、ORG、TIME、VCARD等詞匯標準。本研究基于核心機構本體模型構建上海圖書館機構本體,復用ORG、foaf和Schema,在上海圖書館現有本體的基礎上擴展反映機構間復雜關系和各種歷史沿革和變化的術語,形成一套通用的、靈活可擴展的機構本體模型和詞表。
W3C核心機構本體ORG是英國政府關聯數據工作組倡議的一部分,支持跨領域機構信息的關聯數據發布。ORG本體不定義描述組織類型、組織目的或角色等具體的術語詞匯,只提供所需的核心基礎概念,鼓勵用戶復用和擴展,允許不同機構根據實際情況擴展添加具體的子類和屬性[12]。ORG本體詞表目前共定義了9個類,35個屬性,描述組織結構、上下級負責(reportTo)關系結構、組織地點和組織歷史等信息[13]。ORG本體的核心類是org:Organization,對所能描述的組織機構類型沒有明確限制,意味著與具體領域無關。
除了上文提到的org:ChangeEvent 類外,核心機構本體ORG本體定義了豐富的類和屬性來描述各類機構的層級架構關系[14]。org:Formal Organization 是 org:Organization 的 一 個 子 類 ,表示在全世界范圍內,法律公認的具有相關權利和責任的組織機構。機構的層級架構是完全開放的。例如,一個org:FormalOrganization實體可以自由地與其他org:FormalOrganization實體建立包含或被包含的層級關系。如果某機構由層級架構中的其他組織組成,可以通過org:subOrganizationOf 和org: hasSubOrganization這兩個關系來明確各層次之間的關系。在某些情況下,機構的部門或者分支(org:OrganizationalUnit)也可以是獨立機構,例如法律認可的企業可能是較大集團或控股公司的一部分,org:hasUnit 和org:unitOf兩個屬性就用來表示機構擁有分支或者職能部門。ORG 本體還提供了成員關系(org:Membership)來描述人員/機構與機構之間的非包含關系,org:memberOf表示某個人或者機構是更大機構的直接成員,org:headOf 代表了機構的負責人。ORG 本體的核心基礎概念是解決異構數據差異的解決方案,為設計通用的一般模型提供了基礎框架。

圖1 W3C核心機構本體ORG模型
上海圖書館數字人文項目團隊擁有多年的本體研究、設計和應用經驗。上海圖書館數字人文開放數據平臺(http://data.library.sh.cn/)以關聯數據(Linked Data)的方式向互聯網公開發布了上圖數字人文項目所研發的各種本體詞表,并提供各種數據消費接口供開發人員調用[15],包含130萬余人物的人名規范庫和2,000余收藏機構的機構名錄、地名詞表、中國歷史紀年表等基礎知識庫,是上海圖書館數字人文數據基礎設施的重要組成部分,為上海圖書館的家譜、手稿檔案、古籍、紅色文獻、老電影、館藏書目等文獻知識庫提供跨網域的數據連接,同時在萬維網上以HTTP URI 內容協商,restful API 和 SPARQL Endpoint為其他圖書館、研究者和第三方開發者提供開放數據服務。在構建這些基礎知識庫和文獻知識庫時,秉承在復用現有本體詞表的基礎上擴展的原則形成了一體化的上海圖書館本體模型和詞表(見圖2,命名空間前綴為:shl),定義了“人(shl:Person)”“機構(shl:Organization)”“地(shl: Place)”“時 (shl: Time)”“ 事 (shl: Event)”“物(shl:PhysicalObject)”等類和屬性。繼承和復用BIBFRAME、FOAF、ORG、Schema.org、GeoNames、PROV 本體模型和部分術語。shl:Organization 類 繼 承 foaf: Organization, org:Organization,并與shl:Person,shl:Event建立了關系。其中,shl:Event復用PROV本體的兩個屬性(prov:started AtTime 和prov:endedAtTime)描述事件發生結束的事件,復用prov:Agent來描述事件發生的主體(包括機構和人),利用圖1本體中自定義的頂層類shl: Resource 的對象屬性shl:place 用于描述事件發生的地點。shl:Event類可用于描述shl:Organization類相關的各類事件。上海圖書館本體中已有的機構相關類和屬性已用于描述上海圖書館數字人文數據基礎設施中的文化記憶機構名錄、盛宣懷檔案知識庫中的公司及其簡單的歷史沿革信息、上海市聯合編目中心書目數據中的出版機構、老電影知識庫中的電影公司等[16]。

圖2 上海圖書館本體模型
由于上海圖書館已有本體模型和詞表尚不足以描述機構間復雜的關系和機構的歷史變遷信息,因而需要進一步擴展。在機構實體中,“機構”和“人”都是機構管理的主要對象,“事件”則是機構及人所發生的各種歷史沿革變遷的信息集合體,所以本研究構建的上海圖書館機構本體以“機構(shl:Organization)”“人(shl:Person)”“事(shl:Event)”為三大核心類。其中,shl:Organization類描述機構實體,需要描述機構的組織架構、組織分類、機構的各種特性等;shl:Person 類則表示機構中的成員,需要描述成員的基本信息、在機構中的角色等;shl:Event描述組織沿革、活動信息和人的角色、關系變動信息等。同時,定義一系列屬性來表達三者之間的關系,將“機構”和“機構”、“人”和“人”、“機構”和“人”、“機構”和“事件”、“人”和“事件”關聯起來。
現有的機構本體詞表對“機構”Organization的基本信息都有相應的類和屬性的描述,可以直接繼承和復用,定義shl:Organization 類繼承org:Organization 類 、schema:Organization 類和foaf:Organization類,以便于可以復用這3個父類的所有屬性(如表2所示)。

表2 上海圖書館機構本體核心類
2.3.1 機構基本信息
在構建機構本體數據集時,需要全面考慮機構的名稱、網址、電話、地址、郵箱、傳真、郵編等各種信息的術語描述。Schema.org是一份公開的、可共享的詞匯表,是為數據集進行結構化的元數據方案。標記于HTML頁面上的Schema.org標簽被Google、Bing、Yandex 和Yahoo!等主要的搜索引擎支持,能幫助搜索引擎理解網頁上的信息,從而讓搜索結果內容更豐富[17]。Schema.org 結構化數據可用于標記各種項目,其中schema:Organization 是最常用的類之一,定義了大量的屬性,可以作為構建機構本體的重要參考和術語復用來源,如表3所示。
schema:Organization數據集對機構基本信息的描述已較為全面。在主要復用現有詞匯的基礎上,結合機構的互聯網相關屬性描述需求,對聯系方式進行擴展,增加了shl:wechatID(機構微信賬號)和shl:blogID(機構微博賬號)兩個屬性,同時定義了shl:hasDataSet屬性來鏈接到機構擁有的數據集。

表3 機構基本屬性表
2.3.2 機構的層級結構
不同類型機構的層級結構通常差異較大。比如,企業組織結構是職權-職責關系結構,是企業內部各組織職能分配的一種體現;政府機構層級常常按照行政層級來劃分。在設計機構本體層級結構時,需要抽象出一般的機構層級結構模型來容納各類機構的差異性,形成通用的解決方案,如表4所示。

圖3 上海圖書館機構本體中機構基本信息相關的類、屬性及其關系
機構(Organization)的層級結構一般可以通層級關系圖進行展示。以土地革命戰爭時期(1927.8-1937.7)中央組織機構的層級結構為例,如圖4所示。由圖4可見,中央組織機構是最上級機構,下設6個下級機構(org:subOrganization):中共中央領導機構、中共中央工作機構、中共中央軍委與中革軍委、全總/鐵總/海總中共黨團、中共蘇維埃共和國臨時中央政府和群眾團體組織,用schema:parentOrganization 和org:has SubOrganization 屬性表示。其中,群眾團體組織既是下級機構,也是上級機構屬其他下級機構。同級下級機構之間可能有關系,用org:linkedTo表示。也可各自獨立沒有任何關系,如中華全國鐵路總工會與中華全國海員總工會雖然都是工會的下級機構,但是各自隸屬于不同的行業,并無交集。機構通常會根據職能設立不同的部門(org:OrganizationUnit),用 org:hasUnit,org:unitOf 表示;各部門承擔機構的一部分職能,向上級機構匯報(org:reportsTo),如中華全國總工會常務委員會下設組織部、宣傳部和女子部等多個不同職能的部門。此外,某些機構會成為其他機構成員(org:Member),彼此只是建立會員關系(org:hasMembership),并不屬于上下級范疇等。在ORG框架的基礎上,為了特別區分政府、科研等行政事業單位的行政級別關系,增加了shl:level屬性,如政務機構的行政級別的取值通常是國務院、省級、自治區、直轄市和區縣,如圖5所示。

表4 機構層級結構基本屬性表

圖4 上海圖書館革命(紅色)文獻平臺中共組織史局部

圖5 上海圖書館機構本體中機構層級結構相關的類、屬性及其關系
2.3.3 機構的人員角色關系
上海圖書館本體定義的shl:Person類及其屬性,缺乏對人在機構中的角色和變化進行描述的機制,上海圖書館機構本體將在shl:Person的基礎上,復用Schema.org、ORG本體和foaf本體中的相關術語,如Schema:Person類及其屬性,并擴展人員與機構的各種關系屬性。本模型主要探討如何完整記錄機構內人員/角色與機構的關系,以及由某些事件的影響為這種關系帶來的各種變化,如表5所示(不再贅述有關“shl:Person”的基本信息,如國籍、籍貫、性別、生卒年月和居住地等[18]可參考上海圖書館人名規范庫http://names.library.sh.cn)。shl:Person類用于對機構和人員/角色的屬性及各類關聯關系進行抽象與建模,在此基礎上,為機構和人員/角色的關系定義詳細的描述框架,如圖6所示。

表5 機構人員/角色關系屬性表

圖6 上海圖書館機構本體中機構人員/角色屬性及其關系
2.3.4 機構的歷史沿革
機構變化通常可以視為由事件引起,上海圖書館本體shl:Event類是對“事件”本身的描述,已包含事件發生的時間、地點,以及和人的關系等屬性。ORG 核心機構本體的org:ChangeEvent 類,代表導致機構發生重大變化的事件,適用于原始機構和新機構是完全不同的獨立個體,有不同的統一標識符如URI。org:ChangeEvent 類是繼承prov:Activity 的子類,prov:Activity表示一段時間內實體與實體之間發生的各類事件,如轉化、更新、生成新實體[19]。PROV是一個輕量級本體,專門用于對特定應用來源的詳細信息進行建模。本研究構建的機構本體旨在記錄和機構相關的各種事件變化,既支持重大事件對機構產生的根本性變革,生成新的機構情況,也支持機構內外部發生的各類事件,如機構外部地址變遷、內部部門結構調整。在繼承 org:Change Event 類和 shl:Event 類的基礎上,定義了新的shl:ChangeEvent類,以及相關屬性來描述機構的沿革和變化,如表6所示。
shl:ChangeEvent類旨在以機構為核心描述對象,反映機構/人員變化的種種情況,所以事件(活動)的相關屬性都是用shl:Organization和shl:Person的屬性來描述。比如,shl:wasStarted By和shl:wasEndedBy兩個屬性只是記錄了啟動和結束事件的相關機構和人員,而不推廣至其他實體(Entity)范圍。shl:influenced是廣泛的影響關系,本模型只定義了“產生新機構(generate)”“注銷機構(invalidated)”兩種屬性,在具體使用時可根據實際情況自定義更具體的關系,也可參照PROV 提供的關系術語Communication、Derivation、Association and Delegation等。以李鴻章創辦的“輪船招商局”為例,“輪船招商局”歷史沿革事件如圖7所示。李鴻章1872年創辦輪船招商局(shl:generated)。在創辦過程中,李鴻章(shl:Person)是主要發起人(shl:startedBy),唐廷樞(shl:Person)和朱其昂(shl:Person)是產生重要作用(shl:influenced)的人物。1873 年李鴻章(shl:startedBy)將輪船招商局(shl:originalOrganization)從上海南永安街(今黃浦區永安路)遷至上海三馬路新址(shl:ChangeEvent),改稱為輪船招商總局(shl:generated)。同年設天津、漢口、長崎、香港等19個分局(shl:generated)。“輪船招商局”(shl: original Organization)正式結束(shl: invalidated)。李鴻章(shl: Person)和輪船招商局(shl: Organization)、輪船招商總局(shl:
Organization)是機構事件(shl:ChangeEvent)的核心要素。將這些要素與文獻檔案中的關鍵詞和主題進行自動匹配,即可實現事件、機構、人員、文獻間的動態關聯,如圖8所示。

表6 機構歷史沿革屬性表

圖7 上海圖書館盛宣懷檔案知識庫中“輪船招商局”歷史沿革事件

圖8 上海圖書館機構本體中機構歷史沿革事件屬性及其關系
構建機構本體是結構化、語義化地描述機構的各項特征、機構間的復雜關系、人員角色及其變化、機構本身的歷史沿革等信息的重要途徑,同時對不同機構信息的語義互操作以及數據開放與共享具有重要意義。本研究針對目前國內通用機構本體的系統化研究與應用比較有限,特別是對機構之間的復雜關系、機構的歷史沿革、人事關系變化等方面的研究不足的情況,在對機構的概念、屬性及其關系進行梳理和分析、在上海圖書館已有本體模型和詞表的基礎上,復用多個互聯網上應用較多的本體模型,嘗試設計一套可以描述不同類型的機構、機構在現實世界上復雜的相關關系,以及在時間和空間中不斷變化的歷史沿革信息的本體模型和詞表。這套本體模型和詞表在上海圖書館的數字人文數據基礎設施建設中已經得到了一定的應用,用該本體模型及詞表描述的收藏機構、出版機構、公司等數據以關聯開放數據(Linked Open Data)的形式在互聯網上發布,并在上海圖書館已經舉辦的4屆開放數據應用開發競賽中為第三方機構和開發者提供開放數據服務。由于該本體目前只應用于上海圖書館的數字人文數據基礎設施建設中,還需要在更廣泛的范圍內進行驗證,并進一步完善。接下來本研究將會繼續探索利用本體構建工具和不同的本體形式化語言對機構本體模型和詞表進行形式化,并通過更多的機構數據集來驗證其適用性。