设为首页 | 加入收藏 | 登录 | 注册 
  • 当前位置:首页 » 新闻中心 » 行业知识库
  • 业务规则与BREX

    发布日期:2014-09-23   信息来源:来自网络  浏览次数:
     

    由于S1000D是用于支持包括所有海陆空装备在内的国际性技术出版物标准规范,因此,为了使其具备高度的灵活性,S1000D规范在许多标准应用的细节方面并未作明确的规定,而是要求各应用项目根据自身的实际情况,在项目范围内就标准应用的规则做出统一的约定。而每个项目特定的标准应用规则约定,就构成了该项目特定的业务规则(Business Rule)。 一个S1000D项目特定的业务规则,必须被该项目各个参研单位所知晓和执行,这样才能确保各自编制产生的技术出版物数据内容的完整性和一致性。那么,如何才能将项目特定的业务规则传达至各个参研单位呢?一种原始的办法,就是将业务规则编制成书面文档,下发各个参研单位遵照执行。但是这种办法的缺陷是显而易见的,不但更改和交换十分不便,更重要的是,无法自动地检验所编制的数据模块内容是否符合业务规则的约定。为此,从2.2版开始,S1000D规范设计了一种业务规则交换机制,即:BREXBusiness Rules EXchange)数据模块,用于在项目范围内交换和共享项目特定的业务规则。 S1000D规定,每个数据模块必须引用且只能引用一个BREX数据模块。该BREX数据模块既可以是特定项目专用的BREX数据模块,也可以是S1000D规范各版本提供的缺省BREX数据模块。若是后者,则表明项目自身并没有特定的业务规则,只要符合S1000D规范中约定的业务规则即可。 S1000DBREX数据模块的编码有严格的要求,即:BREX数据模块的信息码必须是022,项目位置码必须是D。例如:用于XX装备基本型的BREX数据模块编码应为XX - A 00 00 - 00 00A 022A D;用于XX装备之B改型的NN系统的BREX数据模块编码应为XX - B NN 00 00 00A 022A D 具体的业务规则是通过BREX数据模块内容部分的objrule元素来约定的。其中,objpath是必需的。该元素值是一个Xpath地址,用于指明业务规则所作用的对象在DTD/Schema中的位置。该元素具有一个可选的属性objappl。当该属性值为“0”时,表明相应的对象在它所处的上下文中不得使用;当该属性值为“1”时,表明对应的对象在它所处的上下文中必须使用。而objval用于定义相应的对象在本项目中的取值或取值范围。objuse则用于对相应的业务规则进行简要的描述。

    示例一 规则定义 …… //dmaddres/dmc/avee/modelic Bike model identification S1000D Bike platform S1000D Bike light system …… 规则含义 本项目所有数据模块编码的modelic部分用于指定自行车型号识别码。其允许的取值有两个,分别为: S1000DBIKE:代表自行车平台的型号识别码; S1000DLIGHTING:代表自行车照明系统的型号识别码。

    示例二 规则定义 …… //warning/seqlist Sequential lists are not allowed in Warnings …… 规则含义 在本项目中,在所有的warning(警告)中不允许使用seqlist(顺序列表)。

    示例三 规则定义 …… //caption/@colour Caption color Green Yellow Red Clear - Default value …… 规则含义 在本项目中,所有caption(标题)的颜色属性值及其含义约定为: co01:绿色; co02:黄色; co03:红色; co09:自动。 特别提示:S1000D不允许对其提供的DTD/Schema进行任何的改动。对其中元素、属性的特殊使用要求,必须且只能通过业务规则来约定。 然而,迄今为止,S1000D关于业务规则以及BREX机制的定义和应用方法,还显得很不成熟,尚处于不断的丰富和完善中。不过,尽管如此,业务规则以及BREX机制对于成功实施S1000D项目的重要性,已经不容置疑。

    关于希盟信 | 联系我们 | 法律声明 | 网站地图

    copyright@2009-2016 西安希盟信仿真科技有限公司  陕ICP备12011946号