首页 >> 读书频道 >> 电脑 >> 第14章 XSL变换 匹配节点的模式
 
· 采用API实现的文件拖放
· 用VB建立文件关联二
· 第14章 XSL变换
· 用VB建立文件关联一
· 在VB中取得Window
· 第14章 XSL变换
· 用API函数实现文件夹列
· 利用API创建文件目录
· 用API函数遍历文件三
· API实现完美的图片出现
· API实现完美的图片出现
· API实现完美的图片出现
 
· 电视剧《刁蛮公主》下载和
· 美容养颜手册
· 加油金顺剧情分集介绍完整
· 红楼梦:120回全本[清
· 素质教育在美国
· 全唐诗卷四十六
· 韩剧《布拉格恋人》剧情介
· 夜航船[作者:明·张岱]
· 局外人[作者:韩·可爱淘
· 现场流行病学
· 源氏物语[日本:紫式部]
· 武林寓言故事
 
· (出租)中动商场部分及写
· (出租)中动动漫基地&#
· 喜剧学院
· 《善德女王》剧情介绍
· 魔女18号 剧情
· 丑女无敌剧情介绍
· 魔女幼熙剧情介绍
· 龙游天下剧情介绍
· 震撼世界的七日剧情介绍
· 静静的白桦林剧情介绍
· 心情日记—老公今天我想对
· 旗舰剧情介绍
欢迎来到月影社区!如果您觉得这里不错,请推荐给您的朋友们。月影社区:http://wf66.com/

第14章 XSL变换 匹配节点的模式


查看有无更新版本

关键字:XML 2006-9-18

 

xsl:template元素的match特性支持复杂的语法,允许人们精确地表达想要和不想要与哪个节点匹配。xsl:apply-templates、xsl:value-of、xsl:for-each、xsl:copy-of和xsl:sort的select特性支持功能更加强大的语法的超集,允许人们精确地表达想要和不想要选择哪个节点。下面讨论匹配和选择节点的各种模式。14.6.1 匹配根节点为了使输出的文档结构整洁。从XSL变换的第一个输出内容应为输出文档的根元素。因此,XSL样式单一般以应用于根节点的规则开始。要在规则中指定根节点,可将其match特性设置为合适的值。例如:<xsl:template match="/"><html><xsl:apply-templates/></html></xsl:template>本规则应用于根节点,并且只应用于输入树形结构的根节点。当读取到此根节点时,就输出<html>标记,处理根节点的子节点,然后输出</html>标记。本规则推翻了根节点的缺省规则。清单14-6显示了应用于根节点的带有单一规则的样式单。清单14-6:用于根节点的带有单一规则的XSL样式单<?xml version="1.0"?><xsl:stylesheetxmlns:xsl="http://www.w3.org/XSL/Transform/1.0"><xsl:template match="/"><html><head><title>Atomic Number vs. Atomic Weight</title></head><body><table>Atom data will go here< /table></body></html ></xsl:template></xsl:stylesheet>由于本样式单只为根节点提供一条规则,并且由于规则的模板未指明对子节点进行进一步的处理,因而只是按原样输出,所以在模板中所看到的所有内容都将插入到结果文档中。换句话说,将清单14-6中的样式单应用于清单14-1(或其他任何结构整洁的XML文档)中,所获得的结果如下:<html><head><title>Atomic Number vs. AtomicWeight</title></head><body><table>Atom data will go here</table></body></html>14.6.2 匹配元素名正如前面介绍的那样,最基本的模式只包含一个元素名,用来匹配所有带有该名的元素。例如,下面的模板与ATOM元素相匹配,并将ATOM元素的ATOMIC_NUMBER的子元素标成粗体:<xsl:template match=”ATOM”><b><xsl:value-of select=”ATOMIC_NUMBER”/><b></xsl:template>清单14-7显示的是扩充了清单14-6的样式单。首先,在根节点的规则模板中包括了xsl:apply-templates元素。此规则使用select特性来确保只有PERIODIC_TABLE元素获得处理。其次,使用match=“PERIODIC_TABLE”语句创建了只适用于PERIODIC_TABLE元素的规则。本规则设置周期表的标题,然后应用模板来从ATOM元素中生成周期表的主体。最后,ATOM规则使用<xsl:apply-templates select=“NAME”/>、<xsl:apply-templates select=“ATOMIC_NUMBER”/>和<xsl:apply templates select=“ATOMIC_WEIGHT”/>,明确地选择ATOM元素的NAME、ATOMIC_NUMBER和ATOMIC_WEIGHT子元素。它们都包装在HTML的tr和td元素中,以便最终的结果是与原子量相匹配的原子序数表。图14-4显示将清单14-7中的样式单应用于整个周期表文档中的输出结果。对本样式单需要注意的是:在输入文档中的NAME、ATOMIC_NUMBER和ATOMIC_WEIGHT元素的精确顺序是不重要的。它们在输出文档中以选择它们的顺序出现,也就是说首先为原子序数,然后是原子量。相反,在输入文档中,各个原子依字母顺序排序。以后,将会看到如何使用xsl:sort元素来改变这个顺序,以便使用更常规的原子序数的顺序来排列原子。清单14-7:利用select的施用于元素的特定类的模板<?xml version=”1.0”?><xsl:stylesheetxmlns:xsl=”http://www.w3.org/XSL/Transform/1.0”><xsl:template match=”/”><html><head><title>Atomic Number vs. Atomic Weight</title></head><body><xsl:apply-templates select=”PERIODIC_TABLE”/></body></html></xsl:template><xsl:template match=”PERIODIC_TABLE”><hl>Atomic Number vs. Atomic Weight</hl><table><th>Element</th><th>Atomic Number</th><th>Atomic Weight</th><xsl:apply-templates select=”ATOM”/></table></xsl:template><xsl:template match=”ATOM”><tr><td><xsl:value-of select=”NAME”/></td><td><xsl:value-of select=”ATOMIC_NUMBER”/></td><td><xsl:value-of select=”ATOMIC_WEIGHT”/></td></tr></xsl:template></xsl:stylesheet>

第14章 XSL变换 匹配节点的模式

[ 1 ]
第14章 XSL变换 匹配节点的模式 num

打印本页 关闭

关于我们版权声明本站导航友情连结作品演示 TOP↑