一、先简单说说整个的一个需求吧
广义的配电管理系统(DMS)涵盖配电网生产、运行和服务全过程,是整个电力企业信息集成系统的一个有机组成部分。DMS 包含着大量应用系统,由于现在配网一体化和智能化发展的要求,需要这些应用系统之间能够相互的进行数据交换(实现系统间的互操作如下图),但这些大量的系统由于开发时间和功能的不一致,造成了这些系统和相应的数据库采用了不同的接口标准和模型,相对独立,不可避免的造成信息重叠和“信息孤岛”,无法实现全局范围内的信息交互和信息共享。
目前,整个电网对此的解决方案是构建基于 SOA 的电力企业服务总线(ESB),它是基于IEC61968提出来的。这种设计为电
力企业的信息集成提供了信息机交互的可能性,从体系架构的级别保证了整个系统的松耦合性和灵活性。IEC 61968 采用基于公共信息模型(Common Information Model,简称 CIM)的消息交换机制,对配电企业中的信息模型进行扩展,包括资产、用户、工作、文档等部分,制定资产管理系统、工作管理系统、施工管理、配电网管理、停电管理等业务功能的接口消息规范 XSD(XML Schema Definition),在消息总线上通过标准消息的传递,实现了各业务功能系统间的数据交互。但在此工程中,出现了如下问题:
1 公共信息模型(CIM)随着需求的不断提升,版本更新频繁,各厂家的产品在版本上不易保持同步,使模型语义上的差异。
2 不同应用或企业间可能需根据内部需求,对 CIM 模型做相应的扩展,那么私有扩展模型可能导致应用间的语义难以辨识。
3 信息总线上传递的消息(XML)可能未按照统一消息规范 XSD 来封装,导致消息无法正确解析,业务数据难以获取。
上述三点会直接造成信息交互失败,因此为实现消息的正确获取以及模型的一致性解析,需要研究基于 IEC 61968 标准的信息模型及消息类型的维护与验证方法,以利于多厂家、多系统间的信息集成与交互,从而为建设坚强统一的智能配电网打下坚实的基础。
二、验证的思路
验证的层次有两个:消息一致性验证和模型一致性验证
1消息一致性验证
(1)主要包括两个方面:消息封装一致性和消息格式一致性。消息一致性测试包括消息信封头定义、消息头部分测试、请求组件部分测试、消息体部分测试。
(2)主要采用的方法是XSD(xml schema)-->XML的校验
2模型一致性验证
(1)采用基于本体OWL 的信息模型验证方法,基于公理来描述类和属性的特征及相互关系,通过推理机制来实现一致性测试
(2)模型验证首先是通过解析 CIM/XML,抽取该数据模型的元数据信息,并将其与基于本体描述的语义模式做比对,该语义模式可以是基于标准 CIM 及其扩展的全模型,也可以是统一配置的子集 Profile,具体模式结合实际应用。原理如下:
(3)具体的算法和流程最核心的部分是基于本体的验证,流程如下图所示:
三、项目是基于java的,所以具体的开发基于JENA,具体后面在详说,JENA部分我也是去官网看到,地址:http://jena.apache.org/