在这里不在多说,具体看例子就知道了(用了两种模板形式),通过两个例子就可以对比不同,用浏览器浏览xml文件即可.
例子1:
grade.xml文件
<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type="text/xsl" href="grade.xsl"?>
<root>
<student name="zhangsan" Curriculum="Chinese" grade="80" Curriculum1="sdf" grade1="80" grade2="90"/>
<student>
<name>lisi1</name>
<Curriculum>����Chinese</Curriculum>
<grade>60</grade>
<Curriculum1>����ssdfsd</Curriculum1>
<grade1>63</grade1>
<grade2>67</grade2>
</student>
<student>
<name>lisi2</name>
<Curriculum>����Chinese</Curriculum>
<grade>70</grade>
<Curriculum1>����ssdfsd</Curriculum1>
<grade1>57</grade1>
<grade2>89</grade2>
</student>
<student>
<name>lisi3</name>
<Curriculum>����Chinese</Curriculum>
<grade>77</grade>
<Curriculum1>����ssdfsd</Curriculum1>
<grade1>84</grade1>
<grade2>57</grade2>
</student>
</root>
grade.xsl:
<?xml version="1.0" encoding="gbk" ?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xsl2="http://www.w3.org/TR/WD-xsl" xmlns:msxsl="urn:schemas-microsoft-com:xslt" version="1.0">
<xsl:output method="html" encoding="gbk" />
<xsl:template match="/root">
<html>
<body>
<table border='1' cellpadding='4' cellspacing='1' width="100%" >
<tr><td colspan="6" align="center">下面的是节点(具体看xml文件)</td></tr>
<tr>
<td>name</td>
<td>Curriculum</td>
<td>grade</td>
<td>Curriculum1</td>
<td>grade1</td>
<td>grade2</td>
</tr>
<xsl:for-each select="./student">
<tr>
<td><xsl:value-of select="name" /></td><!--这样是读取节点-->
<td><xsl:value-of select="Curriculum" /></td>
<td><xsl:value-of select="grade" /></td>
<td><xsl:value-of select="Curriculum1" /></td>
<td><xsl:value-of select="grade1" /></td>
<!--<td><xsl:value-of select="grade2" /></td> -->
<!--<td><xsl:apply-templates select="grade1" /></td>模板调用形式(apply-templates)在循环中会出现问题,要用下面形式的模板的才没有问题-->
<td>
<xsl:call-template name="thisGrade2" >
<xsl:with-param name="grade2" select="./grade2"/>
</xsl:call-template>
</td>
</tr>
</xsl:for-each>
<tr><td colspan="6" align="center">下面的是属性(具体看xml文件)</td></tr>
<!--这样是读取属性-->
<xsl:for-each select="./student">
<tr>
<td><xsl:value-of select="@name" /></td>
<td><xsl:value-of select="@Curriculum" /></td>
<td><xsl:value-of select="@grade" /></td>
<td><xsl:value-of select="@Curriculum1" /></td>
<td><xsl:value-of select="@grade1" /></td>
<td><xsl:value-of select="@grade2" /></td>
</tr>
</xsl:for-each>
</table>
</body>
</html>
</xsl:template>
<!--
<xsl:template match="/root/student/grade1grade1">
<xsl:value-of select="/root/student/grade1"/>
</xsl:template>
-->
<xsl:template name="thisGrade2">
<xsl:param name="grade2" select="0" />
<xsl:choose>
<xsl:when test="$grade2 > 80">
<xsl:attribute name="bgcolor">blue</xsl:attribute><xsl:value-of select="$grade2"/>
</xsl:when>
<xsl:when test="$grade2 < 60">
<xsl:attribute name="bgcolor">red</xsl:attribute><xsl:value-of select="$grade2"/>
</xsl:when>
<xsl:otherwise>
<xsl:attribute name="bgcolor">green</xsl:attribute><xsl:value-of select="$grade2"/>
</xsl:otherwise>
</xsl:choose>
<!--
<xsl:if test="$grade2 > 80">
<xsl:attribute name="bgcolor">green</xsl:attribute><xsl:value-of select="$grade2"/>
</xsl:if>
<xsl:if test="$grade2 < 60">
<xsl:attribute name="bgcolor">red</xsl:attribute><xsl:value-of select="$grade2"/>
</xsl:if>
<xsl:if test="$grade2 > 50 and $grade2 < 80 ">
<xsl:attribute name="bgcolor">blue</xsl:attribute><xsl:value-of select="$grade2"/>
</xsl:if>
<xsl:value-of select="$grade2"/>
-->
</xsl:template>
</xsl:stylesheet>
例子2(这是网上考来的):
resume.xml
<?xml version="1.0" encoding="GB2312"?>
<?xml:stylesheet type="text/xsl" href="resume_template.xsl"?>
<document>
<resume>
<name>禹希初</name>
<sex>男</sex>
<birthday>1977.5</birthday>
<skill>数据库设计与维护</skill>
<skill>WEB开发</skill>
</resume>
</document>
resume.xsl:
<?xml version="1.0" encoding="GB2312"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/TR/WD-xsl">
<!--根模板-->
<xsl:template match="/">
<HTML><HEAD><TITLE>个人简历</TITLE></HEAD>
<BODY>
<xsl:apply-templates select="document/resume"/>
</BODY>
</HTML>
</xsl:template>
<!--简历模板-->
<xsl:template match="resume">
<TABLE border="1" cellspacing="0">
<CAPTION>个人简历(
<xsl:eval>formatIndex(childNumber(this), "I")</xsl:eval>
)</CAPTION>
<xsl:apply-templates select="name" />
<xsl:apply-templates select="sex" />
<xsl:apply-templates select="birthday" />
<TR/>
<TD>技能</TD><TD COLSPAN="5">
<TABLE cellspacing="0">
<xsl:apply-templates select="skill"/>
</TABLE>
</TD>
</TABLE>
<BR/>
</xsl:template>
<!--姓名模板-->
<xsl:template match="name"><TD>姓名</TD>
<TD><xsl:value-of/></TD>
</xsl:template>
<!--性别模板-->
<xsl:template match="sex"><TD>性别</TD>
<TD><xsl:value-of/></TD>
</xsl:template>
<!--生日模板-->
<xsl:template match="birthday"><TD>生日</TD>
<TD><xsl:value-of/></TD>
</xsl:template>
<!--技能模板-->
<xsl:template match="skill">
<TR><TD><xsl:value-of/></TD></TR>
</xsl:template>
</xsl:stylesheet>
分享到:
相关推荐
学习XSL不仅包括理解基本概念,还需要掌握如变量、函数、模板选择、流控制(如条件语句和循环)、以及如何导入和链接其他XSL样式表等高级特性。此外,熟悉XPath的语法和功能对于有效使用XSL至关重要,因为XPath是...
《深入解析xsl.jar:揭示XML转换的奥秘》 在信息技术领域,数据的处理与转换是不可或缺的一环。...通过深入学习和实践,我们可以利用xsl.jar高效地处理XML数据,实现各种数据转换需求,从而提升软件项目的效率和质量。
综上所述,XSL开发基础参考资料涵盖了XSL函数、XSL元素、XPath和XSL知识速查的关键内容。通过深入学习和实践这些知识,开发者能够有效地处理XML数据,实现XML文档的灵活转换和呈现。阅读提供的PDF文件,如"XSL元素....
XML(Extensible Markup Language)和XSL(Extensible Stylesheet Language)是Web开发中...通过学习"Table_XSL table_xsl"实例,初级学员可以掌握这两种技术的基本原理和实践技巧,为进一步的Web开发打下坚实的基础。
**XSL基础教程:从XSLT样式表调用JavaScript** 在深入了解如何从XSLT样式表调用JavaScript之前,让我们首先理解XSLT的基本概念。XSLT(Extensible Stylesheet Language Transformations)是一种XML方言,用于转换...
压缩包内的文件“XSL(一)”可能是第一部分的学习资料,可能包含了一些基础的XSLT教程,例如解释XSLT的工作原理,展示如何创建基本的模板,以及演示如何使用XSLT进行简单的XML到HTML的转换。这些内容对于初学者来说...
综合这些资源,学习者可以系统地了解和掌握XSL,从基础概念到实战应用。通过阅读文档、查看教程和实践示例,不仅可以理解XSL的工作原理,还能提升解决实际问题的能力。在开发过程中,正确使用XSL可以有效地提高数据...
在学习过程中,建议先从基础开始,理解XML和XSLT的关系,然后深入学习XPath,掌握其查询和导航能力。最后,探索XSL-FO,了解如何将XML数据转换为高质量的印刷格式。通过实践和不断地练习,你将能够熟练地运用XSL进行...
**XSL基础教程以及元素参考手册** XSL(Extensible Stylesheet Language)是一种用于转换XML(eXtensible Markup Language)文档的语言。它允许开发者通过定义样式规则来控制XML数据的呈现方式,使得数据能够在不同...
这份手册通常会涵盖XSL的基础概念,如选择器(selectors)、模板(templates)、变量(variables)、函数(functions)等,以及如何使用XSLT(XSL Transformation)来转换XML文档。此外,手册可能还会涉及XSL-FO...
1. **XSL基础概念** - **XSLT**:XSL Transformations,XSL的主要部分,用于转换XML文档。 - **XSL样式表(XSLT Stylesheets)**:定义了转换规则,描述如何将XML文档转换为其他形式。 - **XPath**:XML Path ...
XSL(Extensible Stylesheet Language)是一门强大的样式表语言,用于转换XML(Extensible Markup Language)文档。...从基础概念开始,逐步深入到高级技巧,你将能够充分利用XSL的力量,实现XML数据的灵活转换和呈现。
在“xsl.rar_xsl_xsl 参考手册_xslt_xslt用法”这个压缩包中,包含了一本详细的XSLT中文参考手册,是学习和理解XSLT用法的重要资源。** **XSLT的基础概念:** 1. **样式表(Stylesheet)**:XSLT的样式表由一系列...
在本套“XML基础学习课件”中,涵盖了XML的基础知识以及与其紧密相关的DTD(Document Type Definition)和XSL(Extensible Stylesheet Language)等内容。 一、XML基础 XML的基本结构是元素,它是XML文档的核心。每...
在“XML学习 练习XSL”中,我们可能会涉及到以下几个关键知识点: 1. **XML基础**:理解XML的基本结构,包括元素、属性、文本内容、注释、处理指令等。学习如何编写有效的XML文档,遵循XML的命名规则和语法规则。 ...
**XSL(Extensible Stylesheet Language)是一种...总的来说,这些PPT资源为学习者提供了一个全面了解和掌握XSL的平台,从基础概念到实际应用,覆盖了XSLT、XPath和XML解析器的关键点,对于提升XML处理能力非常有帮助。
### XSL基础知识详解 #### 一、XML与XSL的关系 随着互联网技术的快速发展,信息交换、检索和存储的需求日益增长。传统的HTML虽然在网页展示方面有着广泛的应用,但由于其内容与表现形式混合的特点,导致数据可重用...
在这个“xml与xsl的小实例”中,我们将探讨这两种语言的基础知识以及它们如何协同工作。 XML是一种标记语言,它的主要目标是存储和传输结构化数据。XML文档由一系列元素组成,每个元素都有开始标签和结束标签,例如...
在学习XML和XSLT时,通常会从基础语法开始,如创建基本的XML文档,理解元素和属性的结构,然后过渡到XSLT的语法,学习如何编写模板和模式。进阶内容可能包括XPath(XML Path Language)的使用,XPath是XSLT中用来...