`
kavy
  • 浏览: 868282 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

XSL简介

 
阅读更多

XSL是指可扩展样式表语言 (EXtensible Stylesheet Language),是一种用于以可读格式呈现 XML 数据的语言。

目录

简介
语法
XSL 是否与 XML 相同
用途
应用

编辑本段简介

  XSL 之于 XML ,就像 CSS 之于 HTML。它是指可扩展样式表语言 (EXtensible Stylesheet Language)。这是一种用于以可读格式呈现 XML 数据的语言。   xsl是一种标记语言,表示如何将xml文档的内容装换成另一种形式的文档。   通过为xml写xsl来使得xml显示成不同的格式   XSL 实际上包含两个部分:   * XSLT – 用于转换 XML 文档的语言   * XPath – 用于在 XML 文档中导航的语言   XSLT 是指 XSL 转换 (XSL Transformation),它是 XSL 最重要的部分。   XSLT 可以将 XML 文档转换为其它 XML 文档、XHTML 输出或简单的文本。这通常是通过将每个 XML 元素转换为 HTML 元素来完成的。由于 XML 标签是用户定义的,浏览器不知道如何解释或呈现每个标签,因此必须使用 XSL。XML 标签的意义是为了方便用户(而不是计算机)理解。   XSLT 还可以对 XML 树进行下列操作:   * 添加和删除元素   * 添加和删除属性   * 对元素进行重新排列或排序   * 隐藏或显示某些元素   * 查找或选择特定元素

编辑本段语法

  您可能还记得 XML 概述文章中提到过,所有 XML 文档都是以 XML 声明开头。XSL 样式表也是一样。任何 XSL 文档的第一行实际上都是 XML 声明:   <?xml version="1.0" encoding="ISO-8859-1"?>

编辑本段XSL 是否与 XML 相同

  既是又不是。说是,是因为它们遵循相同的语法规则(只有少许差异,下面我将会讲到)。说不是,是因为它们的用途不同:XML 用于承载数据,而 XSL 则用于设置数据的格式。   在 XML 声明之后,就是 XSL 声明,例如:   <xsl:stylesheet>   或   <xsl:transform>   但是,在大多数实际情况下,XSL 声明看起来要稍微复杂一些:   <xsl:stylesheet xmlns:xsl="http://www w3 org/1999/XSL/Transform" version="1.0">   这是因为,根据 W3C 联盟的建议,它还包含命名空间和 XSL 规范的版本。   XSL 声明与 XML 声明的不同之处在于,XML 声明只写一行,而且没有结束标签,而 XSL 声明必须包含结束标签,该标签表示 XSL 样式表结束:   </xsl:stylesheet>   请注意,这并不与 XML 语法规则冲突:XSL 样式表是完全有效的 XML 文档,因为它有一个根元素,由 <xsl:stylesheet> 标签指定。

编辑本段用途

  XSL 在设计时有几个目标用途,这些用途使它成为某些开发情况下的完美解决方案,而对另一些开发情况则毫无用处。   XSL 专门用于处理 XML 文档,并且遵循 XML 语法。因此,它只能在支持 XML 的应用程序中与 XML 结合使用。最合适使用 XML 和 XSL 的情况是:Web 门户、新闻聚合器、社区网站或其它任何需要向各种设备及大量客户端提供信息的 Web 应用程序。   XSLT 是一种基于模式匹配的语言。它会查找匹配特定条件的节点,然后应用相应的规则。因此,它不具备大多数编程语言的计算能力。例如,XSL 无法在运行时更改变量的值。它不应该用于从使用复杂公式的动态数据源(例如在线商店)来计算值。Web 编程语言更适于此用途。   XSL 不能代替或补充 CSS。它不应(也不能)用于设置 HTML 的样式。但是,您可以将其用于需要频繁重新设计可视化效果、频繁更换布局以及以灵活格式处理数据的网站。   XSL 不是内容管理工具。它不应(也不能)用于更改 XML 文档的内容或者编辑信息。但是,您可以将 XML 和 XSL 用于需要处理几种不同格式文档的内容管理系统。   它起始于 XSL,结束于 XSLT、XPath 以及 XSL-FO。   起始于 XSL   XSL 指扩展样式表语言(EXtensible Stylesheet Language)。   万维网联盟 (W3C) 开始发展 XSL 的原因是:存在着对于基于 XML 的样式表语言的需求。   CSS = HTML 样式表   HTML 使用预先定义的标签,标签的意义很容易被理解。   HTML 元素中的 元素定义表格 - 并且浏览器清楚如何显示它。   向 HTML 元素添加样式是很容易的。通过 CSS,很容易告知浏览器用特定的字体或颜色显示一个元素。   XSL = XML 样式表   XML 不使用预先定义的标签(我们可以使用任何喜欢的标签名),并且这些标签的意义并不都那么容易被理解。   元素意味着一个 HTML 表格,一件家具,或是别的什么东西 - 浏览器不清楚如何显示它。   XSL 可描述如何来显示 XML 文档!   XSL - 不仅仅是样式表语言   XSL 包括三部分:   XSLT   一种用于转换 XML 文档的语言。   XPath   一种用于在 XML 文档中导航的语言。   XSL-FO   一种用于格式化 XML 文档的语言。

编辑本段应用

  数据库技术领域,具体为一种快速执行可扩展样式表单语言转换(XSLT)的方法。该方法首先通过构造转换树,将XML文档的结构信息和XSLT转换要求结构起来,然后从转换树建立流处理模型;扫描XML源文档,通过流处理模型,将一个XSLT转换程序转换成很多个事件处理器,对应于扫描过程中触发的每一类事件,都有一个对应的事件的输出片断被添加到已产生的结果文档后面;扫描结束后,即得到最终完整的结果文档。本发明方法完全避免了现有转换引擎需要预先将整个源文档载入内存的缺点,减少了内存消耗,大大提高了执行效率。即使对于非常大的XML数据,也能通过一趟扫描完成转换过程。    1、一种快速执行XSLT转换的方法,其特征在于通过一个流处理模型来执行XSLT转换,具体步骤如下:(1)首先通过构造转换树,将XML源文档的结构信息和XSLT转换要求结合起来,其步骤为:构造XML文档类型定义的DTD树T;考察XSLT转换程序L的每一条转换规则r,在T中找到r的匹配节点n;继续考察r的输出模板序列中的每一个元素o,如果o是一个常数字符串,为树T创建一个叶子节点n’,添加一条从n到n’的边;如果o是调用模板命令,从树T中找到o的选中节点n’,同样添加一条从n到n’的边;(2)从转换树建立流处理模型,它是一个递归过程,其步骤为:对转换树的任一节点n,end(n),start(n)初始值为空串;如果n是叶子节点,则令end(n):=pcdata+end(n);以c1,c2,...,cp表示节点n下面所有来自于DTD树的孩子节点,以d1,d2,...,dq表示节点n下面所有来自于XSLT转换程序的孩子节点,如果d1是一个常数字符串节点,则令start(n):=start(n)+d1,并且设置计数器i为2,否则,设置计数器i为1;当i不大于q的时候,重复以下步骤:假设c是位于从节点n到节点di这条路径上的n的孩子节点,如果从n到c的边没有被星号标记,并且di+1是常数串节点,则令end(c):=end(c)+di+1和i:=i+2,否则令i:=i+1;如果di+1是常数串节点,假设c′是位于从节点n到节点di+2这条路径上的n的孩子节点,则令start(c′):=di+1+start(c′)和i:=i+2,否则令i:=i+1;对每一个孩子节点dj,递归调用以上过程;(3)扫描XLM源文档,通过流处理模型,将一个XSLT转换程序转化成很多个事件处理器;在从头到尾读XML取源文档的过程中会触发很多事件,对每一类事件,都有一个对应的输出片断;最开始的时候,结果文档为空,随着对源文档的扫描过程的进行,相应事件的输出片断被逐渐添加到已产生的结果文档的后面;在扫描过程结束后,用户马上就可以得到最终完整的结果文档;其中,end(n)为元素结束事件的输出片段,start(n)为元素开始事件的输出片段,pcdata为当前叶子节点的PCDATA值。 [1]
分享到:
评论

相关推荐

    XSL-FO 教程

    XSL-FO 简介 XSL-FO 的简介。包括其概念和作用。 XSL-FO 文档 本章将解 XSL-FO 文档的结构。 XSL-FO 区域 本章讲解 XSL-FO 的区域模型(area model)。 XSL-FO 输出 本章讲解 XSL-FO 文档的输出元素(Output ...

    web开发之xml,xsl,Dom技术讲解

    学习xml xsl 以及dom的好帮手 5.1 XML 基础 5.2 XML文档的基本结构 5.3 用CSS在浏览器中控制XML文档的显示 5.4 用XSL控制XML文档内容在...5.9 XPATH、XLINK和XPOINTER简介 5.10 XML与数据库 5.11 XML的应用和发展前景

    ASP.NET3.5从入门到精通

    14.4.1 XSL 简介 14.4.2 使用XSLT 14.5 Web 服务(Web Service) 14.5.1 什么是Web 服务 14.5.2 Web 服务体系结构 14.5.3 Web 服务协议栈 14.6 简单Web Service 示例 14.7 自定义Web Service 18 第一篇 窗口与界面...

    ASP.NET 3.5 开发大全word课件

    14.4.1 XSL简介 14.4.2 使用XSLT 14.5 Web服务(Web Service) 14.5.1 什么是Web服务 14.5.2 Web服务体系结构 14.5.3 Web服务协议栈 14.6 简单Web Service示例 14.7 自定义Web Service 14.7.1 创建自定义的Web ...

    ASP.NET 3.5 开发大全11-15

    14.4.1 XSL简介 14.4.2 使用XSLT 14.5 Web服务(Web Service) 14.5.1 什么是Web服务 14.5.2 Web服务体系结构 14.5.3 Web服务协议栈 14.6 简单Web Service示例 14.7 自定义Web Service 14.7.1 创建自定义的Web ...

    ASP.NET 3.5 开发大全

    14.4.1 XSL简介 14.4.2 使用XSLT 14.5 Web服务(Web Service) 14.5.1 什么是Web服务 14.5.2 Web服务体系结构 14.5.3 Web服务协议栈 14.6 简单Web Service示例 14.7 自定义Web Service 14.7.1 创建自定义的Web ...

    ASPNET35开发大全第一章

    14.4.1 XSL简介 14.4.2 使用XSLT 14.5 Web服务(Web Service) 14.5.1 什么是Web服务 14.5.2 Web服务体系结构 14.5.3 Web服务协议栈 14.6 简单Web Service示例 14.7 自定义Web Service 14.7.1 创建自定义的Web ...

    ASP.NET 3.5 开发大全1-5

    14.4.1 XSL简介 14.4.2 使用XSLT 14.5 Web服务(Web Service) 14.5.1 什么是Web服务 14.5.2 Web服务体系结构 14.5.3 Web服务协议栈 14.6 简单Web Service示例 14.7 自定义Web Service 14.7.1 创建自定义的Web ...

    xml+xsl+css+dtd书写的个人网页

    用于完整的项目代码,完整的dtd,拥有精美的页面设计,严谨的页面布局

    XML_XSL_DTD_SCHEMA_SAX_DOM_JDOM_WEBSERVICE简介.pdf

    XML_XSL_DTD_SCHEMA_SAX_DOM_JDOM_WEBSERVICE简介.pdf

    XMl实用大全(资料全易学习)

    第一部分 XML简介 9 第1章 XML概览 9 1.1 什么是XML 10 1.1.1 XML是元标记语言 10 1.1.2 XML描述的是结构和语义,而不是格式化 10 1.2 为什么开发人员对XML感到激动 13 1.2.1 设计与特定领域有关的标记语言 13 1.2.2...

    xml实用大全和轻松学习手册和无废话xml

    14.9.3 使用xsl:attribute将特性插入到输出文档中 476 14.9.4 定义特性集合 477 14.9.5 使用xsl:pi生成处理指令 478 14.9.6 使用xsl:comment生成注释 478 14.9.7 使用xsl:text生成文本 479 14.10 使用xsl:copy复制...

    XML实用大全(web开发必备手册)

    第一部分 XML简介... 9 第1章 XML概览... 9 1.1 什么是XML. 10 1.1.1 XML是元标记语言... 10 1.1.2 XML描述的是结构和语义,而不是格式化... 10 1.2 为什么开发人员对XML感到激动... 13 1.2.1 设计与特定领域...

    DREAMWEAVER与XML综合应用

    第6章介绍如何使用Dreamweaver可视化地创建XSL来格式化XML,以及使用XSL、处理程序、XSL模式语言、XSL查询语言等。第7章涉及名域的必要性、名域的声明及应用、名域的范畴以及预设的名域等。第8章首先概述一些有关DTD...

    JPGE 压缩易简算法说明

    压缩算法简介 1. 色彩模型 2. DCT (离散余弦变换) 3. 重排列 DCT 结果 4. 量化 5. 0 RLE 编码 6. 范式 Huffman 编码 7. DC 的编码

    XML 学习指南中文版(PDF)简介

    XML 学习指南中文版(PDF)简介 XML学习指南,极适合新手学习,其中样式表、处理指令和CDATA、DTD子集、级联样式表、XSL模版等XML基本知识都有详细介绍及教学,本书将有助你开发ASP.NET+XML网络程序时遇到的XML...

    《ASP.NET 2.0完全开发指南-基于VB》随书光盘

    第11章 XML、XML Schema和XSL 第12章 ASP.NET对XML的支持 第13章 标准控件高级技术 第14章 数据控件高级技术 第15章 母版页和导航 第16章 用户控件和自定义控件 第17章 组件和Web Services简介 第18章 系统环境:...

    XML实用大全----xml详细参考书

    第一部分 XML简介... 9 第1章 XML概览... 9 1.1 什么是XML. 10 1.1.1 XML是元标记语言... 10 1.1.2 XML描述的是结构和语义,而不是格式化... 10 1.2 为什么开发人员对XML感到激动... 13 1.2.1 设计与特定领域...

    XML编程综合资料库

    第一部分 XML简介... 9 第1章 XML概览... 9 1.1 什么是XML. 10 1.1.1 XML是元标记语言... 10 1.1.2 XML描述的是结构和语义,而不是格式化... 10 1.2 为什么开发人员对XML感到激动... 13 1.2.1 设计与特定领域...

    XML技术大作业(学生信息)

    要求:1)xml文件中应该包括文本内容、标记、属性、命名空间,混合标记等的内容 2)dtd文件应该有相应的结果抓图 3)xsl文件应用到规范中的常用技巧,例如模板调用、for-each、value-of、xsl标记等。 4)解析器结果...

Global site tag (gtag.js) - Google Analytics