一种用于数据处理的cim对象模型及其编程框架的制作方法

文档序号:9865225阅读:337来源:国知局
一种用于数据处理的cim对象模型及其编程框架的制作方法
【技术领域】
[0001]本发明属于计算机领域,特别涉及一种(ΠΜ模型应用的编程框架。
【背景技术】
[0002]公共信息模型CIM(Common Informat1n Model),是一个抽象模型,定义了IT环境中受控元素如何被表示为一组通用的对象以及这些对象之间的关系。(HM(electricity)是电力企业中的通用标准,它表示包含在EMS信息模型中的电力企业的所有主要对象,它提供了用于不同EMS系统间交换数据的一个通用模型,在基于CIM的EMS系统间交换信息是以CIM/XML为载体,而CIM/XML数据本质上是基于CIM语义的资源描述框架RDF(ResourceDescript1n Framework)数据。
[0003]以公共信息模型作为各应用系统间信息交互的语义基础,避免了不同系统信息模型之间直接进行转化,各应用系统只需面向公共信息模型,建立起私有数据模型与(ΠΜ模型数据的映射,从而实现信息共享和系统间互操作。目前对(HM/XML数据进行本地化转换的数据映射工具还比较少,并且缺乏一种通用的框架方便人们来开发特定应用系统的CM数据映射工具。

【发明内容】

[0004]为了克服现有技术的不足,本发明采用一种基于(ΠΜ对象模型的编程框架,用于更加高效便捷地开发CIM模型与特定应用系统之间的数据映射工具。为实现上述目的,本发明采用的技术方案为:
一种用于(HM/XML数据处理的(ΠΜ对象模型,其特征在于:
(I)该CM对象模型定义了一种用于描述CM模型的方式,包含类、属性和类关系三部分,三者分别用于描述(ΠΜ模型当中定义的类、类属性以及类之间的关系。
[0005](2)该CM对象模型定义了用于遍历(ΠΜ对象模型的方法,可按照所属包、继承关系或者其他分类方式为依据,遍历(ΠΜ对象模型中的类。
[0006](3)该CM对象模型定义了查询、插入、修改、删除CM对象模型中的类的方法,可按照所属包或继承关系的遍历方式查询CIM对象模型中的类。
[0007]CIM对象模型按照两种方式来组织和管理对象模型中的类:第一种是按照类所属的包,将类归并到不同的集合当中,在对类进行增删操作或者修改类所属包的时候,同时更新这些集合的状态;第二种是利用特定的数据结构来表征CIM对象模型的继承关系树,在对类进行增删操作或者修改类基类的时候,同时重新调整继承关系树。调用CIM对象模型的遍历和查询方法时,可选择按照所属包或者按照继承关系的方式来遍历或者查询CIM对象模型中的类。
[0008]进一步的,CIM对象模型中的类由类标识、类名称、类版型、类基类、所属包、类描述、属性列表组成。类版型缺省值为空,可选为原始类型或者枚举类型。属性列表由(ΠΜ对象模型中的属性组成,可为空。
[0009]进一步的,CIM对象模型中的属性由属性标识、属性名称、属性描述、所属类、属性变量类型、类关系信息组成。类关系信息由(ΠΜ对象模型中的类关系定义,可为空。
[0010]进一步的,CIM对象模型中的类关系由关系标识、关系名称、类关系描述、是否聚集、重数、关系定义域、关系值域、反向角色名组成。
[0011]本发明还提供了一种基于上述(ΠΜ对象模型的用于(HM/XML数据处理的编程框架,技术方案如下:
一种用于(HM/XML数据处理的编程框架,包括以下步骤:
(1)该框架可读取并解析(ΠΜ模型的RDFSchema文档,构建(ΠΜ对象模型;
(2)该框架可遍历C頂对象模型,依次生成C頂类定义文件,类定义包括类标识、对象标识和类属性等成员变量,也包含用户定制的数据处理接口,用户在该接口中编码实现特定的数据处理功能;
(3)该框架可读取并解析CM数据文档,根据CM类定义文件,构建CM数据实例,遍历(ΠΜ对象模型,取出数据实例并调用由用户实现的接口。
[0012]进一步的,所述步骤(I)中,CIM对象模型由CIM对象模型中定义的类、属性和类关系构成,并以类之间的继承关系来组织和管理(ΠΜ对象模型。框架可调用CM对象模型中的对(ΠΜ类的操作方法,操作包括查询、插入、删除、修改等。框架可调用(ΠΜ对象模型的遍历方法。
[0013]进一步的,所述步骤(I)的具体实现方法为:解析表征CIM模型的RDFSchema文档时,按以下流程提取信息,自动构建(ΠΜ对象模型,其中(ΠΜ对象模型将包含所有的RDFS类信息:
(1)获取其中的一个rdf:class资源的信息,生成(ΠΜ对象模型中的类;
(2)根据上述CIM对象模型类,获取该类的rdf:property资源的信息,生成CIM对象模型中的属性,并加入到对应类的属性列表中;
(3)如果上述rdf:property资源中存在cims:1nverseRoleName的描述,贝Ij生成CIM对象模型中的类关系,作为对应类属性的类关系信息;
(4)如果存在未读取的rdf:class资源,重复流程(I),否则完成CIM对象模型的构建工作。
[0014]进一步的,所述步骤(2)的具体实现方法为:框架可遍历CIM对象模型,根据CIM对象模型中所包含类信息,生成相应的(ΠΜ类定义作为数据实例的类定义。这些类定义既包括类标识、实例标识和类属性等成员变量,也包含由用户定制的数据处理接口,用户在其中进行编码以实现特定的数据处理过程。
[0015]进一步的,所述步骤(3)的具体实现方法为:读取CIM数据文件,按照以下流程完成用户实现的功能:
(1)获取CIM/XML数据文件中某个类的资源实例;
(2)查看对象模型中是否存在该类,若存在则根据前面生成的(ΠΜ类定义,生成对应的(ΠΜ数据实例。否则将该资源实例的标识信息加入到已忽略信息列表中;
(3)重复流程(1),直到数据文件解析完成;
(4)调用CIM对象模型的遍历方法,由父类到子类遍历CIM对象模型,取出对应的CIM数据实例并调用用户实现的数据处理接口。
[0016]本发明的有益效果是:
(1)本发明提出了一种用于表征(ΠΜ模型的(ΠΜ对象模型,并且提供了搜索、遍历模型的方法,可通过解析RDF Schema文档来生成CIM对象模型;
(2)本发明为基于(ΠΜ交换模型信息的应用系统提供了一种编程框架,方便用户来实现特定系统的数据映射工具。
[0017](3)本发明的编程框架提供了统一的数据定义、编程接口,基于单个CIM类的自管理机制,使得用户能够更加灵活、自主、高效地处理(HM/XML数据。
【附图说明】
[0018]图1为本发明提出的用于(HM/XML数据处理的(ΠΜ对象模型示意图。
[0019]图2为本发明提出的用于(HM/XML数据处理的编程框架的流程图。
[0020]图3为实施例中动物园信息系统的CIM模型示意图。
[0021 ]图4为实施例中用户利用编程框架处理(HM/XML数据的流程图。
[0022]图5为实施例中生成的(ΠΜ对象模型示意图。
【具体实施方式】
[0023]下面结合附图对本发明的【具体实施方式】作进一步的详细说明。
[0024]实施例1
如图1所示为本发明构建的CIM对象模型。该CIM对象模型包含类、属性和类关系三部分,三者分别用于描述(ΠΜ模型当中定义的类、类属性以及类之间的关系。(ΠΜ对象模型中的类由类标识、类名称、类版型、类基类、所属包、类描述、属性列表组成。类版型缺省值为空,可选为原始类型或者枚举类型。属性列表由CIM对象模型中的属性组成,可为空。(ΠΜ对象模型中的属性由属性标识、属性名称、属性描述、所属类、属性变量类型、类关系信息组成。类关系信息由CIM对象模型中的类关系定义,可为空。(ΠΜ对象模型中的类关系由关系标识、关系名称、类关系描述、是否聚集、重数、关系定义域、关系值域、反向角色名组成。
[0025]该CIM对象模型定义了用于遍历CIM对象模型的方法,可按照所属包、继承关系或者其他分类方式为依据,遍历(ΠΜ对象模型中的类。该(ΠΜ对象模型定义了查询、插入、修改、删除CIM对象模型中的类的方法,可按照所属包或继承关系的遍历方式查询CIM对象模型中的类。
[0026]CIM对象模型按照两种方式来组织和管理对象模型中的类:第一种是按照类所属的包,将类归并到不同的集合当中,在对类进行增删操作或者修改类所属包的时候,同时更新这些集合的状态;第二种是利用特定的数据结构来表征CIM对象模型的继承关系树,在对类进行增删操作或者修改类基类的时候,同时重新调整继承关系树。调用CIM对象模型的遍历和查询方法时,可选择按照所属包或者按照继承关系的方式来遍历或者查询CIM对象模型中的类。
[0027]如图2所示,本发明的一种用于数据处理的CM对象模型及其编程框架,在实现时主要分成两部分。
[0028]第一部分的任务是构建(ΠΜ对象模型和生成(ΠΜ类的定义文件,主要包括以下几个步骤: (I)获取指定的(ΠΜ模型的RDF Schema文档;
该文档以资源描述框架RDF作为定义格式,用于定义和描述CIM/UML当中定义的类图以及类之间的关系。
[0029](2)解析(ΠΜ模型的RDF Schema文档,构建(ΠΜ对象模型;
框架解析RDFS文档时,从中提取出类、类属性以及类之间的关系等信息,用于生成CM对象模型的类、属性和类关系,构建(ΠΜ对象模型。
[0030]用户可在编程过程中,利用CIM对象模型提供CIM
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1