`
Java_Fan
  • 浏览: 83228 次
  • 性别: Icon_minigender_1
  • 来自: 西安
文章分类
社区版块
存档分类
最新评论

XSL 语言入门3 -- XSLT 中常用元素

 
阅读更多

XSL样式表由一个或多套被称为模板(template)的规则组成。

每个模板含有当某个指定的节点被匹配时所应用的规则。

1.<xsl:template>元素

<xsl:template>元素用于构建模板。

match属性用于关联XML元素和模板。match属性也可用来为整个文档定义模板。match属性的值是XPath表达式(举例,match="/"定义整个文档)。

好了,让我们看一下上一节中的XSL文件的简化版本:

<?xml version="1.0" encoding="ISO-8859-1"?>

<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">


<xsl:template match="/">
 
<html>

 <body>
  
 <h2>My CD Collection</h2>
   
<table border="1">
    
 <tr bgcolor="#9acd32">
       
<th>Title</th>
       
<th>Artist</th>
     
</tr>
     
<tr>
       
<td>.
</td>
       
<td>.
</td>
    
</tr>
   
</table>
 
</body>

 </html>

</xsl:template>


</xsl:stylesheet>

代码解释:

由于XSL样式表本身也是一个XML文档,因此它总是由XML声明起始:

<?xmlversion="1.0"encoding="utf-8"?>

下一个元素,<xsl:stylesheet>,定义此文档是一个XSLT样式表文档(连同版本号和XSLT命名空间属性)。

<xsl:template>元素定义了一个模板。而match="/"属性则把此模板与XML源文档的根相联系。

<xsl:template>元素内部的内容定义了写到输出结果的HTML代码。

最后两行定义了模板的结尾,及样式表的结尾。

Xml代码:

<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="template.xsl"?>
<catalog>
	<cd>
		<title>Empire Burlesque</title>
		<artist>Bob Dylan</artist>
		<country>USA</country>
		<company>Columbia</company>
		<price>10.90</price>
		<year>1985</year>
	</cd>
</catalog>

转换样式:



2.其它常用元素

(1)<xsl:if>

示例:

<xsl:iftest="expression">

...

...如果条件成立则输出...

...

</xsl:if>

(2)<xsl:value-of>

示例:

<td><xsl:value-ofselect="catalog/cd/title"/></td>

(3)<xsl:for-each>

示例:

<xsl:for-eachselect="catalog/cd">

<tr>

<td><xsl:value-ofselect="title"/></td>

<td><xsl:value-ofselect="artist"/></td>

</tr>

</xsl:for-each>

(4)<xsl:sort>

示例:

<xsl:for-eachselect="catalog/cd">

<xsl:sortselect="artist"/>

<tr>

<td><xsl:value-ofselect="title"/></td>

<td><xsl:value-ofselect="artist"/></td>

</tr>

</xsl:for-each>

(5)<xsl:choose><xsl:when><xsl:otherwise>

示例:

<xsl:choose>

<xsl:whentest="expression">

...输出...

</xsl:when>

<xsl:otherwise>

...输出....

</xsl:otherwise>

</xsl:choose>



分享到:
评论

相关推荐

    XSLT与XPath入门转换XML文档与数据

    - 讲解如何在XSLT中实现条件判断和循环,包括`&lt;xsl:if&gt;`、`&lt;xsl:choose&gt;`、`&lt;xsl:when&gt;`和`&lt;xsl:otherwise&gt;`等元素。 - 展示如何根据条件的不同生成不同的输出。 - **第5章:排序和分组** - 介绍如何使用XSLT对...

    C-#XML入门经典随书源码

    C#可以借助System.Xml.Xsl命名空间中的类执行XSLT转换,实现XML到XML或者XML到HTML等格式的转换。 7. **XPath和XQuery**:XPath是用于在XML文档中查找信息的语言,而XQuery则是一种更强大的查询语言,用于从XML数据...

    XML.rar(里面两本书:XML编程从入门到精通.pdf--xml_基础学习完全手册.chm)都是【高清晰】

    3. **命名规则**:XML的元素和属性名是大小写敏感的,并且必须遵循特定的命名规则,例如不能以数字开头,不能包含特殊字符等。 4. **命名空间**:XML命名空间允许在同一个文档中使用相同的元素名而不会产生冲突。...

    XML技术系列讲座.doc

    - **XSLT (XSL Transformations)**: 用于转换XML文档的XSL子集。 - **XSL-FO (XSL Formatting Objects)**: 用于控制XML数据的最终输出格式。 #### 4. XML与HTML的结合(上下) - **HTML与XML的区别**: - **目的**...

    xml基础教程(xml入门绝佳实例)

    XML Schema Definition (XSD) 是最常用的XML Schema语言,它使用XML语法来定义元素、属性、数据类型等。通过Schema,开发者可以指定元素的顺序、可选性以及允许的数据格式。 **第三章 文档对象模型(DOM)** DOM是...

    XML基础入门和简易教程

    XML,即可扩展标记语言(eXtensible Markup Language),是一种用于存储和传输结构化数据的标记语言。它源于SGML(Standard Generalized Markup Language),但经过简化,使其更加适用于Web应用。XML的核心特性在于...

    IBM XML入门教程

    XML,全称Extensible Markup Language,可扩展标记语言,是一种用于标记数据的标准化语言,尤其在IT行业中,XML因其灵活性和跨平台性被广泛应用。IBM作为一家全球知名的科技公司,提供了丰富的XML学习资源,帮助初学...

    Java与XML联合编程

    通过本文的介绍,我们了解了Java中常用的XML解析技术,包括DOM、SAX和XSLT的基本原理及应用示例。对于初学者来说,掌握这些基础知识对于处理实际项目中的XML文件非常重要。无论是数据交换、配置文件管理还是Web服务...

    XML实用教程课程2006

    XML,全称Extensible Markup Language,可扩展标记语言,是一种用于标记数据的结构化语言,尤其在Web应用程序和数据交换领域中广泛应用。本教程“XML实用教程课程2006”是一份专为入门级读者设计的教学资料,旨在...

Global site tag (gtag.js) - Google Analytics