xslt轻松入门第四章:xpath的语法(1)

  • 作者:未知 来源:未知 添加时间:2006年7月3日 字体:

  • 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的目录命令。我们看个例子

    <xsl:for-each select="child::people/descendant::person">

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

    <xsl:for-each select="people/person">

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

  • 上一篇:xslt轻松入门第四章:xpath的语法(2)
  • 下一篇:xslt轻松入门第三章:xslt的元素语法(6)
  • 最后更新时间:2024年12月22日
  • 返回页面顶端
ppdesk