使 XSLT 结果文档由“父"XSLT 文档递归处理 [英] Make an XSLT result document be processed by a “parent” XSLT document, recursively

查看:20
本文介绍了使 XSLT 结果文档由“父"XSLT 文档递归处理的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个文档grandchild.xml,它经过granchild.xsl 处理后的结果必须转发到child.xsl,然后它必须最终由parent.xsl 处理并输出.

I have document grandchild.xml whose result after being processed with granchild.xsl must be forwarded to child.xsl, then it must be finally processed and output by parent.xsl.

我已经尝试向结果文档添加一个 xml-stylesheet 元素,期望它被引用的 XSL 样式表处理,但什么也没发生.

I have tried adding an xml-stylesheet element to the result document, expecting it to processed using by the referenced XSL stylesheet, but nothing happened.

完成这项任务的正确声明是什么?我在网上搜索了很多,都没有结果.

What is the correct declaration to accomplish this task? I have searched a lot on Internet, with no results.

推荐答案

除非有人知道得更好,否则我相信在浏览器上递归处理 XSLT 输出的能力是不可能的.

Unless anybody knows any better, I believe the ability to recursively process XSLT output on a browser is impossible.

为了证明这一点,我刚刚在 IE8、FF14 和 Chrome 中尝试了以下...

To prove it, I have just tried the following in IE8, FF14 and Chrome...

level1.xml

<?xml version="1.0" encoding="utf-8" ?> 
<?xml-stylesheet title="XSL_formatting" type="text/xsl" href="level1.xsl"?>
<data>
  <id>Level 1 data</id>
</data>

level1.xsl

<?xml version="1.0" encoding="UTF-8" ?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
   <xsl:template match="/">
     <?xml-stylesheet title="XSL_formatting" type="text/xsl" href="level2.xsl"?>
     <data2>
       <id2>Level 2: <xsl:value-of select="/data/id"/></id2>
     </data2>
   </xsl:template>   
</xsl:stylesheet>

level2.xsl

<?xml version="1.0" encoding="UTF-8" ?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
   <xsl:template match="/">
     <html>
       <body>
         <b>Level 3:</b> <xsl:value-of select="/data2/id2"/>
       </body>
     </html>
   </xsl:template>   
</xsl:stylesheet>

所有 3 个浏览器的结果只是显示 Level 2: Level 1 Data.

The result from all 3 browsers is simply to display Level 2: Level 1 Data.

这篇关于使 XSLT 结果文档由“父"XSLT 文档递归处理的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆