前面我在本专栏中曾经提过,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)。
规范中定义的 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>
<baseNameString>francais</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 。
迄今为止,标题发布领域内还没有给开发人员提供多少可以构建的东西。基本需求才刚刚定下来,比计划的日期退后了一年,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论坛上发布您对这一问题的看法吧。
- 您可以参阅本文在 developerWorks 全球站点上的
英文原文.
- 请在
讨论论坛上参与本文的讨论。(您也可以单击文章顶部或底部的
讨论来访问论坛。)
- 找到有关
OASIS
Topic Maps Published Subjects TC的更多信息。
- 请您阅读
OASIS
Topic Maps Published Subjects for Geography and Languages TC 定义的语言、国家和地区的标题发布。这个
TC 已经为
ISO
639:1988 (E/F) - Codes for the representation of names of languages
开发了
标题发布。他们还为
ISO
3166开发了
标题发布。Bernard
Vatant 设计了一个
例子,说明如何将这些标题发布用于
OWL。
- Mary Nishikawa 开发了一组
Universal
Standard Products and Services Classification (通用标准产品与服务分类,UNSPSC)代码核心概念的标题发布(见
Dublin Core/RDF 元数据)。请您阅读与 UNSPSC 提议草案“
Best
Practices for Published Subject Documentation Structure”中的其他相关 Topic
Maps 组。
- 请您浏览
OASIS
Topic Maps Vocabulary for XML Standards and Technologies TC(OASIS XML
标准与技术主题地图词汇表委员会)制定的 XML 标准及技术的标题发布。这些规范仍然处于起始阶段,尚未发布正式的标题组。
- 对这项工作感兴趣的开发人员可以从
UDEF
主页上找到大量资料,不过还是需要您自己挖掘。另一个
非正式网页
上有一些资源,可以链接到早期人们为之辩护的演讲材料。来自 Intelligent Enterprise 的 William J. Lewis
在“
XML
Microstandards”一文中着重介绍了 UDEF。
- 请到
developerWorks
XML 专区上查找更多的 XML 资料,还可以找到
Thinking XML专栏
以前的文章。
- IBM 的 DB2 数据库不仅支持关系数据库存储,也提供与 XML 有关的工具,比如可作为 XML 与关系系统之间桥梁的
DB2
XML Extender。要学习有关 DB2 的更多知识,请访问
DB2
开发者园地 。
- 请了解如何成为一名
IBM
认证的 XML 及相关技术的开发人员。

Uche Ogbuji 是 Fourthought Inc. 的顾问和共同创始人,该公司是专为企业知识管理提供 XML 解决方案的软件供应商和咨询公司。Fourthought 开发了 4Suite,它是一个用于 XML、RDF 和知识管理应用程序的开放源码平台。Ogbuji 先生是一位出生于尼日利亚的计算机工程师和作家,他现在美国科罗拉多州博耳德(Boulder)生活和工作。可以通过 uche.ogbuji@fourthought.com 与 Ogbuji 先生联系。