首页 > 语言 > 关键词  > 教程最新资讯  > 正文

XSL基础教程第四章

2007-09-19 11:52 · 稿源:网页教学网

XSL索引

XSL可以用来对一个XML文档进行索引。

将索引信息放在哪里

现在重新看看在以前许多章节中都曾看到过的 XML文档:
 

以下为引用的内容:
    <?xml version="1.0"?>
  
    <CATALOG>
  
     <CD>
  
      <TITLE>Empire Burlesque</TITLE>
  
      <ARTIST>Bob Dylan</ARTIST>
  
      <COUNTRY>USA</COUNTRY>
  
      <COMPANY>Columbia</COMPANY>
  
      <PRICE>10.90</PRICE>
  
      <YEAR>1985</YEAR>
  
     </CD>
  
    .
  
    .
  
    .

  
要想将这个XML文件作为一个普通的HTML文件输出,并且同时对它进行索引,只需要在XSL文件中增加一个order-by 属性,如下:

<xsl:for-each select="CATALOG/CD" order-by="+ ARTIST">

order-by属性使用加号(+)或减号(-)来定义是使用升序还是降序,再用一个元素名称来定义排序的元素。

现在来看看经过轻微调整的XSL样式表(或在IE5中打开它):

以下为引用的内容:
    <?xml version='1.0'?>
  
    <xsl:stylesheet xmlns:xsl="https://www.w3.org/TR/WD-xsl">
  
    <xsl:template match="/">
  
     <html>
  
     <body>
  
      <table border="2" bgcolor="yellow">
  
       <tr>
  
        <th>Title</th>
  
        <th>Artist</th>
  
       </tr>
  
       <xsl:for-each select="CATALOG/CD"
  
       order-by="+ ARTIST">
  
       <tr>
  
        <td><xsl:value-of select="TITLE"/></td>
  
        <td><xsl:value-of select="ARTIST"/></td>
  
       </tr>
  
       </xsl:for-each>
  
      </table>
  
     </body>
  
     </html>
  
    </xsl:template>
  
    </xsl:stylesheet>

  
在浏览器中转换

以下是在浏览器中将XML文件转换成HTML所需要的简单代码:
  

以下为引用的内容:
    <html>
  
    <body>
  
    <script language="javascript">
  
    // Load XML
  
    var xml = new ActiveXObject("Microsoft.XMLDOM")
  
    xml.async = false
  
    xml.load("cd_catalog.xml")
  
    // Load the XSL
  
    var xsl = new ActiveXObject("Microsoft.XMLDOM")
  
    xsl.async = false
  
    xsl.load("cd_catalog_sort.xsl")
  
    // Transform
  
    document.write(xml.transformNode(xsl))
  
    </script>
  
    </body>
  
    </html>

  
如果使用的是Internet Explorer 5.0 或更高版本,请点击这里查看结果。

XSL过滤器查询

XSL可以用来过滤一个 XML 文件。

在哪里放置过滤器信息

现在重新看看你以前已经看过多次的XML文档:
  

以下为引用的内容:
    <?xml version="1.0"?>
  
    <CATALOG>
  
     <CD>
  
      <TITLE>Empire Burlesque</TITLE>
  
      <ARTIST>Bob Dylan</ARTIST>
  
      <COUNTRY>USA</COUNTRY>
  
      <COMPANY>Columbia</COMPANY>
  
      <PRICE>10.90</PRICE>
  
      <YEAR>1985</YEAR>
  
     </CD>
  
    .
  
    .
  
    .

  
要过滤XML文件,只需要为XSL文件中的for-each元素的选择属性增加一个过滤器,如下:
  
<xsl:for-each select="CATALOG/CD[ARTIST='Bob Dylan']">
  
合法的过滤器操作符是:
  
= 等于

!= 不等于

< 小于

> 大于

现在看看经过轻微调整的XSL样式表:
  

以下为引用的内容:
    <?xml version='1.0'?>
  
    <xsl:stylesheet xmlns:xsl="https://www.w3.org/TR/WD-xsl">
  
    <xsl:template match="/">
  
     <html>
  
     <body>
  
     <table border="2" bgcolor="yellow">
  
     <tr>
  
      <th>Title</th>
  
      <th>Artist</th>
  
     </tr>
  
     <xsl:for-each select="CATALOG/CD[ARTIST='Bob Dylan']">
  
     <tr>
  
      <td><xsl:value-of select="TITLE"/></td>
  
      <td><xsl:value-of select="ARTIST"/></td>
  
     </tr>
  
     </xsl:for-each>
  
     </table>
  
     </body>
  
     </html>
  
    </xsl:template>
  
    </xsl:stylesheet>

  
在浏览器中转换

以下是在浏览器中将XML文件转换成HTML所需要的简单代码:

以下为引用的内容:
  
    <html>
  
    <body>
  
    <script language="javascript">
  
    // Load XML
  
    var xml = new ActiveXObject("Microsoft.XMLDOM")
  
    xml.async = false
  
    xml.load("cd_catalog.xml")
  
    // Load the XSL
  
    var xsl = new ActiveXObject("Microsoft.XMLDOM")
  
    xsl.async = false
  
    xsl.load("cd_catalog_filter.xsl")
  
    // Transform
  
    document.write(xml.transformNode(xsl))
  
    </script>
  
    </body>
  
    </html>

  • 相关推荐
  • 大家在看
  • 腾讯云服务器12.12限时秒杀-1核2G首年50元

    腾讯云服务器12.12多种机型限时抢购,1核2G服务器4.17元/月,2核4G服务器6.17元/月,专业技术7*24小时在线服务,腾讯云为企业和个人提供快捷,安全,稳定的云服务!

    广告
  • 世优科技助力第四届王者荣耀全国大赛AR演绎

    12月22日开始,经过5天线下淘汰赛角逐,第四届王者荣耀全国大赛在成都市高新区体育中心完美收官...据悉,本次总决赛由成都市体育局指导,腾讯科技有限公司、腾讯新文创总部主办...王者荣耀全国大赛作为王者荣耀大众赛事的最高舞台,拥有覆盖地域广泛、参与群众多、选手年龄跨度广等特点...世优科技有限公司团队为本次比赛提供AR特效制作与虚拟拍摄全流程虚拟技术支持...2、特效与现场环境的位置精确追踪、AR特效位置贴合、真实摄像机拍摄的现实画面与虚拟摄像机中的特效画面数据匹配要完全贴合等...世优科技的实时虚拟合成系统,采用实时渲染引擎虚幻4,完全支持物理材质,蓝图控制,粒子效果等,让直播效果呈现出良好的三维感,达到了后期影视级别...另外,实时虚拟合成系统开发了不基于图层叠加处理合成方式,让实时虚拟合成系统做到了虚拟物体和真实环境之间相互融合,实时互动...未来,世优科技将一如既往助力品牌营销全栈技术解决方案...

  • 2021年第四季度十大最受欢迎评论

    现在我们来回顾一下第一季度、第二季度和第三季度最受欢迎的评论,现在我们将重点放在即将离任的一年的最后三个月。这只是我们回顾和评估移动市场现状及其最重要方面的方法之一——读者喜欢什么《Q4 2021》的10大回顾图肯定有一些惊喜,但看到苹果iPhone 13的阵容几乎没有一个。虽然Cupertino在9月份在技术上推出了这四款手机,但它们的审查覆盖范围已经扩展到了第四季度。关于iphone13家族,我们真的没有什么可以说的了,这已经被

  • 鲁大师第四届牛角尖奖颁布,联想斩获最受欢迎笔记本品牌!

    1 月 19 日,鲁大师 2021 第四届牛角尖奖颁奖典礼顺利举办,本次共颁出了 14 个奖项,包括手机的 7 个奖项、PC的 6 个奖项和 1 个电动车智能评测奖项...在本次鲁大师 2021 年最受欢迎笔记本品牌排行榜中,联想以 30793 的总数票获得牛角尖最受欢迎笔记本品牌...排行榜中排名第二的则是rog笔记本,不同于联想笔记本的全面覆盖,rog笔记本专注于电竞游戏领域,配置高,性能优秀,散热好,颜值不俗,这些优点都让它受到了广大电竞游戏少年的青睐,但是也是因为是游戏本,所以价格比较贵......

  • 苹果重夺销量全球第一 第四季度出货量占比22%

    根据数据研究机构Canalys发布的最新报告显示,苹果手机在 2021 年第四季度占全球智能手机出货量的22%,重新成为全球智能手机出货量第一的厂商,三星以20%的市场份额排名第二,小米以12%排名第三,OPPO以9%排名第四,vivo以8%排名前五...苹果的供应链开始复苏,但由于关键零部件短缺,苹果在第四季度仍被迫减产,无法生产足够的 iPhone 来满足需求......

  • 中国手机SoC最新排名:联发科再次超越高通排第一 麒麟第四

    日前, CINNO Research发布的11月中国智能手机SoC研究报告显示,联发科再次超越高通排第一。在华为海思麒麟受困制裁逐渐式微之际,中国手机SoC市场已经演变为联发科和高通的两强之争,而苹果A系列芯片依靠iPhone 13的强劲动能,稳稳占据第三名的位置。根据CINNO Research月度数据显示,11月在手机SoC方面,联发科再度超越高通,以860万颗的智能手机芯片销量蝉联11月榜首,而高通以840万颗的当月销量紧随其后,两家厂商间的销量差距

  • 阴阳师夜刀神推理活动第四天答案 1.1蜜乃遇害幕后黑手是谁

    阴阳师夜刀神推理活动的第四天已经正式开启了,今天的问题是“蜜乃遇害幕后黑手是谁?”很多玩家还不清楚答案是什么,下面就来为大家分享一下阴阳师夜刀神推理活动第四天答案。

  • 科技早报 | 微软惊天交易收购动视暴雪 苹果第四季重登手机销售榜首

    微软将以每股95.00美元收购动视暴雪,这笔全现金交易对动视暴雪的估值为687亿美元,包括动视暴雪的净现金...接下来是光纤设备生产商JDS 410亿美元收购SDL交易,然后是IBM以340亿美元收购红帽公司,该交易于2019年完成...知情人士称,微软和动视暴雪都同意,科蒂克“将在交易完成后离开”,交易可能需要12至18个月的时间...美国司法部反垄断部门前负责人马坎德拉希姆表示:“美国反垄断部门最近采取的行动,以及欧盟和英国等海外监管机构最近采取的前所未有的激进行动,可能表明这些机构将密切关注这笔交易......

  • 2021年第四季度,网络攻击再现新高

    Check Point Research 报告显示:2021 年第四季度,平均每个组织每周遭受 900 多次网络攻击,创历史新高;企业网络每周遭受的总攻击数量较 2020 年增长了 50%,教育与研究行业再次成为“重灾区”...其次是亚太地区(1,353 次,增长 25%)、拉丁美洲地区(1,118 次,增长 38%)、欧洲地区(670 次,增长 68%)、北美地区(503 次,增长 61%)......

  • 芯片需求激增 三星电子第四季度利润同期增长超50%

    【TechWeb】1月7日消息,据国外媒体报道,三星电子周五表示,受服务器存储芯片需求强劲和芯片代工利润率上升的推动,第四季度营运利润估计较上年同期增长52% ,达到四年来的最高水平。三星预估,去年10月至12月的第四季度内,公司盈利13.8万亿韩元(约合人民币731亿元),自2017年以来三星最好的四季度营利表现。虽然尚未达到Refinitiv统计的分析师预期值15.2万亿韩元,不过分析师将其归咎于受到了三星员工奖金、移动业务营销成本?

  • 第四届Real World CTF 报名通道开启!集结更广泛的技术爱好者_中华网

    近年来, APT攻击、个人隐私泄露、勒索软件、漏洞攻击(如最近让互联网“着火”的 Log4Shell漏洞),虚拟世界的威胁正以不容忽视的速度与强度入侵着真实世界。同时,数字化、云计算、新基建、元宇宙等理念的爆火也让网络安全走上发展“超车道”,国家网信办在 2022 年第一个工作日重磅发布的修订版《网络安全审查办法》,更是以强监管的态势将网络安全的重要性提升到国家层面。攻击与守护,越来越多的网络安全技术爱好者和从业者走

这篇文章对你有价值吗?

  • 热门标签

热文

  • 3 天
  • 7天