У меня есть ввод, например:
<item id="CON_1985_14">
<prv id="p1">
<no>1</no>
<text>This "May" take some moment, you "shall" not go there.</text>
<text>This is ok.</text>
</prv>
</item>
Необходимо создать таблицу Excel на основе значений в кавычках.
=========================
A B
=========================
May CON_1985_14
shall CON_1985_14
=========================
Создан XSLT для генерации вывода Excel, например:
<Worksheet ss:Name="R6">
<Table>
<Row>
<Cell>
<Data ss:Type="String">
<xsl:text>A</xsl:text>
</Data>
</Cell>
<Cell>
<Data ss:Type="String">
<xsl:text>B</xsl:text>
</Data>
</Cell>
</Row>
<xsl:for-each select="$path">
<xsl:for-each select="descendant::prv//descendant::text">
<xsl:variable name="STRUCTUREONBASISOFTOKENS" as="node()">
<Report>
<dd>
<xsl:for-each select="tokenize(normalize-space(.), '("|“)')">
<xsl:if test="(position() gt 1) and (position() mod 2 = 0)">
<xsl:value-of select="normalize-space(.)"/>
<xsl:if test="position() ne (last() - 1)">
<xsl:text>, </xsl:text>
</xsl:if>
</xsl:if>
</xsl:for-each>
</dd>
<LID>
<xsl:value-of select="/item/@id"/>
</LID>
</Report>
</xsl:variable>
<xsl:for-each select="tokenize($STRUCTUREONBASISOFTOKENS/Report/dd, ',')">
<Row>
<Cell>
<Data ss:Type="String">
<xsl:value-of select="normalize-space(.)"/>
</Data>
</Cell>
<Cell>
<Data ss:Type="String">
<xsl:value-of select="$STRUCTUREONBASISOFTOKENS/Report/LID"/>
</Data>
</Cell>
</Row>
</xsl:for-each>
</xsl:for-each>
</xsl:for-each>
</Table>
</Worksheet>
Переменная, созданная внутри for-each с выводом, напечатанным в сообщении, например:
<Report xmlns:html="http://www.w3.org/TR/REC-html40" xmlns:LxNx="http://www.LXNX.com"
xmlns="urn:schemas-microsoft-com:office:spreadsheet"
xmlns:dict="http://www.lexis-nexis.com/glp/dict" xmlns:ci="http://www.lexis-nexis.com/ci"
xmlns:o="urn:schemas-microsoft-com:office:office"
xmlns:x="urn:schemas-microsoft-com:office:excel"
xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet">
<dd>May, shall</dd>
<LID>CON_1985_14</LID>
</Report>
Теперь вложенный for-each, чуть ниже определения переменной, пытается извлечь значения из переменнойструктура для генерации строк, но не удалась. Не удалось извлечь значения из переменной по xpath для генерации строки. Этот синтаксис '' означает путь к коллекции ().
Укажите подходящее решение для этого.