05EXtensible Stylesheet Language
1. EXtensible Stylesheet Language
1. EXtensible Stylesheet Language
XSL 指扩展样式表语言(EXtensible Stylesheet Language)XSL 包括三部分:XSLT一种用于转换 XML 文档的语言。XPath一种用于在 XML 文档中导航的语言。XSL-FO一种用于格式化 XML 文档的语言。XSLT 指 XSL 转换(XSL Transformations)。XSLT (eXtensible Stylesheet Language Transformations) 远比 CSS 更加完善。
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
<xs:element name="BOOKS">
<xs:annotation>
<xs:documentation>Comment describing your root element</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element ref="BOOK" minOccurs="1" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="BOOK">
<xs:complexType>
<xs:sequence>
<xs:element name="NUMBER" type="xs:int"/>
<xs:element name="TITLE" type="xs:string"/>
<xs:element name="AUTHOR" type="xs:string"/>
<xs:element name="PAGE" type="xs:int"/>
<xs:element name="PRICE" type="xs:decimal"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
<?xml version="1.0" encoding="gb2312"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html" encoding="gb2312" doctype-public="-//W3C//DTD XHTML 1.0 Transitional//EN" doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"/>
<xsl:template match="/">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312"/>
<title>Untitled Document</title>
<style type="text/css">
.main{
width:700px;
margin:50px auto 10px auto;
border:#72A3D7 solid 1px;
font-size:12px;
font-family:Arial, Helvetica, sans-serif;
}
.top{
width:700px;
}
.bottom{
width:700px;
height:40px;
border-top:#72A3D7 solid 1px;
}
.title{
color:#FFFFFF;
font-size:12px;
height:22px;
}
.data_row{
height:22px;
}
</style>
</head>
<body>
<div class="main">
<div class="top">
<table width="700" cellspacing="1">
<TR class="title">
<th width="100">序号</th>
<TH>书名</TH>
<TH width="150">作者</TH>
<TH width="80">页码数</TH>
<th width="80">价格</th>
</TR>
<xsl:for-each select="BOOKS/BOOK">
<xsl:if test="NUMBER mod 2 = 0">
<TR class="data_row" bgcolor="#EFEFEF">
<td><xsl:value-of select="NUMBER"/></td>
<td><xsl:value-of select="TITLE"/></td>
<td><xsl:value-of select="AUTHOR"/></td>
<td><xsl:value-of select="PAGE"/></td>
<td><xsl:value-of select="PRICE"/></td>
</TR>
</xsl:if>
<xsl:if test="NUMBER mod 2 != 0">
<TR class="data_row">
<td><xsl:value-of select="NUMBER"/></td>
<td><xsl:value-of select="TITLE"/></td>
<td><xsl:value-of select="AUTHOR"/></td>
<td><xsl:value-of select="PAGE"/></td>
<td><xsl:value-of select="PRICE"/></td>
</TR>
</xsl:if>
</xsl:for-each>
</table>
</div>
<div class="bottom"></div>
</div>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="BOOKS.xsl"?>
<BOOKS xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="BOOKS.xsd">
<BOOK>
<NUMBER>0001</NUMBER>
<TITLE>DB</TITLE>
<AUTHOR>LUCY</AUTHOR>
<PAGE>200</PAGE>
<PRICE>30.5</PRICE>
</BOOK>
<BOOK>
<NUMBER>0002</NUMBER>
<TITLE>XML</TITLE>
<AUTHOR>JACKY</AUTHOR>
<PAGE>50</PAGE>
<PRICE>20.0</PRICE>
</BOOK>
<BOOK>
<NUMBER>0003</NUMBER>
<TITLE>HTML</TITLE>
<AUTHOR>LUCY</AUTHOR>
<PAGE>500</PAGE>
<PRICE>30.5</PRICE>
</BOOK>
<BOOK>
<NUMBER>0004</NUMBER>
<TITLE>SPRING</TITLE>
<AUTHOR>JACKY</AUTHOR>
<PAGE>20</PAGE>
<PRICE>20.0</PRICE>
</BOOK>
</BOOKS>
05EXtensible Stylesheet Language的更多相关文章
- XML 基础
linux下xml编辑器 vim gedit editix wonderful;免费30天;可以进行有效性检查 xerces oxygen 收费 xmlcopyedit serna free 是ser ...
- asp.net c# 网上搜集面试题目大全(附答案)
1.String str=new String("a")和String str = "a"有什么区别? String str = "a"; ...
- java常用英文解释
java常用名词解释: OO: object-oriented ,面向对象 OOP:object-oriented programming,面向对象编程 Author:JCC Object:对象JDK ...
- Java基础常见英语词汇
Java基础常见英语词汇(共70个) ['ɔbdʒekt] ['ɔ:rientid]导向的 ['prəʊɡræmɪŋ]编程 OO: object ...
- Pyhton开源框架(加强版)
info:Djangourl:https://www.oschina.net/p/djangodetail: Django 是 Python 编程语言驱动的一个开源模型-视图-控制器(MVC)风格的 ...
- Python开源框架
info:更多Django信息url:https://www.oschina.net/p/djangodetail: Django 是 Python 编程语言驱动的一个开源模型-视图-控制器(MVC) ...
- xml note
10. 两种不同的XML分析模型: DOM:所有数据位于内存 SAX:流程性分析,不必把所有数据Load到内存中,可分析大型的XML文件,常用于Servlet-side的XML-xhtml ...
- XML,DTD,XSD,XSL的区别
XML=可扩展标记语言(eXtensible Markup Language). 可扩展标记语言XML是一种简单的数据存储语言,使用一系列简单的标记描述数据,而这些标记可用 方便的方式建立,虽然XML ...
- IT软件开发常用英语词汇
Aabstract 抽象的abstract base class (ABC)抽象基类abstract class 抽象类abstraction 抽象.抽象物.抽象性access 存取.访问access ...
随机推荐
- python requests 调用restful api
#!/usr/bin/python# -*- coding: utf-8 -*- import jsonimport requestsfrom urlparse import urljoin BASE ...
- (转)Bootstrap中glyphicons-halflings-regular.woff字体报404错notfound
http://blog.xmaoseo.com/glyphicons-halflings-regular-woff-font-404-notfound/ 今天查看网站的源代码,发现有个glyphico ...
- Entity Framework 学习整理
MSDN: http://msdn.microsoft.com/en-us/data/aa937723 台湾博客: http://www.dotblogs.com.tw/yc421206/ http: ...
- 切换或者用户登录时 出现 显示 -bash-4.2$ 问题 的解决
集群的普通用户在登录用户或者切换用户时,出现 -bash-4.2$ 的状态: [goldwind@TR-OS-DB 9.4]#su postgres bash-4.2$ 原因:在linux下通过use ...
- bzoj 1863: [Zjoi2006]trouble 皇帝的烦恼【二分+dp】
二分答案,注意l是max(a[i]+a[i+1]),r是sum_a 判断的时候用dp,设f[i]为i与1最少的相同颜色数,g[i]为i与1最多的相同颜色数,转移是f[i]=max(a[i]-(w-a[ ...
- bzoj 3624: [Apio2008]免费道路【生成树+贪心】
先把水泥路建生成树,然后加鹅卵石路,这里加的鹅卵石路是一定要用的(连接各个联通块),然后初始化并查集,先把必需的鹅卵石路加进去,然后随便加鹅卵石路直到k条,然后加水泥路即可. 注意判断无解 #incl ...
- JavaScript中this的使用方法总结
JavaScript中this的使用方法总结 在JavaScript中,this的使用分为四种场景,具体请参考阮一峰老师关于this的讲解 第一种情况是纯函数使用 var x =1 ; functio ...
- LoadRunner12学习之路(1-5)
本次LoadRunner12学习用户指南,学习周期预计3天,每天学习1-2单元内容! 2017.12.17 一.使用HPE Web Tours示例应用程序 本教程使用 HPE Web Tours(一个 ...
- domain admin域管理员
当计算机加入到域后,默认将"Domain Admins"组赋予了本地系统管理员的权限.也就是说,在计算机添加到域,成为域的成员主机的过程中,系统将会自动把"Domain ...
- 窗口Dialog
Dialog是窗口的意思,它是Window的子类.与frame相比,frame是我们大的窗口,而dialog便是那种弹出来和你说话的对话框. Dialog类的默认布局是BorderLayout Dia ...