Stylesheet til RSS-baseret XML
Jeg prøver at knytte et XSL-stylesheet til en XML-fil, som jeg har trukket ud af et RSS-feed. RSS'en kommer fra en SharePoint-liste, og det er meningen at listeindholdet på den måde skal kunne gøres tilgængeligt på en HTML-side.Det lykkes dog ikke ret godt, først og fremmest, tror jeg, på grund af problemer med RSS-namespaces, men der er muligvis også andre komplikationer.
Jeg er, som det fremgår, alt andet end en haj på området, så jeg håber meget på hjælp til en løsning.
/Stig
-----
Første del af xml-filen til og med første item ser sådan her ud i forkortet form. Det er de udvidede tags - <title cf:type="text">, <description cf:type="html">, <atom:author> m.fl. - der giver vanskeligheder:
<rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:cf="http://www.microsoft.com/schemas/rss/core/2005" version="2.0">
<channel xmlns:cfi="http://www.microsoft.com/schemas/rss/core/2005/internal" cfi:lastdownloaderror="None">
<title cf:type="text">[...]</title>
<link>http://[...]</link>
<description cf:type="text">RSS-kilde</description>
<lastBuildDate>Thu, 23 Jan 2014 07:54:04 GMT</lastBuildDate>
<atom:updated>2014-01-23T07:54:04Z</atom:updated>
<generator>Windows SharePoint Services V3 RSS Generator</generator>
<ttl>60</ttl>
<image>
<url>http://[...]</url>
<title>[titel]</title>
<link>http://[...]</link>
</image>
<item>
<title cf:type="text">[...]</title>
<link>http://[...]</link>
<description cf:type="html"><div>[...]</div></description>
<author>[...]</author>
<atom:author>
<atom:name>[...]</atom:name>
</atom:author>
<pubDate>[...]</pubDate>
<atom:published>[...]</atom:published>
<atom:updated>[...]</atom:updated>
<guid isPermaLink="true">[...]</guid>
<cfi:id>24</cfi:id>
</item>
</channel>
</rss>
-----
Og her er mit (utilstrækkelige) XSLT-forsøg:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:atom="http://www.w3.org/2005/Atom"
xmlns:cf="http://www.microsoft.com/schemas/rss/core/2005"
xmlns:cfi="http://www.microsoft.com/schemas/rss/core/2005/internal">
<xsl:template match="/">
<html>
<body>
<table>
<tr>
<th><xsl:value-of select="title cf:type='text'"/</th>
</tr>
<tr>
<td><xsl:value-of select="description cf:type='html'"/></td>
</tr>
<tr>
<td><xsl:value-of select="atom:name"/></td>
</tr>
<tr>
<td><xsl:value-of select="atom:published"/></td>
</tr>
</table>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
=====