欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

什么是XSL?

互聯(lián)網(wǎng)   發(fā)布時(shí)間:2008-10-17 20:15:51   作者:佚名   我要評(píng)論
相關(guān)文章:什么是XML XSL(EXtensible Stylesheet Language)它是指可擴(kuò)展樣式表語(yǔ)言。 XSL之于 XML 就像 CSS 之于 HTML。說(shuō)白了就是將XML中的數(shù)據(jù)用指定的顯示格式輸出.XML不像HTML,它不包含任何顯示格式的信息.XSL 包含兩個(gè)部分: XSLT – 用于轉(zhuǎn)換 XML

相關(guān)文章:什么是XML
XSL(EXtensible Stylesheet Language)它是指可擴(kuò)展樣式表語(yǔ)言。 XSL之于 XML 就像 CSS 之于 HTML。說(shuō)白了就是將XML中的數(shù)據(jù)用指定的顯示格式輸出.XML不像HTML,它不包含任何顯示格式的信息.XSL 包含兩個(gè)部分:
XSLT – 用于轉(zhuǎn)換 XML 文檔的語(yǔ)言. XSLT 是指 XSL 轉(zhuǎn)換 (XSL Transformation) XPath – 用于在 XML 文檔中導(dǎo)航的語(yǔ)言
XSL 語(yǔ)法 任何 XSL 文檔的第一行實(shí)際上都是 XML 聲明:

<?xml version="1.0" encoding="GB2312"?>
XSL 與 XML ?遵循相同的語(yǔ)法規(guī)則
在 XML 聲明之后,就是 XSL 聲明,例如:

<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
......
</xsl:stylesheet>
XSL聲明必須要有結(jié)束標(biāo)簽,上面的聲明中還包含命名空間和 XSL 規(guī)范的版本。
什么是命名空間
它指定一組可以在特定文檔中使用的元素名稱和屬性名稱。命名空間的作用是避免命名沖突。由于 XML 和其它與 XML 相關(guān)的語(yǔ)言都是用戶定義的,所以可能出現(xiàn)命名沖突。<table>可能是指一個(gè)布局或是一個(gè)座位。由于大多數(shù)應(yīng)用程序同時(shí)處理多個(gè) XML 文檔,因此經(jīng)常會(huì)有不同 XML 文檔相混合的情況,而在這些文檔中某個(gè)元素可能代表不同的含義。幾個(gè)文檔使用相同的命名空間可以確保元素在每個(gè)文檔中代表相同含義。否則,就應(yīng)該使用不同的命名空間確保元素代表不同的含義。
命名空間由文檔聲明中的 xmlns 屬性指定,實(shí)際上就是網(wǎng)站的地址(例如 http://www.w3.org/1999/XSL/Transform)。其基本原理是 URI 具有唯一性,因此相應(yīng)的命名空間也是唯一的。文檔聲明中的 URI 僅用作名稱。
模板或規(guī)則
XSL 文檔是由模板或規(guī)則構(gòu)成,每個(gè)模板定義應(yīng)用于特定 XML 節(jié)點(diǎn)的規(guī)則。XSL 模板如下所示:

<xsl:template match="/">......</xsl:template> 模板的作用是用來(lái)承載XML文檔中的數(shù)據(jù)的,就像一個(gè)模具,如果這個(gè)模具是方形的,那么用這個(gè)模具做出來(lái)的模型也一定是方形的,而XML文檔中的數(shù)據(jù)就是用來(lái)真充模具的原料。實(shí)際上在模板中可以嵌套子模板,但最上層模板必須將match設(shè)為"/"。
happyold.xml

<?xml version="1.0" encoding="GB2312"?>
<俱樂(lè)部>
<會(huì)員>
<姓名>cnbruce </姓名>
<年齡>10 </年齡>
<性別>男 </性別>
<描述>他是一個(gè)糟糕的家伙!</描述>
</會(huì)員>
<會(huì)員>
<姓名>yufuzi</姓名>
<年齡>80 </年齡>
<性別>男 </性別>
<描述>他是一個(gè)優(yōu)秀的男人!</描述>
</會(huì)員>
<會(huì)員>
<姓名>xiaojin</姓名>
<年齡>20 </年齡>
<性別>男 </性別>
<描述>他人品有問(wèn)題!</描述>
</會(huì)員>
</俱樂(lè)部>

循環(huán)構(gòu)造

<xsl:for-each select="...">......</xsl:for-each> 與典型的 for 循環(huán)作用相同。
old.xsl

<?xml version="1.0" encoding="GB2312"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:template match="/">
<table border="1">
<tr>
<th>姓名</th>
<th>年齡</th>
<th>性別</th>
<th>描述</th>
</tr>
<xsl:for-each select="俱樂(lè)部/會(huì)員">
<tr>
<!--表達(dá)式為何不需要包括父節(jié)點(diǎn)或從文檔根開始。這是因?yàn)檫@些元素的路徑是根據(jù) <xsl:for-each> 構(gòu)造中的 XPath 表達(dá)式來(lái)計(jì)算的-->
<td><xsl:value-of select="姓名"/></td>
<td><xsl:value-of select="年齡"/></td>
<td><xsl:value-of select="性別"/></td>
<td><xsl:value-of select="描述"/></td>
</tr>
</xsl:for-each>
</table>
</xsl:template>
</xsl:stylesheet>
將old.xsl與happyold.xml放到同一文件夾下,然后在happyold.xml第二行插隊(duì)入

<?xml-stylesheet type="text/xsl" href="old.xsl"?> 然后在瀏覽器中預(yù)覽一下顯示結(jié)果。
使用循環(huán)構(gòu)造,還可以根據(jù)條件過(guò)濾輸出。假設(shè)只想顯示會(huì)員中年齡大于30的會(huì)員。
old30.xsl

<?xml version="1.0" encoding="GB2312"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:template match="/">
<table border="1">
<tr>
<th>姓名</th>
<th>年齡</th>
<th>性別</th>
<th>描述</th>
</tr>
<xsl:for-each select="俱樂(lè)部/會(huì)員[年齡>30]">
<tr>
<td><xsl:value-of select="姓名"/></td>
<td><xsl:value-of select="年齡"/></td>
<td><xsl:value-of select="性別"/></td>
<td><xsl:value-of select="描述"/></td>
</tr>
</xsl:for-each>
</table>
</xsl:template>
</xsl:stylesheet>
要定義 XML 節(jié)點(diǎn)的條件,可以使用下列任何運(yùn)算符:

等于 (=)
不等于 (!=)
小于 (<)
小于或等于 (<=)
大于 (>)
大于或等于 (>=)

使用<xsl:sort / >構(gòu)造使輸出的結(jié)果按指定的節(jié)點(diǎn)進(jìn)行排序,<xsl:sort /> 元素必須嵌套在 <xsl:for-each > 元素中,以確保應(yīng)用程序可以循環(huán)通過(guò)所有的項(xiàng)目。sort 元素沒(méi)有相應(yīng)的結(jié)束標(biāo)簽,所以在其結(jié)尾加上"/"使其自結(jié)束。
old_sort.xsl

<?xml version="1.0" encoding="GB2312"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:template match="/">
<table border="1">
<tr>
<th>姓名</th>
<th>年齡</th>
<th>性別</th>
<th>描述</th>
</tr>
<xsl:for-each select="俱樂(lè)部/會(huì)員">
<xsl:sort select="年齡" order="descending"/>
<tr>
<td><xsl:value-of select="姓名"/></td>
<td><xsl:value-of select="年齡"/></td>
<td><xsl:value-of select="性別"/></td>
<td><xsl:value-of select="描述"/></td>
</tr>
</xsl:for-each>
</table>
</xsl:template>
</xsl:stylesheet>
去掉order="descending"再看看顯示結(jié)果。
條件構(gòu)造:

<xsl:choose>
<xsl:when test="表達(dá)式">
</xsl:when>
<xsl:otherwise>
</xsl:otherwise>
</xsl:choose>
條件構(gòu)造中可以有多個(gè)when,但只能有一個(gè)otherwise,用于處理未包括在初始測(cè)試條件中的所有其它情況.
old_choose.xsl

<?xml version="1.0" encoding="GB2312"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:template match="/">
<table border="1">
<tr>
<th>姓名</th>
<th>年齡</th>
<th>性別</th>
<th>描述</th>
</tr>
<xsl:for-each select="俱樂(lè)部/會(huì)員">
<xsl:choose>
<xsl:when test="年齡 > 70">
<tr bgcolor="#66CCFF">
<td><xsl:value-of select="姓名"/></td>
<td><xsl:value-of select="年齡"/></td>
<td><xsl:value-of select="性別"/></td>
<td><xsl:value-of select="描述"/></td>
</tr>
</xsl:when>
<xsl:when test="年齡=10">
<tr bgcolor="blue">
<td><xsl:value-of select="姓名"/></td>
<td><xsl:value-of select="年齡"/></td>
<td><xsl:value-of select="性別"/></td>
<td><xsl:value-of select="描述"/></td>
</tr>
</xsl:when>
<xsl:otherwise>
<tr bgcolor="red">
<td><xsl:value-of select="姓名"/></td>
<td><xsl:value-of select="年齡"/></td>
<td><xsl:value-of select="性別"/></td>
<td><xsl:value-of select="描述"/></td>
</tr>
</xsl:otherwise>
</xsl:choose>
</xsl:for-each>
</table>
</xsl:template>
</xsl:stylesheet>

相關(guān)文章

  • MIME類型中application/xml與text/xml的區(qū)別介紹

    這篇文章介紹了MIME類型中application/xml與text/xml的區(qū)別,對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-12-28
  • 詳解XML中的模式Schema

    XML中擁有Schema特性,能夠比DTD更加強(qiáng)大地引入元素結(jié)構(gòu),下面我們就來(lái)詳解XML中的模式Schema的概念及作用和用法,需要的朋友可以參考下
    2021-11-30
  • XML基本概念入門學(xué)習(xí)指南

    這篇文章主要介紹了XML基本概念入門學(xué)習(xí)指南,包括其與HTML的關(guān)系以及元素和特殊標(biāo)簽等,需要的朋友可以參考下
    2016-06-24
  • XML中的DTD文檔類型定義完全解析

    XML標(biāo)簽的自定義功能非常強(qiáng)大,比如本文將要講解的DTD(Document Type Definition)就帶給人們一種面向?qū)ο蟀愕母杏X(jué),well,下面就來(lái)看一下XML中的DTD文件類型定義完全解析
    2016-06-24
  • 簡(jiǎn)介XML文檔的閱讀與編輯

    這篇文章主要介紹了XML文件的閱讀與編輯,最常用的工具當(dāng)然還是瀏覽器中的控制臺(tái)與源代碼查看,需要的朋友可以參考下
    2016-02-16
  • 簡(jiǎn)單了解XML中的命名空間

    這篇文章主要介紹了XML的命名空間,包括命名空間的聲明等XML入門學(xué)習(xí)中的基礎(chǔ)知識(shí),需要的朋友可以參考下
    2016-02-16
  • 解析XML中的樹形結(jié)構(gòu)與DOM文檔對(duì)象模型

    這篇文章主要介紹了XML中的樹形結(jié)構(gòu)與DOM文檔對(duì)象模型,文中舉了JavaScript解析DOM對(duì)象的例子,需要的朋友可以參考下
    2016-02-15
  • 詳解XML編程中的模式定義XSD

    這篇文章主要介紹了詳解XML編程中的模式定義XSD,講解了如何在XML文檔中聲明模式及定義類型等內(nèi)容,需要的朋友可以參考下
    2016-02-15
  • 深入解析XML中的DTD文檔類型定義

    這篇文章主要介紹了XML中的DTD文檔類型定義,是XML入門學(xué)習(xí)中的基礎(chǔ)知識(shí),需要的朋友可以參考下
    2016-02-15
  • 淺談XML代碼編寫的編碼與驗(yàn)證問(wèn)題

    這篇文章主要介紹了XML代碼編寫的編碼與驗(yàn)證問(wèn)題,與HTML類似,XML文件的編碼也能在序言部分被指定,需要的朋友可以參考下
    2016-02-15

最新評(píng)論