宝洁;imag进入observ元素-XSLT

宝洁;imag进入observ元素-XSLT,xslt,xslt-2.0,Xslt,Xslt 2.0,如何将p和imag元素移动到observ元素中? 输入XML: <root> <num>6</num> <imag> <apimag fic="[PHOTO]" scale="40"/> </imag> <qual>professeur a  l'universit</qual&g

如何将
p
imag
元素移动到
observ
元素中?
输入XML:

    <root>
    <num>6</num>
        <imag>
            <apimag fic="[PHOTO]" scale="40"/>
        </imag>
        <qual>professeur a  l'universit</qual>
    <h1>Contentieux sur la validité du brevet</h1>
    <pnchr><observ/></pnchr>
    <p>Selon 1</p>
    <h2>Dalai de restauration</h2>
    <pnchr><observ/></pnchr>
    <p>Selon 2</p>
    <imag>
        <apimag fic="[PHOTO]" scale="40"/>
    </imag>
    <pnchr><observ/></pnchr>
    <p>Selon 3</p>
    <p>Selon 4</p>
</root>
    <root>
    <num>6</num>
    <imag>
        <apimag fic="[PHOTO]" scale="40"/>
    </imag>
    <qual>professeur a  l'universit</qual>
    <h1>Contentieux sur la validité du brevet</h1>
    <pnchr><observ>
        <p>Selon 1</p>
    </observ></pnchr>
    <h2>Dalai de restauration</h2>
    <pnchr><observ>
        <p>Selon 2</p>
        <imag>
            <apimag fic="[PHOTO]" scale="40"/>
        </imag>
    </observ></pnchr>
    <pnchr><observ>
        <p>Selon 3</p>
        <p>Selon 4</p>
    </observ></pnchr>
</root>

6.
大学教授
瓦利迪特河畔内容物©杜布雷维特
塞隆1号

达赖复辟 塞隆2号

塞隆3号

塞隆4号

预期输出:

    <root>
    <num>6</num>
        <imag>
            <apimag fic="[PHOTO]" scale="40"/>
        </imag>
        <qual>professeur a  l'universit</qual>
    <h1>Contentieux sur la validité du brevet</h1>
    <pnchr><observ/></pnchr>
    <p>Selon 1</p>
    <h2>Dalai de restauration</h2>
    <pnchr><observ/></pnchr>
    <p>Selon 2</p>
    <imag>
        <apimag fic="[PHOTO]" scale="40"/>
    </imag>
    <pnchr><observ/></pnchr>
    <p>Selon 3</p>
    <p>Selon 4</p>
</root>
    <root>
    <num>6</num>
    <imag>
        <apimag fic="[PHOTO]" scale="40"/>
    </imag>
    <qual>professeur a  l'universit</qual>
    <h1>Contentieux sur la validité du brevet</h1>
    <pnchr><observ>
        <p>Selon 1</p>
    </observ></pnchr>
    <h2>Dalai de restauration</h2>
    <pnchr><observ>
        <p>Selon 2</p>
        <imag>
            <apimag fic="[PHOTO]" scale="40"/>
        </imag>
    </observ></pnchr>
    <pnchr><observ>
        <p>Selon 3</p>
        <p>Selon 4</p>
    </observ></pnchr>
</root>

6.
大学教授
瓦利迪特河畔内容物©杜布雷维特
塞隆1号

达赖复辟 塞隆2号

塞隆3号

塞隆4号

类似这样的内容:

<xsl:template match="root">
  <xsl:for-each-group select="*" group-starting-with="pnchr">
    <xsl:choose>
      <xsl:when test="self::pnchr">
        <pnchr><observ>
          <xsl:copy-of select="remove(current-group(),1)"/>
        </observ></pnchr>
      </xsl:when>
      <xsl:otherwise>
        <xsl:copy-of select="current-group()"/>
      </xsl:otherwise>
    </xsl:choose>
  </xsl:for-each-group>
</xsl:template>


@Micheak-kay先生,感谢您的回复,本
达赖恢复
元素不应被移动到
观测
元素中。请检查此问题()。也许您需要将其更改为
组,以=“pnchr | h2”
开头。但是,如果不知道转换的一般规则,就很难确定解决方案是否正确——一个示例并不构成规范。@Micheal Kay先生,感谢您现在的回复,它是一个很好的解决方案。