首页 > 解决方案 > 如何将平面 xml 转换为分层 xml (xslt 1.0)

问题描述

输入:我有以下 xml

<document>
<sec1>heading (depth 1)</sec1>
<p>body</p>
<sec1>heading (depth 1)</sec1>
<sec2>heading (depth 2)</sec2>
<p>body</p>
<sec1>heading (depth 1)</sec1>
<sec2>heading (depth 2)</sec2>
<sec3>heading (depth 3)</sec3>
<p>body</p>
</document>

输出:以下是我想使用 xslt 1.0 更改的结构

<document>
    <sec1 id=001>
        <title>Heading (depth 1)</title>
            <p>body</p>
    </sec1>
    <sec1 id=002>
        <title>Heading (depth 1)</title>
            <sec2 id=002-1>
                 <title>Heading (depth 2)</title>
                     <p>body</p>
            </sec2>
    </sec1>
    <sec1 id=003>
        <title>Heading (depth 1)</title>
            <sec2 id=003-1>
                 <title>Heading (depth 2)</title>
                     <sec3 id=003-1-1>
                         <title>Heading (depth 3)</title>
                              <p>body</p>
                     </sec3>
            </sec2>
    </sec1>
</document>

我应该写什么代码?制作多个分层xml非常棘手。

标签: xmlxslt

解决方案


推荐阅读