XSL 语言
XSLT的元素语法
.XSLT的元素语法1 xsl:template和xsl:apply-templates2 xsl:value-of3 xsl:for-each4 xsl:if5 Xxsl:choose, when, otherwise6 xsl:sort1 xsl:template和xsl:apply-templates模板(template)是XSLT中最重要的概念之一。
XSLT文件就是由一个一个的模板组成,任何一个XSLT文件至少包含一个模板。
模板的概念就象是搭积木;你如果是程序员,也可以将模板看作一个方法,一个类,或者一个模块。
它们可以被拼装组合,也可以单独成块,不同的模板控制不同的输出格式。
模板(template)由两部分组成:匹配模式(match pattern)和执行。
简单的讲模式定义XML源文档中哪一个节点将被模板处理,执行则定义输出的是什么格式。
两部分对应的语法为xsl:template和xsl:apply-templates。
xsl:template的语法是:<xsl:templatematch = patternname = qnamepriority = numbermode = qname><!-- 执行内容 --></xsl:template>xsl:template的作用是定义一个新模板。
属性中name,priority,和mode用来区别匹配同一节点的不同模板。
它们不是常用的属性。
match属性则控制模板的匹配模式(pattern),匹配模式是用来定位XML源文档中哪一个节点被模板处理。
一个模板匹配一个节点。
我们用一个例子来帮助理解:假设我们要处理一个包含章节和段落文档。
我们用para元素定义段落,用chapter元素定义章节。
我们来看看match属性可能的值。
下面的语句写法说明模板匹配所有的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>我们再来看apply-templates语法:<xsl:apply-templatesselect = node set-expressionmode = qname></xsl:apply-templates>xsl:apply-templates用来执行那一个节点被模板具体处理。
使用XSL格式化XML
第六章 xsl格式化xml
26
在路径中使用” ” 在路径中使用”*”
如果只知道”学生列表”的孙子节点”姓名”, 而不知道儿子节点,则可用如下来描述: <xsl:template match=“/”> <xsl:apply-templates select=“学生列表/*/姓 名”/> </xsl:template>
练习
将下列xml文档使用xsl格式化。要求以列表的 形式显示其内容,其中标题的字体为黑体,字 号为10号,红色背景,居中,内容记录以宋体 显示,并左对齐。
第六章 xsl格式化xml
13
节点的访问
访问单个节点 访问多个节点
第六章 xsl格式化xml
14
访问单个节点
<xsl:value-of>指令用于将节点的内容复制到输 出结果中,指令的select属性用于选择被提取 值的节点。即具体元素的内容提取出来。 即具体元素的内容提取出来。 即具体元素的内容提取出来 它与xsl:apply-templates组合在一起完成搜 它与 组合在一起完成搜 索知道节点中指定子节点的子节点的值。 索知道节点中指定子节点的子节点的值。 模板不允许嵌套,如果搜索更深层次的子节点, 模板不允许嵌套,如果搜索更深层次的子节点, 需要多个模板进行组合。 即模板中不包含其 需要多个模板进行组合。(即模板中不包含其 他模板,每个模板都是独立的)。 他模板,每个模板都是独立的 。
“/”是根节点匹配符号,可以单独使用。 在样式单中,匹配根节点的模板必不可少。 模板样式出现的顺序是没有关系。
第六章 xsl格式化xml
20
根元素匹配符合
“/*”用于匹配任意的根元素。 例如:如果学生列表为根元素,则 <xsl:template match=“学生列表”> <xsl:apply-templates/> </xsl:template> 可以改为: <xsl:template match=“/*”> <xsl:apply-templates/> </xsl:template>
什么是xsl
--------------------------------低温恒温槽---------------------------------------- 什么是XSLXSL是eXtensible Stylesheet Language的英文缩写,即可扩展的样式表语言它是一个XML应用程序,提供定义规则的元素来转换和显示XML文档,从而实现文档内容与其表现形式的分离。
XSL是专门为XML设计的样式语言,也是除了CSS之外.另一个可用来表现XML 文档的选择。
XSL被定义为包含了一套元素集的XML语法规范,该语法规范将被用来把XML文件转换成HTML. XML或者其它格式的文档。
一个XSL样式表集合了一系列设计规则,用于从XML文档中提取信息,并将这些信息转换成HTML等其它格式。
这种转换采用了公开的方式,使其更加容易、方便地被程序员描述。
同时.XSL还提供多种脚本语言的通道,以满足更为复杂的应用需求。
因此,尽管XSL是一种新的标记语言,但程序设计者完全可以继续充分发挥其熟悉的HTML或脚本语言的优势。
由于XSL强大的可扩展性,使得它可以控制无穷无尽的标记,而且控制每个标记的方式同样是无穷无尽的。
这就给W eb提供了高级的布局特性。
例如旋转的文本、多列和独立区域。
它也支持国际统一的书写格式,可以在一页上混合使用从左至右、从右至左和从上至下的书写格式同MathML, SVG样,XSL本身就是一项XML的应用。
它直接架构在XML语法之上,共分为两个部分:第一部分是XSLTI负责将XML的源代码转换为另一种格式:第二部分是XSL-FO,提供了大量的格式化命令,可用来配合印刷或屏幕显示,精确地设定外观样式,这是一种所谓“独立设备”的格式。
第一部分的转换语法可以用来服务于第二部分。
事实上,XSL的转换语法并不限于将XML转换成FO命令,XSL可以输出任何格式正确的XML 文档。
因为这个特性,我们可以用它来做以下几种格式的转换:XML-HTML, XML"XML, XML-SVG等等。
xsl if 语法
XSL (Extensible Stylesheet Language) 是一种用于转换 XML 文档的语言。
在XSL 中,if 语句是一种条件语句,它允许你根据条件来执行不同的操作。
XSL if 语句的基本语法如下:
其中,test属性用于指定要测试的条件表达式。
如果表达式的值为 true,则执行<xsl:if>元素内部的代码块。
如果表达式的值为 false,则跳过该代码块。
在上面的示例中,如果 XML 文档中的price元素的值大于 10,则显示 "The price is higher than 10." 的消息。
如果quantity元素的值大于 0,则显示库存数量。
请注意,XSL if 语句还支持 else 分支,可以使用<xsl:else>元素来指定在条件为 false 时要执行的代码块。
xsl样式显示
XSLT元素及其说明
XSLT元素
xsl:output xsl:template xsl:call-template xsl:value-of xsl:element
说明
用于设置文档转换输出的相关属性 用于指定XML元素的转换规则 用于调用模板函数 取出所选择的元素或属性的内容 创建XML元素
xsl:apply-templates 调用其它模板以处理子元素
引用XSL的XML文档举例
<?xml version="1.0" encoding="gb2312"?> <?xml-stylesheet type="text/xsl" href="xmlXSL.xsl"?> <腾格尔> <天堂> 蓝蓝的天空 清清的湖水哎耶 绿绿的草原 这是我的家哎耶 奔驰的骏马 洁白的羊群哎耶 还有你姑娘 这是我的家哎耶 我爱你我的家 我的家我的天堂 </天堂> </腾格尔>
由这三个元素建立多条件模板规则
复制当前的节点 以指定的顺序对输出的元素进行排序
一个XSL实例(3.XSL)
<?xml version="1.0" <xsl:for-each select="股票/武商股份/认购 encoding="gb2312"?> 人信息"> <xsl:stylesheet xmlns:xsl= <TR> "/1999/XSL/Trans <TD><xsl:value-of select="姓名 form " version="1.0"> "/></TD> <!--根模板--> <TD><xsl:value-of select="账户 <xsl:template match="/"> "/></TD> <HTML> <TD><xsl:value-of select="地址 <HEAD><TITLE>认购信息 "/></TD> </TITLE></HEAD> <TD><xsl:value-of select="电话 <BODY> "/></TD> <H2>客户信息</H2> </TR> <TABLE BORDER='2' </xsl:for-each> CELLSPACING="0"> </TABLE> <TR> </BODY> <TH>客户姓名</TH> </HTML> <TH>账户代码</TH> </xsl:template> <TH>现住址</TH> </xsl:stylesheet> <TH>联系电话</TH> </TR>
什么是XSLT
1. 什么是XSLT大家可能听说过XSL(eXtensible Stylesheet Language),XSL和我们这里说的XSLT 从狭义上理解是一样的,而按照W3C的标准,XSLT的说法更严格些,因此我们在文章中统一使用XSLT的称法。
XSLT的英文标准名称为eXtensible Stylesheet Language Transformation。
根据W3C的规范说明书(/TR/xslt),最早设计XSLT的用意是帮助XML文档(document)转换为其它文档。
但是随着发展,XSLT已不仅仅用于将XML转换为HTML或其它文本格式,更全面的定义应该是:XSLT是一种用来转换XML文档结构的语言。
2. 为什么要用XSLT我们已经知道,XML是一种电脑程序间交换原始数据的简单而标准的方法。
它的成功并不在于它容易被人们书写和阅读,更重要的是,它从根本上解决了应用系统间的信息交换。
因为XML满足了两个基本的需求:(1).将数据和表达形式分离。
就象天气预报的信息可以显示在不同的设备上,电视,手机或者其它。
(2).在不同的应用之间传输数据。
电子商务数据交换的与日俱增使得这种需求越来越紧迫。
为了使数据便于人们的阅读理解,我们需要将信息显示出来或者打印出来,例如将数据变成一个HTML文件,一个PDF文件,甚至是一段声音;同样,为了使数据适合不同的应用程序,我们必须有能够将一种数据格式转换为另一种数据格式,比如需求格式可能是一个文本文件,一个SQL语句,一个HTTP信息,一定顺序的数据调用等。
而XSLT就是我们用来实现这种转换功能的语言。
将XML转换为HTML,是目前XSLT最主要的功能前言大家好,从今天起我们将一起来学习XML家族的另一种语言XSLT,XSLT类似HTML中的CSS,不过比CSS功能要强大的多。
学习XSLT的前提是你对XML已有一些了解,如果你没有学习过XML,能先点这里(http: ///columns/xml_1.shtml)看我先前写的一篇文章《XML轻松入门手册》。
XSLT 经典教程
XSLT 教程 1.基础 XSLT 首页Next Page XSL 指扩展样式表语言(EXtensible Stylesheet Language)。
万维网联盟开始发展 XSL 的起因是由于对基于 XML 的样式表语言的需求。
XSLT 指 XSL 转换。
在此教程中,你将学习如何使用 XSLT 将 XML 文档转换为其他文档,比如 XHTML。
开始学习 XSLT !XSLT 参考手册XSLT 元素 对所有来自 W3C 标准的 XSLT 元素进行了描述,以及关于浏览器支持的信息。
XSLT 函数 XSLT 包含了超过 100 个内置函数。
这些函数可以用于字符串、数值、日期和时间比较、 节点和 QName 处理, 序列处理, 逻辑值等等。
内容目录XSL 语言 详细解释 XSL 的子语言: XSLT、XPath 和 XSL-FO。
XSLT 简介 XSLT 的简介。
包括其概念和作用。
XSLT 浏览器 支持 XSLT 的浏览器总论。
XSLT 转换 如何使用 XSLT 将 XML 文档转换为 XHTML 文档。
XSLT 模板 <xsl:template> 元素包含了当指定的节点被匹配时所能应用的规则. XSLT <xsl:value-of> 元素 <xsl:value-of> 元素可提取选定节点的值。
XSLT <xsl:for-each> 元素<xsl:for-each> 元素允许您在 XSL 中进行循环。
XSLT <xsl:sort> 元素 <xsl:sort> 元素用于对输出进行排序。
XSLT <xsl:if> 元素 <xsl:if> 元素用于针对 XML 文件的内容放置一个条件测试。
XSLT <xsl:choose> 元素 <xsl:choose> 元素被用来与 <xsl:when> 和 <xsl:otherwise> 配合使用,来表达多重 的条件检验。
XSLT技术总结
XSLT技术总结XSL 指扩展样式表语言(EXtensible Stylesheet Language)。
XSLT 指XSL 转换。
XSL就相当于HTML的CSS用来设置XML的样式显示。
XSLT的三种操作方式,一是直接在XML文件中引用,二是用JS去控制XML的转换操作,三是在后台直接完成转换,然后在前端显示。
1.在XML文件中引用的方法,在XML文件中的声明下加入样式的引用。
例如:<?xml-stylesheet type="text/xsl" href="cdcatalog.xsl"?>,打开XML就会显示成指定的样式。
2.在JS中完成转换的方法,调用XML插件,加载XML文件和样式文件,使用transformnode 方法完成显示。
如果是文件使用load方法,参数为文件的路径,如果是字符使用loadXML。
例如:var xsl = new ActiveXObject("Microsoft.XMLDOM");xsl.async = false;xsl.loadXML(result);var xml = new ActiveXObject("Microsoft.XMLDOM");xml.async = false;xml.loadXML(medicalXML);xml.setProperty("SelectionLanguage", "XPath");$get("MedicalContent").innerHTML=xml.transformNode(xsl);在后台完成转换,直接在前端显示。
例如:例如:这是在后台动态生成的Xpath,实现对数据的动态过滤。
更高级的应用查看Xquery和Xlink。
另外,对于生成XML的一点说明,如果不想自己写,可以使用Xstream生成。
exsl的使用方法
exsl的使用方法【实用版3篇】《exsl的使用方法》篇1Excel是微软公司开发的一款电子表格应用,下面是使用Excel的简要步骤:1. 打开Excel软件。
2. 在需要输入数据的表格中,选择好需要输入数据的区域。
3. 点击编辑栏,输入需要的数据。
4. 完成后,按Ctrl+Z键,撤回上一步操作。
5. 输入完成后,再次选中需要输入数据的区域。
6. 点击编辑栏,选择需要的数据类型。
7. 完成后,即可完成数据输入。
《exsl的使用方法》篇2XSL(Extensible Stylesheet Language)是一种用于格式化和转换XML文档的样式表语言。
以下是使用XSL的基本步骤:1. 创建XSL样式表文件:首先,您需要创建一个XSL样式表文件,该文件将定义如何格式化XML文档。
您可以使用任何文本编辑器来创建此文件,并将其命名为.xsl文件。
2. 创建XML文档:接下来,您需要创建一个XML文档,该文档将作为XSL样式表的目标。
XML文档应该包含要格式化的数据。
3. 将XML文档与XSL样式表链接:最后,您需要将XML文档与XSL样式表链接起来。
这可以通过在XML文档的头部使用以下代码来完成:```phpu003c?xml-stylesheet type="text/xsl" href="style.xsl"?u003e```其中,style.xsl是您创建的XSL样式表文件的名称。
现在,当您打开XML文档时,它将使用XSL样式表进行格式化。
《exsl的使用方法》篇3XSL(Extensible Stylesheet Language)是一种用于格式化和转换XML文档的样式表语言。
以下是使用XSL的基本步骤:1. 创建XSL样式表文件:首先,您需要创建一个XSL样式表文件,该文件将定义如何格式化XML文档。
您可以使用任何文本编辑器来创建此文件,并将其命名为.xsl文件。
Xsl模板应用基础(一、介绍)
Xsl模板应⽤基础(⼀、介绍)Xsl 的全称是 eXtensible Stylesheet Language,它是专门⽤于以可读格式呈现Xml数据的语⾔。
它能把Xml数据转换为任意形式的⽂本数据,如Html、Xml、Json、C#、Sql语句等。
由于Xsl是 Xml 语⾔的⼦集,因此 Xsl 的书写格式也必须符合Xml的标准。
它继承了Xml语⾔的中⽴性,不偏向任何⼀种编程语⾔,各⼤编程语⾔也对Xsl有良好的⽀持。
甚⾄可以这样说,Xsl⼀次编写,到处运⾏。
Xsl ⽬前最新版本是 2.0,但是2.0并没有⼴泛普及开来,.Net framework 还没有找到Xsl 2.0的影⼦。
得益于其强⼤的扩展能⼒,从过往⼏年的使⽤过程中我感觉1.0版本也⾜够使⽤。
本系列的⽂章主要是在1.0的基础上做演⽰与讲述。
Xsl 的语法⾮常简单,内置函数也很少,Visual Studio 与 Dreamweaver 也都有语法提⽰, 因此,对照教程敲⼀敲代码⼤概半天时间就能上路应⽤Xsl了。
下图是Xsl应⽤时的流程图:各种编程语⾔都有⾃⼰的XML处理器,负责使⽤Xsl格式化Xml数据,得到最终结果。
转换过程还⽀持传⼊两种参数,既能传⼊实体数据(⽂本、数字、Xml节点),还能传⼊⽅法引⽤,⽐如把C#的⽅法传⼊,供Xsl语⾔调⽤,这在后⾯的⽂章会有提及。
下⾯建⽴student.xml与student.xsl两个⽂件来做展⽰。
student.xml:1<?xml version="1.0" encoding="utf-8"?>2<?xml-stylesheet type="text/xsl" href="student.xsl"?>3<root>4<student id="1000">5<name>张三</name>6<sex>male</sex>7<age>16</age>8</student>9<student id="1001">10<name>李四</name>11<sex>female</sex>12<age>15</age>13</student>14<student id="1002">15<name>赵五</name>16<sex>male</sex>17<age>16</age>18</student>19</root>student.xsl:1<?xml version="1.0" encoding="utf-8"?>2<!DOCTYPE xsl:stylesheet [3 <!ENTITY nbsp " ">4<!ENTITY copy "©">5<!ENTITY reg "®">6<!ENTITY trade "™">7<!ENTITY mdash "—">8<!ENTITY ldquo "“">9<!ENTITY rdquo "”">10<!ENTITY pound "£">11<!ENTITY yen "¥">12<!ENTITY euro "€">13]>14<xsl:stylesheet version="1.0" xmlns:xsl="/1999/XSL/Transform" xmlns:msxsl="urn:schemas-microsoft-com:xslt" xmlns:js="/results" extension-element-prefixe 15<xsl:output method="html" encoding="utf-8"/>16<msxsl:script language="javascript" implements-prefix="js">17<![CDATA[18function random(){19 return Math.random();20}21]]>22</msxsl:script>2324<xsl:template match="/">25<xsl:text disable-output-escaping='yes'><!DOCTYPE html></xsl:text>26<html>27<head>28<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>29<title>学⽣清单</title>30<script>31 function random(){32 return Math.random();33 }34</script>35</head>36<body>37<table border="1" cellpadding="5" cellspacing="0">38<tr>39<th>ID</th>40<th>姓名</th>41<th>年龄</th>42<th>性别</th>43</tr>44<xsl:for-each select="/root/student">45<tr>46<td>47<xsl:value-of select="@id"/>48</td>49<td>50<xsl:value-of select="name"/>51</td>52<td>53<xsl:value-of select="age"/>54</td>55<td>56<xsl:choose>57<xsl:when test="sex='male'">58<xsl:value-of select="'男'"/>59</xsl:when>60<xsl:when test="sex='female'">61<xsl:value-of select="'⼥'"/>62</xsl:when>63<xsl:otherwise>64<xsl:value-of select="'未知'"/>65</xsl:otherwise>66</xsl:choose>67</td>68</tr>69</xsl:for-each>70</table>7172 Html页⾯脚本调⽤随机数:73<script>74 document.write(random());75</script>76<br/>77转换过程调⽤随机数:<xsl:value-of select="js:random()"/>78<br/>79</body>80</html>8182</xsl:template>83</xsl:stylesheet>Xml 呈现出标准的Html界⾯,浏览器在此处充当了Xml处理器的⾓⾊,IE5.5+,Chrome、Firefox 都⽀持在客户端解析Xsl语⾔。
xsl
2.XSL文档的创建
• XSL文档以 .xsl为其文件扩展名,与XML文档 一样也是一种文本文件,可用任何一种文本编 辑软件进行创建和修改。
3.XSL文档的引用
• 在XML文档中引用XSL样式表的方法是在序言 部分添加如下形式的指令: • <?xml-stylesheet type="text/xsl" href="URL" ?>
节点匹lt;A id="a1"> <B id="b1"> <C id="c1"> <B name="b"/> <D id="d1"/> <E id="e1"/> <E id="e2"/> </C> </B> <B id="b2"/> <C id="c2"> <B/> <D id="d2"/> <F/> </C> <E/> </A>
XSL节点选择
• 使用元素名选择节点 • 可以在模板中直接指定XML文档的某个元素名 来选择相匹配的节点。 • 例如: • <xsl:template match="roster"> <xsl:apply-templates select="roster"/> <xsl:value-of select="name"/>
XSL样式单 --节点匹配路径XPath
第一节 XSL概述
第一节XSL概述1. XSL的基本概念前面讲到,我们可以使用样式表技术来格式化XML文档,主要有两种样式表技术:CSS (级联样式表) 和XSL (可扩展样式表语言)。
(1) 什么是XSL?XSL:可扩展样式表语言(e X tensible S tylesheet L anguage,简称XSL)。
可以这样来理解XSL:它是一种可以将XML文档转换成其它文档(例如:HTML文档)的语言;它是一种可以排序、过滤和分类XML数据的语言;它是一种可以基于数值格式化XML数据的语言(例如:用红色显示负数);它是一种可以向不同设备输出XML数据的语言(例如:屏幕、纸或语音设备)。
(2) XSL由哪几部分组成?XSL实际上由三部分组成:XSLT:数据转换语言(XSL Transformations)。
XPath:专门用来在XML文档中查找信息的语言。
XSL-FO:数据格式化对象(XSL Formatting Object)。
XSLT是XSL标准中最重要的部分,它用于将一个XML文档转换成另一个其它类型的文档,也就是将一个XML文档转换成浏览器所能识别的一种文档,这其中就包括HTML。
通常所说的XSL就是指XSLT。
(3) XSL有哪些特点?XSL主要具有如下特点:XSL本身就是一个完整的XML文档,完全遵循XML语法规则。
XSL是XML的一种具体应用。
2. XSL的工作原理XSL的工作原理,如下图所示:XSL的工作示意图几个基本概念:源文档树:包含原始数据的XML源文档的树状形式。
结果文档树:经过格式化后的XML文档的树状形式。
XSL文件:指定如何进行格式化的样式表文件。
XSL处理器:专门用来提取数据并进行格式化输出的工具。
如上图所示,XSL的工作过程大致是这样的:第一步:使用XSL处理器从源文档树中提取要进行格式化显示的数据。
第二步:提取到数据之后,按照XSL文件中指定的格式显示数据,即形成结果文档树。
3. 比较CSS与XSL(1) 有了CSS,为什么还需要XSL?CSS虽然能够很好的控制输出的样式,比如色彩、字体、大小等,但它有严重的局限性:CSS不能重新排序XML文档中的元素;CSS不能判断和控制哪个元素被显示,哪个不被显示;CSS不能计算元素中的数据。
xsl入门
<xsl:template>元素 XSL样式单是由模板组成,每个模板就是一组规则。 模板的match属性,用以将模板和XML中的元素关联起来。如 match="/"则将此模板与XML的根关联起来了。 <xsl:value-of>元素 该元素用于取得选定XML节点的值。 对节点的选取,由其select属性完成,select的值是一个Xห้องสมุดไป่ตู้ath 表达式。XPath表达式非常象*nix系统的多级目录的写法。如例中的 “breakfast_menu/food”等。 <xsl:for-each>元素 完成在XSL中的循环动作。其属性select同6中所述。 此元素可以完成简单的过滤,例如: <xsl:for-each select="catalog/cd[artist='Bob Dylan']"> 可用于寻找Bob Dylan的CD作品。XSL定义了四种比较运算符: =、!=、<、>,两个比较之间可以用and 或or 连接。
如果为XML文档加上XSL样式表,看下面代码第2行,你的浏 览器就可以精确的将XML 文档转换为HTML文件。 <?xml version="1.0" encoding="ISO8859-1" ?> <?xml-stylesheet type="text/xsl" href="cd_catalog.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>
XSL概念
parent 选择当前节点的父节点
preceding 选择当前节点开始标记之前的所有内容
preceding-sibling 选择当前节点开始标记之前的所有兄弟节点
self 选择当前节点
语法:预定义关系::节点选择[选择条件]
当然,XSL不仅仅是一种样式语言。它包含下面三个部分:
XSLT:(XSL Transformations)XML格式转化
XPath: 通过路径表达式匹配节点
XSL-FO:(XSL Formatted Object)XSL格式对象
严格来说,很多人所说的XSL其实是指XSLT。要掌握XSL,应该先理解XPath和XSL-FO。
为了能够访问XSLT的元素、属性和其他内容,我们必须在顶级元素声明XSLT的命名空间。xmlns:xsl=/1999/XSL/Transform表明我们使用的是W3C官方的XSLT命名空间,使用这个命名空间的同时,必须指定属性version="1.0"。
2、在XML中应用XSLT的指令:<?xml-stylesheet type="text/xsl" href="the url of the .xsl file"?>
XSL是EXtensible Stylesheet Language的缩写,意思是可以扩展的样式单语言。我们知道如何用CSS格式化HTML/XHTML,虽然利用CSS(CSS = HTML Style Sheets)也可以格式化XML(针对浏览器而言)。但CSS的功能有限,而且CSS不符合XML规范,因此,我们需要使用XSL(XSL = XML Style Sheets)来更好地为XML文件定义样式。
XSL概念与应用
<fo:layout-master-set>
• <fo:layout-master-set> 元素指定页面定义。 • 在简单的文档中,一个布局可能就足够了,但复杂的文档通常有几个 页面定义。 • <fo:layout-master-set> • • • • <fo:simple-page-master master-name="main" margin-top="36pt“ margin-bottom="36pt" page-width="8.5in" page-height="11in" margin-left="72pt" margin-right="72pt"> <fo:region-body margin-bottom="50pt" margin-top="50pt"/>
• <fo:root> • <fo:layout-master-set> • <fo:simple-page-master> • <fo:region-body> • <fo:page-sequence> • <fo:flow> • <fo:block> 和 <fo:inline>
<fo:root>
XSL 格式化对象
XSL-FO 文档概述
• XSL-FO 文档定义了制作高质量可打印文档时非常重要的几件事情: – 有关页面的实际大小的信息(信纸和 A4 等等) – 有关页边距(顶部、左边、底部和右边)、页眉和页脚和页面其 它特性的信息 – 有关文本的字体、字体大小、颜色和其它特征的信息 – 要打印的实际文本,由描述段落、突出显示、表等类似物的元素 来标记
xsl什么意思
xsl什么意思
xsl:网络流行语,“笑死了”的拼音首字母缩写,常用于饭圈。
它属于字母形网络流行语。
类似的如:GG(哥哥)、JS(奸商)、PFPF(佩服佩服)、ZT(转贴)等,这类语言通常是提取中文词组的首个字母,比较容易理解和识别,所以能够被广泛采用传播。
与它相似的还有以英语词组缩写或变化而来的网络用语,如GF(girl friend,女朋友)、PK(来源于网游中的“playerkill”一词,挑战、杀死、末位淘汰之意)。
这类用语有很多也不符合英语语法规范,甚至是错误的,如CU(see you,再见)、good good study,day day up(好好学习,天天向上),但因其形式简单、输入便捷、表达内涵确切,所以在网络上有相当高的使用频率。
xsl是什么
xsl是什么xsl是一种基于Java的编程工具,其由Java语言编写而成。
它的界面很好,语法简洁,操作方便,所以一经推出就受到大众的喜爱。
下面我就给你讲讲它的优缺点吧!你们看到了吗?这就是XSL的界面,可能是因为你们没有接触过,所以对这一新的事物还是很感兴趣的,其实,这是由于你们认真学习过Java语言。
对这种编程语言有了一定的了解。
所以,你们一定要好好学习这种编程语言,为将来学习其他的编程语言打好基础。
XSL语言的特点是: 1、为不同的设备提供一个统一的接口。
例如,为服务器端提供图像的渲染,为客户端提供鼠标动作,按键映射,图像映射等等; 2、面向对象,可以对图像或者其他文件进行处理;3、可以完全在Web上执行。
我相信,你们一定看得懂上面这三句话吧!那你知道,它的缺点是什么吗?不知道吧!我来告诉你们吧! XSL 缺点是: 1、运算量大,耗费系统资源多,影响系统性能; 2、对于操作对象结构化,使用了额外的语法,因此不易维护。
但是,随着技术的发展,这些缺点会逐步改进。
xsl作为一种编程语言,其最大的优点就是它简单,明了,高效,方便。
例如,在同一个程序中,可以调用同一个类的多个方法,这样,就避免了调用其他方法时还需要打开该方法所在的类的对应的类的情况。
在程序执行中,直接执行代码的地址可以被直接省略掉,这样,就不必将代码段一个一个放在方法体内,从而节省了内存,提高了程序的运行速度。
还有,在程序中,除了可以使用空语句之外,还可以使用分号来进行控制。
分号是有固定长度的符号,所以,用起来比较方便。
你们想想看,如果你的程序中都是一个一个的代码段,那该有多难看啊!你们还知道它的优点吗?不知道了吧!你们不如自己去找一下,再来告诉我,也许你们会找到更多的优点呢!这些就是xsl的优点和缺点,希望你们好好学习,为将来编写更好的程序打下基础!相信你们会有所收获的!这就是XSL的介绍,你们了解了吗?还有一个非常重要的问题,我不知道你们有没有注意到。
xslt函数empty用法
xslt函数empty用法XSLT是一种用于转换XML文档的编程语言,它广泛应用于数据转换、文档生成等领域。
在XSLT中,函数是重要的组成部分,它们提供了一些特定的功能和操作。
其中,empty函数是XSLT中一个常用的函数,用于判断一个元素是否为空。
本文将介绍empty函数的用法和常见应用场景。
一、empty函数简介empty函数用于判断一个元素是否为空。
如果元素的值是空字符串,或者元素不存在,则返回true;否则返回false。
empty函数在处理XML文档时非常有用,可以帮助我们快速判断元素是否为空,从而进行相应的处理。
二、empty函数的语法empty函数的语法非常简单,只有一个参数,即要判断的元素。
其基本语法如下:<xsl:iftest="element"><!--元素为空的处理逻辑--></xsl:if>其中,"element"是要判断的元素。
如果元素为空,则执行if语句块中的代码;否则跳过该代码块。
三、empty函数的应用场景1.判断元素是否为空在处理XML文档时,我们经常需要判断元素是否为空。
使用empty函数可以轻松实现这一功能。
例如,当处理一个包含多个子元素的节点时,我们可以使用empty函数来判断该节点是否为空。
2.条件判断empty函数可以与其他条件判断语句结合使用,如if、choose、when等。
通过判断元素是否为空,可以实现更加灵活的逻辑控制。
3.合并重复元素在处理XML文档时,有时需要合并重复的元素。
使用empty函数可以轻松实现这一功能。
例如,当处理一个包含重复子元素的节点时,我们可以使用empty函数来去除重复的元素。
四、示例代码下面是一个使用empty函数的示例代码,用于判断XML文档中的节点是否为空,并进行相应的处理。
假设有一个XML文档如下:<root><node>文本1</node><node></node><!--空节点--><node>文本2</node></root>对应的XSLT样式表如下:<xsl:templatematch="root"><xsl:apply-templatesselect="node"/></xsl:template><xsl:templatematch="node"><xsl:iftest="not(string(.)='')or@*='false'"><!--使用empty函数判断是否为空--><!--处理逻辑--><xsl:value-ofselect="."/><!--输出文本--></xsl:if></xsl:template>输出结果为:文本1文本2通过使用empty函数,我们可以轻松地判断XML文档中的节点是否为空,并进行相应的处理。
xsl if 除法
xsl if 除法在XSL(可扩展样式表语言)中,除法运算是一项重要的操作。
在本文中,我们将探讨XSL if语句中使用除法的相关内容。
一、基本概念除法运算是数学中常见的运算符。
在XSL if语句中,我们可以使用除法运算符(/)来执行除法操作。
二、除法运算的语法除法运算的语法如下:operand1 / operand2其中,operand1和operand2是要进行除法运算的操作数。
在XSL 中,这些操作数可以是以下之一:- 数字- 变量- 表达式三、使用除法运算的实例假设我们想判断一个数是否为偶数。
我们可以使用除法运算来解决这个问题。
示例代码如下:<xsl:template match="/"><xsl:if test="$number mod 2 = 0"><xsl:text>这是一个偶数。
</xsl:text></xsl:if><xsl:if test="$number mod 2 != 0"><xsl:text>这是一个奇数。
</xsl:text></xsl:if></xsl:template>在上面的代码中,我们使用了XSL if语句来判断一个数是否为偶数。
我们使用除法运算符“mod”来计算余数,并与0进行比较。
如果余数为0,则说明这个数是偶数;否则,这个数是奇数。
四、注意事项在使用XSL if语句中的除法运算时,需要注意以下几点:1. 除数不能为0。
如果除数为0,将导致除法运算错误。
2. 如果操作数是小数,将执行浮点数除法。
这意味着除法的结果将是一个浮点数。
五、总结在XSL if语句中使用除法运算可以帮助我们解决一些特定的问题,如判断一个数是否为偶数。
我们可以使用除法运算符(/)来执行除法操作,并利用余数判断结果。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
XSLT 介绍
XSLT is a language for transforming XML documents into XHTML documents or to other XML documents.
XSLT是一种把XML文件转换成XHTML文档或者其他的XML文档的语言。
XPath is a language for navigating in XML documents.
XPath是一种由于操作XML文档的语言。
What You Should Already Know
学前基础
Before you continue you should have a basic understanding of the following:
如果你想继续下面的学习,你必须得掌握下面的一些基本常识。
∙HTML / XHTML
∙XML / XML 命名空间
∙XPath
If you want to study these subjects first, find the tutorials on our Home page.
如果你想要先学习这些课题,那请在知识库找到这些教程.
What is XSLT?
什么是XSLT?
∙XSLT stands for XSL Transformations
XSLT代表XSL转换(XSL Transformations)
∙XSLT is the most important part of XSL
XSLT是XSL最重要的部分
∙XSLT transforms an XML document into another XML document
XSLT可以把XML文档转换成另一个XML文档
∙XSLT uses XPath to navigate in XML documents
XSLT通过XPath操作XML文档
∙XSLT is a W3C Recommendation
XSLT是一种W3C参考标准
XSLT = XSL Transformations
XSLT=XSL转换(XSL Transformations)
XSLT is the most important part of XSL.
XSLT是XSL的最重要的一部分。
XSLT is used to transform an XML document into another XML document, or another type of document that is recognized by a browser, like HTML and XHTML. Normally XSLT does this by transforming each XML element into an (X)HTML element.
XSLT用于把XML文件转换成另一份XML文件,或者转换成另一种被浏览器所识别的诸如HTML和XHTML类型的文件。
通常情况下,XSLT是通过把每个XML元素转换成(X)HTML文件来完成的。
With XSLT you can add/remove elements and attributes to or from the output file. You can also rearrange and sort elements, perform tests and make decisions about which elements to hide and display, and a lot more.
通过XSLT,你可以从已输出的文件里添加/移除元素和属性。
你也可以把元素重新排列和分类,执行测试语句,决定是隐藏还是显示元素,或者实现其它更多的功能。
A common way to describe the transformation process is to say that XSLT transforms an XML source-tree into an XML result-tree.
对于描述转换过程,可以形象的描述为:XSLT把XML源树转(XML source-tree)换成XML结果树(XML result-tree)。
XSLT Uses XPath
XSLT对于XPath的使用
XSLT uses XPath to find information in an XML document. XPath is used to navigate through elements and attributes in XML documents.
XSLT通过对XPath的使用来找寻XML文档中的信息。
XPath用于操作XML文件中的元素和属性。
If you want to study XPath first, please read our XPath Tutorial.
如果你想先学习XPath,请先阅读我们的XPath教程.
How Does it Work?
如何使它运行?
In the transformation process, XSLT uses XPath to define parts of the source document that should match one or more predefined templates. When a match is found, XSLT will transform the matching part of the source document into the result document.
在转换过程中,XSLT通过XPath来定义部分应该和一个或更多预定的模板相匹配的源文件。
当一个匹配找到后,XSLT将会把相匹配的部分源文件转换成结果文档。
XSLT is a Web Standard
XSLT是一个网络标准
XSLT became a W3C Recommendation 16. November 1999. XSLT在1999年11月16日成为W3C参考标准。