论文部分内容阅读
规则引擎是推理引擎的一种,它起源于基于规则的专家系统。近些年来,规则引擎被越来越广泛的应用在业务逻辑的处理过程中,它将业务决策从应用程序代码中分离出来,接收数据输入,做出业务决策。这样不仅降低了在代码中维护业务逻辑的成本,也有利于对独立规则的动态变更,大大提高了流程或应用的柔性。但与此同时,随着新技术的不断使用,规则引擎也逐渐暴露了自身的不足。近年来XML这种数据处理的标准格式已经成了最基本的数据和信息载体,成为网络世界的“国际语言”。规则引擎中处理的数据有可能是来自外部网络的XML数据,但现有的规则引擎还不能够直接进行XML数据操作,必须先将XML数据提取出来并加以包装,然后才输入规则引擎,这就使业务处理过程变的繁琐。另外,现存的XML操作技术,如XQuery只是提供对XML文件的查询操作,无法实现如插入、删除、修改等操作。因此有必要对规则引擎加以扩展,使其在处理业务逻辑的同时,也能够完成对XML数据的各种操作。本文首先介绍了规则引擎和XML数据操作技术的发展现状、规则引擎的基本概念和工作原理以及XML的相关技术。分析了使用规则引擎实现XML数据操作需要解决的问题。针对存在的问题提出一个解决方案;定义了一种XML数据操作规则语言,并使用XML Schema对其语法进行了详细描述;对规则引擎技术进行扩展,设计了数据操作规则化的方式和规则化的过程,增加了规则输入队列和规则处理器等;对XML数据操作系统做了简要设计,为以后系统的实现奠定基础。基于规则引擎的XML数据操作研究,将会为简化涉及XML数据处理的业务过程提供一个参考方案。本文的创新点主要有:1)详细分析了XML数据操作规则语言的要素,定义并描述了规则语言语法;2)对规则引擎技术进行扩展,设计了数据操作规则化的方法和过程,增加了规则输入队列和规则处理器;3)对XML数据操作系统做了简要设计。