XPath zu Element mit namespace
nun_ja
- xsl
0 nun_ja
Hallo,
ich habe Probleme, per XPath ein Element mit namespace anzusprechen.
Hier erst der Code:
-feeds.xml
<?xml version="1.0" encoding="iso-8859-1"?>
<?xml-stylesheet type="text/xsl" href="feeds.xsl" ?>
<feeds>
<feed>http://www.zdf.de/ZDFmediathek/rss/8/0,4149,1200168,00.xml</feed>
<feed>http://www.zdf.de/ZDFmediathek/rss/3/0,,1200003,00.xml</feed>
<feed>http://www.zdf.de/ZDFmediathek/rss/1/0,,1200001,00.xml</feed>
</feeds>
-feeds.xsl
<?xml version="1.0" encoding="iso-8859-1"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:media="http://search.yahoo.com/mrss">
<xsl:template match="/">
<html> <head><link rel="stylesheet" type="text/css" href="feeds.css" /></head><body>
<xsl:for-each select="feeds/feed">
<xsl:variable name="feed"> <xsl:value-of select="." /> </xsl:variable>
xsl:apply-templates select="document($feed)/rss"/
</xsl:for-each>
</body></html>
</xsl:template>
<xsl:template match="channel">
<div class="channel">
<h1><xsl:value-of select="./title" /></h1>
<xsl:for-each select="item">
<!-- das besagte Problem: -->
<xsl:for-each select="media:category">
<xsl:value-of select="." />
</xsl:for-each>
<div class="item" onmouseover="this.style.borderColor = 'silver'"
onmouseout="this.style.borderColor = 'white'">
<h3><xsl:value-of select="./title" /></h3>
<xsl:value-of select="./description" />
</div>
</xsl:for-each>
</div>
</xsl:template>
</xsl:stylesheet>
-Ausschnitt aus einem Media-Feed:
<item>
<title>heute in Deutschland vom 8. März 2006</title>
<description>Arbeitsminister Müntefering legt Rentenversicherungsbericht vor; Lidl lockt mit neuer Kreditkarte; Trends der Internationalen Tourismus-Börse; VW-Klassiker "Bulli" feiert 50. Geburtstag.</description>
<link>http://www.zdf.de/ZDFmediathek/inhalt/8/0,4070,3908328-5,00.html</link>
<pubDate>Wed, 08 Mar 2006 14:52:00 +0100</pubDate>
media:categoryZDFmediathek/heute.de</media:category>
media:group
<media:content expression="full" type="video/x-ms-asf" url="http://wstreaming.zdf.de/zdf/56/060308_h14.asx"></media:content>
<media:content expression="full" type="video/x-ms-asf" url="http://wstreaming.zdf.de/zdf/300/060308_h14.asx"></media:content>
<media:content expression="full" type="video/vnd.rn-realvideo" url="http://rstreaming.zdf.de/zdf/56/060308_h14.ram"></media:content>
<media:content expression="full" type="video/vnd.rn-realvideo" url="http://rstreaming.zdf.de/zdf/300/060308_h14.ram"></media:content>
</media:group>
</item>
Das ganze liest die in feeds.xml genannten Media-Feeds und soll dann eigentlich alle ausgeben - nur wie gesagt kann ich zB. nicht media:group aus einem der Media-Feeds ansprechen.
Ich benutze im übrigen Internet Explorer 6.0...
mfg nun_ja
Oh habe falschen code angegeben...
Aber mittlerweile hab ichs...
An der vorher problematischen stelle müsste stehen:
<xsl:value-of select="media:group/media:content/attribute::url" />
trotzdem danke an alle, die es sich angeguckt haben
mfg nun_ja