XSL 语言(EXtensible Stylesheet Language)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_26482855/article/details/51190978

XSL = XML 样式表

XML 不使用预先定义的标签(我们可以使用任何喜欢的标签名),并且这些标签的意义并不都那么容易被理解。

元素意味着一个 HTML 表格,一件家具,或是别的什么东西 - 浏览器不清楚如何显示它。
XSL 可描述如何来显示 XML 文档!

XSL 包括三部分:

XSLT: 一种用于转换 XML 文档的语言。
XPath: 一种用于在 XML 文档中导航的语言。
XSL-FO:一种用于格式化 XML 文档的语言。

什么是 XSLT?

XSLT 指 XSL 转换(XSL Transformations)。
XSLT 是 XSL 中最重要的部分。
XSLT 可将一种 XML 文档转换为另外一种 XML 文档。
XSLT 使用 XPath 在 XML 文档中进行导航。
XPath 是一个 W3C 标准。

正确的样式表声明

把文档声明为 XSL 样式表的根元素是 或 。

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

XSLT 元素

<xsl:template> 元素用于构建模板。
match 属性用于关联 XML 元素和模板。match 属性也可用来为整个文档定义模板。match 属性的值是 XPath 表达式(举例,match=”/” 定义整个文档)。
<xsl:sort> 元素用于对结果进行排序。
如需对结果进行排序,只要简单地在 XSL 文件中的 <xsl:for-each> 元素内部添加一个 <xsl:sort> 元素:
<xsl:for-each> 元素可用于选取指定的节点集中的每个 XML 元素。
<xsl:if> 元素用于放置针对 XML 文件内容的条件测试。
<xsl:choose> 元素用于结合 和 来表达多重条件测试。
<xsl:value-of> 元素用于提取某个选定节点的值,并把值添加到转换的输出流中。
元素可把一个模板应用于当前的元素或者当前元素的子节点。
假如我们向 元素添加一个 select 属性,此元素就会仅仅处理与属性值匹配的子元素。我们可以使用 select 属性来规定子节点被处理的顺序。

<xsl:for-each select="catalog/cd">
<xsl:if test="price &gt; 10">
<xsl:sort select="artist"/>
      <tr>
        <td><xsl:value-of select="title"/></td>
        <td><xsl:value-of select="artist"/></td>
      </tr>
</xsl:for-each>

结果过滤

通过在 元素中添加一个选择属性的判别式,我们也可以过滤从 XML 文件输出的结果。

<xsl:for-each select="catalog/cd[artist='Bob Dylan']">

合法的过滤运算符:

= (等于)
!= (不等于)
< (小于)
> (大于)

猜你喜欢

转载自blog.csdn.net/qq_26482855/article/details/51190978
xsl