私はここでMSDNのドキュメントを逐語的に従いましたが、役に立ちませんでした。
私のXMLの例:
<Ticket xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
<LogNo>454564</LogNo>
<CaseNumber>
<Part1>FGV</Part1>
<Part2>9999</Part2>
<Part3>88888888 </Part3>
</CaseNumber>
</Ticket>
私の XSLT の例:
<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:strip-space elements="*" />
<xsl:template match="/text">
<xsl:value-of select='normalize-space()'/>
</xsl:template>
<xsl:template match="Ticket">
<Ticket><xsl:attribute name="LogNumber"><xsl:value-of select="LogNo"/></xsl:attribute>
<CaseNumber><xsl:value-of select="CaseNumber/Part1"/>-<xsl:value-of select="CaseNumber/Part2"/>-<xsl:value-of select="CaseNumber/Part3"/></CaseNumber>
</Ticket>
</xsl:template>
</xsl:stylesheet>
私の出力XML:
<?xml version="1.0" encoding="IBM437"?>
<Tickets>
<Ticket LogNumber="454564">
<CaseNumber>FGV-9999-88888888 </CaseNumber>
</Ticket>
</Tickets>
私は使っている
<xsl:template match="/text">
<xsl:value-of select='normalize-space()'/>
</xsl:template>
MSDN の記事やネット上の他の誰もが言っているように、CaseNumber Part3 から末尾の空白を削除できないようです。私が間違っていることはありますか?