XSLT: получить значение атрибута, созданного динамически - PullRequest
0 голосов
/ 17 июня 2020

Я новичок в XSLT и пытаюсь получить содержимое только что созданного атрибута.

У меня есть XML, например:

<subpara id="subpara">
    <title>I am some heavy title</title>
        <para id="para">Here is some dummy text for a dummy para.</para>
            <table id="t01" tocentry="1">
            ...

в XSLT, я делаю:

<xsl:template match="subpara/title">
    <div>
        <xsl:attribute name="class">
            <xsl:text>title</xsl:text>
            <xsl:call-template name="addChangeClasses"/>
        </xsl:attribute>

        <xsl:attribute name="data-numbering">
            <xsl:apply-templates select="parent::*" mode="numbering"/>
        </xsl:attribute>
        # HERE I'D LIKE TO HAVE THE CONTENT OF THE ATTRIBUTE I JUST CREATED
        <xsl:value-of select"@data-numbering"/>  

        <xsl:apply-templates/>
    </div>
</xsl:template>

Я намерен создать этот вывод:

<div class="title" data-numbering="1.1">1.1 - I am some heavy title</div>

Итак, я создаю атрибут нумерация данных , но я бы хотел показать его содержимое. Очевидно, делать <xsl:value-of select="@data-numbering"/> неправильно.

Кто-нибудь может мне помочь, пожалуйста? Заранее спасибо ! :)

1 Ответ

1 голос
/ 17 июня 2020

Не видя, что возвращает ваш шаблон, я только предполагаю здесь:

<xsl:variable name="d_numb">
  <xsl:apply-templates select="parent::*" mode="numbering"/>
</xsl:variable>

<xsl:attribute name="data-numbering" select="$d_numb"/>

<xsl:value-of select="$d_numb"/>

Так что сохраните любое значение, возвращаемое шаблоном, в переменной. Затем используйте эту переменную для заполнения атрибута и вывода значения.

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