`
semi_sleep
  • 浏览: 101109 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

读XML in a Nutshell (7)

    博客分类:
  • XML
XML 
阅读更多

本篇包括Charpter 10 XLink。
XLink相比html的anchor来说要抽象许多了,而它能表示的内容也广泛很多,从某种角度来说xlink定义的是graph而不仅仅是link这么简单,通过locator跟resource定义点,通过arc定义边,从而构成任意的图。
要点如下:

1.XLink的namespace是http://www.w3.org/1999/xlink。XLink主要分为两种类型,simple跟extended。

2.Simple的xlink定义如下,可以使用xlink:show(可选值为new,replace,embed,other,none)跟xlink:actuate(可选值为onLoad,onRequest,other,none)这两个attribute来控制其行为,可以通过xlink:title跟xlink:role来描述其语义,其中title是一段文字,role是某个url。
<novel xlink:type = "simple" xlink:href = "ftp://archive.org/pub/etext/etext93/wizoz10.txt"/>

3.Extended的xlink通过定义点和边来描述一个图,所有的点和边的定义必须包含在含有xlink:type="extended"的element中,本地资源采用xlink:type="resource"定义,非本地资源采用xlink:type="locator"定义,边采用xlink:type="arc"定义。Resource跟locator都可以使用xlink:title跟xlink:role来描述其语义,同时使用xlink:label来为其命名,使其可以被arc引用。Arc用xlink:title跟xlink:arcrole来描述其语义,同时使用xlink:from跟xlink:to来描述其起始及终结的点,其中由于不同的resource或者locator可能有同个label,这个时候arc描述的是若干条边,而通过省略xlink:from或xlink:to可以选择所有的点,最后需要注意的是在同个extended的xlink下面,不同的arc所描述的边不能由重复(交集),否则视为错误。例子如下:
<author xlink:type="resource">L. Frank Baum</author>
<edition xlink:type="locator" xlink:href="urn:isbn:0688069444" xlink:title="William Morrow" xlink:role="http://www.williammorrow.com/" xlink:label="ISBN0688069444"/>
<purchase xlink:type="arc" xlink:from="ISBN0192839306" xlink:to="buy" xlink:arcrole="http://www.example.com/purchase_details.txt" />

4.在非本地资源间的边称为third-party links,从本地资源到非本地资源的边成为outbound links,从非本地资源到本地资源的边成为inbound links,如果一个xml document含有third-party links或者inbound links称为linkbase。

5.书中列举了两个在dtd中加入xlink支持的例子,如下:
<!ELEMENT novel (title, author, year)>
<!ATTLIST novel xmlns:xlink CDATA #FIXED 'http://www.w3.org/1999/xlink' xlink:type (simple) #FIXED 'simple' xlink:href CDATA #REQUIRED>
<!ELEMENT title (#PCDATA)>
<!ELEMENT author (#PCDATA)>
<!ELEMENT year (#PCDATA)>

<!ENTITY % simplelink "xlink:type (simple) #FIXED 'simple' xlink:href CDATA #REQUIRED xmlns:xlink CDATA #FIXED 'http://www.w3.org/1999/xlink' xlink:role CDATA #IMPLIED xlink:title CDATA #IMPLIED xlink:actuate (onRequest | onLoad | other | none) 'onRequest' xlink:show (new | replace | embed | other | none) 'new'">
<!ATTLIST anthology %simplelink;>
<!ATTLIST novel %simplelink;>
<!ATTLIST nonfiction %simplelink;>

分享到:
评论

相关推荐

    XML.in.a.Nutshell

    XML.in.a.Nutshell(英文版)

    C# 5.0 in a Nutshell

    When you have a question about how to use C# 5.0 or the .NET CLR, this highly acclaimed bestseller has precisely the answers you need. Uniquely organized around concepts and use cases, this fifth ...

    C# 7.0 in A Nutshell

    Dive in and discover why this Nutshell guide is considered the definitive reference on C#. Get up to speed on the C# language, from the basics of syntax and variables to advanced topics such as ...

    python in a nutshell 2nd,中文版

    《Python in a Nutshell》第二版是一本针对Python编程语言的深度指南,旨在为程序员提供一个全面而紧凑的参考资源。这本书中文版的高清扫描版是学习和查阅Python技术的重要资料,尤其适合已经有一定编程基础并希望...

    USB in a Nutshell

    ### USB in a Nutshell #### 引言:理解USB标准 对于初学者而言,进入USB领域可能会感到非常棘手。USB 2.0规范长达650页,仅仅这一点就足以让人望而却步。而这仅仅是众多与USB相关的标准中的一个开始。除了主规格...

    Delphi in a Nutshell

    Delphi in a Nutshell is the first concise reference to Borland/Inprise Delphi available. It succinctly collects all the information you need in one easy-to-use, complete, and accurate volume that goes...

    R in a Nutshell

    ### R in a Nutshell #### 知识点一:R 的获取与安装 - **R 版本**:本书提及了 R 的版本信息,对于学习者来说了解当前使用的 R 版本至关重要,因为不同的版本可能会有功能上的差异或兼容性问题。 - **获取与安装 ...

    C#6.0 IN A NUTSHELL

    《C#6.0 IN A NUTSHELL》是由Joseph Albahari和Ben Albahari合著的一本关于C#编程语言的参考书籍。这本书是“C# in a nutshell”系列书籍的最新版,专门针对C# 6.0版本提供了详尽的参考资料和指导。该书不仅仅是一本...

    Python in a Nutshell Third Edition 2017

    ### Python in a Nutshell 第三版 2017 关键知识点解析 #### 书籍概述 《Python in a Nutshell》第三版是一本全面而深入介绍Python编程语言的经典著作,由Alex Martelli、Anna Ravenscroft和Steve Holden共同撰写。...

    C# 5.0 in a Nutshell 5th

    《C# 5.0 in a Nutshell 5th》是C#编程语言的一本权威指南,由专家撰写,深入浅出地介绍了C# 5.0版本的关键特性和使用方法。这本书对于开发者来说,是一份宝贵的参考资料,帮助他们理解和掌握C# 5.0的精髓,提升开发...

    C# 5.0 in a Nutshell, 5th Edition

    《C# 5.0 in a Nutshell, 5th Edition》是一本全面介绍C# 5.0编程语言的经典著作。这本书由权威专家编写,深入浅出地讲解了C# 5.0的关键特性,旨在帮助开发者快速掌握并熟练应用这一强大的编程工具。 C# 5.0是微软...

    Java in a Nutshell(中文版)

    Java in a Nutshell(6th) 英文无水印pdf 第6版 pdf所有页面使用FoxitReader和PDF-XChangeViewer测试都可以打开 本资源转载自网络,如有侵权,请联系上传者或csdn删除

    C# 6.0 in a Nutshell(6th) 无水印pdf

    C# 6.0 in a Nutshell(6th) 英文无水印pdf 第6版 pdf所有页面使用FoxitReader和PDF-XChangeViewer测试都可以打开 本资源转载自网络,如有侵权,请联系上传者或csdn删除 本资源转载自网络,如有侵权,请联系...

Global site tag (gtag.js) - Google Analytics