0

ダッシュが含まれているxmlタグに問題はありますか?

xslとxmlからpdfを生成しようとしています。

たとえば、次のようなものがあります。

<car>
  <name>toyotoa</name>
  <color-value>green</color-value>
</car>

私のxslには次のようなものがあります

<fo:inline font-weight="bold"> <xsl:value-of select="name" /> </fo:inline>

これにより、PDFに正しい値が出力されます

2番目のタグ(color-value)を印刷しようとすると、.. pdfに何も出力されません。あたかも、そのノードを読み取れないかのようになります。

<fo:inline font-weight="bold"> <xsl:value-of select="color-value" /> </fo:inline>

これは何も返しません。

ただし、Eclipseでテストを実行し、xslをxsl変換として実行すると、出力ファイルに両方の値が正しく表示されます。PDFでのみ、最初のもののみが表示されます。

何が起こっているのかについての手がかりはありますか?

編集 車のノードの下にあるタグのすべての値を一覧表示しようとして、どういうわけかデバッグできますか?多分それは私にいくつかのヒントを与えるでしょう。

編集2 問題はxlsではなく速度テンプレートで発生するようです

EDIT 3 は、car-colorの値を生成するために速度テンプレートによって呼び出されたメソッドをチェックした後、解決策を見つけました。明らかに継承の問題があり、値は変換のxmlに挿入されていませんでした。

4

2 に答える 2

1

2番目の例ではselect属性を閉じる必要があります。

于 2009-12-17T11:21:38.323 に答える
0

これが完全な答えではない場合は申し訳ありませんが、ここではエスケープが問題になる可能性があるようです。XSLT 標準は、select 属性の値が式であり、ダッシュを減算と見なす可能性があることを示唆しているようです(要素の色の値から要素の値の値を引いたものなど)。これを修正する方法はわかりません。

于 2009-12-17T13:06:46.233 に答える