•XSL简介
–是XML的样式表语言
•XSL由三部分组成
–XML文档转换:XSL Transformation,又叫XSLT
•XSLT是一种比CSS强大很多的语言,可以将XML文档转换成其他格式的文档
–模式匹配语法:a pattern matching syntax,又叫XPath
•XPath是一种用于标识XML文档各个部分的语言
–格式化对象:a formatting object interpretation,XSL FO
•XSLT简介
–XSL中最重要的部分就是XSLT
–XSLT将XML文档转换为XHTML文档或者其他XML文档
–通过XSLT,你可以从已输出的文件里添加/移除元素和属性,也可以把元素重新排列和分类,实现更多功能
•XSLT与CSS比较
–二者都可以格式化XML文档
–但是相较于XSLT,CSS有以下缺点
•不能重新排序文档中的元素
•不能判断和控制哪个元素被显示,哪个不显示
•不能统计、计算元素中的数据
–CSS适合输出较固定的最终文档,简洁,消耗资源少
–将CSS和XSLT结合起来使用:服务器端使用XSLT处理文档,在客户端使用CSS控制显示
----------------------------------xml----------------------------
<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type="text/xsl" href="student.xsl"?>
<classes>
<student>
<sid>001</sid>
<sname>张三</sname>
<sage>78</sage>
</student>
<student>
<sid>002</sid>
<sname>李四</sname>
<sage>38</sage>
</student>
<student>
<sid>003</sid>
<sname>王五</sname>
<sage>43</sage>
</student>
<student>
<sid>004</sid>
<sname>朱六</sname>
<sage>8</sage>
</student>
</classes>
-------------------------------------xsl-------------------------------
<?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>
<head><title>学生列表</title></head>
<body>
<table width="400px">
<tr>
<th>学号</th>
<th>姓名</th>
<th>年龄</th>
</tr>
<xsl:for-each select="classes/student">
<xsl:sort select="sage" order="descending"/>
<tr>
<td align="center"><xsl:value-of select="sid"></xsl:value-of></td>
<td align="center"><xsl:value-of select="sname"></xsl:value-of></td>
<td align="center"><xsl:value-of select="sid"></xsl:value-of></td>
</tr>
</xsl:for-each>
</table>
</body>
</html>
</xsl:template>
</xsl:stylesheet>---------------------------------------------------------------------
•元素语法
–xsl:template和xsl:apply-templates
–xsl:value-of
–xsl:for-each
–xsl:if
–xsl:choose、when、otherwise
–xsl:sort
•xsl:template
–XSLT文件就是由一个个的模板组成
–模板分两部分
•匹配模式(match pattern):定义XML源文档中哪一个节点将被模板处理
•执行:定义输出的是什么格式
–语法
•<xsl:template match=pattern name=qname priority=number mode=qname>
–<!– 执行内容 -->
•</xsl:template>
•示例
–如,我们处理一个包含章节和段落的文档,用para元素定义段落,用chapter元素定义章节
–下面语句中模板匹配所有的para元素
•<xsl:template match=“para”></xsl:template>
–下面语句中模板匹配所有para元素和所有chapter元素
•<xsl:template match=“(chapter|para)”></xsl:template>
–下面语句中模板匹配所有父节点为chapter元素的para元素
•<xsl:template match=“chapter/para”></xsl:template>
–下面语句中模板匹配根节点
•<xsl:template match=“/”></xsl:template>
•xsl:apply-templates
–表示处理哪一个节点,被包含在xsl:template中
–语法
•<xsl:apply-templates select=node set-expression mode=qname>
•</xsl:apply-templates>
•示例
–<xsl:template match=“/”>
– <xsl:apply-templates select=“para”/>
– </xsl:template>
•上面代码表示模板匹配整个文档(根节点),具体执行时处理根节点下的所有para元素
–<xsl:template match=“para”>
– <p><xsl:apply-templates /></p>
–</xsl:template>
•表示模板匹配para节点,所有para的子元素都被处理
•xsl:value-of
–用来将源文档中元素的文本值写到输出文档中
•<xsl:value-of select=“节点名称”/>
•xsl:for-each
–可以循环处理被选择的节点
– <xsl:for-each select=“节点名称”>
– 其它内容
– </xsl:for-each>
•xsl:if
–类似普通程序语言的if条件语句,允许设定节点满足某个条件时,被模板处理
<xsl:if test=布尔表达式>
其它内容
</xsl:if>
•xsl:choose
–在xsl:if语法中没有else的属性,如果需要进行多项选择,可以使用xsl:choose/xsl:when/xsl:otherwise系列流程控制语法
•<xsl:choose>
• <xsl:when test=“”>
• </xsl:when>
• <xsl:otherwise>
• </xsl:otherwise>
•</xsl:choose>
•xsl:sort
–在XSLT中可以对XML源文档的元素进行重新排序
•<xsl:sort select=“排序的元素” order=“ascending/descending”/>
分享到:
相关推荐
简单的xml与xsl实例简单的xml与xsl实例简单的xml与xsl实例简单的xml与xsl实例简单的xml与xsl实例
随着Internet的发展,越来越多的信息进入互联网,信息的交换、检索、保存及再利用等迫切的需求使HTML这种最常用的标记语言已越来越捉襟见肘。HTML将数据内容与表现融为一体,可修改性、数据可检索性差,而XML借鉴了...
xml与xsl的小实例,对你学习xml没什么用,不过交一次作业嘛。。。。
XSL实例 博文链接:https://it-ming-java.iteye.com/blog/1703464
多个关于xsl与xml转化的实例,做web开发的人值得学习下。。。
用xml 调用xsl实现 table界面的设计思想,适合初级学员学习的经典范例
xsl的基本实现方法,其中包括滚动字和table的实现
仅仅是个实例,颜色动态等还需自己动手,好好看看吧!非常管用
为帮助你建立具有XML功能的应用,我们在合适之处介绍了大量不同的应用背景、特定的代码实例以及XML和XSL实例文件。你可以自由地使用这些代码,我们希望它可以引导你有效地使用XML来增强你的应用。注意 如果你对本书...
xsl 简单实例,入门知识,xsl的简单语法介绍,适合初学者了解xsl使用。
JSON解析xml 带xsl样式,有多个实例,可自行学习
stat.xslnginx-rtmp-module-stat.xsl conf/nginx.conf 为配置文件实例 RTMP监听 1935 端口,启用live 和hls 两个application HTTP监听 8080 端口, * :8080/stat 查看stream状态 * :8080/index.html 为一个...
学习xml xsl 以及dom的好帮手 5.1 XML 基础 5.2 XML文档的基本结构 5.3 用CSS在浏览器中...5.7 XML DOM及其编程实例 5.8 XML文档的安全性 5.9 XPATH、XLINK和XPOINTER简介 5.10 XML与数据库 5.11 XML的应用和发展前景
实例353 使用XSL显示XML文档 562 实例354 使用IE XML数据岛输出XML文档 564 14.3 操作XML 565 实例355 用JavaScript控制XML文档的分页显示 565 实例356 通过操作XML数据岛实现添加、删除留言信息 567 第15...
在知识的讲解上,本书采用理论与实践相结合的方式,从程序运行的内部机制进行分析讲解,并通过大量的实例和实验来验证并运用本书的知识。.. 本书语言生动、通俗易懂、讲解细致,大部分章节都提供了多个例子,而且很...
在知识的讲解上,本书采用理论与实践相结合的方式,从程序运行的内部机制进行分析讲解,并通过大量的实例和实验来验证并运用本书的知识。.. 本书语言生动、通俗易懂、讲解细致,大部分章节都提供了多个例子,而且很...
本文实例讲述了C#实现XSL转换的方法。分享给大家供大家参考,具体如下: xsl 可方便的将一种格式的xml,转换成另一种格式的xml,参考下面的代码: using System; using System.IO; using System.Text; using System...
这里收录了一大批XML程序,包括DTD,XSL,XML等文件,还有一些笔记说明,对于学习XML的您来说不妨看看,应该对你有帮助
资源名称:XML应用实例 建立电子商务应用 内容简介:本书循序渐进地介绍了如何建立完整的XML电子商务应用程序。通过对本书的学习,读者可以理解DOM(文档对象模型)的关键作用,并看到XML在高级电子商务应用程序中...
在知识的讲解上,本书采用理论与实践相结合的方式,从程序运行的内部机制进行分析讲解,并通过大量的实例和实验来验证并运用本书的知识。.. 本书语言生动、通俗易懂、讲解细致,大部分章节都提供了多个例子,而且很...