我想升級我的項目到Java 8,我的項目使用撒克遜舊版本(我認爲是saxon9)。在將項目升級到Java 8後,我收到了一些問題,在薩克森說,在Saxon 9.5版本中修復了Java 8問題,因此我已更改爲Saxon HE 9.7,並且應該單獨使用HE版本。內置的函數撒克遜:分配和撒克遜:分配移動到EE版本看起來。撒克遜的替代方案:分配和撒克遜:分配
所以我正在尋找一種實現撒克遜的替代方法:assign和saxon:assignable。
有什麼建議嗎?或者任何工作示例都會有所幫助。
我的要求與https://www.altova.com/forum/default.aspx?g=posts&t=1000001577中所述的相同。如何增加變量計數?不使用撒克遜:分配和撒克遜:可分配。
我想要一個全局變量,並且需要在處理元素時增加。
更新更多信息。這是我的要求。 我輸入的XML是
<?xml version="1.0" encoding="UTF-8"?>
<employees>
<employee>
<name>Anbu</name>
<address>Chennai</address>
<dob>1990-05-15</dob>
<phone>9600096000</phone>
<email>[email protected]</email>
</employee>
<employee>
<name>Bala</name>
<address>Hydrabad</address>
<dob>1989-01-04</dob>
<phone>9700097000</phone>
<email>[email protected]</email>
</employee>
<employee>
<name>Chandru</name>
<address>Mumbai</address>
<dob>1995-11-10</dob>
<phone>9900099000</phone>
<email>[email protected]</email>
</employee>
</employees>
需要輸出,如:
<html>
<body>
<h2>Employee Details</h2>
<table border="1">
<tr bgcolor="#9acd32">
<th style="text-align:left">Name</th>
<th style="text-align:left">Age</th>
</tr>
<tr>
<td>Anbu</td>
<td>1</td>
</tr>
<tr>
<td>Bala</td>
<td>2</td>
</tr>
<tr>
<td>Chandru</td>
<td>3</td>
</tr>
</table>
</body>
</html>
我想有一個全局變量,並增加它。我曾嘗試使用下面的xsl,但不起作用。
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:variable name="count" select="0" />
<xsl:template match="/">
<html>
<body>
<h2>Employee Details</h2>
<table border="1">
<tr bgcolor="#9acd32">
<th style="text-align:left">Name</th>
<th style="text-align:left">Age</th>
</tr>
<xsl:for-each select="employees/employee">
<tr>
<td>
<xsl:value-of select="name" />
</td>
<td>
<xsl:value-of select="$count+1" />
</td>
</tr>
</xsl:for-each>
</table>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
我可以通過使用ExtensionFunctionDefinition創建自定義函數來實現此目的嗎?
謝謝邁克爾爵士,我已經更新了我的問題與實際的例子。你能提供你的建議嗎? –
完成............. –