摘要:正常情況下查閱AMM手冊,通過超鏈接可以很快跳轉(zhuǎn)至相關(guān)聯(lián)的AMM手冊中其他章節(jié)或其他手冊內(nèi)容,偶爾會遇到超鏈接失效的情況。本文就如何舉一反三查找同類失效超鏈接及其處理進行探討。
關(guān)鍵詞:超鏈接;SGML文件;數(shù)據(jù)提取
Keywords:hyperlink;SGML file;data extraction
在維修手冊管理及電子簽工卡編輯過程中常見的超鏈接問題有三種:第一種是被指向的章節(jié)存在,需要手動按章節(jié)查找,僅影響查閱速度,勉強可以接受;第二種是指向錯誤,誤導查閱方向,需要盡快修訂;第三種是鏈接章節(jié)不存在,會導致維修工作實施的中斷,需要立即更正。
1 超鏈接分類
依據(jù)目標是否為AMM手冊內(nèi)容,可將超鏈接分成兩類:內(nèi)部超鏈接和外部超鏈接,其說明如表1所示。
2 案例分析
2.1 第一種超鏈接問題
1)問題描述
該問題表現(xiàn)為被指向的章節(jié)存在,需要手動按章節(jié)目錄查找。AMM手冊中有些ESPM超鏈接可以跳轉(zhuǎn),以打開對應(yīng)的ESPM章節(jié)(見圖1),有些則僅跳轉(zhuǎn)至ESPM目錄(見圖2),需要手動按章節(jié)查找。
2)問題分析
查閱圖1和圖2中兩個外部超鏈接對應(yīng)的AMM的SGML文件內(nèi)容,圖1中參考ESPM20-56-00鏈接的REFLOC為六位數(shù),圖2中參考ESPM20-42-21鏈接的REFLOC為七位數(shù),末尾數(shù)為0。
通過Python軟件進行數(shù)據(jù)搜索、提取和整理后發(fā)現(xiàn),在整本AMM中共有 56個ESPM章節(jié)被調(diào)用。元素REFEXT的子元素REFLOC為六位數(shù)的ESPM的超鏈接有18個;REFLOC為七位數(shù)的ESPM超鏈接有38個,尾數(shù)皆為0。
經(jīng)過一一核對,在Airnav X系統(tǒng)中,REFEXT的子元素REFLOC為六位數(shù)的ESPM超鏈接不可跳轉(zhuǎn),REFLOC為七位數(shù)的ESPM超鏈接跳轉(zhuǎn)正常。查閱AMM的SGML文件用戶指南(第250頁),參考上文提到的定義,REFLOC為六位數(shù)指向非特定供應(yīng)商,故參考任一供應(yīng)商均可接受,該處超鏈接問題僅影響查閱速度,不會對工作造成實際影響。如果REFLOC為七位數(shù)的ESPM超鏈接出現(xiàn)問題,將會產(chǎn)生實際工作中參考錯誤手冊章節(jié)的風險。
3)解決方案
將出現(xiàn)該問題的所有超鏈接一次性發(fā)給空客,空客確認是Airnav X系統(tǒng)問題,將跟進處理。
2.2 第二種超鏈接問題
1)問題描述
該問題表現(xiàn)為指向錯誤,誤導查閱方向。在我司2020年5月版AMM手冊中有超鏈接PIPC但無法跳轉(zhuǎn)到對應(yīng)PIPC章節(jié)的情況,以圖3中PIPC-CSN(71-13-11-15 ITEM 010) 為例,點擊搜索不到結(jié)果。
2)問題分析
經(jīng)過初步數(shù)據(jù)收集,發(fā)現(xiàn)該問題出現(xiàn)在71 7678 LEAP構(gòu)型的三個AMM章節(jié)。
查閱AMM手冊的SGML文件及SGML文件的用戶指南(第199頁)可知,對于超鏈接至PIPC中的消耗性航材,元素EXPD的EXPDTYPE值為ENG;對于超鏈接至IPC中的消耗性航材,元素EXPD的EXPDTYPE值為AFRM。
因此,該問題是由源數(shù)據(jù)中元素EXPD的類型屬性EXPDTYPE值設(shè)置錯誤造成的。實際上PIPC手冊不包含71、76和78這三個章節(jié)(見圖4)。
由此推測該問題是由手冊編輯人員沒有意識到PIPC中沒有這三個章節(jié)導致的。按照這個思路,通過對Python軟件搜索
3)解決方案
反饋空客后,空客陸續(xù)對有問題的TASK進行修正,如圖5所示。
對于使用AMM手冊SGML文件做結(jié)構(gòu)化工卡編輯的維修單位而言,建議在與系統(tǒng)開發(fā)人員溝通確認可操作后,將整本AMM手冊SGML文件進行源數(shù)據(jù)字符替代,即把元素EXPD的類型屬性值EXPDTYPE="ENG">
AMM手冊ATA76(LEAP)中超鏈接錯誤已經(jīng)過反饋得到修正。
2.3 第三種超鏈接問題
1)問題描述
該問題表現(xiàn)為鏈接章節(jié)不存在。從圖6能夠清晰看出,一份MPD項目對應(yīng)的TASK的步驟參考TASK在202102版手冊中已被刪除,導致超鏈接失效,進而影響步驟施工,對于維修單位這種情況是不能接受的。
經(jīng)空客確認,該問題為其誤刪所致。那么,AMM手冊里還有沒有其他被刪除的TASK依然被以超鏈接的方式引用?
2)問題分析
前文定義介紹過,在SGML文件中AMM內(nèi)部超鏈接均存在于REFBLOCK元素中,參考用戶指南(第244頁)樣例,對比此處超鏈接源數(shù)據(jù),可以看出缺少REFINT元素,多了改版元素(202102版手冊中刪除產(chǎn)生變化,系統(tǒng)自動添加改版元素)。
按照該條件使用Python進行數(shù)據(jù)搜索,可以得出相應(yīng)的失效TASK超鏈接(見圖7,其中的搜索結(jié)果有待去重處理)。
通過修改正則表達式,可以進一步找出之前改版造成的失效超鏈接。
2.1節(jié)和2.2節(jié)的搜索均可通過修改圖7中的正則表達式實現(xiàn)。
3)解決方案
a. 被引用超鏈接在當前版本AMM手冊中存在:元素REFBLOCK中無REFINT元素,該種情況補齊元素信息即可恢復跳轉(zhuǎn)功能。
b. 被引用超鏈接在當前版本AMM手冊中不存在。又分兩種情況:
?該TASK內(nèi)容不適用我司,如我司未選的構(gòu)型。該失效鏈接對實際工作無影響,故可以接受。
?該TASK內(nèi)容適用我司,失效鏈接將導致工作無法進行,不可接受,需立即反饋空客申請ADVANCE COPY。將AMM手冊202011版中共300余失效內(nèi)部超鏈接反饋給空客(TR 80856659)后,空客認為其中47個缺失的TASK(占總數(shù)的15%)影響了127個TASK使用??湛蛯㈥懤m(xù)修正這些失效鏈接,計劃到2021 11版手冊發(fā)布時徹底處理完畢。
3 結(jié)束語
從參考用戶指南對AMM手冊SGML文件中元素的解讀出發(fā),將目標數(shù)據(jù)類型寫成正則表達式,利用Python軟件從整本SGML文件中查找提取所有目標數(shù)據(jù),整理分析確認后反饋空客修訂手冊,消除失效超鏈接對手冊查閱的影響。對于使用源數(shù)據(jù)進行結(jié)構(gòu)化工卡編輯的維修單位而言,通過修訂源數(shù)據(jù),可以保障編輯的工卡正確。
參考資料
[1] Airbus. AMM手冊[Z].
[2] Airbus. AMM的SGML文件用戶指南[Z].
作者簡介
李健軍,從事空客飛機的維修手冊系統(tǒng)管理及電子簽工卡編寫工作。