一种业务规则解析方法技术

技术编号:24996915 阅读:35 留言:0更新日期:2020-07-24 17:59
本发明专利技术公开的业务规则解析方法,涉及数据处理技术领域,根据业务规则的标识,获取业务规则对应的规则表达式,对规则表达式进行语义分析,得到规则表达式的业务因子、运算符及固定数值,获取业务因子对应的值,根据业务因子对应的值,将规则表达式转换为机器能够识别的规则表达式,实现了业务规则执行与前置数据准备配置的解耦,可以直接使用各条业务规则,不需要操作人员再去了解每一条业务规则需要提前去做哪些查询服务,在降低配置难度的同时,提高了使用业务规则的灵活度及执行业务规则的效率。

【技术实现步骤摘要】
一种业务规则解析方法
本专利技术涉及数据处理
,具体涉及一种业务规则解析方法。
技术介绍
目前各个企事业单位的核心系统可以通过产品映射一系列业务规则并得到期望结果。每个产品对于一个或一组业务规则,组成规则与业务人员制定期望结果,需要基于业务交易场景中的人、事、物抽象业务交易场景的相关属性,如期限、客户年龄、账户状态等。现有的业务规则解析方案主要包括:业务人员根据不同的业务需求完成业务规则的定义以及期望结果的定义。核心系统运行时会根据产品映射到一条或一组业务规则,解析业务规则内容,得到期望结果。该方案存在以下缺陷:(1)业务规则一旦配置完成,只能根据产品作为维度映射出一条或一组规则,无法直接使用想要的业务规则或规则组;(2)执行业务规则得到的结果,只有结果一项数据,无法知道产生此结果的原因以及相关数据,也无法确认由哪条规则得到此结果;(3)若想要执行业务规则,必须要提前准备好所有可能使用到的业务数据。若没有提前准备相关业务数据,可能导致输出结果异常,同时提前准备大量不使用的冗余数据,严重影响了效率。基于上述情况如何能设计一种操作简单方便且高效的业务规则解析方法,提高使用业务规则的灵活度及执行业务规则的效率成为相关业务部门的一大痛点。
技术实现思路
为解决现有技术的不足,本专利技术实施例提供了一种业务规则解析方法,该方法包括:根据业务规则的标识,获取所述业务规则对应的规则表达式;对所述规则表达式进行语义分析,得到所述规则表达式的业务因子、运算符及固定数值,相比于现有通过机器识别的业务规则,可以配置中文化的业务规则,通过语义解析其含义,解决对于纯业务人员来说业务规则可读性差、配置难度高的问题。获取所述业务因子对应的值;根据所述业务因子对应的值,将所述规则表达式转换为机器能够识别的规则表达式,解决了现有方案的想要使用规则,需要提前准备所有可能使用的业务因子所对应的值的问题,减少了系统大量的无用开销,同时一定程度避免了因遗漏部分业务因子而导致业务规则处理信息不完整,最终输出异常的问题。优选地,在将所述规则表达式转换为机器能够识别的规则表达式之后,所述方法还包括:执行所述规则表达式,得到执行结果;根据所述执行结果,得到最终的期望结果或运算结果,实现了业务规则输出的多样性,既可以选择输出计算结果,也可以选择满足期望条件时,输出期望结果。优选地,将所述规则表达式转换为机器能够识别的规则表达式包括:将所述规则表达式中业务因子、运算符及固定值由自然语言转换为机器所能识别的语言。优选地,获取所述业务因子对应的值包括:分别解析所述规则表达式的各个业务因子,将自然语言描述的业务因子与对应的机器语言描述的业务因子建立映射关系,根据业务因子属性的定义,获取业务因子的取值来源,得到业务因子的值。优选地,根据业务规则的标识,获取所述业务规则对应的规则表达式包括:根据不同的业务交易场景,为所述业务规则筛选不同类型的输入数据;根据所述业务规则的生效日期、失效日期、生效时间、失效时间、及状态,筛选出有效的通用业务规则,实现了多元化的使用业务规则,既能以产品、业务规则使用业务规则,也能以独立的业务规则或者业务规则集合来使用业务规则。本专利技术实施例提供的业务规则解析方法,具有以下有益效果:实现了业务规则执行与前置数据准备配置的解耦,可以直接使用各条业务规则,不需要操作人员再去了解每一条业务规则需要提前去做哪些查询服务,在降低配置难度的同时,提高了使用业务规则的灵活度及执行业务规则的效率。具体实施方式以下结合具体实施例对本专利技术作具体的介绍。本专利技术提供的实施例提供的业务规则解析方法,包括以下步骤:S101,根据业务规则的标识,获取业务规则对应的规则表达式。S102,对规则表达式进行语义分析,得到规则表达式的业务因子、运算符及固定数值。作为一个具体的实施例,其中业务因子用符号“[]”包起来,操作符为空行、运算符及空行形式,剩余则默认为固定值。如规则表达式[年龄]大于18并且[年龄]小于50并且[当前贷款金额]小于或等于[月收入]除以2,其中“年龄”、“当前贷款金额”、“月收入”为业务因子,“大于”、“小于”、“小于或等于”、“除以”、“并且”为操作符,18、50、2为固定值。S103,获取业务因子对应的值。S104,根据业务因子对应的值,将规则表达式转换为机器能够识别的规则表达式。其中,取得业务因子后,就需要去获取业务因子对应的值,才能参与运算工作。作为一个具体的实施例,首先将业务因子分成若干组,如“年龄”、“性别”、“职业”等都属于客户信息组,“近12个月最长贷款逾期天数”、“近12个月贷款逾期次数”等都属于贷款逾期信息组,“申请机构”、“申请渠道”、“申请金额”等则属于参数组。由上述举例可以看出,业务因子组分为两大类,一类是初始参数分组、一类是需要主动查询的其他分组。将高内聚的业务因子放在同一组中,当规则使用到其中某一个业务因子,则查询所有业务因子,可以避免重复查询的情况出现,如“近12个月最长贷款逾期天数”、“近12个月贷款逾期次数”都需要查询贷款模块的贷款逾期信息服务。具体到每一个业务因子分组,则根据实际业务逻辑来决定业务因子的取值方式。例如需要计算一个简单的规则表达式如下:如果年龄大于65或年龄小于18时,则返回拒绝;当年龄大于18且年龄小于或等于65时,则返回通过。在这个规则表达式中,需要知道年龄这个业务因子的值是多少,比如年龄等于25,这样上述的业务表达式才能得到结果通过。而要取到年龄的值25,则需要去查询年龄信息从哪里去获取,这时就用到了因子分组。可选地,在将规则表达式转换为机器能够识别的规则表达式之后,该方法还包括:执行规则表达式,得到执行结果;根据执行结果,得到最终的期望结果或运算结果。作为一个具体的实施例,执行规则表达式使用的是基于开源应用QLExpress完成的。此处规则结果分为两类,一类结果为布尔类型,此类型规则为若表达式运算结果为true,则最终输出规则中配置的期望结果,若表达式输出结果为false,则不输出任何信息。另一类结果为数值类型,此类型规则直接输出规则表达式的运算结果。可选地,将规则表达式转换为机器能够识别的规则表达式包括:将规则表达式中业务因子、运算符及固定值由自然语言转换为机器所能识别的语言。作为一个具体的实施例,在规则表达式中,对于年龄、大于、并且这一类描述在系统执行时并不能直接分析,需要将其转换为对应的机器能识别的语言,如将“[渠道]等于APP”需要转换成SOURCE_TYPE==APP。同时,需要将SOURCE_TYPE转成对应的值如“MT”。可选地,获取所述业务因子对应的值包括:分别解析规则表达式的各个业务因子,将自然语言描述的业务因子与对应的机器语言描述的业务因子建立映射关系,根据业务本文档来自技高网...

【技术保护点】
1.一种业务规则解析方法,其特征在于,包括:/n根据业务规则的标识,获取所述业务规则对应的规则表达式;/n对所述规则表达式进行语义分析,得到所述规则表达式的业务因子、运算符及固定数值;/n获取所述业务因子对应的值;/n根据所述业务因子对应的值,将所述规则表达式转换为机器能够识别的规则表达式。/n

【技术特征摘要】
1.一种业务规则解析方法,其特征在于,包括:
根据业务规则的标识,获取所述业务规则对应的规则表达式;
对所述规则表达式进行语义分析,得到所述规则表达式的业务因子、运算符及固定数值;
获取所述业务因子对应的值;
根据所述业务因子对应的值,将所述规则表达式转换为机器能够识别的规则表达式。


2.根据权利要求1所述的业务规则解析方法,其特征在于,在将所述规则表达式转换为机器能够识别的规则表达式之后,所述方法还包括:
执行所述规则表达式,得到执行结果;
根据所述执行结果,得到最终的期望结果或运算结果。


3.根据权利要求1所述的业务规则解析的方法,其特征在于,将所述规则表达式转换为机器能够识别的规则表达式包括:
将所述规则表达式中业务因子、运算符及固定值由自然语言转换为机器所能识别的语言。...

【专利技术属性】
技术研发人员:陈浩然程亮
申请(专利权)人:神州数码融信软件有限公司
类型:发明
国别省市:北京;11

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

1