System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及桥梁方案智能设计,尤其涉及一种带约束条件规则数据及映射规则文件生成方法。
技术介绍
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、语法解析模块,用于基于所述关键词对应本文档来自技高网...
【技术保护点】
1.一种带约束条件规则数据及映射规则文件生成方法,其特征在于,所述带约束条件规则数据及映射规则文件生成方法,包括:
2.如权利要求1所述的方法,其特征在于,所述基于预设词法规则与预设语法结构规则,生成解析器,包括:
3.如权利要求1所述的方法,其特征在于,所述关键词至少包括条件连接符、比较符、运算符、字面量、标识符、类变量符、类以及引用符,所述比较符包括基础比较符与高级比较符,所述基础比较符至少包括大于比较符、小于比较符、等于比较符以及组合比较符,所述高级比较符至少包括正则比较符与列表检索比较符,所述运算符至少包括括号运算符、加减运算符、乘除运算符以及一元运算符,所述字面量至少包括空类型字面量、逻辑类型字面量、数值类型字面量以及字符类型字面量。
4.如权利要求3所述的方法,其特征在于,所述基于所述关键词对应的语法结构进行语法解析,得到语法树,包括:
5.如权利要求4所述的方法,其特征在于,所述条件的结构类型包括比较表达式,所述根据所述关键词,确定条件,包括:
6.如权利要求5所述的方法,其特征在于,所述括号运算符的优先级
7.如权利要求5所述的方法,其特征在于,所述带约束条件规则数据及映射规则文件生成方法,还包括:
8.如权利要求4所述的方法,其特征在于,所述条件至少包括一个子条件,所述条件的类型包括对象条件与复合条件,所述根据所述关键词,确定条件,包括:
9.如权利要求1至8任一项所述的方法,其特征在于,所述带约束条件规则数据及映射规则文件生成方法,还包括:
10.如权利要求9所述的方法,其特征在于,所述基于所述语法树,生成规则引擎的业务规则之后,还包括:
...【技术特征摘要】
1.一种带约束条件规则数据及映射规则文件生成方法,其特征在于,所述带约束条件规则数据及映射规则文件生成方法,包括:
2.如权利要求1所述的方法,其特征在于,所述基于预设词法规则与预设语法结构规则,生成解析器,包括:
3.如权利要求1所述的方法,其特征在于,所述关键词至少包括条件连接符、比较符、运算符、字面量、标识符、类变量符、类以及引用符,所述比较符包括基础比较符与高级比较符,所述基础比较符至少包括大于比较符、小于比较符、等于比较符以及组合比较符,所述高级比较符至少包括正则比较符与列表检索比较符,所述运算符至少包括括号运算符、加减运算符、乘除运算符以及一元运算符,所述字面量至少包括空类型字面量、逻辑类型字面量、数值类型字面量以及字符类型字面量。
4.如权利要求3所述的方法,其特征在于,所述基于所述关键词对应的语法结构进行语法解析,得到语法树,包括:
5.如权利要求4所述的方...
【专利技术属性】
技术研发人员:彭利辉,柏华军,韩杰,李波,宋文祥,吴佳明,赵念溪,姚洪锡,郑洪,陈瓴,张凯翔,周柳雯妮,夏昕,陈致淳,
申请(专利权)人:中铁第四勘察设计院集团有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。