面向服务的基于业务规则引擎的业务规则设计方法技术

技术编号:7180782 阅读:315 留言:0更新日期:2012-04-11 18:40
一种面向服务的基于业务规则引擎的业务规则设计方法,属于计算机图形编辑器技术领域,解决了现有业务规则缺乏通用性的问题,包括下述步骤:创建一个图形编辑器;在图形编辑器的工具栏中定义统一服务规则建模语言图元库;从图元库中选取图元到图形编辑器的编辑区中,通过属性视图区编辑图元属性,并且将图元相互嵌套,实现业务规则的图形化描述;将规则标签图元按优先级顺序连接;将编辑器中创建的对象生成统一服务规则建模语言代码并转换为规则语言代码。本发明专利技术以统一服务规则建模语言作为中间语言,屏蔽了不同业务规则引擎在规则语言上的差异,不受限于某种特定的业务规则引擎的约束。

【技术实现步骤摘要】

本专利技术属于计算机图形编辑器
,特别涉及一种将业务规则进行图形化描述并转化为规则语言的方法。
技术介绍
业务规则引擎,是一种嵌入在应用程序中的组件,主要功能是根据业务规则做出业务决策。现有的业务规则引擎有Dr00lS、IL0g、JesS等。在使用业务规则引擎时,IT团队需要针对公司的业务专门开发一套业务规则设计工具,再交付给业务规则设计者使用。这种开发模式缺点其一通常类似这种业务规则设计工具的开发都是针对特定应用的,也就是说每一个特定的大型应用若想集成业务规则引擎,都必须专门为它开发一个业务规则设计工具,而缺乏一种通用的业务规则设计工具适合所有公司来设计他们的业务规则。其二 本质上这种业务规则设计工具是某一种特定业务规则引擎(如ILog或Drools)的规则语言的设计器,而对于规则语言的语法格式方面,不同的业务规则引擎提供商基本上是各自为政,缺乏一种统一的标准,由此对于业务规则在规则语言层面上的描述还将受到具体的业务规则引擎的限制。
技术实现思路
为解决现有业务规则缺乏通用性、受限于特定的业务规则引擎的约束的问题,本专利技术提供一种,其实施方案如下,包括下述步骤创建一个图形编辑器;在图形编辑器的工具栏中定义统一服务规则建模语言图元库,所述图元库中的图元包括规则集标签图元、规则标签图元、条件标签图元、结果标签图元、服务标签图元、运算符容器标签图元、变量标签图元、运算符标签图元;从图元库中选取图元到图形编辑器的编辑区中,通过属性视图区编辑图元属性, 并且将图元按照业务规则引擎结构进行嵌套,实现业务规则的图形化描述,所述将图元按照业务规则引擎结构进行嵌套的方法是规则集标签图元嵌套规则标签图元,规则标签图元嵌套条件标签图元和结果标签图元,条件标签图元嵌套服务标签图元、运算符容器标签图元和变量标签图元,运算符容器标签图元嵌套运算符标签图元,结果标签图元嵌套服务标签图元;将规则标签图元按优先级顺序连接;将编辑器中创建的对象生成统一服务规则建模语言代码;将统一服务规则建模语言代码转换为规则语言代码。上述方案中,将规则标签图元按优先级顺序连接,是指用带箭头的规则连线将规则标签图元进行顺序连接,以确定规则之间的优先级,其中优先级值按箭头所指方向递减。作为本专利技术的优选方案,本专利技术可作如下设计使用基于Java的图形化编辑框架GEF来创建所述图形编辑器;使用XML来定义统一服务规则建模语言;所述统一服务规则建模语言与规则语言之间的映射关系使用XML来实现,所述规贝1Ji吾言为Drools或ILog或Jess0GEF,Graphical Editor Framework ;上述XML,其全称为Extensible Markup Language,中文含义为可扩展标记语言。本专利技术的目的是提出一种基于业务规则引擎的业务规则设计方法,使用该方法可以在SOA架构的应用中设计业务规则。其特点是对设计不同的SOA应用的业务规则具有通用性,以及不受限于某种特定的业务规则引擎的约束。本专利技术方法由两个过程构成业务规则的图形化设计和规则语言代码的转化。以下对本专利技术的原理作详细介绍 统一服务规则建模语言为实现该方法,本专利技术提出一种基于XML的通用的规则设计语言,即统一服务规则建模语言,该统一服务规则建模语言在本专利技术中处于核心地位,它与业务规则引擎的规则语言在结构上存在映射关系,该映射关系可以进行从统一服务规则建模语言代码到规则语言代码的单向转化。统一服务规则建模语言的schema如附图说明图1所示。规则语言映射表为实现该方法,本专利技术提出一种存储统一服务规则建模语言与规则语言(基于业务规则引擎)语法结构上的对应关系的映射表,当要把统一服务规则建模语言代码转化成业务规则引擎的规则语言时,将以该映射表作为转化的依据。针对不同的业务规则引擎可以开发相应的映射表。以下是针对Drools规则引擎开发的映射表实例的源代码< xml version=" 1.0" encoding="UTF-8" > <!--定义规则文件映射关系-->〈mappingxmlns:xsi=Mhttp://www.w3.org/2001/XMLSchema-instanceMxsi:noNamespaceSchemaLocation=MD:\XML\mapping schema.xsd"〉 〈filename name="package"〉 <element>failurl</element> <attribute>name</attribute〉 <suffix>.drl</ suffix〉 〈/filename〉〈declaration name="package"> <prefix>package</prefix> <blank/><attribute>name</attribute〉 <newline/> </declaration> <rule name="rule"><rulename name="rule"> <prefix>rule</prefix〉 <blank/> <openquotation/> <attribute>name</attribute〉<closequotation/> <newline/> </rulename><mlepriority name="rule"> <prefix>salience</prefix> <blank/><attribute>priority</attribute〉 <newline/> </rulepriority> <rulecondition name="rule"> <prefix>when</prefix> <newline/><element>when</element> <newline/> </rulecondition> <ruleaction name="rule"> <prefix>then</prefix> <newline/><element>then</element> <newline></newline> </ruleaction> </rule>〈/mapping〉业务规则的图形化设计本专利技术提供一个MVC模式的设计器,能够以图形化编辑的方式设计业务规则,此过程设计出来的业务规则的代码是基于统一服务规则建模语言的。统一服务规则建模语言的标签与view层的图元对应关系如表一所示表一标签名标签类别图元说明<ruleset>逻辑标签Rs规则集权利要求1.,其特征在于包括下述步骤 创建一个本文档来自技高网...

【技术保护点】
1.面向服务的基于业务规则引擎的业务规则设计方法,其特征在于:包括下述步骤:创建一个图形编辑器;在图形编辑器的工具栏中定义统一服务规则建模语言图元库,所述图元库中的图元包括规则集标签图元、规则标签图元、条件标签图元、结果标签图元、服务标签图元、运算符容器标签图元、变量标签图元、运算符标签图元;从图元库中选取图元到图形编辑器的编辑区中,通过属性视图区编辑图元属性,并且将图元按照业务规则引擎结构进行嵌套,实现业务规则的图形化描述,所述将图元按照业务规则引擎结构进行嵌套的方法是:规则集标签图元嵌套规则标签图元,规则标签图元嵌套条件标签图元和结果标签图元,条件标签图元嵌套服务标签图元、运算符容器标签图元和变量标签图元,运算符容器标签图元嵌套运算符标签图元,结果标签图元嵌套服务标签图元;将规则标签图元按优先级顺序连接;将编辑器中创建的对象生成统一服务规则建模语言代码;将统一服务规则建模语言代码转换为规则语言代码。

【技术特征摘要】

【专利技术属性】
技术研发人员:尹子琴
申请(专利权)人:云南爱迪科技有限公司
类型:发明
国别省市:53

相关技术
    暂无相关专利
网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1