以文本方式查看主题

-  中文XML论坛 - 专业的XML技术讨论区  (http://bbs.xml.org.cn/index.asp)
--  『 XSL/XSLT/XSL-FO/CSS 』  (http://bbs.xml.org.cn/list.asp?boardid=8)
----  关于在bs架构上用xsl处理数据量较大的xml文档的探讨  (http://bbs.xml.org.cn/dispbbs.asp?boardid=8&rootid=&id=8789)


--  作者:飞翔中的菜鸟
--  发布时间:7/14/2004 10:47:00 AM

--  关于在bs架构上用xsl处理数据量较大的xml文档的探讨
我在asp.net环境下用xsl处理xml文档时,遇到一个很滑稽的问题:
样式表不变(包含了一个嵌套的循环,即<xsl:for-each ...>
                                                               ...
                                                             <xsl:for-each ...>
                                                                ...
                                                             </xsl:for-each>
                                                                ...
                                                      </xsl:for-each>)
xml文档中的数据量从100——200——250——300这种规律的增加,该样式表处理此文档的时间分别为:2‘’         20‘’          45‘’        1‘40’‘
呵呵,这个嵌套循环的时间复杂度是有的,不过我在用专用的编辑xml的编辑器来演示同样的条件(即:样式表不变、xml变化)可是无论xml数据量怎样变化,显示的时间不会有上面的瓶颈发生!
如果我想同样的样式表对大数据量的xml遍历,有没有更好的解决方法?
希望各位高手不吝指教!
--  作者:KAI
--  发布时间:7/15/2004 10:56:00 AM

--  
你一下子要处理那么多数据吗?
不是有分页技术吗(可以用MSSQL server的存储过程)?

只从数据库取出当前页的数据转换为xml,然后xsl处理输出,不就避免了处理大量xml数据吗?

xsl处理大xml数据是肯定要变慢的,个人认为。


--  作者:飞翔中的菜鸟
--  发布时间:7/30/2004 10:31:00 AM

--  
顶一下!!
      现实中是存在这种数据转化的。
      对于一重<xsl:for-each>来说,处理几万条数据是很轻松的,不过再嵌套一层该循环,则处理数据的时间复杂度就会爆长,充其量只能处理4000条数据,目前我还没有更好的解决办法,希望高手们不吝赐教!!!
--  作者:飞翔中的菜鸟
--  发布时间:8/6/2004 8:03:00 AM

--  
我是在.net中采用的xml和xsl处理机制,不过,相同的环境下用..server.mapth(路径)好象处理的数据量没有直接用..“”快,呵呵,后一种方法要比前一种方法提高起码5个处理速度。
基本思路是把文档处理,变作流文件处理!!
不过问题还是没有解决,呼吁高手如果有好方法,还不吝指教!!!
--  作者:飞翔中的菜鸟
--  发布时间:8/12/2004 12:54:00 PM

--  
顶!
    希望高手赐教~~~~~!
--  作者:子綦
--  发布时间:9/8/2004 4:36:00 PM

--  
如果有嵌套的循环为何不用递归法呢?呵呵,我也是菜鸟,全当抛砖引玉。
W 3 C h i n a ( since 2003 ) 旗 下 站 点
苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
109.375ms