基于本体的语义信息模型的验证方法

一、先简单说说整个的一个需求吧

广义的配电管理系统(DMS)涵盖配电网生产、运行和服务全过程,是整个电力企业信息集成系统的一个有机组成部分。DMS 包含着大量应用系统,由于现在配网一体化和智能化发展的要求,需要这些应用系统之间能够相互的进行数据交换(实现系统间的互操作如下图),但这些大量的系统由于开发时间和功能的不一致,造成了这些系统和相应的数据库采用了不同的接口标准和模型,相对独立,不可避免的造成信息重叠和“信息孤岛”,无法实现全局范围内的信息交互和信息共享。

192406_GLHZ_144475.png

目前,整个电网对此的解决方案是构建基于 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,具体模式结合实际应用。原理如下:

194943_5BYk_144475.png

(3)具体的算法和流程最核心的部分是基于本体的验证,流程如下图所示:

195122_bJQb_144475.png


三、项目是基于java的,所以具体的开发基于JENA,具体后面在详说,JENA部分我也是去官网看到,地址:

http://jena.apache.org/





转载请注明地址@飞天神

转载于:https://my.oschina.net/u/144475/blog/490343

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,我来给你介绍一个本体语义OWL建模的实例: 假设我们要对“动物”这个概念进行建模,我们可以使用本体语义OWL来定义该概念的属性和关系: 1. 首先,我们定义一个“动物”类: ``` <owl:Class rdf:about="#Animal"/> ``` 2. 接着,我们定义“动物”类的子类:“哺乳动物”和“鸟类”: ``` <owl:Class rdf:about="#Mammal"> <rdfs:subClassOf rdf:resource="#Animal"/> </owl:Class> <owl:Class rdf:about="#Bird"> <rdfs:subClassOf rdf:resource="#Animal"/> </owl:Class> ``` 3. 然后,我们定义“动物”类的属性:“体重”和“产地”: ``` <owl:ObjectProperty rdf:about="#weight"> <rdfs:range rdf:resource="xsd:double"/> <rdfs:domain rdf:resource="#Animal"/> </owl:ObjectProperty> <owl:ObjectProperty rdf:about="#origin"> <rdfs:range rdf:resource="xsd:string"/> <rdfs:domain rdf:resource="#Animal"/> </owl:ObjectProperty> ``` 4. 最后,我们定义一个“狗”类,它是“哺乳动物”类的子类,并且具有“体重”和“产地”属性: ``` <owl:Class rdf:about="#Dog"> <rdfs:subClassOf rdf:resource="#Mammal"/> <owl:equivalentClass> <owl:Restriction> <owl:onProperty rdf:resource="#weight"/> <owl:minCardinality rdf:datatype="xsd:int">1</owl:minCardinality> </owl:Restriction> </owl:equivalentClass> <owl:equivalentClass> <owl:Restriction> <owl:onProperty rdf:resource="#origin"/> <owl:someValuesFrom rdf:resource="xsd:string"/> </owl:Restriction> </owl:equivalentClass> </owl:Class> ``` 以上就是一个简单的本体语义OWL建模实例,通过这个实例,我们可以对“动物”这一概念进行更加精细的描述和定义。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值