私はあなたの助けが必要です。私は、XSLTとの闘いだ:私は、例えば、このようなXMLファイルを持っている:XSLTを使ってXMLをaHTML形式に変換する表
<Adresses>
<Person id="1">
<Name>Bott</Name>
<Vorname>Nils</Vorname>
</Person>
<Person id="2">
<Name>Hubert</Name>
<Vorname>Hubertus</Vorname>
</Person>
<Person id="3">
<Name>Large</Name>
<Vorname>Lars</Vorname>
</Person>
<Numbers>
<number>
<id>1</id>
<tel>12354</tel>
</number>
<number>
<id>3</id>
<tel>32354</tel>
</number>
<number>
<id>2</id>
<tel>22354</tel>
</number>
</Numbers>
</Adresses>
を、私は順番HTMLテーブルに変換する必要があります。 HTML表は、(IDの後に発注を)folowwingのようになります。
<table>
<tr>
<th>Name</th>
<th>Vorname</th>
<th>Tel</th>
</tr>
<tr>
<th>Bott</th>
<th>Nils</th>
<th>12354</th>
</tr>
</table>
を私の問題は、私がckeckする方法がわからないです。Peron.id = number.id番号を選択してください....誰かが私にこの問題の完全な例を与えることができれば本当に素晴らしいだろう。 Web検索では、チュートリアルではそれほど複雑ではありません;-(....私はXSLTを学んでおり、apply-templates match = "Person"のようないくつかのルールを知っています....しかし、 coorect番号を選択ウィッヒ他のテンプレートを呼び出すための文
私はそれを起動しよう:?
<xsl:template match="/">
<html>
<body>
<xsl:for-each select="Adresses/Person">
<xsl:call-template name="curPos">
</xsl:call-template>
<xsl:value-of select="Name"/>
<xsl:value-of select="Vorname"/>
</xsl:for-each>
</body>
</html>
</xsl:template>
<xsl:template name="curPos" match="Person">
<xsl:value-of select="position()"/><br> </br>
</xsl:template>
現在に問題がある場合()では、 で変数に値を設定し、 '../Numbers/number[id=$current_id]/tel'で選択することができます。 –
Mike
'current()'には問題ありません。 **は**呼び出されていない名前付きテンプレートに問題があります。 –
@ michael.hor257k完全なソースコードを投稿する際に、この部分が質問に非常にうまく答えるときは、一言も書かれていません。 htmlの本文が欠落していることがわかります。 – user1997675