XSLT快速参考

来源:网络 责任编辑:栏目编辑 发表时间:2013-07-01 11:48 点击:
1 前言
在计算机科学中,XSLT是扩展样式表转换语言(Extensible Stylesheet Language Transformations)的简称,这是一种对XML文档进行转化的语言,XSLT中的T代表英语中的“转换”(transformation)。它是XSL(Extensiblestylesheetlanguage)规范的一部分。
 
      XSLT是一种用于将XML文档转换为XHTML文档或其他XML文档的语言。 也可以转换成非xml文档,如txt,html, java等等其他文档
 
  XPath是一种用于在XML文档中进行导航的语言。
 
  XSLT指XSL转换(XSLTransformations)。
 
  XSLT是XSL中最重要的部分。
 
  XSLT可将一种XML文档转换为另外一种XML文档。
 
  XSLT使用XPath在XML文档中进行导航。
 
  XPath是一个W3C标准。
 
  XSLT=XSL转换。
 
我们用一个简单的XSLT样式表作为例子介绍了XSLT的概要。当然,XSLT所拥有的元素并不仅限于xsl:template、xsl:apply-templates、xsl:value-of。为了实行转换,XSLT准备了各种各样的元素。本章将以最常用的元素为中心举例说明。
 
另外,本文中并不准备介绍元素的全部属性。详情请参见W3C标准的原文[1]及译文[2]等。
 
在XSLT中经常会用到一种被称为XPath的描述方法。首先从XPath的概要开始介绍。
 
2 XPath是什么?
XPath是树结构的一种描述方法。在创建XSL样式表时经常使用XPath。
 
2.1 树结构
XML文档表示的数据组成数结构。用XLST进行转换,也就是从源文档的树(源树)生成转换后的树(目标树)的意思。这个转换以树结构的节点为基础来进行。
 
节点有几种,主要为:
 
表示根的“根节点”
表示元素的“元素节点”
表示属性的“属性节点”
表示文本的“文本节点”
表示注释的“注释节点”
使用像这样的各种各样的节点来表示树的位置的描述方法称为XPath。
 
2.2 XPath表达式
创建XSLT样式表时经常使用的XPath表达式如表1所示。所谓的上下文节点,就是由上下文构成的节点,可以理解为“处理对象”。另外,今后会出现“当前节点”的概念,可以理解为“被选中的节点”。11
 
表1: 常用的XPath表达式
记号       含义
a      上下文节点的a元素
*     上下文节点的所有元素
a/b   以上下文节点的a元素为父节点的b元素
a//b  以上下文节点的a元素为祖先的b元素
a|b   上下文节点的a元素和b元素
a[表达式]       符合表达式的上下文节点的a元素
.      上下文节点
..     上下文节点的父节点
/      根节点
@a  上下文节点的a属性
@*  上下文节点的所有属性
node()     所有节点
text()      文本节点 描述类似于UNIX的路径描述。例如,
<html> <body> <a href="sample.html">示例</a> <ul> <li>项目A</li> <li>项目B</li> </ul> </body> </html>
中,表示元素a的XPath表达式为
/html/body/a
此外,若表示a元素的href属性,则为
/html/body/a/@href
表中a[表达式]是符合表达式的a项目的意思,例如表示第一个li项目时使用
/html/body/ul/li[1]
 
3 定义样式表的元素
XSLT样式表使用XML文档的格式创建。因此,必须要遵从XML文档的描述规则。XML文档中必须存在的元素只有根元素。在XSLT样式表中的根元素就是xsl:stylesheet元素。基本代码如下所示:
 
<xsl:stylesheet version = "版本号"> <!-- 内容: (xsl:import*, 顶层元素) --> </xsl:stylesheet>
4 模板规则
XSLT样式表可以说是模板规则的集合。
 
4.1 模板规则的定义
模板规则使用xsl:template元素进行定义。它的属性包括match、name、priority和mode。其中最重要的是match属性,该属性规定了节点的样式。若没有指定name属性的话,就必须指定match属性。基本的代码如下所示。
 
<xsl:template match = "样式" name = "名称"> <!-- 内容: (xsl:param*, 模板) --> </xsl:template>
name属性将在调用命名模板时使用。

    相关新闻>>

      发表评论
      请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
      用户名: 验证码:点击我更换图片
      最新评论 更多>>

      推荐热点

      • WordPress添加百度喜欢按钮小技巧
      • Wordpress 博客如何实现自定义Gravatar头像
      • 网站设计分析:建立良好的视觉层级
      • 网站设计分析:“中国式设计”的三个方向
      • 案例分析:奥巴马筹款网站的制作过程
      • 创建不平衡的平衡:在网页设计中使用不对称设计
      • 7大主流B2C首页导航栏设计对比分析
      • Wordpress页面模板制作方法及使用
      • css控制文字前的小图标
      网站首页 - 友情链接 - 网站地图 - TAG标签 - RSS订阅 - 内容搜索
      Copyright © 2008-2015 计算机技术学习交流网. 版权所有

      豫ICP备11007008号-1