0

我有一个简单的 XML 文件,并且正在尝试创建一个 XSLT 文件来将 XML 处理为 HTML。

XML

<?xml version="1.0" ?>
<rss version="2.0" xmlns:media="http://search.yahoo.com/mrss/">
  <channel>
<title>PDF</title>
<ttl>10</ttl>
<link>https://teele.box.com/shared/3m9en769bdh36d4y2hjy/rss.xml</link>
<description>PDF file updates</description>
<lastBuildDate>Tue, 05 Mar 2013 13:59:22 -0800</lastBuildDate>
<copyright>Copyright 2009 box.net</copyright>
<webMaster>no-reply@box.com (No reply)</webMaster>
<item>
  <title>Kat Martin - Sinclair Sisters Trilogy 02 - Desert Heat.pdf</title>
  <description></description>
  <pubDate>Sun, 03 Feb 2013 17:19:36 -0800</pubDate>
  <link>https://teele.box.com/index.php?rm=box_download_shared_file&amp;shared_name=3m9en769bdh36d4y2hjy&amp;file_id=f_5920615203&amp;rss=1</link>
  <media:content url="https://teele.box.com/index.php?rm=box_download_shared_file&amp;shared_name=3m9en769bdh36d4y2hjy&amp;file_id=f_5920615203&amp;rss=1" />
  <media:text></media:text>
  <media:title>Kat Martin - Sinclair Sisters Trilogy 02 - Desert Heat.pdf</media:title>
  <media:thumbnail url="https://ak3.boxcdn.net/resources/rcxnqksqis/thumbs/43x51/application/pdf.gif"  height="48" width="48"/>
</item>

和我的 XSLT

<?xml version='1.0'?>
<xsl:stylesheet version="2.0"
            xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
             xmlns:media="http://search.yahoo.com/mrss/">

 <xsl:output method="html" />

<xsl:template name="Content">
  <xsl:for-each select="rss/channel/item">
    <xsl:value-of select="media:thumbnail/@url"/>
  </xsl:for-each>
</xsl:template>

<xsl:template match="/">
  <xsl:call-template name="Content" />
</xsl:template>
</xsl:stylesheet>

当我处理这个时,我从我正在测试 XSLT的http://www.online-toolz.com/tools/xslt-transformation.php收到以下错误

错误:XSLTProcessor::importStylesheet() [xsltprocessor.importstylesheet]: xsl:version: only 1.0 features are supported

它与 media: 标签有关,但我不知道它是什么意思,我定义了命名空间。

4

2 回答 2

1

只需将 version="2.0" 设置为 version="1.0" 就不会抛出错误。

此外,您可以像这样获取有关 XSLT 处理器的一些信息:

xsl:version=<xsl:value-of select="system-property('xsl:version')" />
xsl:vendor=<xsl:value-of select="system-property('xsl:vendor')" />
xsl:vendor-url=<xsl:value-of select="system-property('xsl:vendor-url')" />
xsl:product-name=<xsl:value-of select="system-property('xsl:product-name')" />
xsl:product-version=<xsl:value-of select="system-property('xsl:product-version')" />
xsl:is-schema-aware=<xsl:value-of select="system-property('xsl:is-schema-aware')" />
xsl:supports-serialization=<xsl:value-of select="system-property('xsl:supports-serialization')" />
xsl:supports-backwards-compatibility=<xsl:value-of select="system-property('xsl:supports-backwards-compatibility')" />
msxsl:version=<xsl:value-of select="system-property('msxsl:version')" />
于 2013-03-06T21:30:32.657 回答
0

看起来是网站上的处理器对 v2 功能不满意。

http://www.online-toolz.com/tools/xslt-transformation.php

它在 SharePoint 2010 中工作

于 2013-03-06T19:48:13.167 回答