曝光台 注意防骗
网曝天猫店富美金盛家居专营店坑蒙拐骗欺诈消费者
个节点。它包含以下属性:
o r d e r-by="[+|-] xsl-pattern"
s e l e c t = " x s l - p a t t e r n "
x s l : i f 用于在模板中创建条件分支,与I f . . . T h e n结构类似,使得一个模板能够
根据条件提供不同的输出。它仅包含一个属性:
m a t c h = " c o n d i t i o n - p a t t e r n "
x s l : n o d e - n a m e 用于将当前节点的名称以文本串的形式插入输出。它没有属性
x s l : o t h e r w i s e 参见x s l : c h o o s e。它没有属性
x s l : p i 用于在输出的当前位置创建新的P r o c e s s i n g I n s t r u c t i o n节点。它仅包含一
个属性:
n a m e = " p r o c e s s i n g - i n s t r u c t i o n - n a m e "
x s l : s c r i p t 用于定义包含全局变量声明和脚本代码函数的模板区域。它仅包含一个
属性:
l a n g u a g e = " l a n g u a g e - n a m e "
x s l : s t y l e s h e e t 用于定义X S L样式表的“根”元素,所用的脚本语言,创建输出文档时
是否保留输入文档中的所有空白,以及x s l前缀的命名空间声明
它包含以下属性:
x m l n s : x m l = " h t t p : / / w w w. w 3 . o rg / T R / W D - x s l "
l a n g u a g e = " l a n g u a g e - n a m e "
i n d e n t - r e s u l t = " [ y e s | n o ] "(缺省值为“ n o”)
注意:在I E 5的X S L中,此处必须出现命名空间
x s l : t e m p l a t e 用于定义模板,它所包含的指令用于将X M L输入中匹配特定模式的节点
转换到输出中。它包含以下属性:
l a n g u a g e = " l a n g u a g e - n a m e "
m a t c h = " x s l - p a t t e r n "
x s l : v a l u e - o f 用于计算s e l e c t属性中的X S L模式,并将匹配的节点及其子孙节点的值以
文本形式插入模板。它仅包含一个属性:
s e l e c t = " x s l - p a t t e r n "
x s l : w h e n 参见x s l : c h o o s e。它仅包含一个属性:
m a t c h = " x s l - p a t t e r n "
E.1.1 XSL样式表的结构
下面的例子说明了如何利用X S L元素构造X S L样式表,同时显示了X S L元素能够创建的结构
类型。由于大多数元素都能够互相嵌套,因此下面的例子仅仅展示了一小部分可能出现的组合。
然而,一般而言,每个样式表都包含一个与文档的根元素匹配的模板,以及若干应用于文档中
特定元素的特殊样式。
916使用XML 高级编程
下载
程序清单E - 1
在X S L中创建新节点
以下X S L元素都能够在输出文档中创建新节点: x s l : a t t r i b u t e,x s l : c d a t a,x s l : c o m m e n t,
x s l : e l e m e n t,x s l : e n t i t y - r e f和x s l : p i。
以下代码用于创建X M L节点< ! [ C D ATA[This is a CDATA section]]>:
<xsl:cdata>This is a CDATA section</xsl:cdata>
以下代码用于创建X M L节点<!ENTITY copy "©">:
<xsl:entity-ref name="copy">©</entity-ref>
以下代码用于创建X M L节点<!--This is the comment text-->:
<xsl:coment>This is the comment text</xsl:comment>
以下代码用于创建X M L节点< ? Wr o x F o r m a t = " S t a r t P a r a g r a p h " ? >:
<xsl:pi name="WroxFormat">StartParagraph</xsl:pi>
以下代码用于创建X M L元素<title>Instant JavaScript</title>:
<xsl:element name="title">Instant JavaScript</xsl:element>
另外,以下代码用于添加p r i n t _ d a t e属性:
<xsl:attribute name="print_date">1998-02-07</xsl:attribute>
它们将产生以下X M L结果:
<title print_date="1998-02-07">Instant JavaScript</title>
附录E IE 5 XSL引用使用917 下载
E.1.2 XSL样式表运行时方法
通过x s l : e v a l元素,能够执行I E 5的X S L中内置的若干方法。I X T L R u n t i m e对象提供了以下方
法:
表E - 2
名称描述
a b s o l u t e C h i l d N u m b e r 返回指定节点在它的父节点的c h i l d N o d e s列表中的索引
( t h i s _ n o d e ) 值从“1”开始
a n c e s t o r C h i l d N u m b e r ( n o d e _ 从指定节点的祖先节点中寻找具有指定名称的第一个祖先节点,并
name, this_node) 返回该节点在它的父节点的c h i l d N o d e s列表中的索引。值从“ 1”开
始。如果没有符合条件的祖先节点,则返回0
c h i l d N u m b e r 利用指定节点的父节点的c h i l d N o d e s列表,构造与指定节点的名称
( t h i s _ n o d e ) 相同的子节点列表,并返回指定节点在该列表中的索引(即:返回
指定节点在同名的兄弟节点列表中的索引),如果找不到同名的兄弟
节点,则返回0。值从“1”开始
d e p t h ( s t a r t _ n o d e ) 返回指定节点在文档树中所处的深度或层次。X M L D o c u m e n t或根
节点位于第0层
e l e m e n t I n d e x L i s t 返回指定节点以及直至文档根节点(包括根节点在内)的
(this_node, node_name) 所有祖先节点的索引数组,它用于表示每个节点在它的父节点的
c h i l d N o d e s列表中的位置。数组从文档根节点开始排列
如果不指定n o d e _ n a m e参数,本方法将返回表示索引的整数数组,
例如:指定节点相对于它的所有兄弟节点的索引,指定节点的父节
点相对于相应的兄弟节点的索引,依此类推,直至到达文档的根节
中国航空网 www.aero.cn
航空翻译 www.aviation.cn
本文链接地址:
XML高级编程下(123)