xml编写XSL样式表
Chap 8 XSL格式化XML(11-22
XML
KMR
教程
8.1.3 XML文档结构树
<?xml version="1.0" encoding="gb2312"?> <?xml:stylesheet type="text/xsl" href="例8-1.xsl" ?> <图书信息表> <图书 书号="ISBN-9787302149583"> <书名>XML技术应用</书名> <类别>计算机</类别> <作者>贾素玲</作者> <作者>贾素玲2</作者> <定价>24.00</定价> </图书> <图书> <书名>VB语言教程</书名> <类别>计算机</类别> <作者>朱国华</作者> <定价>26.00</定价> </图书> ...... </图书信息表>
。例如,可将XML转换为XML、PDF,甚至是多媒体格式等。 XSL当前
的主要应用是将XML文档代码转变成HTML代码,实现XML文档在IE中
的显示。 XSL是一种WWW标准
XSL是W3C推荐的一种标准。
XML
KMR
教程
把XML的数据转换成多列表格形式
把XML的数据转换成多列表格形式摘要:本文通过实际的例子来说明如何在XSL中实现对XML数据转换成完美的多列表格。
在利用XSL对XML进行转换时,有时候需要把XML转换成多列的Table元素,这个问题经常会困扰许多人,如果不生成Table的话,只需要对循环中的节点进行位置取模后判断,然后用<br/>换行即可。
但有时候为了用户需要和界面的美观,需要生成多行多列的Table,常用的方法是采用following-sibling进行判断,比如下面的代码:<?xml version=“1.0”encoding=“UTF-8”?><xsl:stylesheet version=“1.0”xmlns:xsl=“/1999/XSL/Transform”xmlns:copyRight=“/”><xsl:template match=“/”><table bgcolor=“snow”border=“1”cellpadding=“5”cellspacing=“2”borderColor=“darkorange”style=“font-size:9pt”><xsl:for-each select=“/Items/Item[position()mod3=1]”><tr><td width=“33%”align=“center”valign=“middle”><xsl:apply-templates select=“.”/></td><td width=“34%”align=“center”valign=“middle”><xsl:apply-templates select=“following-sibling::Item[position()=1]”/> </td><td width=“33%”align=“center”valign=“middle”><xsl:apply-templates select=“following-sibling::Item[position()=2]”/></td></tr></xsl:for-each></table></xsl:template><xsl:template match=“/Items/Item”><a target=“_blank”><xsl:attribute name=“href”><xsl:if test=“contains(Url,''@'‘)”>mailto:</xsl:if><xsl:value-of select=“Url”/></xsl:attribute><xsl:value-of select=“Title”/></a></xsl:template></xsl:stylesheet>转换结果如下图所示:但是,从上面的结果图可以看出,如果数据记录不是表格列数的整数倍的时候,最后一行的最后几列不会生成出来,即在HTML里缺少<td></td>标记。
xslt 用法 -回复
xslt 用法-回复XSLT(可扩展样式表语言转换)是一种用于将一种XML文档转换成另一种文档的技术。
它是基于XSL(可扩展样式表语言)标准的一种规范。
在本文中,我们将一步一步地回答有关XSLT的用法的问题,并探索其功能和应用。
第一步:了解XSLT的基本概念和语法XSLT是一种基于XML的转换语言,并使用XSLT样式表来定义转换规则。
它使用XSLT处理器将源XML文档和XSL样式表作为输入,然后生成目标XML或其他格式的输出,如HTML或纯文本。
在XSLT中,我们使用模板匹配和模式选择器来指定如何将源文档转换为目标文档。
第二步:学习XSLT样式表的基本结构XSLT样式表由一系列的模板组成。
每个模板定义了一个匹配模式和一些用于转换的指令。
在XSLT中,我们使用xsl:template元素来定义模板,并使用select属性指定匹配的模式。
每个模板都可以包含许多指令,如xsl:apply-templates、xsl:value-of和xsl:for-each。
第三步:使用XSLT来选择和转换XML文档XSLT允许通过模式选择器选择要转换的源XML文档的特定部分。
使用xsl:apply-templates指令,我们可以将选择的部分作为输入传递给其他模板进行处理。
此外,我们还可以使用xsl:for-each指令来迭代处理XML文档中的多个元素。
第四步:了解XSLT中的内置函数和操作符XSLT提供了一些内置函数和操作符,用于在样式表中执行各种转换和操作。
一些常用的函数包括string()、substring()、concat()和translate()。
这些函数可以帮助我们处理字符串和执行数学运算。
第五步:掌握XSLT的变量和参数类似其他编程语言,XSLT也支持变量和参数。
我们可以使用xsl:variable元素来定义变量,并使用xsl:param元素来接收外部传递的参数。
这些变量和参数可以用于在样式表中存储和传递值,以便在转换过程中进行操作。
实验三XML样式表技术(CSS与XSL)
实验三XML样式表技术(CSS与XSL)实验三:XML样式表技术⼀、实验类型验证性实验⼆、实验⽬的1.了解XML内容与显⽰分离的特点;2.掌握XML样式的两种技术CSS和XSL,并理解两者的区别;2.掌握CSS的基本语法和两种引⽤⽅式;3.理解基于XSL处理XML显⽰的基本原理;4.掌握XSL的语法结构和元素声明。
5.掌握XSL中XPath的概念和基本使⽤⽅式;6.掌握基于XML SPY提供的XSLT的转换;三、实验要求1.按要求对XML⽂档进⾏CSS定义;2.使⽤CSS⽂件对XML进⾏显⽰;3.按要求为XML⽂档编写XSL样式⽂件;4.使⽤XSL对XML进⾏显⽰;5.能利⽤XML SPY的XSL转换功能将XML转换为HTML⽂件。
三、实验环境配置有XML Spy 2006或XML Spy 2009开发环境的计算机设备四、实验原理1.XML的样式表技术XML本⾝不提供任何相关显⽰的⽅法,也不像HTML带有预定义的可提供显⽰功能的标签,在XML中可以使⽤CSS和XSL两种样式表技术来提供XML数据的格式化显⽰。
XML将⽂档内容和外观相分离。
当需要显⽰时,再附加包含样式的样式⽂件。
内容与显⽰分离带来了诸多的优点,使得开发的关注点被分离,要么在数据内容上,要么在显⽰⽅式上。
同样的数据内容可以有不同的显⽰样式,只需要更改使⽤的样式⽂件。
分离也使得开发⼈员和设计⼈员能相互独⽴⽆⼲扰地⼯作。
2.CSS——并⾮为XML专门设计的样式表技术CSS(Cascading Style Sheets),级联样式表,提供了简单的语法和强⼤的格式化显⽰能⼒。
在CSS⽂件中对XML元素设定不同的样式规则,当使⽤浏览器显⽰XML⽂件,浏览器会根据所引⽤的CSS⽂件,对XML每个元素进⾏格式化。
CSS最初是为HTML进⾏的设计,不具备XML的语法。
根据书本内容,掌握CSS的语法结构、常⽤属性和两种引⽤⽅式3.XSL——基于XML的样式表技术XSL(eXtensible Stylesheet Language),可扩展的样式表语⾔,提供了基于XML的样式显⽰⽅式,它本⾝就是结构完整的XML⽂档。
XSL应用实例
<?xml version="1.0" encoding="GB2312"?>
<?xml-stylesheet type="text/xsl" href="Example6.xsl"?>
<商品价格表>
<xsl:template match="/">
<xsl:apply-templates/>
</xsl:template>
<xsl:template match="商品价格表">
<HTML>
<HEAD>
<style>
.ya{background-color:aqua;font-size:20;}
#mn{background-color:orange;font-size:22;font-weight:bold;}
</商品价格表>
将上述代码保存,名称为Example6.xml。创建样式表单文件,打开记事本,输入下列代码:
<?xml version="1.0" encoding="GB2312"?>
<xsl:stylesheet xmlns:xsl="/1999/XSL/Transform" version="1.0">
<td bgcolor="gray"><xsl:value-of select="数量"/></td>
XSL文档创建与应用
XSL文档创建与应用XSL是基于XML的语言,即XSL文件是一种格式良好的XMI文件,因此它和XML文件在语法上是一致的。
事实上,由于XML是元语言,所以它具备描述其他语言的能力,或者说它可以通过XML来制定另一种语言。
XSL就是用XML来描述的一种使用于定义样式的语言,并且XSL所定义的样式专门用于XML文档。
因此,所有的XSL文件都应该是格式良好的XML文件,只不过XSL文件的扩展名是“xsl”,而不再是“xml”。
一个最常见的XSL处理器常常都是附着在支持XSL的浏览器中。
由于XSL文件是一种有看特殊用途的XML文件,因此,XSL文件中的标记(统称为XSL元素)是具有特殊意义的。
它是用来指引XSL处理器如何对XML文档中的数据进行格式化,并按XSL文件中规定的输出样式将XML文档表现出来。
因此XSL处理器在解读XSL与XML文件后,使可以产生相对应的输出结果,而这个结果可以被浏览器所显示。
现在创建一个案例,演示XSL处理器将XML文档到另外一种文档。
打开记事本,输入下列代码:将上述代码保存,名称为welcome.xml。
“<?xml-stylesheet type="text/xsl" href ="welcome.xsl"?>”代码表示该XML文档关联了一个XSL样式表文档welcome.xsl。
IE浏览器内嵌的XML处理器在分析这个文档时,会调用相应的XSL处理器对该文档进行转换。
“href”表示引入表单所在的位置和文件名,如果在同一个文件夹下,只要给出文件的名字即可,否则,就要给出这个文件的完整路径。
“type”表示该X ML文档所使用的类型,即使用XSL文件。
现在为XML创建样式表单,即XSL文件。
打开记事本,输入下列代码;将上代码保存,名称为welcome.xsl。
XSL样式表文档的扩展名为xsl。
在该X SL文档中首先引入了一条XML声明,表明XSL文件的出处。
XML 表单形式显示XML文档数据
XML 表单形式显示XML文档数据
使用XSL样式表单可以显示XML文档中的数据,其样式信息都是存储在样式表单中。
通过样式信息的设置,XML数据可以以多种形式显示,如采用表单的形式。
本练习将以表单形式显示XML文档数据。
通过本练习读者可以掌握XSL模板使用,其实现步骤如下所示:
(1)分析程序。
实现该练习,需要创建XML文档和XSL样式表单文件,XM L文档提供数据,XSL文件提供显示信息。
(2)创建XML文档,名称为Example9.xml。
(3)实现XML文档。
实现此操作,首先需要实现XML文档数据结构,然后填充XML数据。
其代码如下所示:
(3)创建XSL文档,名称为Example9.xsl。
(4)实现样式表单文件基本结构,其代码如下所示:
(5)实现样式信息编写,其代码为:
<input type="submit" value="确认购买"/>
</form>
</body></html>
上述代码可以直接放置到样式表单文件的根模板中。
也可以将上述代码拆解成多个多个模板。
(6)运行。
上述步骤完成后,直接单击Example9.xml文件,会显示如图5-1所示窗口:
图5-1 表单形式显示。
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>
ASP XSLT模板语法
ASP XSLT模板语法XML文档需要使用XSLT进行数据转换,才能在浏览器中显示其文档数据。
XSLT能够显示XML文档数据是通过XSLT模板来实现的。
XSLT文件可以称为XSLT样式表或模板文件,其扩展名为.xsl。
与XML文档类型,XSLT文件由元素及其内容构成,并且遵循W3C规范,所以XSLT样式表也是有效且规范的XML文件。
其中,属性match是模板的必需属性,值必须是与XML文档标记相匹配的字符串,称为标记匹配模式。
标记匹配模式主要用来指定要从XML文档中开始寻找和提取数据的标记。
如果没有为match设置属性,表示从文档的根元素处开始查找和提取数据,其默认值为“/”。
如果要为其设定属性值,则需要为其根据XML文档的树状结构,给出要提取数据元素的完整路径。
XSLT样式表中必须存在一个根模板。
所谓根模板就是和XML文档中根标记匹配的模板。
如果使用浏览器来处理XSLT转换,则根模板的标记匹配模式必须是“/”。
当处理器进行XML文档转换时,必须先查找到根模板,然后再从根模板开始进行XSLT转换。
根模板的内容中可以包括其他的模板调用标记。
如果样式表中没有根模板,那么该样式表就不起任何作用。
1.模板标记在每一个实际的XML文档中,肯定包含有根标记和多个子标记,他们是很重要的一类标记。
XSLT样式表转换时应当为根标记和这些子标记提供输出数据的模板。
这些模板的标记匹配模式可以是根标记名称、子标记名称和根元素名称等。
例如,下面是一个视频网站中使用的XML文档,代码如下所示。
现在便可以使用XSLT的标记匹配模式来选择XML文档中的节点。
●根标记的任意级别与XML标记浏览次数匹配的模板。
●要创建标记为视频/名称,并且具有编号属性的匹配模板,如果要确定标记2.模板调用在转换并显示XML文档数据内容时,XSLT处理器必须先查找到根模板,在对根模板的变换过程中,再使用XSLT模板标记调用其他的模板。
XSLT转换中,使其中,元素apply-templates表示应用模板规则,用于将模板规则应用到相应的子标记中。
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
ASP XSLT元素
ASP XSLT元素XSLT样式表的基本结构就是模板,通过模板对XML文档进行相应的转换。
通过前面的介绍,读者可能已经对转换过程有了一定的了解。
XSLT样式表转换XML 文档的过程离不开XSLT元素,各元素所起的作用是不同的。
表6-5列出了XSLT 元素及其作用。
本节将对XSLT样式表中几种重要元素的作用及用法进行详细介绍。
1.Xsl:value-ofXsl:value-of元素用来将XML文档中指定标记的数据内容进行输出。
语法格式如下:其中select属性指定要提取内容的标记路径。
xsl:value-of元素可以在模板中多次使用。
XSLT的处理器首先找到XSLT文件的根模板,执行根模板的内容,进行HTML的转换。
当执行到xsl:value-of元素时,会依据提供的标记匹配模式,在XML文件中寻找该标记。
如果该标记存在,把数据内容提取出来。
2.Xsl:for-eachxsl:for-each元素的作用是循环读取XML文件中某一标记的内容。
该元素语句XSLT处理器根据元素中的标记匹配模式到XML文档中查找第一个与标记匹配模式匹配的XML标记。
如果找到,则对xsl:for-each元素中的内容进行转换,并将转换后的内容放入到HTML文件中。
然后,继续查找下一个与标记匹配模式匹配的XML标记,直到查找完毕。
3.控制语句元素所谓控制语句元素,就是在转换过程中能够起到控制语句执行顺序作用的元素。
XSLT样式表中可以使用下列两种控制语句元素:xsl:if和xsl:choose。
介绍这两种元素之前,首先介绍经常在控制语句中使用的运算符。
在XSLT样式表中可以使用两类运算符:比较运算符和逻辑运算符。
运算符用来设置相应的筛选条件,进行数据过滤。
表6-6和6-7分别列出了XSLT样式表中可用的比较运算符和逻辑运算符。
xsl:if元素用来过滤XML文档中的内容。
当元素中庙宇的条件为真时,才允许执行相关语句。
xsl:if元素的语句如下:种条件语句,格式如下:4.Xsl:copyXSLT样式表提供了一个把源树结构中的节点复制到结果树结构中的元素xsl:copy,从而不用再为XML文档中的每一个元素都提供一个模板。
实训一编写格式良好的XML文档
实训一编写格式良好的XML文档实验目的:1、掌握XML文档的基本结构、基本语法;2、掌握如何编写格式良好的XML文档;3、掌握如何引入DTD、XSD文档校验XML文档。
4、掌握如何引入XSL文档格式化XML文档实验设备:微机40台,操作系统Windows server2000,MSXML4.0实验要求:1、学生必须在事前认真准备实验内容,实验中必须按照实验指导书仔细操作。
注意人身和设备的安全操作,特别注意不要带电进行硬件插拔作业,插拔部件和连接器件一定要小心谨慎。
在实验中培养严谨科学的实践操作设备的习惯。
2、认真记录实验过程,总结操作经验和写好实验报告3、要求:将本次实验的代码写在作业本上。
实验内容及步骤:一、编写格式良好的XML文档格式良好的XML文档是指符合XML语法规范、嵌套合理的文档,遵循如下规则的XML文档称为格式良好的XML文档:语法规范必须有XML声明语句<?xml version="1.0" encoding="gb2312"?>必须有且仅有一个根元素标记大小写敏感属性值用引号空标记关闭元素正确嵌套1、编写一个格式良好的XML文档存储电子信箱信息。
邮箱通常分为收件箱和发件箱,收件箱的一封电子邮件通常包括了发信人邮件地址、收信时间、邮件主题、邮件内容、邮件大小、标记状态(已读、未读、已回复、未回复)等信息,发件箱的电子邮件收件箱的一封电子邮件通常包括了收信人邮件地址、发信时间、邮件主题、邮件内容、邮件大小等信息。
见如下XML文件。
(1)新建一个文本文档,将文件名更名为Email.xml,并使用记事本程序打开。
(2)输入代码:(3)在文件上单击鼠标右键,然后在弹出的菜单中选择“打开方式”/“浏览器”,在浏览器中打开该XML文件。
注意:XML元素是区分大小写的,元素起始标记和结束标记的英文字母大小写应该一致,否则用浏览器打开该XML文件时就会报错。
《XML技术》习题-含答案要点
Xml技术习题一、填空题1、每文档都分为两个部:序文部分和文档元素。
2、<?xml version="1.0"encoding="gb2312"?>就是一个序文文档的声明。
3、XML文档内容的主体部分,一般由根元素,子元素,属性,注释和内容组成。
4、一个元素开始的分隔符被称作起始标记,一个元素最后的分隔符被称作结束标记。
5、一共有四类元素:空元素;仅含文本的;含其他元素;含子元素、文本或混合元素的元素6、文档类型定义DTD,用来描述定义一段合法的XML文档块。
7、在DTD中,元素类型是通过ELEMENT标记声明的。
8、属性类型设为ID,表明该属性的取值是唯一。
9、Xml定义了两种类型的entity。
一种是普通entity;另一种是参数entity。
二、选择题1、属性(B)用来表示XML文档所使用的字符集。
A.versionB.encoding C.standalone2、XML(A)提供了一种避免元素命名冲突的方法。
A.命名空间B.DTD C.XSD D.XSL3、下列那段代码描述的是空元素?( )A.<title>gone with the wind</title><format>movie</format><genre>classic</genre>B.<DVD id=”1”><title>gone with the wind</title><format>movie</format><genre>classic</genre></DVD>C.<book/>4、含有中文字符的XML文档中,encoding属性值应设为(B)A. BIG5B.GB2312 C. UTF-85、实体引用是一种合法的XML名字,前面带有一个符号( A)A. & B.; C. +6、下列选项中,哪一个是合法的元素名?(A)A. TOMB.1JACK C.127、对于下面的代码<!ELEMENTPRODUCT(PRODUCTNAME,DESCRIPTION,PRICE,QUANTITY)>下列选项中,哪一个不是PRODUCT元素的子元素?( C )A.PRODUCTNAMEB. DESCRIPTIONC.NUMBERD.QUANTITY8、DTD文档中,定义属性的关键字是( A)。
使用XSL表现XML的几种方法
关键词 :可扩展标 记语言 ; 可扩展风格语言 ; 据岛; 数 转换
中圈分类号 :T 32 P 1 文献标识码 :A
T eS v rl to s P rom ML D t yU igX L h eea h d 恤 efr X Me aab s S n
gae可扩展 标识语言 ) ug, 越来 越成为一 个热 门的话 鼯。X L 由 W3 ( M 是 C 万维 阿联合组 织) 制定 的标 准, 它突破 了 H M T L固定标记集合 的约束 , 良好 的数 具有 据存储格式、 可扩展性 、 高度结构化 和便于 网络传输 等特点 , 而成为 了新 一代的 We 语言 。X 提供 从 b ML 了直接处理 数据 的通 用 方 法 , 为基 于 We b的应 用 提 供 一个描述 数 据和交 换数据 的有 效 手段 , 利于信 息 有 的表达和结构化组织 。因此 , 可以更好地满足网络时 代在电子商务、 远程教育、 据库与搜索引擎等领域 数
其 中 X L具 有 比 CS更加 强 大的功能 , S S 并且 X L S
本身也是一个 X L文件, M 因而学习 、 使用起来更加方
便。
1 X L介绍 S
X L 为 X L文件定义 的一种标记语言, S是 M 已于
20 年 1 01 0月正 式 成 为 W3 C的推 荐 标 准 。 一个 X L S
T g C i nvrt o G 0 既。 Wua 4 07 ,h a i . h aU i syf es ・ n e i 姻, ha 304 C i ) n
- c sm 吼 u e o aam田 e .X L aln u  ̄ f r x2 ig s h e d6 hi o s dfrd t 碍8 m 毗 S a g s o e l ̄ n k se b,
使用XSLT从XML生成PostScript
使用XSLT 从XML 生成PostScript使用XSLT 作为编译器常用缩写词∙CSS:层叠样式表(Cascading Stylesheet)∙JVM:Java 虚拟机(Java Virtual Machine)∙PDF:可移植文档格式(Portable Document Format)∙RTF:富文本格式(Rich Text Format)∙XHTML:可扩展超文本标记语言(Extensible Hypertext Markup Language)∙XML:可扩展标记语言(Extensible Markup Language)∙XSLT:可扩展样式表语言转换(Extensible Stylesheet Language Transformation)使用XSLT 可以将XML 数据转换成任意的其他数据格式。
通常XSLT 被视为XML 到XML 的转换语言,它以XML 文档为输入并将其转换为其他XML 结构(包括XHTML),但是它实际上可用于生成任意输出,而不仅仅是XML。
在考虑这种方法时,XSLT 样式表实际上是定义新语言的工具,并且可被视为语言编译器。
使用这种文字编译器似乎可能有些古怪。
通常,编译器被视为把人类可读代码转换为机器语言或虚拟机字节码的程序,但是一般意义上的编译器只是一个转换器:把一种语言编译成另一种语言。
目标语言通常为二进制格式(如机器代码),但不总是这种格式。
从这个角度讲,XSLT 是一项编译器技术。
XSLT 样式表将隐式定义一种新语言,XML 方言(XML dialect),它将编译为不同的形式,可以是其他XML 方言或其他语言。
以XSLT 作为编译器的这个概念为例,如果需要通过XML 生成Java™ 代码,假定需要生成Java bean 作为对象-关系映射系统的一部分,您可以使用XSLT 完成此操作。
Java bean 是带有默认构造函数(不获取参数的构造函数)的Java 类,它将公开允许调用者读取和设置对象属性的getter和setter方法。
xsltproc用法
xsltproc是一个应用XSLT样式表到XML文档的工具,它是libxslt的一部分。
以下是xsltproc的一些基本用法:1.将XML文件转换为HTML:使用xsltproc将XML文件转换为HTML文件,可以使用以下命令:xsltproc input.xml output.html stylesheet.xsl其中,input.xml是要转换的XML文件,output.html是转换后的HTML 文件,stylesheet.xsl是用于转换的XSLT样式表。
2.将XML文件转换为XHTML:要将XML文件转换为XHTML,可以使用以下命令:xsltproc input.xml output.xht stylesheet.xsl其中,input.xml是要转换的XML文件,output.xht是转换后的XHTML 文件,stylesheet.xsl是用于转换的XSLT样式表。
3.将XML文件转换为XML:如果你想将一个XML文件转换为另一个XML文件,可以使用以下命令:xsltproc input.xml output.xml stylesheet.xsl其中,input.xml是要转换的XML文件,output.xml是转换后的XML文件,stylesheet.xsl是用于转换的XSLT样式表。
4.将XML文件转换为PDF:要将XML文件转换为PDF,可以使用以下命令:xsltproc input.xml output.pdf stylesheet.xsl其中,input.xml是要转换的XML文件,output.pdf是转换后的PDF文件,stylesheet.xsl是用于转换的XSLT样式表。
这些是xsltproc的一些基本用法。
你可以根据需要使用不同的XSLT样式表和输入/输出文件名来执行不同的转换操作。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
昆明理工大学信息工程与自动化学院学生实验报告
(2013—2014学年第二学期)
课程名称:XML编程技术开课实验室:信自楼444 2014 年4 月 28 日
一、实验目的
(1)掌握链接XSL到XML文档的方法。
(2)学会编写简单的XSL文件。
(3)学会使用CSS显示XML。
要求:<NAME>标记内容显示黑色加粗,<PRICE>标记内容红色显示。
二、实验设备
一台PC机以及EditPlus软件
三、实验内容
(1)根据下述XML文档,编写XSL样式表,要求其显示效果如图5-9所示。
<?xml version="1.0" encoding="GB2312"?>
<BOOKS>
<BOOK>
<NAME ISBN="B101">VB编程</NAME>
<PUBLISHER>机械工业出版社</PUBLISHER>
<PRICE>¥68</PRICE>
<DESCRIPTION>VB控件</DESCRIPTION>
<STATUS>在库</STATUS>
</BOOK>
<BOOK>
<NAME ISBN="B102">XML开发指南</NAME> <PUBLISHER>电子工业出版社</PUBLISHER> <PRICE>¥34</PRICE>
<DESCRIPTION>DTDXML</DESCRIPTION>
<STATUS>已借阅</STATUS>
</BOOK>
<BOOK>
<NAME ISBN="B103">JAVA</NAME>
<PUBLISHER>电子工业出版社</PUBLISHER> <PRICE>¥42</PRICE>
<DESCRIPTION>概念语法</DESCRIPTION>
<STATUS>在库</STATUS>
</BOOK>
<BOOK>
<NAME ISBN="B104"></NAME>
<PUBLISHER>人民邮电出版社</PUBLISHER> <PRICE>¥72</PRICE>
<DESCRIPTION>语法控件</DESCRIPTION>
<STATUS>已借阅</STATUS>
</BOOK>
</BOOKS>
BOOKS
图5-9 显示效果图
(2)CSS样式表要求:<NAME>标记内容显示黑色加粗,<PRICE>标记内容红色显示。
四、实验步骤
(1)新建一个XSL文档。
(2)输入如下文本:
<?xml version="1.0" encoding="gb2312"?>
<xsl:stylesheet version="1.0" xmlns:xsl="/1999/XSL/Transform">
<xsl:output method="html" encoding="gb2312"/>
<xsl:template match="/">
<html>
<head>
<title>BOOKS</title>
</head>
<body>
<h2 align="center">BOOKS</h2>
<xsl:apply-templates select="BOOKS"/>
</body>
</html>
</xsl:template>
<xsl:template match="BOOKS">
<table border="1" cellspacing="0" align="center">
<tr><th>NAME</th><th>PUBLISHER</th><th>PRICE</th><th>DESCRIPTION</th><th>S TATUS</th></tr>
<xsl:for-each select="BOOK">
<tr>
<td><xsl:value-of select="NAME"/></td>
<td><xsl:value-of select="PUBLISHER"/></td>
<td><xsl:value-of select="PRICE"/></td>
<td><xsl:value-of select="DESCRIPTION"/></td>
<td><xsl:value-of select="STATUS"/></td>
</tr>
</xsl:for-each>
</table>
</xsl:template>
</xsl:stylesheet>
(3)输入完成后,选择“文件”→“保存”菜单命令,保存文档,文档名为“实验.xsl”。
(4)打开编辑软件(Editplus),创建题目中所给的XML文档,步骤略。
(5)在所创建的XML文档的声明语句之后,添加如下语句:
<?xml-stylesheet type="text/xsl" href="实验.xsl"?>
(6)保存XML文档,并在浏览器中浏览,观察显示效果是否与题目中给出的效果一致。
(7)编写CSS样式表,要求:<NAME>标记内容显示黑色加粗,<PRICE>标记内容红色显示。
(8)在所创建的XML文档的声明语句之后,添加如下语句:
<?xml-stylesheet type="text/css" href="实验.css"?>
(9)保存XML文档,并在浏览器中浏览,观察显示效果。
五、实验程序
(1)XML文档
(2)XSL文档
(3)CSS文档
六、实验结果
实验结果截图:
(1)链接XSL到XML文档
(2)CSS显示XML文档
总结:
通过本实验让我有了以下收获:
1)在做本实验的过程中使我对xml的主要技术有了一个比较充分的理解。
2)通过实际操作本实验让我掌握了使用xml文档来设计简单的样式表。
3)在做本实验的过程中比较使用了css样式表设计和xsl样式表的异同点,这对我理解各种样式表的制作方法有了一个深刻的理解。
4)在本实验的过程中学会使用了css定义XML文档元素的显示效果,并且了解了该样式表的各属性的使用和了解了各属性的一般效果。
5)在实验过程中要对各样式表语言的语法定义方式要有充分的理解,否则很容易出错,还有就是要对各标记语言的写法一定要正确,再就是一定要注意标点符号的中英文形式一定不能出错,否则样式表效果显示不出来,也就是出错了。