XML的语法、结构以及相关的一些技术(2)

时间:2007-10-23 07:27:00 


另外一种Xlink链接方式是Extended Link,它的特点是可以一次设定多个链接对象。同样,在使用Extended Link类型的Xlink元素前必须在DTD中声明这个元素。声明方式和Simple Link类型的Xlink元素类似,不同之处有两点,第一,声明xml:link属性时,语句变为:xml:link CDATA #FIXED “extended”;第二,没有任何href属性和任何目标描述,声明Extended Link类型的Xlink元素,必须包括一套包含href定位的子元素。即在声明了Extended Link类型的Xlink元素之后,还必须声明一个xml:link属性值为locator的子元素。例如:


〈!ELEMENT aaa ANY〉
〈!ATTLIST aaa
xml:link CDATA #FIXED "extended"
inline (true|false) "true"
content-role CDATA #IMPLIED
content-title CDATA #IMPLIED〉
〈!ELEMENT bbb ANY〉
〈!ATTLIST bbb
xml:link CDATA #FIXED "locator"
role CDATA #IMPLIED
href CDATA #REAUIRED
title CDATA #IMPLIED
show (embed|replace|new) "replace"
actuate (auto|user) "user"
behavior CDATA #IMPLIED
〉 

这样,我们就可以在XML文件中使用定义过的Extended Link的Xlink元素。如:



〈aaa〉文章资料
〈bbb href="http://www.cbinews.com/XML1.htm title="XML入门"/〉
〈bbb href="http://www.cbinews.com/XML2.htm title="XML进阶"/〉
〈bbb href="http://www.cbinews.com/XML3.htm title="XML应用"/〉
〈/aaa〉 

当我们通过CSS或XSL将这个XML文件在浏览器中显示出来后,用户点击“文章资料”这个Extended Link的Xlink链接,将会出现一个选单,列出所有子元素中的标题,并将用户带到相应的位置。


2.Xpointer:Xpointer用来设定XML文件内不同位置的链接,和HTML中的内链接类似,但是,Xpointer提供了5种不同的在XML文件内定位的方法,可将地址定位到相应的地方,功能上比HTML中的内链接更为强大。
绝对定位:root()——将地址定位到XML文件中的根元素位置。
属性名(x)——将地址定位到属性值为x的特定属性位置。
相对定位:child(x)——将地址定位到当前地址下的第x个子标记处。
child(x,y)——将地址定位到当前地址下第x个标记名为y的标记处。
child(x).child(y,z)——将地址定位到当前地址下的第x个标记处,然后将这个标记作为当前地址,再找出该标记下的第y个标记名为Z的控制标记。
范围定位:span(Xpointer1,Xpointer2)——选择所有的在第一个Xpointer开始和第二个Xpointer结束之间的内容。其中Xpointer1、Xpointer2表示其他的定位方法。

属性定位:attr(x)——找出第一个具有x属性的标记。

字符串定位:搜寻特定的字符串,然后将地址定位到特定的字符串处。

合并定位:将上述的定位方法进行组合,产生更多的功能。各种定位方法之间用“.” 符号分隔。

标签:xml,Xpointer,dom,xlink
0
投稿

猜你喜欢

  • asp检测服务器XmlHttp组件支持情况

    2008-03-03 12:30:00
  • IE9四大渲染引擎模式

    2010-04-20 16:57:00
  • 在ASP应用程序中加入智能搜索

    2007-09-18 13:15:00
  • SQL语句参考及记录集对象详解

    2008-11-25 11:47:00
  • linux下如何备份还原mysql数据库

    2010-08-08 08:59:00
  • css实现简单圆角效果

    2008-11-27 13:11:00
  • ASP函数大全(数字函数)

    2009-06-01 12:33:00
  • 用javascript实现的汉字简繁转换功能

    2008-05-04 13:15:00
  • 3个asp简单技巧

    2009-11-26 20:55:00
  • 登录与注册两者的距离

    2009-01-02 16:48:00
  • 栅格:灵活应变

    2008-07-22 12:22:00
  • 条件CSS的使用[译]

    2009-03-12 12:23:00
  • ASP实现类似Java中的Linked HashMap类

    2010-04-03 20:49:00
  • Oracle 游标使用总结

    2009-10-02 17:36:00
  • HTML 5 Video概述

    2010-06-23 18:56:00
  • 关于交互设计在QQ秀赠送流程中的优化

    2009-06-11 12:30:00
  • SQL Server元数据的管理与应用

    2009-03-16 14:24:00
  • asp如何使用ADO 2x Command 对象读取数据?

    2010-06-03 10:51:00
  • 使用Dreamweaver MX表格排序功能

    2010-07-13 12:08:00
  • javascript模拟鼠标自动点击链接

    2007-11-03 19:08:00
  • asp之家 网络编程 m.aspxhome.com