一种基于XML的数据生成工具开发系统技术方案

技术编号:22054426 阅读:31 留言:0更新日期:2019-09-07 14:58
本发明专利技术公开了一种基于XML的数据生成工具开发方法,本发明专利技术属于配置数据初始化技术领域,包括可编程XML配置脚本、输入适配器模块、数据结构模块、通用工具模块、数据解析模块、IOC属性自动装配模块、脚本解析模块、文件输出模块、类映射模块、语法智能提示模块、脚本调试模块和运行日志输出模块,通过构建一个统一的数据配置工具开发平台,平台以XML脚本的形式对外提供编程接口,在XML脚本中,定义了一套可编程脚本语法,帮助开发人员快速精确的开发出安全的数据配置。

A Data Generation Tool Development System Based on XML

【技术实现步骤摘要】
一种基于XML的数据生成工具开发系统
本专利技术涉及配置数据初始化
,确切地说涉及一种基于XML的数据生成工具开发系统。
技术介绍
在国内外铁路和城市轨道交通领域,大多数实时在线控制和/监控系统的正常运行,都需要预先完成配置数据的初始化工作,系统复杂程度越高,配置数据的量就越大,为实现对系统预制数据的初始化配置,在系统运行前,有大量的配置数据生成工作需要离线完成。为保证数据准确、安全,配置数据的生成工作通常由数据配置工具完成。近年来,轨道交通领域快速发展,要求数据配置工具能够的快速开发,精确的生成安全、可靠的数据,而现有的数据配置工具多采用编码人员选择一门编程语言独立编码完成,配置工具之间存在大量重复编码问题,不能满足工具快速开发的要求,开发效率低。在现有技术中,如公开号为CN102799709B,公开时间为2015年4月1日,名称为“基于XML的系统仿真试验环境构建与配置系统及方法”的中国专利技术专利文献,公开了一种基于XML的系统仿真试验环境构建与配置系统及方法,系统包括仿真试验配置器、性能参数编辑器、成员监视服务、数据访问服务、试验配置库、试验资源库和装备性能库。方法中,试验管理人员在总控台使用仿真试验配置器进行席位配置、模拟器工作参数配置、交互关系配置、指挥关系配置等;总控台广播发送初始化命令;各席位上的成员监视服务接收初始化命令,从数据库中下载并启动相应模拟器程序;模拟器启动时,通过数据访问服务,从装备性能数据库中读取自身运行所需要的性能参数,通过数据访问服务,从试验配置库中下载XML格式的配置文件并读取自身的运行参数;系统启动完毕,完成初始化工作,等待仿真试验的开始。从功能上来说,数据配置工具就是将特定格式的输入数据经过指定规则的逻辑运算得到指定格式的输出数据,所处理和生成的数据的格式是多样的,独立开发数据配置工具的开发方式不能统一的适配不同格式的输入文件和输出文件,工具开发人员的不同可能带来工具质量的差异,不能满足轨道交通领域生产对数据配置工具所生成的数据的安全要求。
技术实现思路
本专利技术的目的在于针对现有技术的问题,提出了一种基于XML配置的数据配置工具开发框架,该框架通过构建一个统一的数据配置工具开发平台,平台以XML脚本的形式对外提供编程接口,在XML脚本中,定义了一套可编程脚本语法,帮助开发人员快速精确的开发出安全的数据配置系统。本专利技术的目的是通过以下技术方案实现的:一种基于XML的数据生成工具开发系统,其特征在于:包括用于接收输入数据的输入适配器模块、用于解析可编程XML配置脚本语法的脚本解析模块、用于逻辑运算的数据解析模块、用于将对可编程XML配置脚本解析过程中生成的中间数据以及所述数据解析模块的解析结果输出到指定格式文件中的文件输出模块、用于在XML配置脚本键入时进行提示的语法智能提示模块和用于在系统扩展时将上述中间数据自动映射为C#数据类的类映射模块以及用于调试XML脚本的脚本调试模块;所述输入适配器模块和文件输出模块之间还设置有用于以统一的数据结构存储由所述输入适配器模块加载的输入数据以及所述中间数据的数据结构模块,以及在系统扩展时将所述中间数据的相应数据节点自动注入到扩展出的任务处理器中的C#数据类的属性中和将任务处理器运算完成后产生的数据注入到相应的中间数据节点中的IOC属性自动装配模块。所述输入适配器模块用于在文件输入端对不同格式的输入文件进行识别和读取并加载到数据结构模块中,所述输入文件的输入格式包括xml、par、ini、execl、csv中的一种或多种。所述数据结构模块用于将输入适配器模块识别和读取的不同格式的输入文件封装成统一的数据结构格式,并针对不同格式的输入文件向上一操作层提供统一的操作接口。所述数据结构模块将所述输入文件的数据划分为元数据和操作数据,所述元数据对C#数据类中的基础数据类型进行封装,使得不同类型的元数据之间可以合法的相互转化,并且在可编程XML配置脚本中呈现弱类型语言特征;元数据还将输入适配器模块加载的输入数据封装成为输入型数据结构,方便系统对输入数据的统一操作;所述操作数据是在对可编程XML配置脚本解析时产生中间数据的载体,操作数据采用树形结构存储中间数据。所述可编程XML配置脚本是写入的,用于以自定义的语法编写具体数据生成工具的业务逻辑,该业务逻辑定义加载到数据结构模块的输入数据具体处理并得到中间数据的过程,并将中间数据输出到输出文件的输出方式;当数据生成工具的逻辑难以在XML配置脚本中实现时,本开发系统提供任务处理器的方式支持系统扩展,将该逻辑转移到后台继承自系统扩展接口CommonTask的C#代码中实现,XML脚本提供专有的挂载钩子标签将后台任务处理器C#代码衔接起来整体运行。所述脚本解析模块用于解析可编程XML配置脚本的语法,并运行脚本、执行脚本语法操作,调用下一层操作的数据解析器模块对加载到数据结构模块的输入数据进行具体的数据协议运算、转换处理生成中间数据。所述C#数据类的属性包括Member、Alias以及InitValue修饰的类属性;所述IOC属性自动装配模块对注入任务处理器中的特性Member、Alias以及InitValue修饰的类属性进行实例化,然后将指定的中间数据值自动的装配到该类的属性上,并在该类中的扩展任务处理完成后,IOC属性自动装配模块再将被注入特性Refill修饰的类属性值自动装配到指定的中间数据节点上。所述文件输出模块根据所述可编程XML配置脚本中定义的中间数据输出方式,将由所述脚本解析模块产生的中间数据输出到指定格式的文件中,所述指定格式包括二进制、TXT文本、ini、par以及xml中的一种或者多种。所述类映射模块用于依据上述XML脚本语法中定义的数据映射方式将可编程XML配置脚本中指定的中间数据节点在系统运行前自动转化为对应的C#数据类供系统扩展时生成的任务处理器使用。所述语法智能提示模块用于编辑键入可编程XML配置脚本时对系统定义的XML语法进行关键词智能提示、用户输入追踪和数据解析器模块内置函数签名智能提示。所述调试模块用于在系统运行时通过追踪指向的中间数据节点路径、申请访问内存中该数据节点的值、并将该数据节点的值显示在可编程XML配置脚本的输入前端来对可编程XML配置脚本进行调试。还包括通用工具模块,所述通用工具模块包括系统的启动调用接口、通用数据操作方法模型、通用输入输出流操作类模型和系统异常追踪工具类模型。还包括用于输出运行日志的运行日志输出模块。对应所述系统,本专利技术还公开了其基于XML的数据生成工具开发系统的开发方法,包括以下步骤:可编程XML配置脚本录入,通过结构化的方式定义可编程XML配置脚本中的语法;数据输入,通过输入适配器模块中指定的IO适配器将输入文件数据读入到系统内部定义的数据结构模块中的输入型数据结构中,读取过程中IO适配器对读取数据的合法性进行校验;输入型数据结构是数据结构模块中对输入数据抽象出的一个顶层父类,对于不同的输入格式数据,输入型数据结构对上层提供统一的操作接口;例如,对于par输入文件、xml输入文件,取指定节点数据的接口都是Child函数;数据处理,脚本解析模块对可编程XML配置脚本进行语法解析并生成中间数据;数据结构模块将所述数据输入过程中本文档来自技高网
...

【技术保护点】
1.一种基于XML的数据生成工具开发系统,其特征在于:包括用于接收输入数据的输入适配器模块、用于解析可编程XML配置脚本语法的脚本解析模块、用于逻辑运算的数据解析模块、用于将对可编程XML配置脚本解析过程中生成的中间数据以及所述数据解析模块的解析结果输出到指定格式文件中的文件输出模块、用于在XML配置脚本键入时进行提示的语法智能提示模块和用于在系统扩展时将上述中间数据自动映射为C#数据类的类映射模块以及用于调试XML脚本的脚本调试模块;所述输入适配器模块和文件输出模块之间还设置有用于以统一的数据结构存储由所述输入适配器模块加载的输入数据以及所述中间数据的数据结构模块,以及在系统扩展时将所述中间数据的相应数据节点自动注入到扩展出的任务处理器中的C#数据类的属性中和将任务处理器运算完成后产生的数据注入到相应的中间数据节点中的IOC属性自动装配模块。

【技术特征摘要】
1.一种基于XML的数据生成工具开发系统,其特征在于:包括用于接收输入数据的输入适配器模块、用于解析可编程XML配置脚本语法的脚本解析模块、用于逻辑运算的数据解析模块、用于将对可编程XML配置脚本解析过程中生成的中间数据以及所述数据解析模块的解析结果输出到指定格式文件中的文件输出模块、用于在XML配置脚本键入时进行提示的语法智能提示模块和用于在系统扩展时将上述中间数据自动映射为C#数据类的类映射模块以及用于调试XML脚本的脚本调试模块;所述输入适配器模块和文件输出模块之间还设置有用于以统一的数据结构存储由所述输入适配器模块加载的输入数据以及所述中间数据的数据结构模块,以及在系统扩展时将所述中间数据的相应数据节点自动注入到扩展出的任务处理器中的C#数据类的属性中和将任务处理器运算完成后产生的数据注入到相应的中间数据节点中的IOC属性自动装配模块。2.如权利要求1所述的一种基于XML的数据生成工具开发系统,其特征在于:所述输入适配器模块用于在文件输入端对不同格式的输入文件进行识别和读取并加载到数据结构模块中,所述输入文件的输入格式包括xml、par、ini、execl、csv中的一种或多种。3.如权利要求1或2所述的一种基于XML的数据生成工具开发系统,其特征在于:所述数据结构模块用于将输入适配器模块识别和读取的不同格式的输入文件封装成统一的数据结构格式,并针对不同格式的输入文件向上一操作层提供统一的操作接口。4.如权利要求1所述的一种基于XML的数据生成工具开发系统,其特征在于:所述脚本解析模块用于解析可编程XML配置脚本的语法,并运行脚本、执行脚本语法操作,调用下一层操作的数据解析器模块对...

【专利技术属性】
技术研发人员:陈进黄鹏魏洋辛春辉万娇李彪毛家明吴柯怡母雯蒋远
申请(专利权)人:卡斯柯信号成都有限公司
类型:发明
国别省市:四川,51

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

1