陳正峰
(中國航空綜合技術研究所,北京 100028)
基于S 1000D的IETM閱讀器設計與實現(xiàn)
陳正峰
(中國航空綜合技術研究所,北京 100028)
對某型裝備交互式電子手冊閱讀器系統(tǒng)進行了分析、設計和實現(xiàn),為裝備交互式電子手冊的開發(fā)交付積累了經(jīng)驗,對推進裝備維修信息化建設具有重大推進作用。
S1000D;IETM;閱讀器
交互式電子手冊(IETM),是近年來為解決產品基層級維修孕育而生的一種電子交付物,它利用計算機多媒體、數(shù)據(jù)庫和網(wǎng)絡等技術,將內容繁雜的操作手冊、維修手冊等信息有機組織管理起來,以最優(yōu)化的方式將文字、表格、圖像、工程圖形、聲音、視頻、動畫等多種信息形式進行展示,并以交互的方式進行查詢,將維修技術人員或系統(tǒng)操作人員所需的信息,精確地展現(xiàn)在使用者面前。
IETM手冊集成了產品功能、性能、組成、原理、操作使用、維護保養(yǎng)、故障維修、備件供應等多方面的內容,作為一種先進的裝備技術保障輔助手段,通過交互方式為使用人員提供詳盡的技術信息支持,顯著提高裝備的維修保障能力[1]。
1 S1000D簡介
ASD S1000D《基于公共源數(shù)據(jù)庫的技術出版物國際規(guī)范》(以下簡稱S1000D)是歐洲航天和國防工業(yè)協(xié)會(ASD)發(fā)布的一個關于技術資料數(shù)字化的規(guī)范,包括技術資料數(shù)據(jù)的組織生成、格式要求、管理更新、發(fā)布程序等方面的內容[2]。
S1000D提出了兩個核心概念,用來保證IETM信息共享與交換,這兩個核心概念是數(shù)據(jù)模塊(DM)和公共源數(shù)據(jù)庫(Common Source Database)。數(shù)據(jù)模塊是S1000D中的一個核心概念,數(shù)據(jù)模塊是一個自我包含、包含裝備一部分信息的數(shù)據(jù)單元,由標識狀態(tài)段(IDStatus)和內容(Content)兩部分組成。公共源數(shù)據(jù)庫用于信息管理,用來創(chuàng)建技術文檔,可以用它對任何軍用或民用的裝備制作IETM。S1000D采用了多項ISO國際規(guī)范持續(xù)采辦和全壽命支持(CALS)以及萬維網(wǎng)聯(lián)盟(W3C)規(guī)范,支持規(guī)范廣義標記語言(SGML)、可擴展標記語言(XML)和計算機圖元文件(CGM)。
IETM閱讀器選用基于ASP.NET和SQL Server的解決方案,采用B/S架構、基于ADO.NET實體數(shù)據(jù)訪問技術,用面向對象C#語言進行開發(fā)。
S1000D從布局、顯示樣式、對話框、警告、注意、注、鏈接、表格、插圖等方面對閱讀系統(tǒng)進行了規(guī)范,標準同時在鏈接、導航、注釋等方面對IETM閱讀系統(tǒng)提出了用戶交互相關要求。
基于S1000D的閱讀器的數(shù)據(jù)來源于DDN數(shù)據(jù)包,DDN數(shù)據(jù)包中包括出版物手冊(PM)、數(shù)據(jù)模塊(DM)和插圖(ICN)等文件內容,其中PM、DM為XML文件,ICN為圖片二進制文件。技術出版物手冊使用PM的形式組織,通過定義PM的結構和層級內容,引用DM和下級層級節(jié)點,組織手冊章節(jié)內容。在手冊中,DM是最小的內容組成部分,包括文字、插圖、表格、鏈接等內容。
通過導入DDN數(shù)據(jù)包,將手冊、DM、插圖等內容導入到閱讀器數(shù)據(jù)庫。用戶通過手冊結構樹或SNS結構樹導航定位并打開相應的數(shù)據(jù)模塊DM,根據(jù)S1000D對手冊內容展現(xiàn)的樣式和功能要求,需要把DM內容從XML字符串轉成HTML格式,以網(wǎng)頁方式將手冊資料展現(xiàn)給用戶。為了使轉換后的HTML頁面具備交互能力,根據(jù)S1000D對鏈接、插圖、熱點導航等內容的交互要求,從DM轉成的網(wǎng)頁時,把DM中的數(shù)據(jù)模塊引用、插圖引用、內部鏈接等轉化成網(wǎng)頁中的超鏈接,并實現(xiàn)超鏈接的目標內容,當用戶在閱讀資料時,可以點擊鏈接打開引用的數(shù)據(jù)模塊、插圖、熱點等內容。
IETM閱讀器包括手冊數(shù)據(jù)包管理、手冊閱讀兩大塊,這兩類操作的用戶群體不一樣,為了便于手冊版本升級,確保手冊使用人員所閱讀的手冊內容版本一致,閱讀器采用了B/S架構的網(wǎng)絡協(xié)作工作平臺,其物理架構見圖1。
根據(jù)圖1所示,閱讀器系統(tǒng)部署在IIS服務器上,數(shù)據(jù)庫部署在數(shù)據(jù)庫服務器上。在閱讀器中,使用全文檢索服務進行查找資料,為了獲取最佳響應速度和足夠的磁盤空間,全文索引服務單獨部署在一臺專用服務器上,以便有足夠的磁盤空間用于保存手冊資料。
閱讀器系統(tǒng)采用B/S架構比C/S架構的優(yōu)勢體現(xiàn)在系統(tǒng)升級、客戶端部署、用戶使用等方面,不論是系統(tǒng)部署還是系統(tǒng)新版本升級,只需要在IIS應用服務器上更新部署系統(tǒng)即可,使用用戶只需在客戶端使用IE瀏覽器進入閱讀器系統(tǒng)。
系統(tǒng)管理人員同樣是通過IE瀏覽器打開并進入系統(tǒng)管理端,導入閱讀器手冊數(shù)據(jù)包,導入后手冊數(shù)據(jù)分別保存在數(shù)據(jù)庫服務器、全文索引服務器中,管理員再將手冊授權給有權打開使用的用戶,從而實現(xiàn)手冊授權訪問。當手冊使用用戶進入閱讀器后,打開有權查閱的手冊,查看手冊資料、插圖,同時可以在手冊之間進行內容鏈接跳轉、熱點導航跳轉、圖形化故障排故等操作。
IETM 閱讀器是一個以S1000D 4.0數(shù)據(jù)包為數(shù)據(jù)源,利用先進的信息、網(wǎng)絡以及計算機技術,實現(xiàn)裝備IETM 電子手冊分派、管理、查看閱讀訪問的集成化軟件系統(tǒng),它以提高IETM 資料準確性和資料查找效率為目的,功能架構如圖2所示。
從圖2中可以看出,整個模型從上到下分為用戶界面層、業(yè)務邏輯層、數(shù)據(jù)訪問層和服務端,為了保證系統(tǒng)的穩(wěn)定運作,提高服務端的運行性能,服務端可分成數(shù)據(jù)庫服務器、WEB服務器、文件服務器3部分。
手冊結構樹(見圖3)中包括兩類節(jié)點,一類是目錄節(jié)點,一類是數(shù)據(jù)模塊內容節(jié)點。用戶打開手冊后,系統(tǒng)加載手冊的結構樹,用戶可以通過導航按鈕在手冊結構樹上切換選中的節(jié)點,也可以在通過單擊手冊結構樹中的節(jié)點選中并打開手冊資料。
SNS結構樹(見圖4)是一種層級結構樹,默認加載裝備的完整SNS結構樹數(shù)據(jù),用戶可以通過SNS編碼過濾,將符合條件的SNS顯示在結構樹上。在SNS結構樹中,數(shù)據(jù)模塊將掛在結構樹的SNS節(jié)點下,用戶可通過點擊數(shù)據(jù)模塊節(jié)點,打開相應的數(shù)據(jù)模塊網(wǎng)面。
用戶在手冊結構樹或SNS結構樹上點擊數(shù)據(jù)模塊節(jié)點,系統(tǒng)將數(shù)據(jù)模塊XML內容按設定的樣式轉換成網(wǎng)頁顯示在內容展現(xiàn)區(qū)域,并根據(jù)當前操作用戶所設置的適用性過濾條件去除不符合適用性條件的數(shù)據(jù)。用戶可以在內容頁面中添加書簽、備注等內容,還可查看數(shù)據(jù)模塊元數(shù)據(jù)、相關引用、表格和插圖等內容。通過頁面內容中的鏈接,用戶可以打開其它數(shù)據(jù)模塊或定位到文檔中的某個指定位置(見圖5)。
可以在插圖預覽界面通過前圖、后圖功能切換當前數(shù)據(jù)模塊文檔中的前后圖,也可通過分離窗口在新的窗口中顯示插圖,對于有熱點的CGM圖片,可以點擊文檔中通過文字鏈接高亮圖片中的熱點(見圖6)。
通過全文檢索功能模塊用戶可以根據(jù)關鍵詞在指定的手冊中查找數(shù)據(jù)模塊資料數(shù)據(jù),在查找出的結果中,將關鍵詞命中率高的記錄行顯示在列表最前面,顯示出抽取的部分內容,并在顯示的內容中將關鍵詞高亮顯示(見圖7)。
基于S1000D4.0 發(fā)布手冊數(shù)據(jù)包括兩部分:XML數(shù)據(jù)文件、圖片等多媒體資源文件,其中前者是結構化數(shù)據(jù),后者為非結構化數(shù)據(jù)。對于結構化XML數(shù)據(jù),我們可以壓縮成二進制數(shù)據(jù)保存到Sql Server數(shù)據(jù)庫中,但對于非結構化數(shù)據(jù)文件則上傳到文件服務器,保存到文件服務器上。
對于CGM圖片,為了實現(xiàn)CGM圖片與手冊資料內容之間的導航,需要將CGM圖片中的熱點數(shù)據(jù)讀出來并保存到Sql Server數(shù)據(jù)庫表中,在熱點導航中,可根據(jù)熱點APSName的值,實現(xiàn)通過文字高亮CGM圖上熱點、通過點擊CGM圖上熱點定位到資料文本內容的雙向導航。
為了方便用戶閱讀,閱讀器中使用兩種導航樹:手冊結構樹和SNS結構樹。手冊結構樹是根據(jù)出版物模塊PM數(shù)據(jù)組成結構特點,解析PM的嵌套層級結構作為手冊的目錄結構,手冊目錄結構包括手冊節(jié)點、手冊目錄節(jié)點、數(shù)據(jù)模塊DM節(jié)點。SNS結構樹則來自于IETM內容編制平臺上的SNS結構樹數(shù)據(jù)。通常用戶打開手冊后,加載的是手冊目錄樹,通過手冊目錄打開相應的數(shù)據(jù)模塊資料。
在系統(tǒng)中,手冊數(shù)據(jù)包中包含的數(shù)據(jù)模塊是以XML字符串形式保存到數(shù)據(jù)庫服務器上,該XML字符串符合S1000D4.0 Schema要求,分別包括IDStatus和Content兩部分,對于大多數(shù)普通手冊用戶對S1000D不熟,無法讀懂這些XML字符所代表的意思,因此,需要將數(shù)據(jù)模塊的XML內容轉換成可供普通用戶閱讀的數(shù)據(jù)格式。
閱讀器數(shù)據(jù)模塊XML內容翻譯器實現(xiàn)了將XML字符串轉化成網(wǎng)頁HTML的功能,將數(shù)據(jù)模塊對應的內容轉變?yōu)橐跃W(wǎng)頁形式展現(xiàn)給普通用戶,同時提供網(wǎng)頁頁面內容交互功能(如鏈接跳轉、插圖展現(xiàn)等)。
數(shù)據(jù)模塊X M L內容字符串完全符合S1000D4.0Schema,因此可以通過編寫程序將XML內容中的S1000D4.0元素標簽轉成Html元素標簽,即可將一份XML字符串轉成Html元素組成的字符串。轉換Html內容的方法包括直接將XML元素改名成Html元素(如數(shù)據(jù)模塊中的元素)、將XML中的某元素翻譯成一段網(wǎng)頁字符串(如比 傳統(tǒng)的故障隔離采用分步操作、回答問題以及跳轉等方式,引導用戶一步步完成故障診斷,這種方式最大的問題在于無法向用戶展現(xiàn)故障隔離操作的全貌,另外用戶也不能跳過不想執(zhí)行的操作環(huán)節(jié)。IETM閱讀器有效地解決了這些問題,根據(jù)操作步驟間的跳轉關系自動生成故障隔離流程圖,當用戶選中圖中某個環(huán)節(jié)時,系統(tǒng)自動顯示當前環(huán)節(jié)的操作內容,在排故過程中和排故完成后,用戶均可以看到整個排故過程內容。 閱讀器數(shù)據(jù)庫中存儲著大量的技術資料,使用全文檢索技術可以從技術資料庫中快速篩選并獲得所需的資料內容。全文檢索需要對被檢索的數(shù)據(jù)根據(jù)關鍵詞分詞方法建立索引,通過索引可以達到快速查詢到目標資料所在的位置及對應的詳細資料。 全文檢索的執(zhí)行過程如圖8所示。 全文檢索的關鍵是對原始數(shù)據(jù)進行索引和查詢,全文檢索有3個關鍵技術:分詞技術;索引技術;查詢檢索。 4.4.1 分詞技術 分詞就是對被索引內容進行內容分割,切分成最小單元,并且這些最小單元是有意義的,而不是單獨的文字,有可能是一個詞組。根據(jù)語言的特點,不同的語言也有不同的分詞技術,中文分詞不同于英文,有其獨特的分詞方法。 中文分詞一般采取預定義詞匯集合,通過遍歷文檔內容,以正向最大匹配的方法對比詞匯集合,完成對源文檔的內容分割。 4.4.2 索引技術 索引技術分為兩類,一類是文檔索引,另一類則是查詢索引。 文檔索引就是為系統(tǒng)中內容HTML文檔中的文本建立索引數(shù)據(jù),以便加速查詢。為了加快索引的查詢速度,采用倒排鏈表方法存儲索引數(shù)據(jù),所謂的倒排鏈表方法,是以詞組作為鏈表的鏈表頭,索引信息(索引信息包含索引所在文檔位置、詞匯頻率等信息)作為后續(xù)節(jié)點,多個索引信息組成一個索引信息鏈表。 查詢索引就是對用戶的查詢文件進行分析,劃分出詞組,并得到詞組的邏輯關系,用戶可以通過使用查詢關鍵字提高查詢結果準確度。 建立索引文件是相當緩慢的過程,所以可以在系統(tǒng)中將創(chuàng)建索引作為一個專門的功能,對于閱讀器數(shù)據(jù)庫中的那些數(shù)據(jù)模塊,在整個閱讀器使用過程中將不會再發(fā)生變更,因此,索引只需創(chuàng)建一次,索引一旦創(chuàng)建完畢將可以一直使用。 4.4.3 查詢檢索 查詢檢索就是根據(jù)查詢文本檢索出匹配內容的過程。在全文檢索中,查詢結果的匹配度、準確度是衡量全文檢索技術優(yōu)劣的關鍵因素,為了提供更為準確、匹配度更高的查詢結果,使用查詢結果權重的方法,通過該方法對查詢結果進行排序,權重高的結果排在前面,反之則排在后面。查詢結果權重的組成有兩個重要因素,分別為詞組出現(xiàn)頻率、文檔頻率。 詞組出現(xiàn)頻率,即查詢詞組在文檔中出現(xiàn)的次數(shù),次數(shù)越大則權重越高。 文檔頻率,即有多少文檔包含了該詞組,文檔越多則權重越大,文檔頻率主要在查詢文本中出現(xiàn)多個詞組時使用到,用于和其它詞組的權重作比較。 通過設置查詢結果權重信息,可把權重大的記錄放置在前面,提高用戶關注度。 本文針對用戶在閱讀裝備IETM 手冊時存在的問題與不便,提出開發(fā)基于S1000D的IETM閱讀器。在對系統(tǒng)物理架構、功能架構、關鍵技術等進行深入的研究和分析之后,利用Asp.Net 技術實現(xiàn)了IETM閱讀器,并將其應用于某型號裝備的電子手冊交付閱讀中,項目應用的效果表明,該閱讀器能夠同時裝載和管理多種電子手冊,且手冊內容的展示效果和交互能力較強,完全滿足裝備操作培訓和維修需要。 [1] 梁偉杰,于永利,張磊等. 裝備交互式電子技術手冊發(fā)展綜述[J]. 國防技術基礎,2009(5):9~l5. [2] S1000D International Specification for Technical Publications Utilizing A Common Source Data Base[S]. Issue 4.0,2008. T-65 [文獻標識碼] C [文章編號] 1003-6660(2017)04-0052-05 10.13237/j.cnki.asq.2017.04.013 2017-02-21 (編輯:勞邊)元素轉化成網(wǎng)頁上的圖像對象,同時生成圖像的熱點數(shù)據(jù))等方法。
4.3 圖形化故障隔離技術
4.4 全文檢索技術
5 結束語