你现在的位置:学校网首页 - 免费在线书籍 - XSLT轻松入门第四章:XPath的语法

XML - XSLT轻松入门第四章:XPath的语法  [ 返回目录页 ]

4.XPath的语法

我们在前面已经提到过,XPath是用来帮助XSLT在XML源文档中查找定位信息的语言。在实际使用过程中,XPath和XSLT总是混在一起使用,在上面一章的语法例子中我们已经有使用到XPath的语法,只是没有明确点出。但W3C将它们分成两个标准,所以我们也将它们拆成两章来讲解。
4.XPath的语法
4.1 当前位置
4.2 寻址操作
4.3 运算符
4.4 功能函数
4.1 当前位置
当我们使用XSLT处理XML源文档是,我们用Context来表示当前正在被模板处理的节点位置。比如xsl:template match="/"语句中表示Context在文档的根(root)节点。我不知道如何准确的翻译Context这个词,它类似于C语言里的指针,表示程序当前运行的位置。理解Context对于正确处理XSL模板非常重要,当您的XSL模板输出的文档和您想要的不一样,最先应该分析的就是Context在哪里。
Location Paths是用于设定你想要寻找的Context节点位置。就类似DOS的目录命令。我们看个例子

其中child::PEOPLE/descendant::PERSON就是XPath语法,这个表达式就是一个Location Paths,代码说明要显示所有PEOPLE元素的子元素和所有PERSON元素的子元素。通常我们会采用更简单的写法:

我们来解释path的两种表示方法:"/"和"//"。
"/"是表示当前文档的节点,类似DOS目录分割符。例如:/PEOPLE表示选择根节点下的PEOPLE元素;PEOPLE/PERSON表示选择PEOPLE元素下所有的PESON子元素。
"//"则表示当前文档所有的节点。类似查看整个目录。例如://PEOPLE表示选择文档中所有的PEOPLE元素,无论它在什么层次;PEOPLE//PERSON表示在PEOPLE元素下所有的PERSON元素,无论它的层次多深。
 


技术支持:www.szxuexiao.com 最佳浏览分辨率:1024*768、IE6以上 声明:本站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载或引用的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除!