新书推介:《语义网技术体系》
作者:瞿裕忠,胡伟,程龚
   XML论坛     W3CHINA.ORG讨论区     计算机科学论坛     SOAChina论坛     Blog     开放翻译计划     新浪微博  
 
  • 首页
  • 登录
  • 注册
  • 软件下载
  • 资料下载
  • 核心成员
  • 帮助
  •   Add to Google

    >> 本版讨论XSL,XSLT,XSL-FO,CSS等技术
    [返回] 中文XML论坛 - 专业的XML技术讨论区XML.ORG.CN讨论区 - XML技术『 XSL/XSLT/XSL-FO/CSS 』 → XSL无聊人第一期 查看新帖用户列表

      发表一个新主题  发表一个新投票  回复主题  (订阅本版) 您是本帖的第 198742 个阅读者浏览上一篇主题  刷新本主题   树形显示贴子 浏览下一篇主题
     * 贴子主题: XSL无聊人第一期 举报  打印  推荐  IE收藏夹 
       本主题类别:     
     孤独 帅哥哟,离线,有人找我吗?
      
      
      威望:7
      等级:大三(面向对象是个好东东!)(版主)
      文章:826
      积分:4220
      门派:XML.ORG.CN
      注册:2004/1/14

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给孤独发送一个短消息 把孤独加入好友 查看孤独的个人资料 搜索孤独在『 XSL/XSLT/XSL-FO/CSS 』的所有贴子 引用回复这个贴子 回复这个贴子 查看孤独的博客楼主
    发贴心情 XSL无聊人第一期

    1.废话
    在现在的分类中,多级分类已经十分常见,而且大多数分类的数据通常只依靠数据库的一个表就可以实现.

    众所周知,数据库在处理大量数据时会表现出极其强大的优势,但是在少量数据读取时,将会付出相当的代价.我想这同样不需要解释,各位一定清楚:)

    因此,A先生决定把他在数据库中的分类转为用XMl方式实现,因为他的树状结构对于分类的描述是十分有好处的,而且它的速度在A先生当前表量的情况下应当会有不错的表现.

    但A先生比较懒,他直接Select * from class for xml后就不管了.当然,各位也会知道接下来的工作了.

    而且A先生听说XSLT在这方面会有不错的表现,因此它希望在后期的功能上也借助于XSLT来完成.

    2.任务

    1.把数据库输出的表用XSLT转化为树状的.

          输出表示例:

    <root>
        <item id="1" parent="0" />
        <item id="2" parent="1" />
        <item id="3" parent="2" />
        <item id="4" parent="1" />
    </root>


    目标示例:

    <root>
            <item id="1">
                  <item id="2">
                      <item id="3" />
                  </item>
                  <item id="4"/>
            </item>
    </root>

    2.显示出目标示例中某个节点的父节点,由父节点向子节点排列.

    例如.得到一个<root id='3'/>的XML文件,以及一个 目标示例 (可以用Document函数打开,本演示用上面的示例做,就是树状那个).(filename:tree.xml)

    那么输出的结果就是:1 - 2 - 3.

    3.对节点进行查询.

    例如.得到一个<root searchid='4'/>的XML文件,以及一个 目标示例(filename:tree.xml).

    输出的结果就是:1 - 2(也就是输出从根节点到这个节点的路径)

    4.查找公共祖先

    例如得到一个<root id1='4' id2='3' />的XML文件,以及一个 目标示例(Filename:tree.xml).

    输出的结果为:1.

    希望各位快快使用XSL将此工作解决完毕,我们会对参与人员进行一定奖励.(由于第一期,奖励办法暂无,可由论坛内讨论决定).

    将有N组XML测试文件来检测您的XSL:)
    -----------------------------------------------------------------------------------------------------------------
    感谢Qr审题,^_^...

    各位直接贴在下面就可以,主要为了学习:)

    [此贴子已经被作者于2005-7-9 9:59:55编辑过]

       收藏   分享  
    顶(0)
      




    ----------------------------------------------
    <?xml version="1.0" encoding="gb2312"?>
    <个人签名>
      <Website>[url=http://www.mahaobo.cn]
    MaHaobo.cn[/url]
    </Website>
    <Email>aloning(at)gmail.com</Email>
      <Qq >32113739</Qq>
    </个人签名>

    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2005/7/8 16:39:00
     
     菜籽 帅哥哟,离线,有人找我吗?双鱼座1981-2-28
      
      
      威望:5
      头衔:软件民工
      等级:研二(Sowa的知识表示写得真好!)
      文章:875
      积分:5655
      门派:XML.ORG.CN
      注册:2004/7/25

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给菜籽发送一个短消息 把菜籽加入好友 查看菜籽的个人资料 搜索菜籽在『 XSL/XSLT/XSL-FO/CSS 』的所有贴子 点击这里发送电邮给菜籽 引用回复这个贴子 回复这个贴子 查看菜籽的博客2
    发贴心情 
    先报名一个啊

    ----------------------------------------------
    重拾英语...

    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2005/7/8 19:10:00
     
     lazyy 美女呀,离线,快来找我吧!
      
      
      等级:大二期末(数据结构考了98分!)
      文章:61
      积分:330
      门派:XML.ORG.CN
      注册:2005/5/10

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给lazyy发送一个短消息 把lazyy加入好友 查看lazyy的个人资料 搜索lazyy在『 XSL/XSLT/XSL-FO/CSS 』的所有贴子 引用回复这个贴子 回复这个贴子 查看lazyy的博客3
    发贴心情 
    报名,速度可能会比较慢!呵呵
    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2005/7/8 21:07:00
     
     菜籽 帅哥哟,离线,有人找我吗?双鱼座1981-2-28
      
      
      威望:5
      头衔:软件民工
      等级:研二(Sowa的知识表示写得真好!)
      文章:875
      积分:5655
      门派:XML.ORG.CN
      注册:2004/7/25

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给菜籽发送一个短消息 把菜籽加入好友 查看菜籽的个人资料 搜索菜籽在『 XSL/XSLT/XSL-FO/CSS 』的所有贴子 点击这里发送电邮给菜籽 引用回复这个贴子 回复这个贴子 查看菜籽的博客4
    发贴心情 
    感觉题目看懂了,不好下手。。。。
    楼主能不能给点字具体的怎么做,哪怕只是提示。。给大家一点热情。

    ----------------------------------------------
    重拾英语...

    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2005/7/9 23:25:00
     
     孤独 帅哥哟,离线,有人找我吗?
      
      
      威望:7
      等级:大三(面向对象是个好东东!)(版主)
      文章:826
      积分:4220
      门派:XML.ORG.CN
      注册:2004/1/14

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给孤独发送一个短消息 把孤独加入好友 查看孤独的个人资料 搜索孤独在『 XSL/XSLT/XSL-FO/CSS 』的所有贴子 引用回复这个贴子 回复这个贴子 查看孤独的博客5
    发贴心情 
    模板递归需要利用好:)

    ----------------------------------------------
    <?xml version="1.0" encoding="gb2312"?>
    <个人签名>
      <Website>[url=http://www.mahaobo.cn]
    MaHaobo.cn[/url]
    </Website>
    <Email>aloning(at)gmail.com</Email>
      <Qq >32113739</Qq>
    </个人签名>

    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2005/7/9 23:57:00
     
     菜籽 帅哥哟,离线,有人找我吗?双鱼座1981-2-28
      
      
      威望:5
      头衔:软件民工
      等级:研二(Sowa的知识表示写得真好!)
      文章:875
      积分:5655
      门派:XML.ORG.CN
      注册:2004/7/25

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给菜籽发送一个短消息 把菜籽加入好友 查看菜籽的个人资料 搜索菜籽在『 XSL/XSLT/XSL-FO/CSS 』的所有贴子 点击这里发送电邮给菜籽 引用回复这个贴子 回复这个贴子 查看菜籽的博客6
    发贴心情 
    上面的是做成一个xsl文件,还是每个步骤,做一个,我感觉不好写啊

    ----------------------------------------------
    重拾英语...

    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2005/7/10 20:08:00
     
     孤独 帅哥哟,离线,有人找我吗?
      
      
      威望:7
      等级:大三(面向对象是个好东东!)(版主)
      文章:826
      积分:4220
      门派:XML.ORG.CN
      注册:2004/1/14

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给孤独发送一个短消息 把孤独加入好友 查看孤独的个人资料 搜索孤独在『 XSL/XSLT/XSL-FO/CSS 』的所有贴子 引用回复这个贴子 回复这个贴子 查看孤独的博客7
    发贴心情 
    以下是引用菜籽在2005-7-10 20:08:46的发言:
    上面的是做成一个xsl文件,还是每个步骤,做一个,我感觉不好写啊


    随便咯

    ----------------------------------------------
    <?xml version="1.0" encoding="gb2312"?>
    <个人签名>
      <Website>[url=http://www.mahaobo.cn]
    MaHaobo.cn[/url]
    </Website>
    <Email>aloning(at)gmail.com</Email>
      <Qq >32113739</Qq>
    </个人签名>

    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2005/7/12 8:31:00
     
     doubleG 帅哥哟,离线,有人找我吗?
      
      
      威望:7
      等级:大三(面向对象是个好东东!)
      文章:591
      积分:4119
      门派:XML.ORG.CN
      注册:2004/5/27

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给doubleG发送一个短消息 把doubleG加入好友 查看doubleG的个人资料 搜索doubleG在『 XSL/XSLT/XSL-FO/CSS 』的所有贴子 引用回复这个贴子 回复这个贴子 查看doubleG的博客8
    发贴心情 
    嘿嘿,好久没来了,我先扔个砖头引玉吧....
    只写了一来引(只限于第一个为根节点的方法):
    <?xml version="1.0" encoding="UTF-8"?>
    <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:fo="http://www.w3.org/1999/XSL/Format">
    <xsl:output method="xml"/>
     <xsl:template match="root">
      <xsl:copy>
       <xsl:call-template name="createChildNode">
        <xsl:with-param name="currentNode" select="item[position()=1]"/>
       </xsl:call-template>
      </xsl:copy>
     </xsl:template>
     <xsl:template name="createChildNode">
      <xsl:param name="currentNode"/>
      <xsl:variable name="currentID" select="$currentNode/@id"/>
      <xsl:element name="{name($currentNode)}">
       <xsl:attribute name="id"><xsl:value-of select="$currentID"/></xsl:attribute>
       <xsl:for-each select="$currentNode/following-sibling::*[@parent=$currentID]">
        <xsl:call-template name="createChildNode">
         <xsl:with-param name="currentNode" select="."/>
        </xsl:call-template>
       </xsl:for-each>
      </xsl:element>
     </xsl:template>
    </xsl:stylesheet>
    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2005/8/16 11:37:00
     
     Qr 帅哥哟,离线,有人找我吗?
      
      
      威望:9
      等级:博士二年级(版主)
      文章:4392
      积分:29981
      门派:XML.ORG.CN
      注册:2004/5/15

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给Qr发送一个短消息 把Qr加入好友 查看Qr的个人资料 搜索Qr在『 XSL/XSLT/XSL-FO/CSS 』的所有贴子 访问Qr的主页 引用回复这个贴子 回复这个贴子 查看Qr的博客9
    发贴心情 
    厉害!学了两招。

    doubleG斑竹好长时间没露面了,不少朋友时常惦记着。

    ----------------------------------------------
    没人帮忙,那就靠自己,自己才是最好的老师!本人拒绝回答通过站内短消息提出的问题!

    blog:http://Qr.blogger.org.cn

    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2005/8/16 13:18:00
     
     doubleG 帅哥哟,离线,有人找我吗?
      
      
      威望:7
      等级:大三(面向对象是个好东东!)
      文章:591
      积分:4119
      门派:XML.ORG.CN
      注册:2004/5/27

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给doubleG发送一个短消息 把doubleG加入好友 查看doubleG的个人资料 搜索doubleG在『 XSL/XSLT/XSL-FO/CSS 』的所有贴子 引用回复这个贴子 回复这个贴子 查看doubleG的博客10
    发贴心情 
    呵呵,前一段时间想转行,后来考虑了这么久,决定还是先不转了,这不就又回来和大家混了。哈哈哈,孤独的这个方法不错,我们可以征集一下比较有趣和实际开发中遇到的问题,我想应该能够出个合集,能够解决一些常见的问题,论坛上有很多的问题都是雷同的,而且XSL1.0已经出来这么久了,能发现的问题解决方法也不少,我们应该把它整出来才好,像VC知识库一样,我们也可以出XML知识库啊!然后在出问题方面可以加大一下宣传力度,争取出一些好题,呵呵
    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2005/8/16 16:01:00
     
     GoogleAdSense
      
      
      等级:大一新生
      文章:1
      积分:50
      门派:无门无派
      院校:未填写
      注册:2007-01-01
    给Google AdSense发送一个短消息 把Google AdSense加入好友 查看Google AdSense的个人资料 搜索Google AdSense在『 XSL/XSLT/XSL-FO/CSS 』的所有贴子 访问Google AdSense的主页 引用回复这个贴子 回复这个贴子 查看Google AdSense的博客广告
    2024/3/28 14:00:29

    本主题贴数37,分页: [1] [2] [3] [4]

    管理选项修改tag | 锁定 | 解锁 | 提升 | 删除 | 移动 | 解固 | 总固顶 | 奖励 | 惩罚 | 发布公告
    W3C Contributing Supporter! W 3 C h i n a ( since 2003 ) 旗 下 站 点
    苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
    101.563ms