【发布时间】:2011-03-18 14:07:59
【问题描述】:
不久前我问了一个非常相似的问题([1]:XSL to create nested list from flat tree problem“从平面树问题创建嵌套列表”),但我的问题稍微扩大了。最初我没有考虑嵌套在列表中的段落。所以现在,输入:
<root>
<h1>text</h1>
<list level="1">num1</list>
<list level="1">num2</list>
<para type="indent">indented para1</para>
<list level="2">sub-num1</list>
<para type="indent">sub-indented para1</para>
<para type="indent">sub-indented para2</para>
<list level="2">sub-num2</list>
<list level="3">sub-sub-num1</list>
<list level="1">num3</list>
<p>text</p>
<list>num1</list>
<list>num2</list>
<h2>text</h2>
</root>
我需要这个输出:
<root>
<h1>text</h1>
<ol>
<li>num1</li>
<li>num2
<paragraph>indented para1</paragraph>
<ol>
<li>sub-num1
<paragraph>sub-indented para1</paragraph>
<paragraph>sub-indented para2</paragraph>
</li>
<li>sub-num2
<ol>
<li>sub-sub-num1</li>
</ol>
</li>
</ol>
</li>
<li>num3</li>
</ol>
<p>text</p>
<ol>
<li>num1</li>
<li>num2</li>
</ol>
<h2>text</h2>
</root>
也可能有缩进段落不在列表中的实例,但我想一旦我摆脱了这只猴子,我就能弄清楚这一点。 我需要使用 XSLT 1.0,再次感谢任何帮助。
【问题讨论】:
标签: xml xslt xpath xslt-grouping