XSLT

XSLT

一、XSLT语言

它起始于 XSL,结束于 XSLT、XPath 以及 XSL-FO。

1、起始于 XSL

    XSL 指扩展样式表语言(EXtensible Stylesheet Language)。万维网联盟 (W3C) 开始发展 XSL 的原因是:存在着对于基于 XML 的样式表语言的需求。

2、CSS = HTML 样式表

    HTML 使用预先定义的标签,标签的意义很容易被理解。HTML 元素中的

元素定义表格 - 并且浏览器清楚如何显示它。向 HTML 元素添加样式是很容易的。通过 CSS,很容易告知浏览器用特定的字体或颜色显示一个元素。

3、XSL = XML 样式表

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

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

4、XSL - 不仅仅是样式表语言

XSL 包括三部分:

   XSLT

      一种用于转换 XML 文档的语言。

   XPath

      一种用于在 XML 文档中导航的语言。

   XSL-FO

      一种用于格式化 XML 文档的语言。

 

二、XSLT简介

    XSLT 是一种用于将 XML 文档转换为 XHTML 文档或其他 XML 文档的语言。XPath 是一种用于在 XML 文档中进行导航的语言。

    XSLT 指 XSL 转换(XSL Transformations)。

    XSLT 是 XSL 中最重要的部分。

    XSLT 可将一种 XML 文档转换为另外一种 XML 文档。

    XSLT 使用 XPath 在 XML 文档中进行导航。

XPath 是一个 W3C 标准。

 

三、XSLT转换

   实例研究:如何使用 XSLT 将 XML 转换为 XHTML

1、正确的样式表声明

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

     注释: 是完全同义的,均可被使用!

     根据 W3C 的 XSLT 标准,声明 XSL 样式表的正确方法是:

或者:

     如需访问 XSLT 的元素、属性以及特性,我们必须在文档顶端声明 XSLT 命名空间。

 xmlns:xsl="http://www.w3.org/1999/XSL/Transform" 指向了官方的 W3C XSLT 命名空间。如果您使用此命名空间,就必须包含属性 version="1.0"。

2、创建 XSL 样式表

  创建一个带有转换模板的 XSL 样式表("cdcatalog.xsl"):




  
  
    

My CD Collection

Title Artist

由于 XSL 样式表本身也是一个 XML 文档,因此它总是由 XML 声明起始:

下一个元素,,定义此文档是一个 XSLT 样式表文档(连同版本号和 XSLT 命名空间属性)。

元素定义了一个模板。而 match="/" 属性则把此模板与 XML 源文档的根相联系。

元素内部的内容定义了写到输出结果的 HTML 代码。

最后两行定义了模板的结尾,及样式表的结尾。

3、把 XSL 样式表链接到 XML 文档

   向 XML 文档("cdcatalog.xml")添加 XSL 样式表引用:




  
    Empire Burlesque
    Bob Dylan
    USA
    Columbia
    10.90
    1985
  
.....
 

XSLT_第1张图片

四、