|
 |
XSL基础教程(三)
|
|
XSL(eXtensible Style sheet Language),即可扩展样式表语言,是XML的亲密伙伴。要学习好XML,不能不掌握XSL。本文就向你全面讲述XSL的一切一切: XSL索引:将XML文档转换成HTML之前,如何用XML解析器来对XML文档进行索引。 XSL索引 XSL可以用来对一个XML文档进行索
|
|
 |
XSL基础教程(二)
|
|
XSL(eXtensible Style sheet Language),即可扩展样式表语言,是XML的亲密伙伴。要学习好XML,不能不掌握XSL。本文就向你全面讲述XSL的一切一切: 客户端XSL:如何用XML解析器在客户机上将XML文档转换成HTML文档。 一个JavaScript的解决方法 在前文中,我们解释了如
|
|
 |
XSL基础教程(一)
|
|
XSL(eXtensible Style sheet Language),即可扩展样式表语言,是XML的亲密伙伴。要学习好XML,不能不掌握XSL。本文就向你全面讲述XSL的一切一切: XSL介绍:介绍XSL是XML的样式表语言,XSL是什么以及它能做什么。 XSL介绍: XML的样式表语言XSL比CCS要复杂得多。 CSS
|
|
 |
XSLT的处理模型(10)
|
|
请注意上面的输出中,出现的第一个元素不是html而是test元素,因此不能满足条件(2)因此得到的输出默认为XML形式;转换结果如下: ?xml version=1.0 encoding=UTF-16? testdfdf/test html10 + 5 + 7 = 22/html 但是如果将test元素去掉,即原来的XSLT文档变成: ?xml v
|
|
 |
XSLT的处理模型(9)
|
|
但是如果将test元素去掉,即原来的XSLT文档变成: ?xml version=1.0 encoding=UTF-8? xsl:stylesheet version=1.0 xmlns:xsl= http://www.w3.org/1999/XSL/Transform xsl:template match=/ html xsl:text/ xsl:value-of select=//BBB[1]/ xsl:text + /xsl:text xsl:val
|
|
 |
XSLT的处理模型(8)
|
|
Version表示输出文档的版本,该属性是和method相关的,在method为xml时,版本的值是必须是1.0,这样输出文档的第一行就成为: ?xml version=1.0?。 encoding属性表示输出的结果采用什么方式的编码,例如:encoding=GB2312表示输出的文档用国标码编码。 omit-xml-declar
|
|
 |
XSLT的处理模型(7)
|
|
extension-element-prefixes属性值是一个空格格开的名域前缀列表,位于该列表中的名域具有特殊的意义,具体细节在后面的子面结果元素和扩展函数中介绍。 exclude-result-prefixes属性值同样是一个一个空格格开的名域前缀列表,位于该列表中的名域不在结果树中输出,具
|
|
 |
XSLT的处理模型(6)
|
|
同时XSLT还提供了对XML名域规范的支持,名域属性xmlns:xsl="http://www.w3.org/1999/XSL/Transform"声明了"xsl"这个名域前缀。该名域前缀对应的URL表示了XSLT1.0正式规范规定的一套标记集合,由此如果stylesheet中的元素名域前缀是xsl,则表示该节点在上述URL中定义
|
|
 |
XSLT的处理模型(5)
|
|
解释到这里敏锐的读者都会发现两个问题: 1) 第一个XSLT文档没有xsl:apply-templates /,为什么处理器能执行? 2) 第二个例子的xsl:template match=/不也是一个模板规则吗,它同样没有上一层的xsl:apply-templates /来调用,为什么可以被执行? 这问题的答案其实非常
|
|
 |
XSLT的处理模型(4)
|
|
XSLT通过定义一套详细的"规则"来规定XML源树怎样转换到结果树。这些规则称为模板规则(template rule)。模板规则由两部分构成,模板(template)和模式,其中模板规定了转换的具体内容,即怎样转换,而模板规则则规定了在什么样的情况下需要应用这个模板规则,用XSLT
|
|
 |
XSLT的处理模型(3)
|
|
XSLT的树模型非常类似于DOM规范中规定的树形结构;并且XSLT的树模型省略了处理指令,不仅如此在XSLT的源树结构中还省略了XML文档中的注释元素,因此对于源树来说根结点只有一个元素节点,这一点特别重要.
|
|
 |
XSLT的处理模型(2)
|
|
在XSLT的处理模型中,XML文档中的各个逻辑部分分别对应于不同类型的节点,例如元素节点、属性节点、文本节点等。XSLT文档则规定了后续处理的细节,任何XSLT文档中的声明性语句都是针对这个逻辑视图而言的,也就是说XSLT的编写者面对的XML文档是并仅仅是一个源树
|
|
 |
XSLT的处理模型(1)
|
|
1.1 一个简单的例子 让我们先看一个XSLT的例子。 有XML文档如下: ?xml version=1.0 encoding=UTF-16? ?xml-stylesheet type=text/xsl href=helloworld.xslt? root nameHehangjun/name name何杭军/name /root 注意:如果你的系统不支持unicode,需要将encoding属性改成gb
|
|
|
 |
|
相关分类 |
|
|
|
|
|