一种从XML Schema 到本体模型的映射方法

2011-08-14 04:41:44
电大理工 2011年3期
关键词:数据类型实例本体

彭 静 罗 伟

辽宁装备制造职业技术学院( 沈阳 110161 )

主要研究如何从半结构化(这里主要指XML格式的文件)数据源获取期望的本体。首先对XML Schema作简要介绍,然后讨论了XML Schema到本体的映射规则,最后是实例分析,将XML Schema及符合XML Schema的XML内容转换为本体,对映射规则进行了验证。

借助于元素及内嵌的数据类型,XML Schema可以使得用户准确的描述文件的结构、内容和语法。与DTD相比,XML Schema提供了丰富的数据类型;XML Schema中的节点型态分为简单节点和复杂节点,简单节点没有属性,也没有非文字的子节点;在XML Schema中可以定义群组及衍生类型;另外,XML Schema还提供了定义唯一限制及参考限制的功能,如唯一限制声明xsd:unique和参考限制xsd:keyref等。

1 相关工作

对于 XML模式语言 XML Schema(或DTD),主要采取建立映射规则的方法将其中的一些元素映射到本体。Kavalec等人采用机器学习的方法来建立映射规则;Doan等采用预定义规则,对DTD的语义信息进行了分析,以生成相应的概念模型,然后由概念模式产生最终的本体;Volz等人将XML文档数据首先映射成一棵语法树,然后使用一些规则将语法树中的元素映射成本体中的概念和属性。但该方法在将XML Schema映射到本体时,较少考虑到XML Schema的完整性约束;Matthias等人提出了 XML Schema到OWL本体描述语言的映射规则,但论述较为粗略且映射规则的正确性有待商榷;Yuan等人则将基于XML的Web文档映射为用OWL-DL语言描述的本体。与现有方法不同的是本文提出的XML Schema到本体的映射考虑了XML Schema的完整性约束,同时实现了符合XML Schema的XML内容到本体的转换。

2 映射规则

Rule1:XML Schema的根节点映射为一个类,以根节点为父节点的复杂元素转化为其子类(subClassOf)。

Rule2:以根节点为父节点的简单元素(或属性、属性组(xsd:attributeGroup)中各属性)转化为根节点对应类的数据类型属性。

Rule3:复杂元素(节点类型为complexType)的属性(或引用属性组中的各个属性)及所包含的简单元素(节点类型为simpleType)转化为复杂元素对应类的数据类型属性。数据类型属性的定义域为复杂元素对应的类,值域由原映射属性的Type值来决定。

Rule4:复杂元素映射为一个类Ci,复杂元素所包含的复杂元素也映射为一个类 Cj,同时生成一个对象属性b,b的定义域和值域分别为Ci和 Cj。

Rule5:将xsd:key映射成一个类公理,设定minCardinality的基数为1。

Rule6:将与 xsd:unique所修饰属性对应的数据类型属性设置为函数属性。

Rule7:元素的maxOccurs、minOccurs属性分别映射成一个类公理,即设定minCardinality、maxCardinality、Cardinality的基数。

Rule8:将xsd:group映射为一个类,若复杂元素中显式包含xsd:group修饰的子元素或引用了xsd:group修饰的元素,则同时生成一个对象属性b。假定复杂元素对应的类为Ci,对应的类为Cj,则b的定义域和值域分别为Ci和Cj。

Rule9:由于OWL内嵌了XML Schema的数据类型,如 xsd:string、xsd:int等,因而 XML Schema中的数据类型不用作转换。

本文提出的映射规则与 Matthias Ferdinand等人提出的映射规则主要有以下几点区别:

(1)Matthias Ferdinand等人的方法将复杂元素与其所包含的复杂元素映射为 subClassOf关系,而本文将两者分别映射为类,则新定义一个对象属性。其原因在于复杂元素及其所包含的复杂元素在语义上并不能构成subClassOf关系。

(2)Matthias Ferdinand等人的方法没有考虑xsd:key 和 xsd:unique 等限制。

(3)Matthias Ferdinand等人的方法仅将xsd:group映射为一个类,而本文考虑了其他复杂元素对xsd:group的引用,并定义了描述两者关系的一个对象属性。

(4)Matthias Ferdinand等人将complexType类型的元素映射为对象属性,而本文则将之映射为一个类。

(5)Matthias Ferdinand等人将sequence、all映射为 owl:intersectionOf,sequence 意味着组合次序而非intersection,因而该映射的合理性值得商榷。

此外,由于Matthias Ferdinand等人没有原型实现,因而其所定义的映射规则:xsd:choice到 owl:intersectionOf、owl:unionOf 、owl:complementOf布尔组合的映射可行性无法验证。

3 实例研究

以一个实例的形式对比加以描述。以一个XML Schema为例,描述略,符合该模式的XML内容片段如下:

转换后的本体内容如下:

4 结束语

讨论了XML Schema到本体的转换方法,并与现有的方法进行了对比分析,同时结合理论分析给出了转换实例,表明了本文所述方法的正确性和有效性。

[1]杜小勇,李 曼等.本体学习研究综述.软件学报,117(9).

猜你喜欢
数据类型实例本体
Abstracts and Key Words
哲学分析(2023年4期)2023-12-21 05:30:27
详谈Java中的基本数据类型与引用数据类型
对姜夔自度曲音乐本体的现代解读
中国音乐学(2020年4期)2020-12-25 02:58:06
如何理解数据结构中的抽象数据类型
数码世界(2020年5期)2020-06-23 00:14:36
《我应该感到自豪才对》的本体性教学内容及启示
文学教育(2016年27期)2016-02-28 02:35:15
完形填空Ⅱ
完形填空Ⅰ
Care about the virtue moral education
卷宗(2013年6期)2013-10-21 21:07:52
基于PBBLOB实现的文件操作
在.NET环境下进行nashRemoting开发