0

xslt処理では、区切り文字として二重引用符が付いた属性値が常に生成されるようです。
入力xml:

<a b='"c"' />  

出力xml:

<a b="&quot;c&quot;"/>

電話デバイスの属性値区切り文字としてアポストロフィを使用してXMLファイルを生成する必要があります。このデバイスは、区切り文字としてアポストロフィと二重引用符が付いた属性値のみを受け入れます。例えば:

<SYMB_ITEM ID="BS_Accounts.astAccounts[0].aucAccountName[0]"
class="symb_item" value='"test_3"'/>  

xslt(xlstproc)を使用して、属性値の区切り文字としてアポストロフィを保持することは可能ですか?

4

1 に答える 1

0

あなたの質問を正しく理解しているかどうかはわかりません。出力を「テキスト」に設定すると役立ちますか?

<xsl:output method="text" encoding="utf-8" indent="no"/>

XSLTシートの例:

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

  <xsl:output method="text" encoding="utf-8" indent="no"/>

  <xsl:template match="/">
    <xsl:apply-templates />
  </xsl:template>

  <xsl:template match="a">
    &lt;a b='<xsl:value-of select="@b"/>'&gt;
  </xsl:template>                      
</xsl:stylesheet>

次のXMLファイルの場合:

<xml>
  <a b='"c"' />   
  <a b='"x"' />
</xml>

(私が思うに)望ましい効果を生み出す:

<a b='"c"'>
<a b='"x"'>
于 2013-02-27T14:27:05.900 に答える