有什么方法可以在 XSLT 中給出連續數字后跟文本。我正在使用下面的 XML 檔案,如果<parent>元素具有id屬性意味著我想獲取<fo:block> Parent 1 Children of Parent id 100 </block>. 然后對于第二個<parent>元素,<fo:block> Parent 2 Children of Parent id 180 </block>。
- 父 [靜態文本] 后跟數字
XML
<input>
<parent name='Parents' id='100'>
<Children>Children of Parent id 100</Children>
<example_child>
<child name='Child_2' id='2'>example2</child>
<child name='Child_4' id='4'>example4</child>
</example_child>
</parent>
<parent name='Parents' id='180'>
<Children>Children of Parent id 180</Children>
<example_child>
<child name='Child_1' id='1'>example1</child>
<child name='Child_3' id='3'>example3</child>
</example_child>
</parent>
</input>
XSL
<xsl:template match="parent/Children">
<fo:block>
<xsl:if test="@id != ''">
<xsl:value-of select="concat('Parent',' ',continuous number, parent/Children)"/>
</xsl:if>
</fo:block>
<xsl:apply-templates/>
</xsl:template>
這里<xsl:value-of select="concat('Parent',' ', continuous number, parent/Children)"/>'Parent 是靜態文本,后跟連續數字,然后是<Children>值。我正在努力研究如何在 XSL 上給出連續數字。
謝謝!!
uj5u.com熱心網友回復:
使用格式正確的輸入,例如:
XML
<input>
<parent name="Parents" id="100">
<Children>Children of Parent id 100</Children>
<example_child>
<child name="Child_2" id="2">example2</child>
<child name="Child_4" id="4">example4</child>
</example_child>
</parent>
<parent name="Parents" id="180">
<Children>Children of Parent id 180</Children>
<example_child>
<child name="Child_1" id="1">example1</child>
<child name="Child_3" id="3">example3</child>
</example_child>
</parent>
</input>
你可以這樣做:
XSLT 1.0
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"/>
<xsl:template match="/input">
<output>
<xsl:for-each select="parent">
<block>
<xsl:text>Parent </xsl:text>
<xsl:value-of select="position()"/>
<xsl:text> </xsl:text>
<xsl:value-of select="Children"/>
</block>
</xsl:for-each>
</output>
</xsl:template>
</xsl:stylesheet>
要得到:
結果
<?xml version="1.0" encoding="UTF-8"?>
<output>
<block>Parent 1 Children of Parent id 100</block>
<block>Parent 2 Children of Parent id 180</block>
</output>
這似乎足夠接近你想要的輸出。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/535503.html
標籤:XMLxslt
