XLink
简介
在HTML中,常用标记表示链接。通过标记,可以从一个文件链接到另一个文件,或者链接到文件的某一部分。另外,标记 和<OBJECT>允许图形等对象直接嵌入文件。XML链接完全不同,它没有专门的链接元素,需要通过指定元素属性来表示链接,只要元素包含xlink:type属性,且取值为"simple"或"extended",该元素就是链接元素,其中xlink是代表XLink命名空间的前缀,当前版本的URI是"http://www.w3。org/1999/xlink",根据xlink:type属性的取值,可以将XML链接划分为简单XML链接和扩展XML链接。简单XML链接的xlink:type固定取值为"simple",扩展XML链接的xlink:type固定取值为"extended"。简单XML链接与HTML链接非常相似,它在链接元素和目标资源间建立链接。需要强调的是,如果XML文件具有文件类型定义DTD,XLink的全局属性必须在DTD中定义。不过,并不是所有的XLink全局属性都必须在DTD中加以声明,可以根据需要进行裁剪,只声明使用到的属性即可。而且,将一个元素声明为链接元素并没有增加对元素的属性和内容的限制,只要元素实例符合DTD声明,仍然可以包括任意属性和内容。
评价
xlink:href属性是目标资源的URL,可以是绝对URL、相对URL或文件片段,相对URL必须接收XML Base中指定的绝对路径,XLink处理程序将XML Bae和相对URL合并起来形成目标资源的URL,而文件片段则由XPointer指定。xlink:role和xlink:title是用于描述目标资源的属性,统称为语义属性。xlink:role用于机器阅读,如搜索引擎等,而xlink:title用于人工阅读;xlink:show和xlink:actuate用于描述链接激活时的行为,统称为行为属性。xlink:show表示链接激活时的目标资源的显示环境,取值"embed"表示在当前窗口嵌入显示,"replace"表示在当前窗口显示目标资源,替换原来的显示内容,"new"表示新开窗口显示目标资源,xlink:actuate是指链接的激活时机,"onLoad"是指文件加载时直接激活链接资源,"onRequest"是指在文件加载后,用户发出链接激活的命令才激活,如用户点击了链接等。[1]