文档介绍:第6章 XML链接技术
本章结构
XML中的链接
Xlink概述
链接元素
XPointer概述
使用Xpointer访问信息
小节
思考题
XML中的链接
作为HTML的替代品,XML中自然也有链接。XML中的链接分为两部分,链接语言(XML Linking Language,XLink)和指针语言(XML Pointer Language,XPointer)。
XLink定义了如何从一个文档链接到另一个文档,XPointer定义了如何对一个文档中的不同部分进行寻址和定位。XLink指向一个URI(实际上是一个URL)。这个URI指定了一项特定资源,并且可以包含XPointer,用以更准确地定位到目标资源或者文档的某一部分。
XLink概述
1什么是Xlink
XLink在许多方面扩展了HTML链接的概念,它是专门为XML设计的链接语言。它比HTML提供的基本的超链接机制更加深入。它提供了可用标准方法处理复杂链接的能力。
XLink不仅实现了用HTML基于URL的超链接和锚站能够完成的一切操作,还允许用户创建多向链接。多向链接不只是像HTML那样将访问者向前带到某一特定的位置,还意味着可以从链接的任一端开始链接跨越。在这种情况下,链接可以有一种以上的方向。文档中的任何元素都可以变成链接,而不仅仅是锚站标记。
XLink允许用户定义位于与它们参照的资源不同位置的链接。通过允许链接从源文档中打开,用户就可以通过修改单个文档来维护链接。
这些特性使得XLink不仅适合新的用途,也适合那些在HTML中要花费相当大的工作量才能实现的功能,如交叉引用、注脚、尾注、相互链接的数据等。
XLink概述
2 XLink的设计原则1
。由于对本地网络之外的资源无法控制,并且也不可能控制每个链接提供的结果,XLink不应该因为站点的移动、文档的删除以及信息的改变而不能使用。XLink必须包容断掉的链接、不能被定位的资源、将用户带到错误方向的链接。XLink也必须在软件应用程序中支持多向链接。互操作性和国际化也是相当重要的。
XLink应该能被广泛的多种链接应用的域和多种类型的链接应用程序软件使用。当使用XLink时,不能偏爱一个域而忽视另一个域,不管链接指向何处或存储在哪种类型的文档中。另外,对浏览器、应用软件或用来创建、现实或处理链接的编辑系统也不应有所选择。上使用的唯一软件,对于所有类型的应用程序,链接应该有同样的用处。
XLink的描述语言应该是XML,前提是任意链接结构必须遵从XML元素和属性语法。由于读者可以设计出自己的链接元素,应该用读者创建和制元素的同样的方法来提供链接的特性。
XLink概述
2 XLink的设计原则2
XLink设计应能很快准备好。XLink是下一代Web框架的关键部分,并且规范必须能保证应用之间的互操作性。如果花很长时间来准备规范,每个应用将会创建自己的链接机制,它们之间也没有兼容性。
XLink设计应该是正式的和简明的。链接语言应该能用不会使读者迷惑的方式解释。这个想法就是规范在链接之间如何关联和用来定义链接的XML语法上不能迷惑。
XLink应该是易于阅读的。当传输或内部处理时,链接结构可以采用压缩、加密或二进制的形式,但在XML文档里的XLink链接必须是文本形式。
XLink概述
2 XLink的设计原则3
XLink可位于参与资源驻留的文档之外。为了提供可扩展性和从HTML链接的局限性中解脱出来,XLink必须支持复杂的外建链接。它允许链接在文档中建立,而链接指向的资源存在于其他文档中。
XLink应该表现链接的抽象结构和重要性。关于基本的链接行为应有一些小的提示。XLink规范的设计者们不想鼓励在程序中设立标记,它们向知识哪些基本的链接行为是可以接受的。
XLink必须易于实现。尽管由于它们的复杂性,链接的一些特性可能难于实现,但链接应可能实现,容易实现是规范的要求。
链接元素由xlink:type属性定义,其值可以取以下七类:
simple,表示元素是简单链接。
extended,表示元素是扩展链接。
locator,表示是远程资源。
arc,表示是链接资源的弧。
resource,表示是本地资源。
title,表示是自然语言的链接描述。
none
创建简单链接要使用的属性表6-1
Type:指定作为一个元素被创建的链接的类型。分为:
Simple:简单链接。类似html的超链接。
Extended, resource,:允许创建一个指向多个文档的多向链接。
Locator:指向远程资源。
Arc:描述两个链接之间的横向路径。
创建简单链接要使用的属性表6-1
Href:链接的目标URI。用来指定链接的目标