### XSLT 轻松入门第二章：XSLT 的实例

2.3 过程解析

如果你成功的看到效果，你也许想知道这些代码的具体含义，我们来详细解说：看hello.xsl文件

<?xml version="1.0" encoding="iso-8859-1"?>

这是标准的XML文档的首行代码，因为XSLT本身也是XML文档。encoding属性用来定义文档使用的编码形式，iso-8859-1主要支持西欧和北美的语言编码。如果你想使用简体中文，那么就应该写成：

<?xml version="1.0" encoding="GB2312"?>

接下去的代码是:

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

这是标准的XSLT文件首行代码。xsl:stylesheet代码的意思是将文档作为一个样式表来(stylesheet)处理。xmlns:xsl属性是一个名字空间声明，和XML中的名字空间使用方法一样，用来防止元素名称重复和混乱。其中前缀xsl的意思是文档中使用的元素遵守W3C的XSLT规范。最后的version属性说明样式表只采用XSLT
1.0的标准功能，这也是目前仅有的标准。

<xsl:template match="/">

一个<xsl:template>元素定义一个模板规则。属性match="/"说明XML源文档中，这个模板规则作用的起点。"/"是一种XPath语法，我们在后面将详细讲述，这里的"/"代表XML结构树的根(root)。

接下去的代码是:

<html>
<head>
<title>First XSLT Example</title>
</head>
<body>
<p><xsl:value-of select="greeting"/></p>
</body>
</html>

说明：当模板规则被触发，模板的内容就会控制输出的结果。例子中，模板大部分内容由HTML元素和文本构成。只有<xsl:value-of>元素是XSLT语法，这里<xsl:value-of>的作用是拷贝原文档中的一个节点的值到输出文档。而select属性则详细指定要处理的节点名称。这是XPath语法，"greeting"的意思就是寻找根节点名为greeting的元素，并用模板来处理这个节点。具体的就是找到<greeting>元素，然后将元素的值"hello
world"按模板样式拷贝到输出文件。
提示：由于XML文档是严格的层级结构(用IE5查看XML文件，会看见XML文档类似多级关联菜单)，所以我们形象的称XML文档为文档树，其中每一对元素称作树的一个节点。根元素就是根节点。

最后关闭所有元素：

</xsl:template>
</xsl:stylesheet>

好，例子解说完毕。你是否想过为什么要用这么复杂的方法来显示"hello world"呢？
关键不在表面，而在于实质：用这种方法，hello world可以从XML文档中被提取出来，并用各种不同的XSLT模板处理，来输出不同需求的文档。我们来看看XSLT的主要用途：

2.4 XSLT的用途

XSLT的主要用途就是数据转换应用。
由于以XML为基础的电子商务广泛普及，XSLT作为数据转换的角色也越来越重要。例如直接将电视新闻的数据格式转换成报纸新闻需要的数据格式；将股票数据直接转换成图片显示在网页上；对EDI(电子数据交换)数据进行统计，排序等等。
XSLT是处理类似工作的理想工具。