Как перечислить данные, показанные в элементе para? - PullRequest
0 голосов
/ 07 мая 2018

Как отобразить данные, показанные как para?

Это мои данные XML:

<para>In this appeal against the judgment of Tribunal:
    <list>
        <listitem>
            <listnum>(a)</listnum>
            <listbody>Ajeet</listbody>
        </listitem>
        <listitem>
            <listnum>(b)</listnum>
            <listbody>Kumar</listbody>
        </listitem>
        <listitem>
            <listnum>(c)</listnum>
            <listbody>Singh</listbody>
        </listitem>
        <listitem>
            <listnum>(d)</listnum>
            <listbody>Motihari</listbody>
        </listitem>
    </list>
</para>
i want to output
<p class="j2">In this appeal against the judgment of Tribunal:</p>
<p class="p3">(a) Ajeet</p>
<p class="p3">(b) Kumar</p>
<p class="p3">(c) Singh</p>
<p class="p3">(d) Motihari</p>

Я использую следующий код, но не мое требование вывода не заполнено полностью.пожалуйста, проверьте и обновите мой код

    <xsl:template match="para">
<p class="j2"><xsl:apply-templates/></p>
</xsl:template>

<xsl:template match="para/list">
    <xsl:apply-templates/>
</xsl:template>

<xsl:template match="listitem">
    <p class="p3"><xsl:apply-templates/></p>
</xsl:template>

<xsl:template match="listnum">
    <xsl:apply-templates/><xsl:text> </xsl:text>
</xsl:template>

<xsl:template match="listbody">
<xsl:apply-templates/>
</xsl:template>

1 Ответ

0 голосов
/ 07 мая 2018

Измените ваш шаблон с этим:

<xsl:template match="para">
    <xsl:for-each-group select="node()" group-adjacent="boolean(self::list)">
        <xsl:choose>
            <xsl:when test="current-grouping-key()">
                <xsl:apply-templates select="current-group()"></xsl:apply-templates>
            </xsl:when>
            <xsl:when test="replace(current-group(), '[ &#xa;]', '') != ''"><p>
                <xsl:copy-of select="current-group()"></xsl:copy-of>
            </p></xsl:when>
        </xsl:choose>
    </xsl:for-each-group>
</xsl:template>

См. Преобразование в https://xsltfiddle.liberty -development.net / pPqsHTb / 1

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...