XML 编程思想: XML 语义锚

包涵饭桌

包涵饭桌

2016-02-19 16:49

今天图老师小编给大家精心推荐个XML 编程思想: XML 语义锚教程,一起来看看过程究竟如何进行吧!喜欢还请点个赞哦~

  XML 的语法仅仅是数据互操作的基础。下一步是实现语义的透明性。一些组织正致力于定义完整的文档格式,希望人们能全盘接受。而另一些人则期望能找到从更小粒度的层次上表达一般术语和概念的方法。在本次专栏文章中,Uche Ogbuji 着眼于 XML Topic Maps Published Subjects(XML 主题地图标题发布)和 Universal Data Element Framework(UDEF,通用数据元素框架),这两种都是小粒度的方法,通过搜索在语义流中提供锚。

  前面我在本专栏中曾经提过,XML 仅仅为实现通用信息交换提供了最最基本的手段。XML 完全建立起来之后,在 XML 之上构建标准的巨大工作现在已经转向 语义透明性,即借用某种结构化的 XML 文档,不同的系统能够对实际概念有一个共通的理解。有关语义透明性的讨论请参见 Thinking XML专栏的开场白 。

  实现这一宏伟目标的方法有很多,但是我倾向于将这些方法分为两大类:

自顶向下的方法定义整个文档格式,以及所有元素、属性和内容的语义,其中通常会引用相关的业界标准。这样的例子包括 OAGIS(在 XML 和语义,第 4 部分中进行了介绍)和 UBL(在 通用商业语言(UBL)中进行了介绍)。 自底向上的方法在离散的层次上定义术语和概念,而与这些术语概念出现在什么文档中无关。这样的例子包括 ISO Basic Semantics Register(BSR),不幸的是这种方法看起来已经停止了,还有就是 RosettaNet Dictionaries(在 XML 和语义,第 3 部分一文中进行了介绍)。

  自顶向下的方法的范围通常挑战性更小,一般也建立在业界已有的基础之上。自底向上的方法潜在的优势更大,但是更难于开发和推广。RosettaNet 这种方法很有意思,它兼顾了两种方法,同时提供字典和文档方案。还有,UBL 在 ebXML 的领域内与自底向上的方法紧密结合。

  我们在辞典和语义登记表中定义名词和概念,这些就是所谓的锚,您可以在进行 XML 通信的时候用它们构建一般性的语义。本文中,我将再探讨两种构建锚的方法。

  标题发布

  在 我的上一篇文章中,我提到了 XML Topic Maps,并且说那项技术的基本思想之一是 subject identifier(标题标识),它为特定的概念提供惟一的标识。最有野心的方法是全盘使用 published subjects(标题发布)。虽然标题发布的思想是与 Topic Maps 的原则紧密结合在一起的,但是也没有理由说它不能用于一般的语义锚,甚至用在其他的技术之中,如 RDF 和一般的 XML 词汇。XML Topic Maps(如果您还记得的话,是更一般的 Topic Maps 规范的一个特例)规定标题发布应该是 URI,并使其与大多数 Web 技术,如 XML 和 RDF 等保持一致。OASIS Topic Maps Published Subjects TC(OASIS 主题地图题目发布技术委员会,参阅 参考资料)致力于定义及鼓励在多种不同的技术中使用公用标题。它的技术规范中有一篇题为Published Subjects: Introduction and Basic Requirements的引言,里面说到:

  OASIS Topic Maps Published Subject Technical Committee 的目标是通过应用标题发布实现主题地图的互操作性。更进一步的目标是实现主题地图和其他明显使用题目的抽象表示技术之间的互操作性,如 Resorce Description Framework(资源描述框架,RDF)以及 Web Ontology Language(Web 本体描述语言,OWL)。

(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/webkaifa/)

  规范中定义的 Published Subjects 提供了一种开放的、可扩展的、基于 URI 的方法,用于标识谈论的话题。它们迎合人与应用程序的需要,提供保证用户方面能够建立信心和信任的机制。因此,Published Subjects 特别希望能引起本体论、分类学、辞典学、登记学、目录学等方面的出版商和用户的关注,并期望用于获取、比较和汇聚信息与知识的应用程序(包括中间件)。

  Published Subjects TC 只进行了框架性的工作。实际的公用标题是其他的组完成的。我能够找到的最卓越的标题发布是 OASIS Topic Maps Published Subjects for Geography and Languages TC(OASIS 主题地图地理与语言标题发布技术委员会)完成的 ISO 语言与国家代码。我在 参考资料中还提到其他一些标题发布的工作。清单 1 是从用这些标题发布制作的一个 XML Topic Map 中节选的一段代码。

  清单 1.用 XTM 标题发布表示的 ISO 国家代码示例

  

topic id="French" subjectIdentity  subjectIndicatorRef   xlink:href="    http://psi.oasis-open.org/geolang/iso639/#fre"/ /subjectIdentity baseName  baseNameStringfrancais/baseNameString /baseName/topic   

  Published Subjects TC 的主席 Bernard Vatant 开发了一个例子,用于说明标题发布如何用于 Web Ontology Language(Web 本体描述语言,OWL)。OWL 最初是用来代替 DAML+OIL 的(在 知识管理的基本 XML 和 RDF 技术,第 5 部分一文中讲到)。一会儿我会更深入地讨论 OWL。清单 2 是同一个标题发布中的代码片断,但是这次用的是 OWL。

  清单 2. 用 OWL 标题发布表示的 ISO 国家代码示例

  

Lang rdf:ID="fre" !-- The following asserts equivalence between the local resource #fre    and the published subject for the French language -- owl:sameAs rdf:resource="    http://psi.oasis-open.org/geolang/iso639/#fre"/ rdfs:label xml:lang="en"French/rdfs:label rdfs:label xml:lang="fr"francais/rdfs:label/Lang      

  owl:sameAs 语句以及标题发布有效地提供了一个锚,用于从局部定义的资源指向语义上比较含混的概念。

  通用数据元素

  Universal Data Element Framework(通用数据元素框架,UDEF)是一项很有野心的计划,它为不同行业内的多种关键数据元素提供惟一标识(参阅 参考资料)。这个项目定义的数据元素风格上类似于 Dewey Decimal System(杜威十进制系统)。它们也很明白要严格遵从自底向上的原则:

  网络上已经进行了广泛的集成与应用程序协作的工作,因此我们需要明确目前正在进行的文档标准、核心组件、本体论和分类学工作相互之间有什么区别。UDEF 只是寻求成为数据元素中的属性。不存在对过程、验证或者处理的需求,而只是在试图用标准的、可重复的方式通信,并获得数据元素所表示的确切概念。上下文的内容很少,刚刚够用来明确标识数据元素。

  UDEF 采用了一种很有意思的方法,它将字母、数字、下划线、句号结合起来,用来代替自然语言作为标识符。这样做的好处是对于当地语言显得更加自然不像很多 XML 技术那样更偏向于英语不过这就意味着即便是对 UDEF 进行非正式的处理,查找工具也是十分重要的。举个例子来说,某个 产品部件标识符概念的 UDEF ID 是 9_5.8 ,按照前面标题发布一节中的例子, 国家代码概念的 UDEF 标识符是 e.7_4 。

  起锚了

(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/webkaifa/)

  迄今为止,标题发布领域内还没有给开发人员提供多少可以构建的东西。基本需求才刚刚定下来,比计划的日期退后了一年,TC 经历了很多苦难的工作过程。ISO BSR 工作的停滞状态,也意味着自底向上实现语义透明性所面临的巨大挑战。然而,困难总是被乐观的前景冲淡,我建议读者们继续关注这些开创性的工作。我当然希望更多的开发人员对标题发布产生兴趣,能够投身到此项工作中。在 OASIS 中有一项值得发扬的传统,他们的工作组总是非常开放和透明。

  UDEF 的确对 Bizcode 和 United Nations Centre for Trade Facilitation and Electronic Business(联合国贸易促进与电子商务中心,UN/CEFACT)的 Core Components Identifiers(核心组件标识)构成了竞争。拿后者来说,它是 ebXML 的重要组成部分,应用于 UBL 当中。所有的讨论都着重于如何使不同的力量结合起来,但是最终还是要看哪一方力量会在实践中获得更多的支持,即便是每一种都有它自己的领地也没有关系。在以后的文章中,我将会讨论到 Bizcode、Core Component,以及更多此类的开创工作。

  如此众多的力量都从不同的角度致力于解决语义透明性的问题,这真是件好事。在这样一个开放的环境中,可以预期,很多工作同时也考虑到了与之类似的工作。UDEF 中提供了例子,用来说明如何在 ebXML 和 OAGIS 中,以及 RDF 和 XML 方案中使用它们的 ID。不过我们也可以考虑一下自顶向下和自底向上两种方法哪一种对于在语义层建立真正的透明性来说更加关键。是建立完整和连贯的文档的方法比较容易应用,还是必须先准备好共享术语表的基本构建模块,然后才可能在不需要认可精确的文档标准的情况下实现互操作。请您不要迟疑,立即在 Thinking XML论坛上发布您对这一问题的看法吧。

展开更多 50%)
分享

猜你喜欢

XML 编程思想: XML 语义锚

Web开发
XML 编程思想: XML 语义锚

XML 编程思想:XML语义

Web开发
XML 编程思想:XML语义

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

XML 编程思想:XML和语义

Web开发
XML 编程思想:XML和语义

XML 编程思想:XML和语义:XML 会兑现其承诺吗?

Web开发
XML 编程思想:XML和语义:XML 会兑现其承诺吗?

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

XML 编程思想:踏着语义的节拍

Web开发
XML 编程思想:踏着语义的节拍

XML 编程思想: 专利编档遭遇 XML

Web开发
XML 编程思想: 专利编档遭遇 XML

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

XML 编程思想:利用模式标准化实现自上而下的语义透明

XML 编程思想:利用模式标准化实现自上而下的语义透明

电脑显示器变色怎么办

电脑显示器变色怎么办
下拉加载更多内容 ↓