一种带约束条件规则数据及映射规则文件生成方法与流程

文档序号:37267992发布日期:2024-03-12 20:54阅读:31来源:国知局
一种带约束条件规则数据及映射规则文件生成方法与流程

本发明涉及桥梁方案智能设计,尤其涉及一种带约束条件规则数据及映射规则文件生成方法。


背景技术:

1、知识图谱(knowledge graph),是通过将应用数学、图形学、信息可视化技术、信息科学等学科的理论与方法与计量学引文分析、共现分析等方法结合,并利用可视化的图谱形象地展示学科的核心结构、发展历史、前沿领域以及整体知识架构达到多学科融合目的的现代理论。

2、规则引擎由推理引擎发展而来,是一种嵌入在应用程序中的组件,实现了将业务决策从应用程序代码中分离出来,并使用预定义的语义模块编写业务决策。接受数据输入,解释业务规则,并根据规则做出业务决策。规则引擎可以在系统工作时,将外部的业务规则加载到系统中,并使得系统按照该业务规则进行工作。

3、在使用知识图谱中的桥梁设计规范条文与经典工程案例进行桥梁方案决策推理时,需要将其解析转换为规则引擎的业务规则才能被用于桥梁方案决策推理,这些规则通常需要经常进行增删与修改,以满足不断变化的业务需求,但这会增加规则的编写难度,影响可读性。

4、上述内容仅用于辅助理解本发明的技术方案,并不代表承认上述内容是现有技术。


技术实现思路

1、本发明的主要目的在于提供一种带约束条件规则数据及映射规则文件生成方法,旨在解决现有技术中使用规则引擎进行桥梁方案决策时,规则经常需要进行增删与修改,增加规则编写难度的技术问题。

2、为实现上述目的,本发明提供了一种带约束条件规则数据及映射规则文件生成方法,所述方法包括以下步骤:

3、基于预设词法规则与预设语法结构规则,生成解析器;

4、基于所述解析器,对条件规则数据进行词法解析,得到关键词;

5、基于所述关键词对应的语法结构进行语法解析,得到语法树;

6、基于所述语法树,生成规则引擎的业务规则。

7、可选地,所述基于预设词法规则与预设语法结构规则,生成解析器,包括:

8、根据所述预设词法规则与所述预设语法结构规则,确定规则文件,所述预设词法规则至少包括条件连接符规则、比较符规则、运算符规则、字面量规则、标识符规则、类变量符规则、类规则以及引用规则,所述预设语法结构规则至少包括类约束结构规则与条件结构规则,所述条件结构规则至少包括对象条件结构规则、复合条件结构规则以及比较表达式结构规则;

9、基于所述规则文件,生成所述解析器。

10、可选地,所述关键词至少包括条件连接符、比较符、运算符、字面量、标识符、类变量符、类以及引用符,所述比较符包括基础比较符与高级比较符,所述基础比较符至少包括大于比较符、小于比较符、等于比较符以及组合比较符,所述高级比较符至少包括正则比较符与列表检索比较符,所述运算符至少包括括号运算符、加减运算符、乘除运算符以及一元运算符,所述字面量至少包括空类型字面量、逻辑类型字面量、数值类型字面量以及字符类型字面量。

11、可选地,所述基于所述关键词对应的语法结构进行语法解析,得到语法树,包括:

12、根据所述类,确定类名;

13、根据所述关键词,确定条件;

14、基于所述条件,生成条件集合,所述条件集合中的条件通过分隔符连接;

15、通过预设符号,对所述条件集合进行包裹;

16、基于所述类名与包裹后的条件集合,得到类约束结构;

17、基于所述类约束结构,确定所述关键词对应的语法结构;

18、根据所述关键词对应的语法结构,生成所述语法树。

19、可选地,所述条件的结构类型包括比较表达式,所述根据所述关键词,确定条件,包括:

20、在所述条件的结构类型为比较表达式结构时,基于所述运算符的运算优先级,对变量进行组合,确定运算表达式,所述变量包括字面量变量、类属性变量、引用属性变量以及方法调用变量;

21、基于所述运算表达式、所述比较符以及比较结构,确定所述条件,所述比较结构包括二元结构与链式结构。

22、可选地,所述括号运算符的优先级高于所述一元运算符,所述一元运算符的优先级高于所述乘除运算符,所述乘除运算符的优先级高于所述加减运算符,所述基于所述运算符的运算优先级,对变量进行组合,确定运算表达式,包括:

23、根据所述括号运算符与所述变量,确定主表达式;

24、根据所述主表达式与所述一元运算符,确定一元运算表达式;

25、根据所述一元运算表达式与所述乘除运算符,确定乘除表达式;

26、根据所述乘除表达式与所述加减运算符,确定所述运算表达式。

27、可选地,所述带约束条件规则数据及映射规则文件生成方法,还包括:

28、根据所述空类型字面量、所述逻辑类型字面量、所述数值类型字面量以及所述字符类型字面量,确定所述字面量变量;

29、根据所述标识符,确定属性名;

30、基于层次符号与所述属性名,确定所述类属性变量;

31、基于所述引用符、所述层次符号与所述属性名,确定所述引用属性变量;

32、根据所述标识符,确定方法名;

33、根据所述引用符、所述层次符号以及所述方法名,确定所述方法结构;

34、根据引用运算表达式,确定参数列表结构,所述参数列表结构中的引用运算表达式通过分隔符连接;

35、基于所述方法结构与所述参数列表结构,确定所述方法调用变量。

36、可选地,所述条件至少包括一个子条件,所述条件的类型包括对象条件与复合条件,所述根据所述关键词,确定条件,包括:

37、在所述条件的结构类型为对象条件结构时,根据所述标识符,确定属性名,根据子条件,确定子条件集合,基于所述子条件集合与所述属性名,确定所述条件,所述子条件集合中的子条件通过分隔符连接;

38、在所述条件的结构类型为复合条件结构时,根据子条件,确定子条件集合,基于所述子条件集合与所述条件连接符,确定所述条件,所述子条件集合中的子条件通过分隔符连接。

39、可选地,所述带约束条件规则数据及映射规则文件生成方法,还包括:

40、根据控制点信息,在规范知识图谱中确定目标桥梁设计规范,并将所述目标桥梁设计规范映射为实体类,得到所述条件规则数据。

41、可选地,所述基于所述语法树,生成规则引擎的业务规则之后,还包括:

42、将所述控制点信息输入所述规则引擎,基于所述业务规则进行推理,得到目标梁型。

43、此外,为实现上述目的,本发明还提出一种带约束条件规则数据及映射规则文件生成装置,所述带约束条件规则数据及映射规则文件生成装置包括:

44、解析器生成模块,用于基于预设词法规则与预设语法结构规则,生成解析器;

45、词法解析模块,用于基于所述解析器,对条件规则数据进行词法解析,得到关键词;

46、语法解析模块,用于基于所述关键词对应的语法结构进行语法解析,得到语法树;

47、所述语法解析模块,还用于基于所述语法树,生成规则引擎的业务规则。

48、此外,为实现上述目的,本发明还提出一种带约束条件规则数据及映射规则文件生成设备,所述带约束条件规则数据及映射规则文件生成设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的带约束条件规则数据及映射规则文件生成程序,所述带约束条件规则数据及映射规则文件生成程序配置为实现如上文所述的带约束条件规则数据及映射规则文件生成方法的步骤。

49、此外,为实现上述目的,本发明还提出一种存储介质,所述存储介质上存储有带约束条件规则数据及映射规则文件生成程序,所述带约束条件规则数据及映射规则文件生成程序被处理器执行时实现如上文所述的带约束条件规则数据及映射规则文件生成方法的步骤。

50、在本发明中,基于预设词法规则与预设语法结构规则,生成解析器,基于解析器,对条件规则数据进行词法解析,得到关键词,基于关键词对应的语法结构进行语法解析,得到语法树,基于语法树,生成规则引擎的业务规则。由于使用规则引擎进行桥梁方案决策时,规则经常需要进行增删与修改,增加规则编写难度本发明设计了一种名为cjson(全称conditionjson)的语法,使用种简洁、层次结构清晰的语法,描述类的属性约束,cjson呈现条件约束的集合结构,其核心为“值比较符值”格式的条件对,通过每条“值比较符值”条件对作为对类的一个约束,这种语法结构使得规则的编写更加简便明了,并且能够在规则需要增删修改时更加方便地进行维护。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1