CN111736744B - 一种基于dsl的监控预警计算子*** - Google Patents
一种基于dsl的监控预警计算子*** Download PDFInfo
- Publication number
- CN111736744B CN111736744B CN202010708901.1A CN202010708901A CN111736744B CN 111736744 B CN111736744 B CN 111736744B CN 202010708901 A CN202010708901 A CN 202010708901A CN 111736744 B CN111736744 B CN 111736744B
- Authority
- CN
- China
- Prior art keywords
- calculation
- expression
- formula
- grammar
- module
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Business, Economics & Management (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- Finance (AREA)
- General Business, Economics & Management (AREA)
- Technology Law (AREA)
- Strategic Management (AREA)
- Marketing (AREA)
- Economics (AREA)
- Development Economics (AREA)
- Accounting & Taxation (AREA)
- Human Computer Interaction (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明公开了一种基于DSL的监控预警计算子***,涉及监控预警技术领域,该***能支持数值计算、逻辑计算以及函数计算,适用性更强;基于Scala解析组合子实现的DSL公式文法,编译完成后是class文件,可以与任意运行在jvm中的语法相结合,实现公式自定义可配置计算,不用硬编码;以满二叉树的方式对每一步计算结果进行保存,且每一步计算结果都能动态的实现可视化,便于快速排查问题,省时省力,不仅开发人员能排查问题,配置人员也可查看;可节约成本,新业务不需要再开发代码,只需要简单的配置公式就可以实现计算逻辑,快速迭代,快速满足需求;只需统一通过数据写入模块传入数值,就可以计算,操作非常方便。
Description
技术领域
本发明涉及监控预警技术领域,具体而言,涉及一种基于DSL的监控预警计算子***。
背景技术
监控预警平台作为一种基础设施***,其被广泛应用于金融公司。对于公司的金融产品,不管是产品开发还是后期的运维,还是上线后的运营,监控预警贯穿于整个产品周期,因此对于监控和预警的重复造轮子屡见不鲜,大小公司都在不断地投入人力建设自己的监控预警平台。
目前,对于监控预警平台的监控预警计算子***存在较大缺陷,主要体现在:
1)监控预警计算子***支持的算法有限,仅仅只支持+,-,*,/,>,>=,<,<=,==,!=,&&,||,!的计算,计算规则是简单的硬编码,复杂的公式配置不了,导致复杂的规则计算都得硬编码,无法实现配置化。
2)监控预警计算子***不具有可视化功能,在遇到问题时,排查起来非常麻烦,开发人员和配置人员经常一起排查问题,包括查询各种日志、数据库,然后基于查出来的数值替换规则里面的变量,再进行分析,难以快速确定是开发人员开发的不对,还是数据不对,或者配置人员配置出错,几乎每天的每时每刻都在排查问题,耗时耗力,而且出问题了只有开发人员可以看,配置人员看不了,导致配置人员难以对一些简单的问题进行处理。
发明内容
本发明在于提供一种基于DSL的监控预警计算子***,其能够缓解上述问题。
为了缓解上述的问题,本发明采取的技术方案如下:
一种基于DSL的监控预警计算子***,包括:
公式文法模块,其包括若干采用DSL编写得到的公式文法;
解析模块,用于采用Scala解析组合子对所述公式文法进行解析;
编译条件获取模块,用于根据公式文法解析结果,实现公式文法中的函数,以及获取公式文法中的变量和常量,其中,公式文法中的函数包括数值计算、逻辑计算以及函数计算,所述函数计算包括动态阈值计算;
文法编译模块,用于根据公式文法中的函数以及公式文法中的变量和常量,得到编译后的公式;
计算逻辑模块,用于根据计算条件数据以及编译后的公式,得到计算结果;
数据写入模块,用于写入所述计算条件数据;
计算结果存储模块,用于以满二叉树的方式保存计算逻辑模块得到的每一步计算结果;
可视化查询模块,用于动态查看计算结果存储模块中的每一步计算结果。
本技术方案的技术效果是:能支持数值计算、逻辑计算以及函数计算,适用性更强;基于Scala解析组合子实现的DSL公式文法,编译完成后是class文件,可以与任意运行在jvm中的语法相结合,实现公式自定义可配置计算,不用硬编码;以满二叉树的方式对每一步计算结果进行保存,且每一步计算结果都能动态的实现可视化,便于快速排查问题,省时省力,不仅开发人员能排查问题,配置人员也可查看;可节约成本,新业务不需要再开发代码,只需要简单的配置公式就可以实现计算逻辑,快速迭代,快速满足需求;只需统一通过数据写入模块传入数值,就可以计算,操作非常方便。
进一步地,所述公式文法包括:
表达式 = 正负号 ~ 表达式1 ~ rep(or/OR ~ 表达式1)
表达式1 = 正负号 ~ 表达式2 ~ rep(and/AND ~ 表达式2)
表达式2 = 正负号 ~ 表达式3 ~ rep(==/!= ~ 表达式3)
表达式3 = 正负号 ~ 表达式4 ~ rep(>/>=/</<= ~ 表达式4)
表达式4 = 正负号 ~ 表达式5 ~ rep(+/- ~ 表达式5)
表达式5 = 正负号 ~ 表达式6 ~ rep(*// ~ 表达式6)
表达式6 = opt(not/NOT/!)~ 因子
因子 = 常量 |正负号 ~ (括号表达式 | 函数表达式 | 变量)
常量 = 浮点数
正负号 = opt(+/-)
括号表达式 = (~> 表达式 <~)
函数表达式 = 标识符 ( 表达式 rep(,~ 表达式)~ )
变量 = 标识符。
本技术方案的技术效果是:该公式文法的表达,使***既能处理结构化数据,也能处理非结构化数据。
进一步地,所述Scala解析组合子包括顺序组合子、函数施用组合子、替代组合子和重复组合子。
进一步地,公式文法中的函数的实现包括:根据公式文法解析结果,首先获取计算符号,然后获取计算符号的左右变量,并对变量类型进行判断,最后进行计算。
更进一步地,所述数值计算的符号包括 +、-、*、/;
所述逻辑计算的符号包括and、AND 、or、OR、==、!=、>、<、>=、<= 、true、TRUE、false、FALSE、sqrt、abs、not、NOT、!;
所述函数计算的符号包括max、min、avg、Sum 、dynThreshold。
更进一步地,所述计算条件数据包括计算指标的变量和值。
更进一步地,所述计算逻辑模块在执行某次计算逻辑的任务中,对于中间计算结果,其按照左值,计算符号,右值的方式进行递归保存。
本技术方案的技术效果是:能够更好地将变量和其值进行保存。
更进一步地,所述计算逻辑模块在执行某次计算逻辑的任务中,对于最终计算结果,其保存形式为:左值;文法函数名,结果;右值。
本技术方案的技术效果是:能够更好地将变量和其值进行保存。
进一步地,所述数据写入模块包括能支持拖拽功能的预警配置页面,以通过数据拖拽的方式写入计算条件数据。
本技术方案的技术效果是:预警配置的页面能支持拖拉拽,界面友好,可操作性强。
为使本发明的上述目的、特征和优点能更明显易懂,下文特举本发明实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1是实施例中所述基于DSL的监控预警计算子***的实现架构图;
图2是实施例中计算过程中每一步计算结果的可视化示意图;
图3是实施例中拖拽预警配置页面的示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。
因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例
请参照图1~图3,本实施例所述基于DSL的监控预警计算子***,包括:
公式文法模块,其包括若干采用DSL编写得到的公式文法;
解析模块,用于采用Scala解析组合子对公式文法进行解析;
编译条件获取模块,用于根据公式文法解析结果,实现公式文法中的函数,以及获取公式文法中的变量和常量,其中,公式文法中的函数包括数值计算、逻辑计算以及函数计算,函数计算包括动态阈值计算;
文法编译模块,用于根据公式文法中的函数以及公式文法中的变量和常量,得到编译后的公式;
计算逻辑模块,用于根据计算条件数据以及编译后的公式,得到计算结果;
数据写入模块,用于写入计算条件数据;
计算结果存储模块,用于以满二叉树的方式保存计算逻辑模块得到的每一步计算结果;
可视化查询模块,用于动态查看计算结果存储模块中的每一步计算结果。
在本实施例中,公式文法模块所包含的公式文法定义描述如下:
表达式 = 正负号 ~ 表达式1 ~ rep(or/OR ~ 表达式1)
表达式1 = 正负号 ~ 表达式2 ~ rep(and/AND ~ 表达式2)
表达式2 = 正负号 ~ 表达式3 ~ rep(==/!= ~ 表达式3)
表达式3 = 正负号 ~ 表达式4 ~ rep(>/>=/</<= ~ 表达式4)
表达式4 = 正负号 ~ 表达式5 ~ rep(+/- ~ 表达式5)
表达式5 = 正负号 ~ 表达式6 ~ rep(*// ~ 表达式6)
表达式6 = opt(not/NOT/!)~ 因子
因子 = 常量 |正负号 ~ (括号表达式 | 函数表达式 | 变量)
常量 = 浮点数
正负号 = opt(+/-)
括号表达式 = (~> 表达式 <~)
函数表达式 = 标识符 ( 表达式 rep(,~ 表达式)~ )
变量 = 标识符。
在本实施例中,公式文法仅仅只是自然语言描述,不是程序的描述,因此通过解析模块采用Scala解析组合子实现了上述的文法。如果采用Antlr的话,会编译.g文件生成Java代码冗余繁多,不利于实现。本实施例采用以下Scala解析组合子进行实现:
(1)顺序组合子(~);
(2)替代组合子(|);
(3)选择性顺序组合子(~>、<~);
(4)重复组合子rep();
(5)使用组合子将DSL脚本与语义模型结合起来,能够将DSL解析后生成对应的语义模型,函数施用组合子有^^和^^^两个。
在本实施例中,编译条件获取模块中的编译条件即指的是实现公式文法中的函数以及获取公式文法中的变量和常量。
其中,公式文法中的函数的实现包括:根据公式文法解析结果,首先获取计算符号,然后获取计算符号的左右变量,并对变量类型进行判断,最后进行计算。
数值计算以*为例:首先获取*这个符号,其次获取乘法左右的变量,判断变量的类型,进行相应的乘法计算。
本***支持的计算符号如下:
数值计算的符号包括 +、-、*、/;
逻辑计算的符号包括and、AND 、or、OR、==、!=、>、<、>=、<= 、true、TRUE、false、FALSE、sqrt、abs、not、NOT、!;
函数计算的符号包括max、min、avg、Sum 、dynThreshold,dynThreshold用于动态阈值计算。
关于文法变量和常量:
对于有的变量是运行时传进去参与计算的,有的是需要运行时取变量值的,有的就是常量,以&开头的为运行时取变量值的,如实现的动态阈值方法dynThreshold(tableName,colName,colIndex)。
以"$接通率动态阈值1 * 接通率 + 承接达成率 / 2.0"为例:
接通率和承接达成率需要参与计算;$接通率动态阈值1从表中取动态阈值;2.0是变量。
在本实施例中,数据写入模块包括能支持拖拽功能的预警配置页面,以通过数据拖拽的方式写入计算条件数据,如图3所示。
在本实施例中,计算条件数据包括计算指标的变量和值,计算逻辑模块根据计算条件数据以及编译后的公式,在计算符号里进行代码逻辑实现。
为了更好地将变量和其值进行保存,以达到公式计算过程可再现的目的,这里将计算过程逻辑的实现进行了处理,以中序表达式为核心,参照中序遍历树的特点,将根作为计算结果,其值表示为:计算符号如max,+等,计算的值,也就是说计算符号和计算结果以逗号隔开。当然这只是计算的中间值,其余值递归实现,同一个符号的第二次以上计算,需要看左值和右值的类型,以字符数组长度的一般结点中的值为参与计算的值,因为保存时是以左值,运算符,右值进行递归保存的。
以与运算为例,其第一次计算时是2个数值,左值和右值,第二次计算时,因为我们保存了每一步的计算结果,因此上一步中可能第一个值为字符串,也有可能第二个也是字符串。
在本实施例中,计算结果存储模块的数据存储过程中,对于同一个计算符号,其第一次是值,第二次为字符串;如果左值是字符串,说明其是经过计算逻辑计算过的值,则看其计算值的长度,并以“;”分割获取长度,同理右值也是;如果左值、右值的变量名不为空,则分别组装变量值和名称;
如果左值长度大于右值长度,则说明左子树大,需要对右子树进行补齐,以“;”补齐,同时在补齐是需要考虑左子树的长度和右值的长度,在右子树中申请一个以“;”为值的长度和左子树一样的空数组,依据右子树的值进行填充,右子树的中间填充到数据的中间作为根节点,紧挨右子树左边的第一个值填充空数组中0到上一个根节点位置的子数组的中间位置,依次类推,这样才可以保证右子树也是根据计算逻辑排序的,从而形成了一个计算任务的满二叉树。如果左值长度小于右值长度,同理。
在计算逻辑模块在执行某次计算逻辑的任务中,对于最终计算结果,其在计算结果存储模块的保存形式为:左值;文法函数名,结果;右值。
计算结果的值为上述最终结果以“;”分割后的数组的中间值,公式的计算过程就是上述的最终计算结果。
以公式((承接达成率_上限 > 承接达成率目标弹性_上限) and (接通率< 接通率_下限) and (承接达成率 < 承接达成率目标弹性_上限) and ((1 < 承接达成率) and(承接达成率 < 承接达成率目标弹性_上限))) or ((承接达成率_上限 < 承接达成率目标弹性_上限) and (接通率< 接通率_下限) and (承接达成率 < 承接达成率目标弹性_上限) and ((1 < 承接达成率) and(承接达成率 < 承接达成率_上限)))为例:
其生成的计算过程为:
1.187#承接达成率_上限;>,true;1.15#承接达成率目标弹性_上限;and,true;0.912#接通率;<,true;0.92#接通率_下限;and,true;;0.862#承接达成率;;<,true;;1.15#承接达成率目标弹性_上限;;and,false;;1.0;;<,false;;0.862#承接达成率;;and,false;;0.862#承接达成率;;<,true;;1.15#承接达成率目标弹性_上限;;or,false;1.187#承接达成率_上限;<,false;1.15#承接达成率目标弹性_上限;and,false;0.912#接通率;<,true;0.92#接通率_下限;and,false;;0.862#承接达成率;;<,true;;1.15#承接达成率目标弹性_上限;;and,false;;1.0;;<,false;;0.862#承接达成率;;and,false;;0.862#承接达成率;;<,true;;1.187#承接达成率_上限;
作用是比如计算那个条件不满足,为了方便快速定位问题,任何人都可以点击查看计算过程,不满足的自然会标红,可快速发现复杂的计算逻辑为何不满足条件。如图2所示,为计算过程中每一步计算结果的可视化示意图。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (2)
1.一种基于DSL的监控预警计算子***,其特征在于,包括:
公式文法模块,其包括若干采用DSL编写得到的公式文法;
解析模块,用于采用Scala解析组合子对所述公式文法进行解析;
编译条件获取模块,用于根据公式文法解析结果,实现公式文法中的函数,以及获取公式文法中的变量和常量,其中,公式文法中的函数包括数值计算、逻辑计算以及函数计算,所述函数计算包括动态阈值计算;
文法编译模块,用于根据公式文法中的函数以及公式文法中的变量和常量,得到编译后的公式;
计算逻辑模块,用于根据计算条件数据以及编译后的公式,得到计算结果;
数据写入模块,用于写入所述计算条件数据;
计算结果存储模块,用于以满二叉树的方式保存计算逻辑模块得到的每一步计算结果;
可视化查询模块,用于动态查看计算结果存储模块中的每一步计算结果;
所述公式文法包括:
表达式 = 正负号 ~ 表达式1 ~ rep(or/OR ~ 表达式1)
表达式1 = 正负号 ~ 表达式2 ~ rep(and/AND ~ 表达式2)
表达式2 = 正负号 ~ 表达式3 ~ rep(==/!= ~ 表达式3)
表达式3 = 正负号 ~ 表达式4 ~ rep(>/>=/</<= ~ 表达式4)
表达式4 = 正负号 ~ 表达式5 ~ rep(+/- ~ 表达式5)
表达式5 = 正负号 ~ 表达式6 ~ rep(*// ~ 表达式6)
表达式6 = opt(not/NOT/!)~ 因子
因子 = 常量 |正负号 ~ (括号表达式 | 函数表达式 | 变量)
常量= 浮点数
正负号 = opt(+/-)
括号表达式 = (~>表达式<~)
函数表达式 = 标识符(表达式 rep(,~ 表达式)~ )
变量 = 标识符;
公式文法中的函数的实现包括:根据公式文法解析结果,首先获取计算符号,然后获取计算符号的左右变量,并对变量类型进行判断,最后进行计算;
所述数值计算的符号包括+、-、*和/;
所述逻辑计算的符号包括and、AND 、or、OR、==、!=、>、<、>=、<= 、true、TRUE、false、FALSE、sqrt、abs、not、NOT和!;
所述函数计算的符号包括max、min、avg、Sum和dynThreshold;
所述计算条件数据包括计算指标的变量和值;
所述计算逻辑模块在执行某次计算逻辑的任务中,对于中间计算结果,其按照左值,计算符号,右值的方式进行递归保存;
所述计算逻辑模块在执行某次计算逻辑的任务中,对于最终计算结果,其保存形式为:左值;文法函数名,结果;右值;
所述数据写入模块包括能支持拖拽功能的预警配置页面,以通过数据拖拽的方式写入计算条件数据。
2.根据权利要求1所述基于DSL的监控预警计算子***,其特征在于,所述Scala解析组合子包括顺序组合子、函数施用组合子、替代组合子和重复组合子。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010708901.1A CN111736744B (zh) | 2020-07-22 | 2020-07-22 | 一种基于dsl的监控预警计算子*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010708901.1A CN111736744B (zh) | 2020-07-22 | 2020-07-22 | 一种基于dsl的监控预警计算子*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111736744A CN111736744A (zh) | 2020-10-02 |
CN111736744B true CN111736744B (zh) | 2020-11-24 |
Family
ID=72656747
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010708901.1A Active CN111736744B (zh) | 2020-07-22 | 2020-07-22 | 一种基于dsl的监控预警计算子*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111736744B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112906373A (zh) * | 2021-02-20 | 2021-06-04 | 成都新希望金融信息有限公司 | 告警计算方法、装置、电子设备及存储介质 |
CN114880537B (zh) * | 2022-05-13 | 2023-06-30 | 深圳宏鹏数字供应链管理有限公司 | 一种企业风险评估方法、***及存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106990967A (zh) * | 2017-04-05 | 2017-07-28 | 百融(北京)金融信息服务股份有限公司 | 规则引擎的数据处理方法 |
CN110825488A (zh) * | 2019-09-29 | 2020-02-21 | 山东中创软件工程股份有限公司 | 一种业务处理方法、装置及电子设备和存储介质 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8347273B2 (en) * | 2008-10-09 | 2013-01-01 | International Business Machines Corporation | Tracing a calltree of a specified root method |
CN106095398B (zh) * | 2016-05-10 | 2019-07-02 | 深圳前海信息技术有限公司 | 基于dsl的大数据开发应用方法及装置 |
US10620924B2 (en) * | 2016-08-22 | 2020-04-14 | Oracle International Corporation | System and method for ontology induction through statistical profiling and reference schema matching |
CN109144506A (zh) * | 2018-07-05 | 2019-01-04 | 杭州涂鸦信息技术有限公司 | 一种可配置的ui界面生成方法 |
CN111432265B (zh) * | 2020-03-31 | 2021-08-31 | 腾讯科技(深圳)有限公司 | 一种处理视频画面的方法、相关装置及存储介质 |
-
2020
- 2020-07-22 CN CN202010708901.1A patent/CN111736744B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106990967A (zh) * | 2017-04-05 | 2017-07-28 | 百融(北京)金融信息服务股份有限公司 | 规则引擎的数据处理方法 |
CN110825488A (zh) * | 2019-09-29 | 2020-02-21 | 山东中创软件工程股份有限公司 | 一种业务处理方法、装置及电子设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111736744A (zh) | 2020-10-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7809669B2 (en) | Rule processing system for determining a result response | |
US8732107B2 (en) | Method and system for capturing business rules for automated decision procession | |
US6965887B2 (en) | Rule processing methods for automating a decision and assessing satisfiability of rule-based decision diagrams | |
CN111736744B (zh) | 一种基于dsl的监控预警计算子*** | |
CN112199086B (zh) | 自动编程控制***、方法、装置、电子设备及存储介质 | |
Peralta et al. | Analysis of imperative programs through analysis of constraint logic programs | |
CN106648662B (zh) | 基于工程造价计算描述语言bcl的报表生成装置及生成方法 | |
US12032941B2 (en) | Method and system for updating legacy software | |
CN113901231A (zh) | 一种知识图谱的演进分析方法、装置及介质 | |
CN114816420A (zh) | 一种数据处理方法和装置 | |
Reynolds et al. | Datatypes with shared selectors | |
Elenius | SWRL-IQ: A Prolog-based Query Tool for OWL and SWRL. | |
Rondogiannis et al. | First-order functional languages and intensional logic | |
Gaines | Class library implementation of an open architecture knowledge support system | |
CN115935943A (zh) | 一种支持自然语言结构计算的分析框架 | |
Azadmanesh et al. | Concept-driven generation of intuitive explanations of program execution for a visual tutor | |
Kneis et al. | A new satisfiability algorithm with applications to Max-Cut | |
CA2479342A1 (en) | Rule processing system and method | |
US11893381B1 (en) | Digital processing systems and methods for reducing file bundle sizes | |
Johnson et al. | Grammar formalisms viewed as evolving algebras | |
Heavey et al. | A model management systems approach to manufacturing systems design | |
Henzinger | Fully dynamic cycle-equivalence in graphs | |
Ermel et al. | RONs revisited: General approach to model reconfigurable object nets based on algebraic high-level nets | |
Ince et al. | The rapid generation of a class of software tools | |
CN117215535A (zh) | 一种基于建筑数据交换标准的语句处理方法、装置和设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |