交互式电子技术手册解析关键技术研究

时间:2022-06-05 09:32:42

交互式电子技术手册解析关键技术研究

(南京航空航天大学 民航学院,江苏 南京 210016)

摘要:目前航空维修技术资料的大都仍采用面向文档的方式,使用效率较低。而新型的交互式电子技术手册(IETM),采用了信息关联和模块化的信息组织方式,便于用户快速地定位所需的信息,并实现人机交互。该文主要研究了使用IETM过程中所需的几个关键技术:过程数据模块的解析以及完成人机交互过程的核心部件――逻辑机的实现技术。

关键词:IETM;过程数据模块;XML解析;逻辑机

中图分类号:TP311文献标识码:A文章编号:1009-3044(2009)28-7941-02

Research on Key Technology to Parse Interactive Electronic Technical Manual

KOU Jian-hua, ZUO Hong-fu, SU Yan

(College of Civil Aviation, Nanjing University of Aeronautics and Astronautics, Nanjing 210016, China)

Abstract: At present, technical information for aviation maintenance is still published in document-oriented style and so much inefficient. Whereas Interactive Electronic Technical Manual (IETM) employs modularization and information association to organize data modules, which allows user to locate the necessary information quickly and can realize Human-Computer Interaction simultaneously. This paper mainly researches the key technology to be solved in using IETM: parsing Process Data Module and implementing core component of HCI: Logic Engine.

Key words: IETM; process data module; XML parsing; logic engine

目前国内使用的航空维修手册基本是面向文档型手册,文档间存在反复的交叉引用,不仅使用不便而且效率低下。交互式电子技术手册(IETM),采用模块化和信息关联的方式将技术资料以数字化的形式存储在计算机中[1],并用特定的逻辑方式使手册在使用过程中具有人机交互功能。目前ASD S1000D是应用广泛且最具潜力的IETM标准,国内对它的研究尚处于起步阶段[2]。数据模块(Data Module)是IETM中信息重用的核心,其中有一类特殊的数据模块――过程数据模块(Process Data Module,PDM),它实现了数据间的关联,而且该数据模块通过逻辑机的作用实现了人机交互功能[3]。为了便于跨平台交流,IETM是以XML文件形式存储,因此在使用过程中需要对数据模块进行解析,并通过逻辑机实现信息的输入和输出,最终将相关信息呈现出来供用户使用。本文针对使用IETM中的实际需求,在分析与研究过程数据模块的组织结构基础上,研究了支持IETM数据交互关联的数据模块解析原理和逻辑机功能。

1 过程数据模块

IETM数据的解析是通过逻辑机与过程数据模块相互作用来完成的。逻辑机通过解析过程数据模块来控制普通的数据模块调用及数据呈现,这是它区别于其它普通数据模块的本质特征。解析过程数据模块,首先需对其结构有所了解。过程数据模块是一种特殊的数据模块,是具有内在判断逻辑的程序流,但它同样遵循数据模块的规范,表现形式也是XML文件。Schema是描述和规范XML文件逻辑结构的一种语言,编写和解析XML文件都需基于Schema结构语言。Schema具有5种结构连接器,如表1所示。

过程数据模块的功能是将其他类型的离散数据模块,按照一定的逻辑顺序排列在一起,供逻辑机解读的连续信息流。过程数据模块主要的信息流都集中在节点中,它又包含两个重要子节点:节点和节点,前者用于声明变量和赋初值,后者则是一个信息序列节点,里面包括四大子节点:,, ,,其中节点中是呈现给用户的信息的主要来源,其余三个主要用于业务逻辑判断。

节点的作用是引入另一个数据模块过程数据模块或者普通的数据模块、对话框或者顺序节点。

节点是一个判断分支节点,逻辑机会先判断中的节点,指示在特定的逻辑条件下如何继续遍历过程数据模块,如果表达式结果为真,则逻辑机会遍历节点,否则遍历节点。

节点是选择分支节点,逻辑机根据其子节点的属性节点applicRefId的值,遍历相应的子节点。

节点是循环节点,逻辑机通过遍历子节点并判断其值,若为真则逻辑机会再次解析节点,实现循环遍历,否则跳出该节点并继续遍历其他节点。

2 逻辑机原理

过程数据模块是静态的程序流,本身还无法实现人机交互,逻辑机则是解读过程数据模块的一个通用程序,是程序脚本流的解释器。从逻辑机解析过程数据模块角度分析,逻辑机应包括三个主要功能:过程数据模块遍历、表达式赋值、人机对话。图1是逻辑机解析过程数据模块(PDM)的功能图,逻辑机在遍历PDM的过程中相应实现表达式赋值和人机对话功能。

1) 过程数据模块遍历

逻辑机遍历过程数据模块有两个依据:一个是Schema的连接器,它确定了各节点间的逻辑关系,是顺序、选择还是分支关系等,参见表1;二是每个XML节点的定义,即每个节点要求逻辑机如何处理,是返回值还是弹出一个对话框等。

逻辑机遍历过程数据模块是基于事件的解析过程,涉及两个部分:解析器和事件处理器。解析器负责读取XML文件,并向事件处理器发送事件,如节点开始和节点结束事件;而事件处理器则负责对事件做出响应,对传递的XML数据进行处理。

解析器读取XML文件并根据Schema结构判断各节点间的逻辑关系,父节点有哪些子节点,并且子节点是如何逻辑地组成父节点。解析器分析完毕,把需要处理的节点(事件)发送给事件处理器。

事件处理器则是处理各种类型节点的响应函数。例如解析器读到节点时,要求事件处理器处理,事件处理器则根据该节点含义,弹出一个相应的对话框。

2) 表达式赋值

表达式赋值是逻辑机遍历循环、分支节点的前提条件,是人机交互的基础。逻辑机通过遍历过程数据模块的节点(它含有完整的数值逻辑操作的信息)获得返回值,返回值既可用于逻辑判断,也可为变量赋值(变量值维护)。图2是节点结构。

由图2知,节点有4个选择分支组成,是个嵌套型节点。它既可以有一个基本单元分支(后面两个)组成直接返回值,也可以通过嵌套逻辑操作返回值。

3) 人机对话

人机对话不仅包括计算机弹出的对话框(要求维修人员用方式输入相关数据),还包括计算机与外界电子设备的交互,如与地面自动测试设备传递数据。

逻辑机遍历过程数据模块,有时弹出一个需用户处理的对话框(输入数据或者确认信息),逻辑机会根据用户的操作获取信息并更新解析过程数据模块的逻辑,以实现人机交互。处理Dialog的技术是逻辑机中人机交互技术重要环节。节点是节点中的一个重要子节点,图3是Dialog结构图。

从图3知,Dialog总共有五种类型,分别是:输入型、菜单型、按钮型、信息型和Dialog组。因此逻辑机在处理节点时,需要先遍历其子节点和属性节点,确认其对话框类型,弹出对话框并等待用户操作,最后读取用户的输入信息。

3 IETM信息解析呈现

IETM信息(即XML文件)解析呈现是在平台下利用C#编程语言实现的, 后台数据是从数据库中加载而获得的。图4是逻辑机解析过程数据模块流程,逻辑机首先根据Schema连接器判断过程数据模块节点的结构,然后对相应的节点(呈现、返回值或者调用其他数据模块)进行处理。当节点处理完毕,逻辑机会判断该节点是否有兄弟节点,如果有则循环以上操作,否则结束遍历。

图5是用一个过程数据模块实例,逻辑机根据图4的解析流程图和解析原理遍历整个过程数据模块,图6是相应的解析结果图。

4 结束语

本文在阐述过程数据模块理论和结构的基础上,对IETM解析原理和解析流程进行了研究。过程数据模块是存储逻辑程序流的数据模块,而逻辑机则是解读过程数据模块的功能函数,它提供相应的三大解析功能。(下转第7949页)

(上接第7942页)

最后本文通过对一个过程数据模块实例中若干关键节点的解析,展示了逻辑机与过程数据模块是如何相互作用并实现人机交互的,这为解析大型的过程数据模块奠定坚实的技术基础。

图6 实例结果图

参考文献:

[1] 胡梁勇,徐宗昌,刘惠君.S1000D中IETM数据模块管理分析[J].国防技术基础,2008(6).

[2] 李宗亮,姜莉莉,顾宗磊.基于ASD SIO00D标准的IETM制作研究[J].科学技术与工程,2007,7(19).

[3] 朱宁,杜晓明,梁波.IETM的研究与发展[J].武器装备自动化,2008,第27(11).

[4] 刘婕,张琳,温才 2.0+SQL Server动态网站开发从基础到实践[M].北京:电子工业出版社,2007.

[5] 孙鑫.XML、XML SCHEMA、XSLT 2.0和XQUERY开发详解[M].北京:电子工业出版社,2009.

上一篇:操作系统固化 下一篇:嵌入式IPv6防火墙体系结构研究与设计