什么是?

http://www.w3school.com.cn/xsl/xsl_intro.asp

XSLT 是一种用于将 XML 文档转换为 XHTML 文档或其他 XML 文档的语言。

XPath 是一种用于在 XML 文档中进行导航的语言。

什么是 XSLT?

  • XSLT 指 XSL 转换(XSL Transformations)。
  • XSLT 是 XSL 中最重要的部分。
  • XSLT 可将一种 XML 文档转换为另外一种 XML 文档。
  • XSLT 使用 XPath 在 XML 文档中进行导航。
  • XPath 是一个 W3C 标准。

为什么?

XML数据文件具有结构性, 但是仍然是面向机器的, 不是面向人类阅读的。

http://www.w3school.com.cn/xsl/xsl_transformation.asp

例如:

在 Internet Explorer 和 Firefox 中查看 XML 文件:

打开 XML 文件(通常通过点击某个链接) - XML 文档会以颜色化的代码方式来显示根元素及子元素。点击元素左侧的加号或减号可展开或收缩元素的结构。如需查看原始的XML源文件(不带有加号和减号),请在浏览器菜单中选择“查看页面源代码”。

在 Netscape 6 中查看 XML 文件:

打开 XML 文件,然后在 XML 文件中右击,并选择“查看页面源代码”。XML文档会以颜色化的代码方式来显示根元素及子元素。

在 Opera 7 中查看 XML 文件:

打开 XML 文件,然后在XML文件中右击,选择“框架”/“查看源代码”。XML文档将显示为纯文本。

怎么做?

demo

https://github.com/manasnist2005/XSLTDemo/tree/master/XSLTDemo

<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="Students_Import.xslt"?>
<class>
<student rollno="393">
<firstname specialId="1">Dinkar</firstname>
<lastname>Kad</lastname>
<nickname>Dinkar</nickname>
<gender>Male</gender>
<marks>85</marks>
</student>
<student rollno="493">
<firstname specialId="2">Vaneeta</firstname>
<lastname>Gupta</lastname>
<nickname>Vinni</nickname>
<gender>Female</gender>
<marks>95</marks>
</student>
<student rollno="593">
<firstname specialId="3">Jasvir</firstname>
<lastname>Singh</lastname>
<nickname>Jazz</nickname>
<gender>Male</gender>
<marks>90</marks>
</student>
<student rollno="693">
<firstname specialId="4">Hemlata</firstname>
<lastname>Sahu</lastname>
<nickname>Hema</nickname>
<gender>Female</gender>
<marks>68</marks>
</student>
<student rollno="793">
<firstname specialId="5">Tanushree</firstname>
<lastname>Dutta</lastname>
<nickname>Tanu</nickname>
<gender>Female</gender>
<marks>72</marks>
</student>
<student rollno="893">
<firstname specialId="6">Manoj</firstname>
<lastname>Sharma</lastname>
<nickname>Manu</nickname>
<gender>Male</gender>
<marks>75</marks>
</student>
</class>

xslt

<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:msxsl="urn:schemas-microsoft-com:xslt" exclude-result-prefixes="msxsl">
<xsl:key name="firstname-search" match="student" use="firstname"/>
<xsl:template match="/">
<html>
<body>
<h2>Show all Students</h2>
<table border="1">
<tr bgcolor="#9acd32">
<th style="text-align:left">Roll Number</th>
<th style="text-align:left">First Name</th>
<th style="text-align:left">Last Name</th>
<th style="text-align:left">Nick Name</th>
<th style="text-align:left">Marks</th>
<th style="text-align:left">Gender</th>
</tr>
<xsl:for-each select="class/student">
<tr>
<td>
<xsl:value-of select="@rollno"/>
</td>
<td>
<xsl:value-of select="firstname"/>
</td>
<td>
<xsl:value-of select="lastname"/>
</td>
<td>
<xsl:value-of select="nickname"/>
</td>
<td>
<xsl:value-of select="marks"/>
</td>
<td>
<xsl:value-of select="gender"/>
</td>
</tr>
</xsl:for-each>
</table>
</body>
</html>
</xsl:template>
</xsl:stylesheet>

参考

http://www.w3school.com.cn/xsl/xsl_w3celementref.asp

  描述 IE N
apply-imports 应用来自导入样式表中的模版规则。 6.0  
apply-templates 向当前元素或当前元素的子元素应用模板。 5.0 6.0
attribute 向元素添加属性。 5.0 6.0
attribute-set 创建命名的属性集。 6.0 6.0
call-template 调用一个指定的模板。 6.0 6.0
choose 与<when>以及<otherwise>协同使用,来表达多重条件测试。 5.0 6.0
comment 在结果树中创建注释节点。 5.0 6.0
copy 创建当前节点的一个备份(无子节点及属性)。 5.0 6.0
copy-of 创建当前节点的一个备份(带有子节点及属性)。 6.0 6.0
decimal-format 定义当通过 format-number() 函数把数字转换为字符串时,所要使用的字符和符号。 6.0  
element 在输出文档中创建一个元素节点。 5.0 6.0
fallback 假如处理器不支持某个XSLT元素,规定一段备用代码来运行。 6.0  
for-each 遍历指定的节点集中的每个节点。 5.0 6.0
if 包含一个模板,仅当某个指定的条件成立时应用此模板。 5.0 6.0
import 用于把一个样式表中的内容倒入另一个样式表中。 6.0 6.0
include 把一个样式表中的内容包含到另一个样式表中。 6.0 6.0
key 声明一个命名的键。 6.0 6.0
message 向输出写一条消息(用于错误报告)。 6.0 6.0
namespace-alias 把样式表中的命名空间替换为输出中不同的命名空间。 6.0  
number 测定当前节点的整数位置,并对数字进行格式化。 6.0 6.0
otherwise 规定 <choose> 元素的默认动作。 5.0 6.0
output 定义输出文档的格式。 6.0 6.0
param 声明一个局部或全局参数。 6.0 6.0
preserve-space 用于定义保留空白的元素。 6.0 6.0
processing-instruction 生成处理指令节点。 5.0 6.0
sort 对结果进行排序。 6.0 6.0
strip-space 定义应当删除空白字符的元素。 6.0 6.0
stylesheet 定义样式表的根元素。 5.0 6.0
template 当指定的节点被匹配时所应用的规则。 5.0 6.0
text 通过样式表生成文本节点。 5.0 6.0
transform 定义样式表的根元素。 6.0 6.0
value-of 提取选定节点的值。 5.0 6.0
variable 声明局部或者全局的变量。 6.0 6.0
when 规定 <choose> 元素的动作。 5.0 6.0
with-param 规定需被传入某个模板的参数的值。 6.0 6.0

XSLT简介的更多相关文章

  1. XSLT学习

    XSL 语言 XSL(eXtensible Stylesheet Language)是可扩展样式表语言,是一种用于以可读格式呈现 XML(标准通用标记语言的子集)数据的语言. XSL与xml CSS ...

  2. [XML123] XSLT

    XSLT简介 http://www.w3school.com.cn/xsl/index.asp XSLT测试 http://www.veryhuo.com/down/html/54703.html

  3. Spring 框架的架包分析、功能作用、优点,及jar架包简介

    Spring 框架的架包详解    Spring的作用     Spring的优势  由于刚搭建完一个MVC框架,决定分享一下我搭建过程中学习到的一些东西.我觉得不管你是个初级程序员还是高级程序员抑或 ...

  4. Struts2核心技术简介

    Struts2核心技术简介 使用Struts2框架,只要注重以下三大元素:配置文件.映射文件和Action: 全局属性文件struts.properties:保存系统运行的一些参数变量,整个系统只有一 ...

  5. XML简介

    xml的简介(了解) * eXtensible Markup Language:可扩展标记型语言                       ** 标记型语言:html是标记型语言          ...

  6. XML 参考:XML基础 XML 简介

    XML 参考:XML基础 -- XML简介和用途 转:http://www.cnblogs.com/Dlonghow/archive/2009/01/22/1379799.html XML 参考:XM ...

  7. XSLT

    一.简介 XSLT 是一种用于将 XML 文档转换为 XHTML 文档或其他 XML 文档的语言. XSL(eXtensible Stylesheet Language) -- 可扩展标记语言,主要用 ...

  8. Nutch搜索引擎(第2期)_ Solr简介及安装

    1.Solr简介 Solr是一个高性能,采用Java5开发,基于Lucene的全文搜索服务器.同时对其进行了扩展,提供了比Lucene更为丰富的查询语言,同时实现了可配置.可扩展并对查询性能进行了优化 ...

  9. dom4j API使用简介

    dom4j API使用简介 功能简介 dom4j是一个Java的XML API,类似于jdom,用来读写XML文件的.dom4j是一个非常非常优秀的Java XML API,具有性能优异.功能强大和极 ...

随机推荐

  1. 如何在IntelliJ IDEA删除Project

    1.直接从菜单 File -> Close Project 关掉此项目,回到欢迎界面 2.在欢迎界面中,鼠标移到你想要删除的项目上(不要点击,一点就打开了),然后按DELETE键即可删除

  2. OpenCv Mat操作总结

    Author:: Maddock Date: 2015-03-23 16:33:49 转载请注明出处:http://blog.csdn.net/adong76/article/details/4053 ...

  3. Monitoring Processes with Supervisord

    If you're interested in more of this type of content, check out the Servers for Hackers eBook! As so ...

  4. oj Rapid Typing

    import bs4 import requests import urllib2 import time import base64 session=requests.Session() respo ...

  5. <base>元素

    HTML <base> 元素 <base> 标签描述了基本的链接地址/链接目标,该标签作为HTML文档中所有的链接标签的默认链接: <head><base h ...

  6. ArcGIS 10与ArcEngine 10安装及破解

    1 2 3 4 5 分步阅读 一键约师傅 百度师傅高质屏和好师傅,拯救你的碎屏机 百度经验:jingyan.baidu.com 现在常见的破解方法在下面的地址中已经详细附图说明了,但是这种破解方法,想 ...

  7. 如何预览将要上传的图片-使用H5的FileAPI

    这篇将要说的东西已经不新鲜了. 参考资料: Reading files in JavaScript using the File APIs (鉴于作者在美国, 我姑且认为作者母语是英语, 当然链接中有 ...

  8. an excellent capability of C# language and compiler

    Sometimes you want to write code that works for different primitive types, and as C# doesn't support ...

  9. 【JAVA】 UIMnager

    Java'中的几种Look and Feel 1.Metal风格 (默认) String lookAndFeel = "javax.swing.plaf.metal.MetalLookAnd ...

  10. NSMutableAttributedString常用代码

    NSTextAttachment *attachment = [[NSTextAttachment alloc] init]; attachment.image = [UIImage imageNam ...