Xpath-problem(zu dumm?)
ulimativ
- xsl
Also ich habe folgendes xml, also mal eine vereinfachte version
<website>
<chapter>
<image imageid="1" alt="Screenshot" position="left" />
</chapter>
<images>
<image id="1" file="localhost/mhuhn.de/0403/fotos/38.jpg" width="254" height="300" />
</images>
</website>
---------------
und folgendes XSL:
<xsl:template match="chapter">
<p><xsl:apply-templates /></p>
</xsl:template>
<xsl:template match="image">
<img>
<xsl:attribute name="src">http://<xsl:value-of select="/images/image[@id=1]/@file" /></xsl:attribute>
</img>
</xsl:template>
----
Also was ich will ist ja fast offensichtlich. Ich will die Url vom image-Node auslesen, und als attribut einfügen.
Was mache ich falsch?
Gruß Uli
Also was ich will ist ja fast offensichtlich. Ich will die Url vom image-Node auslesen, und als attribut einfügen.
Was mache ich falsch?
Das Wurzelelement ist nicht 'images', somit liefert '/images/...' nichts zurück.
<xsl:template match="image"><img src="http://{@file}" /></xsl:template>
Hallo nommal..
Das Wurzelelement ist nicht 'images', somit liefert '/images/...' nichts zurück.
Sprry Tippfehler:
<xsl:value-of select="/website/images/image[@id=1]/@file" />
Aber geht trotzdem nicht.
Was soll ich hiermit anfangen? Das <image>-Tag ist nicht das aktuelle, sondern steht woanders....
<xsl:template match="image"><img src="http://@file}" /></xsl:template>
Noch jemand eine Idee?
Gruß Uli
Hallo,
<website>
<chapter>
<image imageid="1" alt="Screenshot" position="left" />
</chapter><images>
<image id="1" file="localhost/mhuhn.de/0403/fotos/38.jpg" width="254" height="300" />
</images>
</website>
Schlechte Struktur.
Ich nehme an du möchtest im Chapter das image mit dem entsprechenden ID referenzieren und aufrufen.
und folgendes XSL:
<xsl:template match="chapter">
<p><xsl:apply-templates /></p>
</xsl:template><xsl:template match="image">
<img>
<xsl:attribute name="src">http://<xsl:value-of select="/images/image[@id=1]/@file" /></xsl:attribute>
</img>
</xsl:template>
Also was ich will ist ja fast offensichtlich. Ich will die Url vom image-Node auslesen, und als attribut einfügen.
Was mache ich falsch?
Du hast eine schlechte XML-Struktur, du hat zwei mal <image> Element mit zwei vollkommen unterschiedlicher Bedeutung aber eben nur einen Template für das <image> Element.
Also was soll deiner Meinung nach dein Template tun? Welches <image> soll er denn nehmen?
Eine Lösung ist möglich, aber besser wäre du würdest deine XML-Struktur anders überlegen, da das so wesentlich sauberer wäre.
Grüße
Thomas