3现有翻译建议
3.1摩尔提案
3.1.1描述
【摩尔01】是第一份发表演讲的报纸RDF和主题图之间的互操作性问题。论文首先介绍作者开发的数据模型“捕捉两种范式的真实性[sic]”。介绍了摩尔介绍了两种模型之间的区别“映射模型”和“建模模型”。关键区别在于前者是“语义的”,而后者“使用每一个标准作为描述其他模型的工具”。这两种方法将以下称为“语义映射”和“对象映射”,分别是。
摩尔提供了这两种策略的示例,但明确指出语义映射优于对象映射。原因是目标是能够针对RDF运行TMQL查询建模并获得“预期结果”(即“将获得的结果根据等价的主题图运行查询”)。摩尔指出指出只有当语义映射方法已使用。
对象映射
摩尔的RDF2TM对象映射方法基于定义PSI对于其模型中的每个RDF构造(即资源、语句、,属性、主题、对象、标识、文字和模型)和将RDF语句表示为类型的三元关联rdf语句使用角色类型rdf主题,rdf属性和rdf对象。这引发了以下问题文字的处理(因为关联中的角色扮演者不能字符串),未提出解决方案。
TM2RDF对象映射方法基于定义RDF每个TM构造的属性如下:话题,专题,运算符,专题小组成员,角色扮演主题,角色定义主题,黄褐色,主题名,主题名称值,范围集,子指示符ref,资源ref.一个给出了一个简单的二进制关联的例子,其中包括五个主题(用于关联类型和角色类型,以及角色扮演主题)。与此等价的RDF需要22条语句,五个主题各三个,协会七个自身。
语义映射
摩尔得出结论,对象映射方法,而有趣,用处有限,他继续描述基于语义映射方法(他称之为“映射模型”)关于“RDF与描述弧有关标识为[而]的实体之间的主题映射涉及描述具有标识的实体之间的类型化关系。“A定义了语义等价的数量,如下所示:
RDF公司 | 主题地图 |
RDF模型 | 主题图 |
身份 | 主题指示符参考 |
资源 | 主题 |
声明 | 关联(近似) |
从RDF语句到关联的映射被标识为问题在于“RDF有三条信息主题图关联有五个”,这让作者怀疑模型的“完整”语义映射可能是不可能的。这个本文的剩余部分将研究如何表示RDF声明作为关联,反之亦然。
RDF语句被视为二进制关联,其角色扮演者与陈述的主语和宾语相对应,并具有角色类型分别为“subject”和“object”。机制表示语句属性的定义不完整,因为文本和图表相互矛盾。然而,这两种文本和图表赋予主题名称一些意义表示主题角色。
摩尔认为,这种方法存在一个问题,即“弧线”是“不是TopicMap模型中的第一类实体”。为什么这应该是这个问题还不清楚,但摩尔主张通过扩展带有弧(和关联)概念的Topic Maps模型模板)。
为了将关联视为RDF语句。一个不完整的示例显示了二进制关联表示为二RDF语句,具有角色扮演主题成为一中的主体和客体,成为其他的。这种方法的动机可能是认识到RDF语句有方向,而关联没有方向。然而这没有明确说明;也不清楚该方法将如何与涉及两个以上角色扮演者的协会合作。
3.1.2总结
Moore的对象映射方法相当完整,而他的语义映射方法只是一个关注RDF的草图声明和关联。其他构造,如名称、引用和范围不包括在内。这两种方法都是不可逆的。在这种情况下在对象映射方法中,假设一种方法正在工作在一个域或另一个域中,但不是在两个域中。如果是语义映射方法,语句映射到单个关联,而关联映射到两个语句表明翻译不能颠倒。
语义映射在自然的术语。后者在两方面都产生了不自然的结果指示。无论方向如何,“自然”的源文档都会引导达到“不自然”的结果,而达到“自然”的效果只是如果起点“不自然”,则可能发生。在对象映射中中给出的示例【摩尔01】,一个简单的二进制关联转换为22条RDF语句。
另一方面,摩尔的语义映射方法实现了更自然的结果:从Topic Maps转到RDF,一个二进制文件关联需要两个RDF语句;换一种方式,RDF语句映射到单个关联。
3.1.3测试用例
TM2RDF公司
摩尔对象映射的以下(不完整)结果该方法是基于二进制关联手动构建的中给出的示例【摩尔01】.不包括测试用例中的两次出现,因为没有此建议如何处理事件。缺乏明确性【摩尔01】阻止构造语义映射方法的相应结果;然而后者可能包含更少的RDF声明。
#主题1:普契尼_:普契尼<http://www.empolis.com/rdftmmapping#tm-主题名称>_:主题1。_:主题1<http://www.empolis.com/rdftmapping#tm(网址:http://www.empolis.com/rdftmapping#tm)-主题名称值>“贾科莫·普契尼”。_:普契尼<http://www.empolis.com/rdftmmapping#tm-实例>"http://psi.ontopia.net/music/#person(个人)" .#主题2:tosca_:托斯卡<http://www.empolis.com/rdftmmapping#tm-主题名>_:主题2。_:主题2<http://www.empolis.com/rdftmmapping#tm-主题名称值>“托斯卡”。_:托斯卡<http://www.empolis.com/rdftmmapping#tm-实例>"http://psi.ontopia.net/music/歌剧" .#主题3:作曲家<http://psi.ontopia.net/music/作曲家><http://www.empolis.com/rdftmmapping#tm-主题名>_:主题3。_:主题3<http://www.empolis.com/rdftmmapping#tm-主题名称值>“作曲家”。<http://psi.ontopia.net/music/作曲家><http://www.empolis.com/rdftmmapping#tm-subindicatorref>"http://psi.ontopia.net/music/作曲家”。#主题四:歌剧<http://psi.ontopia.net/music/歌剧><http://www.empolis.com/rdftmapping#tm(网址:http://www.empolis.com/rdftmapping#tm)-主题名>_:主题4。_:主题4<http://www.empolis.com/rdftmmapping#tm-主题名称值>“歌剧”。<http://psi.ontopia.net/music/歌剧><http://www.empolis.com/rdftmmapping#tm-subindicatorref>"http://psi.ontopia.net/music/歌剧" .#主题5:作曲家<http://psi.ontopia.net/music/#合成-作者><http://www.empolis.com/rdftmmapping#tm-主题名>_:主题5。_:主题5<http://www.empolis.com/rdftmmapping#tm-主题名称值>“作曲人”。<http://psi.ontopia.net/music/#合成-作者><http://www.empolis.com/rdftmmapping#tm-subindicatorref>"http://psi.ontopia.net/music/#合成-通过”。#主题6:人<http://psi.ontopia.net/music/#person(个人)><http://www.empolis.com/rdftmmapping#tm-主题名>_:主题6。_:主题6<http://www.empolis.com/rdftmmapping#tm-主题名称值>“人”。<http://psi.ontopia.net/music/#person(个人)><http://www.empolis.com/rdftmapping#tm(网址:http://www.empolis.com/rdftmapping#tm)-subindicatorref>"http://psi.ontopia.net/music/#person(个人)" .#主题7:工作<http://psi.ontopia.net/music/#work><http://www.empolis.com/rdftmmapping#tm-主题名>_:主题7。_:主题7<http://www.empolis.com/rdftmmapping#tm-主题名称值>“工作”。<http://psi.ontopia.net/music/#work><http://www.empolis.com/rdftmmapping#tm-subindicatorref>"http://psi.ontopia.net/music/#work" .#协会_:关联-1<http://www.empolis.com/rdftmmapping#tm-实例><http://psi.ontopia.net/music/#合成-作者>。_:关联-1<http://www.empolis.com/rdftmmapping#tm-主题成员>_:assocmember-1。_:关联-1<http://www.empolis.com/rdftmmapping#tm-主题成员>_:协会会员-2。_:关联成员-1<http://www.empolis.com/rdftmmapping#tm-角色定义主题><http://psi.ontopia.net/music/#composer> ._:关联成员-1<http://www.empolis.com/rdftmmapping#tm-角色扮演图片>_:普契尼。_:协会会员-2<http://www.empolis.com/rdftmmapping#tm-角色定义主题><http://psi.ontopia.net/music/#work> ._:协会会员-2<http://www.empolis.com/rdftmmapping#tm-角色扮演主题>_:托斯卡。
关于这个测试结果,需要注意的是声明要求(28)仅代表信息的一部分在RDF中自然会使用12个声明。由于关联需要七个语句,因此可以合理地假设这两个事件没有被代表这里需要再加上2*7条语句,再加上两条语句(each)表示出现类型的名称。这将带来语句总数约为46条。
这里看到的冗长(或“语句膨胀”)是TM2RDF的典型表现基于对象映射的翻译方法斯坦福大学和奥吉耶夫斯基大学的账目证实了这一点建议。
RDF2TM系列
此测试用例不能完整地表示为主题图遵循摩尔的对象映射方法,因为没有为对象为文字的RDF语句(即测试用例中12条语句中的8条,包括所有语句姓名)。以资源为对象的四条语句将分别表示为类型的三元组合陈述,作为跟随:
语句(ag0:主题,由:属性组成,ag1:对象)
(此三元关联捕获了Tosca(ag0)的断言由普契尼(ag1)创作。)
RDF2TM测试用例也不能表示为中的主题映射根据摩尔的替代语义映射方法中的信息不足【摩尔01】.每个理论上,RDF语句将由单个二进制表示协会,但再次没有处理规定对象为文字的语句。
3.2斯坦福提案
3.2.1说明
拉舍尔和德克尔[拉切尔01]关注使用“RDF-aware”查询主题地图基础设施”因此,提案仅为TM2RDF。
参考数据的分层集成模型互操作性将数据集成问题分为三个准独立层:语法层、对象层、,以及语义层。其思想是构建一个RDF表示在对象层上绘制主题图,然后执行“双射图”转换”,以便可以将主题图视为RDF。忽略语法层意味着该方法将同时适用于SGML主题映射的XML序列化语法。忽略语义层(即采用我们所称的对象映射方法)的优势在于信息被保存。(作者指出映射“可能会导致信息丢失”。)
Lacher和Decker使用主题图处理模型PMTM4,由纽科姆和比津斯基【PMTM4】,自那以后已被取代【TMDM】.
PMTM4是一个由三种节点类型组成的图形模型(对于主题,关联和范围),以及四种弧类型:associationMember(aM),关联范围(aS)、关联模板(aT)和范围组件(sC)。aM弧是“特殊的”,因为它既有类型又有标签(因此有效地具有三个端部),以便连接与角色扮演者及其角色(或角色类型)的关联。名称和事件被视为协会的专门化;URI和字符串不是模型的一部分。
为了说明他们的方法,Lacher和Decker展示了一个简单的丹麦(有名称)和天然资源石油。这表示为PMTM4图由八个t节点、两个a节点、四个aM弧和一个aT弧组成。丹麦和石油之间的(二进制)关联需要两个aM弧线(每个角色一个),名称“丹麦”也一样(因为主题名称在PMTM4中被视为一种二进制关联)。
Lacher和Decker为每个PMTM4节点类型和圆弧类型。转换主要包括用相应类型的RDF节点替换a-、t-和s-节点,并用相应的属性替换圆弧。然而,为了处理“三度”aM弧,需要具体化,因此引入一个新的RDF节点和四个新属性(rdf:主题,rdf:谓词,rdf:对象和tms:role标签)对于每个aM弧。生成的“RDF主题图图”显示为一个由17个节点和20个节点组成的图圆弧。(实际总数可能会更高,因为rdf:类型仅为少数节点指定。)
作者选择用单个,定向RDF弧(而不是两个弧),以避免一致性问题,指出虽然这不是有损变换,在制定查询时,这确实需要考虑。
中没有给出语法示例[拉切尔01]到显示转换的结果,但从文本中可以清楚地看到节点标识要么基于源定位器(其中XML ID是在源主题图中指定)或生成(其中没有ID指定)。未使用主题标识符和主题定位器–可能是因为PMTM4模型没有扩展到标识符。
根据主题图、Lacher和Decker构建了RDF图显示如何通过单个以F-Logic语法表示的查询。查询使用RDF编码的主题绘制地图,找出所有拥有石油资源的国家然后提取这些国家的DMOZ Travel_and_Tourism页面的链接从RDF编码的开放目录:
所有页面<-国家,DMOZ国家Y,X,ZY[tms:roleLabel->country;rdf:object->country]@CIA_WORLD_FACTBOOK和X[tms:roleLabel->自然资源;rdf:目标->石油;rdf:subject->Z[tms:associationMember->Country]@CIA_WORLD_FACTBOOK]@CIA_WORLD_FACTBOOK和国家[mapsTo->DMOZCountry]和DMOZ国家[旅行和旅游->dmozpage[链接->页面]]@DMOZ公司。
3.2.2总结
斯坦福方法在PMTM4方面是完整的,但后者不是Topic Maps的完整模型(因为它不处理URI和字符串)。因此,斯坦福大学的提案本身并非如此完成。
该提案在自然性方面得分不高,因为需要20个以上的语句来表示以下信息自然会使用RDF中的两条语句进行建模。TM2RDF测试这些案例导致大约160条陈述。
3.2.3测试用例
TM2RDF公司
已经向作者请求了一个测试用例。以下是试图将测试用例的部分代码交给他人。只有协会并显示了两个角色扮演主题的名称。全部出现次数、类型实例关系和键入主题的名称省略。据估计,这还需要115个语句(13*2=26;+12*2=24;+12x5+5=65)如下所示的语句。
@前缀rdf:<http://www.w3.org/1999/02/22-rdf-syntax-ns#> .@前缀tms:<http://www.standford.edu/rdftmmapping/tm-schema#> .@前缀psi1:<文件:psi1.xtm#>。@前缀core:<file:core.xtm#>。###由协会组成---------------------------_:puccini-tosca-assocrdf:类型tms:关联;tms:associationTemplate_:编写人。#表示作曲家角色的具体化语句_:puccini-composer-rolerdf:类型rdf:语句;rdf:主题:puccini-tosca-assoc;rdf:谓词tms:roleLabel;rdf:对象_:puccini;tms:roleLabel_:composer。#表示工作角色的具体化语句_:puccini-work-rolerdf:类型rdf:语句;rdf:主题:puccini-tosca-assoc;rdf:谓词tms:roleLabel;rdf:对象_:tosca;tms:roleLabel_:工作。###普契尼主题名称协会------------_:puccini-name-assocrdf:类型tms:关联;tms:associationTemplate psi1:at-topic-basename。#表示主题角色的具体化语句_:puccini-topic-rolerdf:类型rdf:语句;rdf:subject:puccini名称assoc;rdf:谓词tms:roleLabel;rdf:对象_:puccini;tms:role标签核心:角色主题。#表示basename角色的具体化语句_:puccini-name-rolerdf:类型rdf:语句;rdf:主题:puccini-name-assoc;rdf:谓词tms:roleLabel;rdf:对象“Giacomo Puccini”;tms:roleLabel核心:role-basename。###托斯卡主题数据库协会--------------_:tosca-name-assocrdf:类型tms:关联;tms:associationTemplate psi1:at-topic-basename。#表示主题角色的具体化语句_:tosca光盘rdf:类型rdf:语句;rdf:主题:tosca-name-assoc;rdf:谓词tms:roleLabel;rdf:对象_:tosca;tms:roleLabel核心:角色主题。#表示basename角色的具体化语句_:tosca-name-rolerdf:类型rdf:语句;rdf:主题:tosca-name-assoc;rdf:谓词tms:roleLabel;rdf:对象“Tosca”;tms:roleLabel核心:role-basename。###节点类型规范-----------------------_:puccini rdf:type tms:topic。_:tosca rdf:键入tms:topic。_:由rdf编写:键入tms:topic。_:composer rdf:键入tms:topic。_:opera rdf:键入tms:topic。tms:associationTemplate rdf:type tms:topic。tms:roleLabel rdf:type tms:topic。core:role-topic-rdf:typetms:topic。核心:基于角色的名称rdf:type tms:topic。
3.3 Ogievetsky提案
3.3.1说明
从XTM到RDF
[Ogievetsky 01b]描述了两者转换用XTM语法表示的主题映射的方法([XTM1.0])RDF和作者基于XSLT的在XTM2RDF转换器.转换是根据XTM的处理来描述的元素和方法因此是以句法为导向的。产生的结果RDF符合由11个类组成的词汇表(称为RTM)和17个属性部分根据XTM本身定义,部分根据PMTM4条款,Newcomb和Biezunski和上一节所述。
RTM词汇表定义的类和属性包括:
- rdfs:类
- t节点、主题、范围、成员、关联、基本名称、变量名称,occurrence,类-子类,类-实例,模板rpc
- rdf:属性
- 关联角色、validIn、指示者、构成者、名称、,templatedBy,role-topic,role-basename,role-variantname,角色出现,角色超类,角色子类,角色类,角色实例,角色模板,角色角色,角色rpc
每个<主题>元素导致创建RDF语句类型rtm:主题。主题的主题定位器(如果有)成为语句主题的URI,否则为创建空白节点。主题标识符(如果有)导致类型的属性rtm:由指示.说明目的主题的类型rtm:主题似乎是想要使用rtm:主题作为元素类型名称,以便提供帮助使用“第三种RDF基本缩写形式”时的可读性。
关联表示为类型对应的空白节点关联类型。此外,对于协会中的每个角色有一条语句的属性对应于角色类型(例如。ns1:作曲家和ns1:工作在示例中以下);其值是类型为的节点rtm:成员那个引用角色扮演者。引用是通过rtm:由指示角色扮演者具有主题时的属性标识符和rtm:由构成属性,当角色玩家有一个主题定位器。(文本没有说明角色扮演者既没有也没有引用。)
以下示例显示了Tosca和Puccini在RDF/XML中表示为“第三个RDF基本缩写表单“:
<ns1:作曲家><ns1:作曲家><rtm:成员><rtm:indicatedBy rdf:resource=“http://en.wikipedia.org/wiki/Puccini" /></rtm:成员></ns1:作曲家><ns1:工作><rtm:成员><rtm:由rdf:resource=“http://psi.ontopia.net/opera/托斯卡" /></rtm:成员></ns1:工作></ns1:作曲家>
总共使用了七个RDF语句来表示关联。(当然,通常在RDF中,这样的关系是由单个语句表示。)
上面显示的语法之间有非常明显的相似性和XTM,这可能表示希望输出可读的RDF/XML语法(也许还有基于XSLT的处理的迫切性)影响了为目标模型选择的RDF形式。
根据PMTM4,处理关联的方法以上描述扩展到了其他主题图构造。因此类型-实例关系被视为特定类型;出现、基本名称和变体都被视为与固定角色类型对关联的子类型(主题/出现、主题/名称和basename/variantname,分别)。
名称和内部引用的字符串值表示为的值rtm:名称成员节点的属性。这个以下示例显示作曲家Puccini的基本名称为输出由xtm2rdf.xsl公司XSLT样式表。空白节点表示主题-名称关系。语法上rtm:基本名称构造与上述关联:
<rtm:baseName rdf:ID=“XSLTbaseName122124120120”><rtm:角色主题><rtm:成员><rtm:由rdf:resource=“#puccini”/>指示</rtm:成员></rtm:角色主题><rtm:角色名称><rtm:成员><rtm:name>贾科莫·普契尼</rtm:name></rtm:成员></rtm:角色名称></rtm:baseName>
与二进制关联一样,需要七个RDF语句来表示一个主题名称特征使用RDF中的单个语句建模。
将RDF循环到主题映射并返回
介绍了将XTM转换为RDF的方法,Ogievetsky考虑从RDF到XTM再到RDF的往返。[Ogievetsky 01b]实际上是一个早期工作的延续,其中只有一组幻灯片([Ogievetsky 01a])可用。在早期的工作RDF数据被转换为XTM,同样使用XSLT样式表。
演示往返[奥吉耶夫斯基01b]显示了RDF中的Dublin Core片段的示例根据中的方法转换为XTM[Ogievetsky 01a],然后翻译回RDF符合[奥吉耶夫斯基01b]。源文档包含一个RDF语句断言资源ZARA.xml(南非兰特)拥有创造者“Jane M.Folpe”。这转化为一个由六个TAO(五个主题和一个关联),这反过来又转换回RDF作为一组no少于26条RDF语句。“显然,我们积累了很多语义“我们往返途中的行李”是奥吉耶夫斯基简洁的评论。
剩余的[Ogievetsky 01b]是专门展示如何查询“RDF主题图”(使用RDF查询语言SquishQL)和约束(使用DAML+OIL)。这个以下示例查询显示了如何在中查找所有具有名称的主题“分类单元”的范围:
选择?主题?名称发件人网址:http://www.cogx.com/xtm2rdf/seacr.rtm#哪里(rdf::type?a?rtm::basename)(rtm::role-topic?a?m1)(rtm::由?m1?topic指示)(rtm::角色名称?a?m2)(rtm::名称?m2?名称)(rtm::validIn?a?s)(rtm::indicatedBy?s this::taxon)使用rdf用于http://www.w3.org/1999/02/22-rdf-syntax-ns#rtm用于http://www.cogx.com/xtm2rdf/rtm.rdf#此FOR网址:http://www.cogx.com/xtm2rdf/seacr.rtm#
3.3.2总结
该提案似乎相当完整,因为它涵盖了XTM语法的每一个方面(这需要扩展基础PMTM4模型,以满足标识符)。这个例子这清楚地表明,该提案与未记录的RDF2TM翻译未通过可逆性测试因为单个RDF语句在往返。
该提案需要七个陈述来代表信息使用RDF和因此,就自然度而言,这一比率非常低。翻译主题图测试用例生成包含125条语句的RDF文档。
3.3.3测试用例
TM2RDF公司
@前缀rtm:<http://www.cogx.com/xtm2rdf/rtm.rdf#> .@前缀ns1:<http://psi.ontopia.net/music网站/#> .@前缀rdf:<http://www.w3.org/1999/02/22-rdf-syntax-ns#> .@前缀rdfs:<http://www.w3.org/2000/01/rdf-schema#> .@前缀为this:<#>。此:XSLTbaseName121120120120rdf:键入rtm:baseName;rtm:角色名称[rdf:类型rtm:成员;rtm:name“Opera”];rtm:角色主题[rdf:类型rtm:成员;rtm:表示为:歌剧]。此:XSLTbaseName121121120120rdf:键入rtm:baseName;rtm:角色名称[rdf:类型rtm:成员;rtm:名称“作曲家”];rtm:角色主题[rdf:类型rtm:成员;rtm:表示为:作曲家]。此:XSLTbaseName121122120120rdf:键入rtm:baseName;rtm:角色名称[rdf:类型rtm:成员;rtm:name“Première date”];rtm:角色主题[rdf:类型rtm:成员;rtm:表示:首映日期]。此:XSLTbaseName121123120120rdf:键入rtm:baseName;rtm:角色名称[rdf:type rtm:成员;rtm:name“作曲人”];rtm:角色主题[rdf:类型rtm:成员;rtm:以此表示:作曲家]。此:XSLTbaseName121126120120rdf:键入rtm:baseName;rtm:角色名称[rdf:type rtm:成员;rtm:name“Synopsis”];rtm:角色主题[rdf:type rtm:成员;rtm:表示为:提要]。此:XSLTbaseName121127120120rdf:键入rtm:baseName;rtm:角色名称[rdf:类型rtm:成员;rtm:名称“工作”];rtm:角色主题[rdf:类型rtm:成员;rtm:表示为:工作]。此:XSLTbaseName121126120120rdf:键入rtm:baseName;rtm:角色名称[rdf:类型rtm:成员;rtm:name“Person”];rtm:角色主题[rdf:类型rtm:成员;rtm:表示为:人]。此:XSLTbaseName122124120120rdf:键入rtm:baseName;rtm:角色名称[rdf:类型rtm:成员;rtm:名称“Giacomo Puccini”];rtm:角色主题[rdf:类型rtm:成员;rtm:表示为:puccini]。此:XSLTbaseName122125120120rdf:type rtm:baseName;rtm:角色名称[rdf:类型rtm:成员;rtm:名称“Tosca”];rtm:角色主题[rdf:类型rtm:成员;rtm:表示为:tosca]。此:XSLTinstanceOf120124120120rdf:type rtm:classInstance;rtm:角色类[rdf:类型rtm:成员;rtm:指示由ns1:个人];rtm:角色实例[rdf:类型rtm:成员;rtm:表示为:puccini]。此:XSLTinstanceOf120125120120rdf:类型rtm:classInstance;rtm:角色类[rdf:类型rtm:成员;rtm:表示为ns1:opera];rtm:角色实例[rdf:类型rtm:成员;rtm:表示为:tosca]。此:XSLToccurrence12312520120rdf:类型ns1:首映日期;rtm:角色发生[rdf:类型rtm:成员;rtm:name“1900(1月14日)”];rtm:角色主题[rdf:类型rtm:成员;rtm:表示为:tosca]。此:XSL发生12412520120rdf:ns1型:概要;rtm:角色发生[rdf:类型rtm:成员;rtm:由构成<http://www.azopera.com/learn/synopsis/tosca.shtml> ];rtm:角色主题[rdf:类型rtm:成员;rtm:表示为:tosca]。[rdf:类型ns1:由编写;ns1:作曲家[rdf:类型rtm:成员;rtm:表示为:puccini];ns1:工作[rdf:type rtm:成员;rtm:表示为:tosca]]。这个:由rdf:type rtm:主题;rtm:由ns1表示:由编写。这位:作曲家rdf:键入rtm:topic,rdf:属性;rtm:由ns1表示:作曲家;rdfs:域ns1:由编写;rdfs:range-rtm:member。这个:工作rdf:键入rtm:topic,rdf:属性;rtm:表示为ns1:工作;rdfs:域ns1:由编写;rdfs:range-rtm:member。这个:首映日期rdf:键入rtm:topic,rdfs:类;rtm:由ns1表示:首映日期;rdf:subClassOf rtm:occurrence。这:提要rdf:键入rtm:topic,rdfs:类;rtm:由ns1表示:概要;rdf:subClassOf rtm:occurrence。这个:歌剧rdf:键入rtm:topic,rdfs:类;rtm:由ns1指示:歌剧。这位:人rdf:键入rtm:topic,rdfs:类;rtm:由ns1:person指示。这个:普契尼rdf:键入rtm:topic。这个:托斯卡rdf:type rtm:主题。
3.4 Garshol提案
3.4.1说明
该提案最初于【Garshol 01】作为比较分析的一部分RDF和Topic Maps模型。进一步发展了分析(和扩展到部分解决OWL)[加绍尔03a]。作者在Ontopia知识套件.
[加绍尔03a]首先比较RDF和主题图通过对以下基本概念的检查两种范式:“符号和事物”、“断言”、“身份”、,“物化”、“限定”和“类型和子类型”。对于每个概念,Garshol展示了它们在每个范式中的表达方式找出相同点和不同点。
比较RDF和主题图
根据Garshol的说法,RDF和Topic Maps都是“基于身份的”技术”;也就是说,两者的关键概念是符号代表可识别的东西关于哪个断言可以制作。在主题图中,“事物”被称为“主题”;在RDF中它们被称为“资源”,尽管定义不同,但它们本质上是相同的概念。主题由主题表示;资源由RDF节点(简称“节点”)表示。根据Garshol的说法,“主题”和“节点”之间的对应关系是接近但不精确;他没有解释原因,但原因是大概RDF节点可以是文字,这可以表示为作为字符串而不是主题映射中的主题。
断言表达事物之间的关系并接受主题图中的“主题特征”和RDF中的“语句”的形式。主题特征可以是名称、事件或关联。因此,RDF语句理论上可以映射到任何一个这三种结构中的一种。特别注意关联,因为它们可以是任何arity,而所有RDF语句是二进制的。二进制关联相当好地映射到RDF语句,但非二进制关联不会。
此外,RDF语句有方向,但关联没有方向。主题图使用“角色”的概念来表达每个角色的性质主体参与关系;在RDF中,这种参与是隐含在语句的主语-谓语-宾语结构中。
由于这些原因,主题特征之间的对应关系声明被认为是接近的,但并不准确。
问题身份被认为是“相当棘手的主题图和RDF之间的互操作性问题”,尽管Topic Maps和RDF都使用URI作为标识符,但它们确实这样做以不同的方式。在RDF中只有一种标识符和节点最多可以有其中一个节点(空白节点和文本有无)。在主题图中,主题可以有任意数量的标识符和在“主题定位器”(识别直接主题,以前称为“主题地址”)和“主题标识符”(URI,通过主题指示器)。Garshol向读者介绍了更深入的问题的处理[胡椒03],其中在中进行了讨论第3.6节如下所示。
Garshol关于具体化带来一定的主题图和RDF之间的差异,但未得出任何结论关于两者之间的对应程度,尽管有人指出,具体化并不是一个非常常用的特性。资格被视为与物化有关,因为内置的Topic Maps功能“scope”本质上是一种用于对其他断言进行某些类型的断言,但没有就如何在RDF中表示范围提出了建议。
概念免疫球蛋白的型和亚型另一方面在主题图和RDF中被视为相同(除了事实subClassOf属性是RDF架构的一部分,而不是RDF自身)。
加绍尔通过指出三个基本点总结了他的分析RDF和Topic Maps之间的差异“在技术上非常重要难以合并“两种范式:身份、断言和具体化(包括资格)。因此,他的论文的其余部分专注于“在两者之间移动数据,所需的工作量与可能”(而不是关于如何统一这两个模型)。
对象映射还是语义映射?
采用的对象映射方法[摩尔01],[拉切尔01],[Ogievetsky 01b]、和【Garshol 02】进行了简要考虑,然后被拒绝为
既重又笨拙。任何查询或最终用户术语中指定的检索必须明确考虑帐户主题图模型功能,以及主题图中的信息将不能与其他RDF信息进行干净的互操作。
Garshol的结论是“尽管这种[对象映射]方法使用方便,结果不符合清洁标准与其他RDF数据集成。"
作为替代方案,Garshol建议使用特定于词汇的以通用映射为基础的映射。报表应包含在通用映射到名称、事件或关联,因为提供最“自然”的结果。然而,不可能知道哪一项最适合任何给定的语句不了解相关属性的语义–因此需要特定于词汇的映射。例如,RDF语句:
<http://example.com/X><http://example.com/Y>“foo”。
可以在主题映射中映射到名称或内部出现(因为对象是文本)。类似地声明:
<http://example.com/X><http://example.com/W><http://example.com/Z> .
可以映射到关联或外部事件(因为对象是资源)。最佳语义翻译如果不了解属性Y(Y)和W公司.
RDF2TM映射
根据Garshol的说法,解决方案是提供额外的映射信息。这是使用名为RTM的RDF词汇表完成的([Ontopia 03a])用于注释RDF文档(或其模式),从而指导翻译过程。RTM词汇表用于从RDF转换为Topic Maps和由以下RDF属性组成:映射到,类型,范围内,主题,实物光盘.
这个映射到属性可以具有以下值:
- rtm:基本名称:将语句映射到基名称
- rtm:发生:将语句映射到事件
- rtm:关联:将语句映射到关联
- rtm:实例:将语句映射到类实例协会
- rtm:主题标识符:将语句的值映射到主题标识符
- rtm:主题指示器:将语句的值映射到主题定位器
- rtm:信源抑制器:将语句的值映射到源定位器
使用的映射rtm:发生或rtm:关联将自动使用语句的属性键入结果主题地图构造,除非rtm:类型用于覆盖此行为。这个rtm:范围内属性可用于指定范围主题用于基本名称、引用和关联。最后rtm:主题和rtm:对象光盘属性是用于指定的主体和对象所扮演的角色类型RDF语句,当该语句映射到关联时。
词汇表(和实现)有点超出了包含在中[加绍尔03a]例如,它是认识到属性可以映射到各种类型的标识符(源定位器、主题标识符和主题定位器)或特权人士实例关系,中除了名称、事件和关联之外。
此外,在实施过程中为默认。资源URI始终映射到主题标识符和在没有角色的情况下,可以将RDF语句作为关联导入类型信息,在这种情况下,预定义的主题主题和对象用作角色类型。
TM2RDF映射
从主题图转到RDF需要额外的以获得最佳和/或可预测的结果实现。发现以下问题:
- 映射名称时选择属性
- 绘制关联时选择主题
Garshol指出了一些他没有提到的问题分析,包括多个标识符、n元关联、,具体化和范围、一元关联、变量名称和数字(未指定)“棘手的边缘情况”;他为其中一些画了草图已实施的可能解决方案:
可以使用RDF处理同一主题的多个URI在OWL中找到等价属性。
可以将具有两个以上角色的关联转换为类型为关联类型的资源,然后每个角色可以表示为单独的语句,角色类型为属性和关联资源作为主体。
具体化和范围通常可以通过使用RDF具体化以表示将连接具有主题特征的主题。特殊财产必须定义用于表示范围。至于具体化,这已经完成了通过简单地合并代表主题特征的资源代表具体化主题的赋值。
可以通过使用映射包含从关联类型到首选主题角色。
通过映射可以选择名称属性包含从主题类型到表示首选RDF名称属性。
第二个词汇表(称为TMR,[Ontopia公司03b])由六个已发表的主题组成,解决了其中的许多问题问题。名称映射由处理tmr:名称属性,tmr:类型、和tmr:属性以及映射问题关联的求解使用tmr:首选辊,tmr:关联类型、和tmr:角色类型.
与RDF2TM转换一样,这些实现提供了一些默认级别。主题标识符和主题定位器都是自动映射到资源URI。此外,关联可以在缺少角色映射信息的情况下导出到RDF;在里面本例为结果语句的主语和宾语选择是任意的。
剩余的[加绍尔03a]是奉献的的各自约束和查询语言的比较主题图和RDF,因此超出了本分析的范围。
3.4.2总结
按照目前的规定,Garshol提案提供了完整的解决方案,作者自己确定了它不完整的方面。未提及的包括容器、集合、XML文本和类型文本。一个可实现高度可逆性和双向跳闸,如果在翻译。主题定位器存在问题,其结果是从主题图到RDF往返时的主题标识符,以及返回主题地图。
该提案在自然性方面得分很高。即使在使用时默认映射结果很自然。TM2RDF测试用例结果生成包含13条语句的RDF文档。RDF2TM测试案例结果是一个包含25个TAO(19个主题,3个关联和三次出现)。
3.4.3测试用例
测试翻译使用Ontopia的Omnigator公司八(OKS 2.1.0,构建2004-12-15#1495)【Ontopia 05】.
TM2RDF公司
源文档已在中打开Omnigator公司并出口使用默认映射到RDF。然后将文档转换为N3使用Mindswap RDF转换器格式化[Mindswap 02]终于手把手整理好了以便于与源文档进行比较。
注意,由于使用了默认设置,Puccini的选择作为主题音乐:作曲家声明是差不多吧。使用Garshol的映射机制有可能确保Tosca而不是Puccini成为主题这句话的意思。翻译的结果是与等效RDF2TM相同,只是角色类型“作曲家”和“作品”也将出席。
@前缀:<http://psi.ontopia.net/music网站/#> .@前缀rdf:<http://www.w3.org/1999/02/22-rdf-syntax-ns#> .@前缀rdfs:<http://www.w3.org/2000/01/rdf-schema(http://www.w3.org/2000/01/rdf-schema)#> .[rdf:类型:人;rdfs:标签“Giacomo Puccini”;:编剧[rdf:类型:opera;rdfs:标签“Tosca”;:首映日期“1900-01-14”;:提要<http://www.azopera.com/learn/synopsis/tosca.shtml> ]].:composer rdfs:标签“composer”。:opera rdfs:标签“opera”。:person rdfs:标签“person”。:work rdfs:标签“work”。:由rdfs作曲:标签“作曲者”。:premiere-date rdfs:标签“Premireère date”。:synopsis rdfs:标签“synopsis”。
RDF2TM
源文档已导入Omnigator公司具有使用RDF2TM插件指定的映射。默认映射为用于除rdfs:标签,已映射基名称而不是内部引用,以及音乐:概要,它映射到了一个事件,而不是协会。然后将文档导出到LTM并由整理以便于与源文档进行比较。
注意,Garshol的映射词汇表允许更精确地主题和对象角色类型的规范,但这此处未使用功能。因此,角色类型为“工作”和“composer分别成为”subject“和”object“以及范围主题(“生成的名称”)添加到这些主题的名称中。
@“utf-8”#版本“1.3”[puccini:perse=“贾科莫·普契尼”][tosca:opera=“tosca”]{托斯卡,首映日期,[1900-01-14]}{托斯卡,提要,“http://www.azopera.com/learn/synopsis/tosca.shtml“}作曲家(托斯卡:主语,普契尼:宾语)[person=“person”@“http://psi.ontopia.net/music/#person(个人)"][opera=“opera”@“http://psi.ontopia.net/music/歌剧"][首映日期=“首映日期”@“http://psi.ontopia.net/music/首映式-日期“][synopsis=“简介”@“http://psi.ontopia.net/music/#提要"][composed-by=“作曲家”@“http://psi.ontopia.net/music/#合成-由“][subject=“:subject”/gen-name@“http://psi.ontopia.net/rdf2tm/主题"][object=“:object”/gen-name@“http://psi.ontopia.net/rdf2tm/#对象"][gen-name=“生成的名称”@“http://psi.ontopia.net/rdf2tm/#gen-名称“]
3.5 Unibo提案
3.5.1说明
Unibo提案在[Ciancarini 03号]更全面地【Gentilucci 02】(意大利语)。这个描述同时利用了这两个来源。
Ciancarini等人引用了Moore、Lacher和Decker的作品,以及他们声称,所有这些都有一个共同的缺点,也就是“文件出来时的尴尬外观转换。“作者显然更喜欢Garshol的方法生成更“可读”的结果,这与拥有。主要区别是Garshol没有利用“标准RDF和RDFS谓词”,因此始终需要映射待指定。
像早期的作者一样,Ciancarini等人认识到有两种解决翻译问题的基本方法,对应于本调查所称的对象映射和语义映射。第一个问题是“转换后的文档与将直接用目的语编写,并且几乎不可读。“第二个问题是它不是”“总是可能的”来识别语义等价物,并且这样做通常需要逐个案例的方法,因此没有通用的有用性。
因此,作者认为混合方法是最佳的Meta Converter中的解决方案及其实现将通用映射,它尝试尽可能接近原始语义,能够使用XML词汇表。[Gentilucci 02]第3.3节提供了一个公平的通用映射的详细概述,而第4章描述了特定映射的机制。
身份
与Garshol一样,Ciancarini等人假设话题和资源(尽管他们对资源和RDF节点之间的区别),但它们在方式上有所不同表示身份。Unibo提案中的默认行为是将主题定位器等同于资源URI并表示主题使用RDFS属性的标识符定义依据.给出的示例在里面【Gentilucci 02】(例如3.8和4.2)显示这如何导致资源明确表示不可寻址主题,如“马里奥·罗西”和“格式”,被翻译成可寻址主题(使用<资源参考>对于subjectIdentity)。
没有主题定位器的主题将转换为空白节点其ID是根据主题的基名称生成的。当去另一个顺便说一句,空白节点的ID变成了主题名,这很明显不自然(因为空白节点的ID和主题名称具有不同的语义)。
姓名
Unibo提案是唯一一个假设基本等价的提案基名和rdfs:标签属性:因此,没有变体的名称很容易处理。变量名称为被认为是通过使用解决的更大挑战四个RDF谓词中的一个:baseName、variant、parameter和variantName。具有变量的基名称通过空白节点表示具有rdfs:标签和tm2rdf:变体属性:前者是与主题名的值相对应的文本(即<baseNameString>在XTM语法中);值后一个属性的另一个空白节点具有变量和参数属性。因此,具有基本名称和排序名称的主题:
[mario_rossi=“马里奥·罗西”;“罗西·马里奥”]
结果如下:
_:马里奥·罗西tm2rdf:baseName _:bn1_mario_rossi。_:bn1_mario_rossirdfs:标签“Mario Rossi”;tm2rdf:变体:v11mario_rossi。_:v11_mario_rossitm2rdf:variantName“rossi mario”;tm2rdf:参数:参数1。_:参数1rdfs:定义依据<http://www.topicmaps.org/xtm/1.0/core.xtm#sort> .
协会:TM2RDF
可以预见,在RDF中表示关联被视为困难是因为作者称RDF为“更原始”与主题图相比,(即低水平)性质。通用翻译“在模型级别”是可能的,但“复杂且“并以”滥用RDF方式为代价表达关系。“基本方法类似于Ogievetsky认为角色(或“成员”)包含在RDF中一袋空白节点。然而,在奥吉耶夫斯基是Unibo提案使用额外的资源来代表协会;此资源具有tm2rdf:关联属性,其对象是包个成员中的个。总而言之,需要九条RDF语句来表示单个二进制关联。
这个tm2rdf:关联属性的特征是“支持谓词”,其目的是“增加一点易读性”结果文档。还建议对此进行修改,其中成员包和协会成为一个单一节点:这是与Ogievetsky的解决方案完全相同。
[真蒂卢奇02]还描述了两个将n元关联分解为二进制关系的数量。这两种方法都需要在表示单个三元关联的顺序。鉴于以下情况关联:
X(A:rA、B:rB、C:rC)
(即主题A、B和C之间的X型关联分别扮演rA、rB和rC的角色),这些替代方法中的第一种产生了以下六种陈述:
A X B。A X C。B X A。B X C。C X A。C X B。
角色类型丢失。此外,每对角色玩家通过同一个谓词关联两次(都是作为主语和对象和作为对象和主体)意味着只有对称关系将得到正确的表示。最后A、 B和C都参与了相同的关系也是迷路的;这可能涉及也可能不涉及真正的信息丢失,具体取决于关系的性质。
第二种替代方法涉及对应的谓词到角色类型,并在以下语句中生成结果:
B rA A。C rA A公司。A rB B。C rB B。A rC C。B rC C型。
虽然现在保留了角色类型,但关联类型将丢失(尽管理论上可以通过附加声明来保存将其与rA、rB和rC关联)。此外,令人怀疑的是原始语义得到了正确的保留。例如:可以吗假设角色扮演者B和A(rA)与C和A之间的相同吗?最后,提出的观点关于在相同的这种关系也适用于此。
考虑了这些备选方案后,Unibo的提案被采纳赞成使用tm2rdf:关联属性,至少在缺少更具体的映射时信息。
协会:RDF2TM
当从RDF到Topic Maps进行反向翻译时,Unibo提出的通用解决方案是翻译RDF语句关联。中给出的示例【Gentilucci 02】生成类型化二进制文件与非类型角色的关联,不考虑RDF语句的对象是文本的情况。然而,人们承认“这可能是更好的,在一定程度上上下文,以应用其他类型的转换”,这将导致讨论属性和模式信息的作用。
Unibo提案承认某些RDF语句适当映射到内部或外部引用与语句属性相对应的出现类型,但知道什么时候做这件事需要某种模式信息。这与Garshol的方法基本相同,除了Unibo使用XML词汇表而不是RDF词汇表以指定映射信息。
范围
在这种情况下,提出了一项提案,用于表示范围RDF中出现的次数:rdfs:请参见属性具有空节点作为其对象;空白节点具有rdfs:定义依据财产(其对象是外部事件的URI)和一个或多个tm2rdf:范围属性。这将导致构造“形状”与非范围事件的形状非常不同。在此外,考虑到rdfs:定义依据财产是rdf:资源,目前尚不清楚这种方法的工作原理具有内部引用。
建议使用一种“不太优雅”的方式来表示作用域名称包括定义一个属性,该属性rdf:类型是tm2rdf:baseName(tm2rdf:baseName),直接对应于或间接(不清楚是哪一个)到每个范围主题。此外由于不够优雅,这不适用于由以下内容组成的范围多个范围主题。备选方案与建议的相同Garshol:即限定具体化的语句。要做到这一点,Unibo定义tm2rdf:范围属性。
对于作用域关联,RDF意义上的具体化不是因为关联已经表示为资源(位于在默认映射中最少)。因此,所需的只是分配一个或多个tm2rdf:范围属性设置为该资源。这个其缺点是,范围界定现在由三种不同的方法处理方式(对于泛型映射的关联、对于实例和对于名称和具体映射的关联)。
具体化、键入和子键入
Unibo不将具体化、类型化或子类型化视为提出问题,因为RDF和Topic Maps都支持这三种概念的方式基本相同:实例Of相当于rdf:类型; 超类型-子类型关系(表示为使用与预定义类型关联的主题图)等于rdfs:子类别具体化在主题图和RDF。
特定映射
上述描述集中于Unibo提案的方法通用翻译。然而,一般认为这种方法并不总是产生最佳结果,所以一种方法是为翻译过程提供“指导”。这包括一个简单的XML词汇表,允许用户指定如何翻译与单个RDF语句的(二进制)关联(反之亦然)。作为在Garshol提案中,这涉及到指定通信关联角色类型与语句的主题和对象之间的关系。此外,用户可以指定应该映射哪些RDF属性发生而不是关联。以下摘录显示了如何指定TM2RDF测试用例的映射:
<?xml版本=“1.0”?><xtm2rdf><属性关联><li id=“作曲家”><domain_role id=“工作”/><range_role id=“作曲家”/></li></property_associations><属性发生><li id=“premiere-date”/><li id=“synopsis”/></property_occurrences></xtm2rdf>
这些映射将导致编剧将成为的协会在RDF中表示为单个语句,使用Tosca(“work”=domain)作为主题,Puccini(“composer”=range)作为对象。此外,映射包含导致类型属性的信息首映日期和简介要映射到引用当从RDF转到主题图时。(尽管没有明确说明走另一条路时,可能不需要信息。)
3.5.2总结
Unibo提案相当完整,但有些功能,例如。,RDF中的语言标记和数据类型,以及角色和主题图未明确涵盖。该提案允许一些可逆性的程度,但往返的结果可能并不总是如此与起点相同。例如,使用泛型映射,大多数RDF语句将被转换为类型化与非类型化角色的关联,每种关联都会导致几个语句转换回RDF。
这种方法在两个方向上都产生了一些自然的结果提供了映射信息。通用翻译远未实现不太令人满意,单个二进制关联导致9个RDF语句。
3.5.3测试用例
TM2RDF公司
使用Meta工具翻译源文档(【Gentilucci 02】)使用默认设置。然后使用Mindswap RDF转换器[Mindswap 02]、和最后手工整理,以便于与源代码进行比较文档。
@前缀:<#>。@前缀rdf:<http://www.w3.org/1999/02/22-rdf-syntax-ns#> .@前缀rdfs:<http://www.w3.org/2000/01/rdf-schema#> .@前缀s:<http://cs.unibo.it/meta/tmschema.rdf#> .#tosca:类型、名称、出现次数:tosca rdf:类型:opera;rdfs:标签“Tosca”;rdfs:另请参阅:dataOccurrence_7a34558a,:dataOccurrence_d5a519a2。:dataOccurrence_7a34558a rdf:类型:premiere-date;rdfs:标签“1900-01-14”。:dataOccurrence_d5a519a2 rdf:类型:提要;rdfs:定义依据<http://www.azopera.com/learn/synopsis/tosca.shtml> .#puccini:类型,名称:puccini rdf:类型:人;rdfs:标签“Giacomo Puccini”。#协会:x1ko2ljned-b rdf:类型:由组成;s: 关联:members_x1ko2ljned-b。:members_x1ko2ljned-b rdf:类型rdf:Bag;rdf:1:x1ko2ljned-b_1;rdf:2:x1ko2ljned-b2。:x1ko2ljned-b_1 rdf:类型:作曲家;rdfs:isDefinedBy:puccini。:x1ko2ljned-b_2 rdf:类型:工作;rdfs:isDefinedBy:tosca。#键入主题:opera rdf:类型rdfs:Class;rdfs:定义依据<http://psi.ontopia.net/music/歌剧>;rdfs:标签“Opera”。:person rdf:类型rdfs:Class;rdfs:定义依据<http://psi.ontopia.net/music/#person(个人)>;rdfs:标签“个人”。:由rdf编写:类型rdfs:Class;rdfs:定义依据<http://psi.ontopia.net/music/#合成-作者>;rdfs:标签“作曲家”。:premiere-date rdf:键入rdfs:Class;rdfs:定义依据<http://psi.ontopia.net/music/#premiere(英语:http://psi.ontopia.net/music/#premiere)-日期>;rdfs:标签“首映日期”。:synopsis rdf:类型rdfs:类;rdfs:定义依据<http://psi.ontopia.net/music/#提要>;rdfs:标签“Synopsis”。:作曲家rdfs:isDefinedBy<http://psi.ontopia.net/music/作曲家>;rdfs:label“作曲家”。:工作rdfs:isDefinedBy<http://psi.ontopia.net/music/#work>;rdfs:标签“工作”。
需要38条语句来表示自然情况在RDF中表示为12条语句。许多额外的行李是由于使用了九个语句来表示托斯卡和普契尼;指定五个键入主题是的实例rdfs:类; 需要附加声明对于每个主题标识符;并通过空格表达事件节点。
额外行李的数量会有所减少(虽然不完全)如果Meta能够表达额外的使用了映射信息。
RDF2TM
Meta开发人员交付的此测试用例的结果似乎出错了。除此之外,Puccini这个话题缺失了总共。编辑已经向开发人员报告了这一点,如果他们的假设是正确的,测试用例将在下一次更新本调查草案。
[ass-ins_1:opera=“托斯卡”]{ass-ins_1,首映日期,“1900-01-14”}[tosca@“http://www.azopera.com/learn/synopsis/tosca.shtml"]概要(ass-ins1,tosca)[opera:class=“opera”@“http://psi.ontopia.net/music/歌剧"][作曲家:class=“作曲家”@“http://psi.ontopia.net/music/#composer"][首映日期:occurrence=“首映日期”@“http://psi.ontopia.net/music/首映式-日期“][提要:association=“synopsis”@“http://psi.ontopia.net/music/#提要"][composed-by:association=“作曲家”@“http://psi.ontopia.net/music/#合成-由“][类别@“http://www.topicmaps.org/xtm/1.0/core.xtm类"][关联@“http://www.topicmaps.org/xtm/1.0/core.xtm#协会"][出现@“http://www.topicmaps.org/xtm/1.0/core.xtm#occurrence网站"]
3.6其他提案和贡献
前面的章节描述了五个最相关的RDF/TM互操作性建议。一些其他提案和还考虑了捐款:
两者都有[V列表01]和[普鲁多米厄02]早期是“第一次削减”吗(分别制作为“早餐前”和“晚上的工作”)。两者都很不完整,已被后来的工作所取代;他们为了完整起见,这里提到了。
【Garshol 02】是的完整RDF架构基于早期版本的主题图【TMDM】.它与斯坦福和奥吉耶夫斯基的提案相似,因为它是一个模型RDF中的主题图,因此属于后来作者本人拒绝了对象映射。它主要利益在于它基于与PMTM4的模型相比,该模型是完整且一致的,因此它将用于说明对象映射和下一节中的语义映射。
【卡明斯基02】提出了一个概念元模型已调用胸罩作者认为成为“最流行的语义网的超集”元模型”(即XML、RDF和主题映射),并定义将这些转换为制动器卡明斯基的工作显然,任何寻求统一RDF和主题映射到单个模型。然而,这不是RDFTM工作队。卡明斯基的提议不能被视为交换RDF和主题地图数据,因为没有转换外面的属于制动器定义。[卡明斯基02]因此是被认为超出了当前工作的范围。
[胡椒03]提供了深入的讨论RDF和主题图中的标识符,因此与问题相关下面讨论的身份。作者的主要目标是澄清直接和间接识别受试者之间的区别,并指出两者之间缺乏本体论上的区别“资源”(一般)和“信息资源”(属于“资源”的子集)。直接识别仅适用于信息资源;可以对任何资源类型(包括信息资源)。使用出版[标签],以及介绍形式概念信息资源在体系结构中万维网,这些区别现在已经被认识到这可能为解决身份问题铺平道路,至少在就RDF和主题图的互操作性而言。
【Vatant 04】调查OWL(Web本体语言)可用于约束主题图,并具有表达可能是用于指导翻译。这与在当前调查的基础上制定指南。
4分析
本章基于前面的内容提供了一般分析关于在RDF和主题地图。
需要注意的第一点是,所有主要提案Topic Maps和RDF都不稳定,在编写数据模型时将其形式化。PMTM4从未任何官方地位,并已被【TMDM】,即将修订的主题图第2部分标准。对于RDF,[RDF-语义]和【OWL】第一次出现在2004年。既然这些正式模型已经存在,那么它应该可以在对象或语义级别。
4.1对象映射和语义映射
所有现有方法都分为两类摩尔最初称之为“模型建模”和“模型映射”。根据拉切尔和德克尔的术语,这些可能更多恰当地称为“对象映射”和“语义映射”分别是。这两种方法的基本区别可以是总结如下:
对象映射使用一个语言来描述对象模型另一个。对于例如,假设一个简单二进制文件的结构关联数据模型是一个五元组,由一个(a) 关联,两个(r)ole和两个角色(p)层(p-r-a-r-p),即关联将使用对象映射表示为四涉及五种资源的语句。
语义映射从更高级别的概念开始每个模型的语义,并尝试在他们。Topic Maps中的二进制关联表示通常由RDF语句表示的相同类型的“事物”(即两个实体之间的关系),因此使用单个RDF语句表示。其中没有直接语义可以找到等价的,则使用两种范式之一的可用设施,即类,属性或已发布主题。
对象映射的优点是很容易实现通用(当然,前提是它所在的对象模型基础是完整的),这确保了完整性额外努力。缺点是不自然结果。语义映射产生了更自然的结果,但会受到影响缺点是通用性很难保证,而且可能在某些情况下,需要在源文档。
在现有的提案中,斯坦福和奥吉耶夫斯基都使用对象映射基于【PMTM4】摩尔讨论了这两个问题对象映射(基于他自己不准确的模型)和语义映射。Garshol对对象映射不屑一顾,只专注于语义映射。Unibo尝试按顺序组合这两种方法为了实现默认通用映射的双重目标在没有附加信息的情况下使用,以及提供更自然的翻译中的特定映射信息是必需的。
4.2自然性的重要性
“自然”的概念是在第2.1节如下:
标准自然表示翻译的结果与某人的方式相对应熟悉目标范式自然会表达该范式中的信息内容。自然性通常也是授予改进可读性结果。
自然性非常重要,因为“非自然”翻译是结构不同来自数据它最初是在目标模型中创建的。这里有以下后果导致互操作性:
- 结果不会与源于目标模型,
- 结果将不符合目标中创建的词汇表模型,以及
- 针对目标模型编写的查询将无法与翻译数据。
对象映射的自然度通常很低因此受到这三种失败的影响。例如,考虑以下主题图:
{托斯卡,音乐:首映日期,[1900-01-14]}
这定义了类型的出现音乐:首映日期谁的值为“1900-01-14”。到RDF的语义映射将导致以下翻译:
_:a0音乐:首映日期“1900-01-14”。
对象映射如下所示:
_:a1,rdf:type,tm:Topic。_:a1,tm:发生,_:a2。_:a2,rdf:type:tm:Occurrence。_:a2,tm:发生类型,_:a3。_:a3,tm:主题识别器,音乐:首映日期。_:a2,tm:资源,“1900-01-14”。
此示例使用中定义的词汇表【Garshol 02】这是基于【TMDM】,以符合最标准的数据主题图模型。它用于说明对象映射本质上比语义映射更详细。他们也涉及大量间接寻址,因此可以预期导致大量处理开销。更重要的是这个语义学实际上是不同的。对象的结果映射由携带Topic Maps语义(例如如“主题”、“出现”、“发生类型”等)处理器需要理解才能处理结果正确。
例如,考虑合并语义和对象的结果分别与包含以下内容的本机RDF数据进行映射声明:
_:b0音乐:首映日期“1900-11-10”。
该声明声称,某些资源的首映日期为1900年11月10日。使用语义映射的合并结果如下所示跟随:
_:a0音乐:首映日期“1900-01-14”。_:b0音乐:首映日期“1900-11-10”。
这很容易被查询(例如,对于所有发生于1900年)音乐词汇独自一人。将此与以下合并结果进行对比,其中组件基于对象映射:
_:a1,rdf:type,tm:Topic。_:a1,tm:发生,_:a2。_:a2,rdf:type:tm:Occurrence。_:a2,tm:发生类型,_:a3。_:a3,tm:主题识别器,音乐:首映日期。_:a2,tm:资源,“1900-01-14”。_:b0音乐:首映日期“1900-11-10”。
这显然更难查询,并且需要了解tm(tm)词汇表以及音乐词汇表。下面给出的查询的复杂性拉切尔、德克尔和奥吉耶夫斯基分别在这方面。
考虑到自然的重要性更喜欢语义映射,前提是可以实现完整性。因此,下一节将研究定义特定语义映射所涉及的问题强调确定是否存在形式化数据模型for Topic Maps和RDF现在可以确保完整性以及自然。
4.3语义映射问题
4.3.1标识
尽管RDF和Topic Maps都使用URI作为标识符,但它们Topic Maps提供的关键区别在于二的模式直接识别(使用主题定位器)和间接识别(使用主题标识符),而RDF只提供一个。这将提示问题,应将哪个主题图构造视为在语义上等同于RDF资源的URI?主题标识符、主题定位器。。。还是两者兼而有之?
由于标识符不是PMTM4模型的一部分,因此这个问题是在斯坦福大学的提案中被忽视了。摩尔的立场不是明确地陈述了,但他给出的例子表明了这个主题标识符至少被视为等价物。两个Ogievetsky和Unibo支持主题定位器,并为处理主题标识符。Garshol将URI转换为主题从RDF转到Topic Maps时的标识符,但更不可知当你走另一条路时,翻译二者都主题标识符和URI的主题定位器。
所有这些方法都存在问题。显然,标识符必须以某种方式映射,否则将丢失信息。在RDF中使用主题定位器等式URI是有问题的在几个方面。首先,它会导致不正确的语义(因为Unibo提案的描述如所示)。其次,结果更少自然(因为不可寻址主题的标识符Puccini不会被视为相应资源的URI,这在RDF中是最自然的)。最后出现类型和关联类型(通常是主题标识符)不能用作RDF属性的URI。
使用主题标识符而不是主题定位器等式URI也会产生不自然的结果,因为可寻址的标识符主题(即信息资源)不会成为相应的资源,这在RDF中是最自然的。然而,这alternative没有表现出由以下原因导致的其他问题偏爱主题定位器。
这里有一个两难境地,加绍尔的不可知论在某些方面是因此,他的TM2RDF翻译展示了就身份而言,最自然的程度。不幸的是,他丢失了有关URI是否源于主题标识符或主题定位器,因此减少到将每个URI转换为主题标识符反之亦然。如前所述,这会导致往返跳闸问题以上。
理想的解决方案是允许任何一个主题标识符或主题定位器被视为URI(和反之亦然),但同时要保留足够的信息从Topic Maps转到RDF以执行时往返行程。中的认可[标签]的一般资源和信息资源之间的区别,以及[胡椒03],可以提供这种解决方案的基础。
Garshol明确处理了多个标识符的问题只有。对于那些将主题定位器视为资源URI的语义等价物并定义自定义属性对于主题标识符(Ogievetsky和Unibo),这不是问题只要主题只能有一个主题定位器。然而,在即将发布的ISO 13250多主题定位器版本将是如果允许,那么必须明确面对这个问题。Garshol的建议使用OWL中定义的等效属性(即。,猫头鹰:相同,owl:等价类、和owl:等效属性)应该在更多因为这种方法可能会导致RDF和主题图之间的互操作性。
4.3.2名称
在RDF中,资源的名称通常由单个声明。(“名称”在这里的定义是指人类用于命名主题。)RDF架构为此定义了一个属性(rdfs:标签)但许多词汇表都有自己的定义属性(例如。,dc:标题,foaf:名称等)。安可以通过以下方式实现主题图的精确语义映射将基名转换为此类属性。
Garshol和Unibo都采用这种方法,只是在这方面有所不同Unibo总是将基名称映射到rdfs:标签(反之亦然),而Garshol允许基名称(包括作用域基名称)映射到其他属性。应该指出的是,这两项提案在Topic Maps模型中引入类型化名称之前编写因此,这两个问题目前都不能被视为一个完整的解决方案。
在主题图中,基本名称可以有变体。这些是替代方案用于特定处理的名称形式上下文,如排序和显示。语义映射的提案中,只有Unibo提供了处理变量名称的解决方案;这是通过将具有复杂变量的名称表示为对象,这是一种似乎足够合理的方法,除了引入一个似乎多余的空白节点作为的值tm2rdf:参数属性。
4.3.3二进制关系
二进制关系的表示有些不同RDF和主题地图中的地形。RDF使用单个语句(或有时两个语句彼此相反),其中主语和宾语表示参与的两种资源关系。这两种资源参与的性质这种关系可以从他们作为主体的地位和对象。
在主题图中,二进制中没有主题和对象的概念关联,因为关联没有方向。的性质这两个参与主题在关系中的参与是通过他们的角色类型.
从Topic Maps转换为RDF时的挑战是要知道哪个角色扮演主题应该成为结果的主题语句以及如何保留角色类型。从RDF转到Topic Maps,挑战是要知道要分配给陈述的主语和宾语以及如何保存主体和客体是什么的知识。
Garshol和Unibo都通过允许其他信息来解决这个问题允许连接RDF主题和对象以及各自的角色类型。Unibo使用单个XML词汇表在被翻译的文档外部。Garshol使用RDF从RDF到Topic Maps的词汇表,以及一组Published从主题图到RDF的主题。Garshol的方法有允许源文档自行描述的优点(映射可以包含在源文档或其模式中)。这个Garshol的缺点是使用了两种不同的词汇,一种是每个方向。更清洁的解决方案是使用单一词汇表。
在缺少其他信息的情况下,Unibo回到了对象映射,需要九个RDF语句来表示单个二进制关联。另一方面,Garshol执行语义无论如何,使用预定义类进行映射主题和对象从RDF转到Topic Maps,并选择角色扮演者随机成为结果语句的主题从主题图转到RDF时。目前实施的这一线索信息丢失和无法执行双向跳闸。然而,后一种翻译保留下来是完全可行的执行往返所需的信息(以使用Garshol自己的RTM词汇表对模式进行注释)。
4.3.4非二进制关系
RDF和Topic Maps模型之间的一个主要区别是后者允许表达非二进制关系直接:一个协会可以有一个、两个或多个角色扮演者。在另一方面,RDF基本模型只允许二进制关系。
大多数现有的关于翻译与两个以上的角色扮演者并不令人满意,因为他们会导致大量RDF语句。[编号04]提议在RDF中表示n元关系的模式,其中关系是作为类而不是属性“重新呈现”的。每个这样的模式需要n个语句以表达关系。使用中给出的示例部分3.5.1根据使用的模式(P(P)代表重新表示的关系):
P rdf:类型X。P rA A公司。P rB B公司。P rC编号模式2P rdf:类型X。A r A P。P rB B公司。P rC编号模式1
其中第一个(标记为“模式2”)与Garshol的相同n元协会提案。如果在RDF社区似乎是明智的,为了兼容性,在翻译时尽可能遵循从主题映射到RDF的n元关联。
主题图还允许一元关联,即“关系”这只涉及一个角色扮演者。虽然很少使用,但确实如此偶尔出现,以表示布尔值的等价物属性(可能被视为二进制关系,其中角色扮演者之一是主题“true”)。以下示例从[胡椒粉05]声称歌剧图兰朵未完成:
未完成(图兰朵:作品)
现有的语义映射提案中没有一个明确地迎合了需求用于一元关联。
4.3.5事件
Garshol和Unibo都认识到事件是最自然的表示为单个RDF语句,其中属性对应于发生类型。内部和外部事件对应于对象分别为文本和资源的语句。正在进行从Topic Maps到RDF没有任何问题;走另一条路似乎需要额外的信息来区分来自名称的内部引用,以及来自关联或标识符。
不清楚Unibo在没有其他映射的情况下是如何工作的信息。Garshol中的默认值(至少在Omnigator公司翻译对象为文字的语句对象是资源的内部引用和语句关联。
4.3.6类型和子类型
Garshol和Unibo同意基本语义对等在中的type-instance概念之间【TMDM】和rdf:类型一方面;以及在超类型-子类型和之间rdfs:subClassOf另一方面。此外,关联类型和出现类型被视为等同于RDF属性。如上所述,角色类型存在特定问题,名称如前所述,这些类型在提案发布时并不存在已写入。
4.3.7具体化
只有Garshol和Unibo提到了具体化,但两个提案都没有提到认为这有问题。实际上,Unibo只会说话明确说明了关联的具体化,而Garshol提到具体化的名称、事件和关联。两者都没有提案涵盖主题图和关联的具体化角色。
4.3.8范围
范围的概念是主题图特有的被视为RDF/Topic Maps的主要障碍之一互操作性。所有现有的提案都集中讨论了这个问题形式或其他,但只有Garshol和Unibo这样做语义,即作为一种表达上下文有效性的方式断言。Garshol认为范围是最恰当的被认为是对另一个断言的一种特殊断言。因为关于断言的断言是通过Garshol,这两种范式和具体化都很容易翻译建议使用具体化和属性来转换范围它捕获了上下文有效性的语义。
然而,Garshol将作用域基名视为特殊情况,并且允许将特定范围中的基名称转换为特定属性。例如,作用域“昵称”中的基本名称可以使用foaf:尼克属性。在此期间无疑会产生更自然的结果(比翻译成具体化的rdfs:标签带有rdftm:范围依据属性),此类特殊套管引入了范围处理的不一致程度。为什么只应该基础名字会被这样对待吗?为什么不将关联和事件作为好?
答案可能是关联和事件具有类型而名字没有(或直到最近才有)。这是可以争论的Topic Maps中缺少类型化名称导致了作用域名称以扭曲范围语义的方式使用。或者,说得对另一种方式:考虑到即将修订的主题地图标准将允许键入名称,是否更适合表示昵称作为“昵称”类型的名称(或foaf:尼克)相反而不是作用域“昵称”中的名称?如果是这样,则有可能避免将作用域名称视为特殊情况,并且仍然获得自然名称结果。
Unibo以三种不同的方式处理范围(其中一种涉及具体化)取决于所讨论的构造类型。这是显然更加不一致,而且可能也没有必要因为具体化方法似乎可以用于确定任何类型的范围话题特征。
4.3.9其他问题
现有的提案都没有讨论如何代表RDF容器和集合、语言标记、XML文本或类型主题图中的文字。在这些问题中,后两个问题得到了解决Topic Maps模型的最新数据类型扩展。语言标签可以被视为一种类似范围的上下文信息并进行相应处理。容器和集合可能会也可能不会需要特殊处理:因为它们是用RDF的基本构建块(节点和弧),它们可以是使用主题图中的关联表示。语义不会丢失,可以在往返时恢复。然而,他们会在某些等价的主题图构造中不“可见”。