RSS - 版本 1.0 标签和语法

以下是 RSS 1.0 文档的结构:

<?xml version="1.0"?>
<rdf:RDF>

   <channel>
      <title>...</title>
      <link>...</link>
      <description>...</description>
      
      <image />
      <items>...</items>
      <textInput />
   
   <image>
      <title>...</title>
      <url>...</url>
      <link>...</link>
   </image>
   
   <item>
      <title>...</title>
      <link>...</link>
      <description>...</description>
   </item>
   
   ......More item tags.....
   <textInput>
      <title>...</title>
      <description>...</description>
      <name>...</name>
      <link>...</link>
   </textInput>

</rdf:RDF>

以下是与 RSS 1.0 相关的所有可选和强制标签的详细信息。查看给定的示例,为您的网站准备 RSS v1.0 Feed。

注意:所有标签都区分大小写,应谨慎使用。

XML 版本标识符

作为 XML 应用程序,RSS 文档不需要以 XML 声明开头。它应该以 XML 版本标识符标签开头。

语法

  • <?xml version="1.0"?> or
  • <?xml version="1.0" encoding="[ encoding code here ]"?>

以下是 RSS v1.0 支持的编码列表。

必需

始终准确。可选编码属性(默认为 UTF-8)。

rdf:RDF 标签

每个符合 RSS 1.0 的文档的最外层都是 RDF 元素。打开的 RDF 标记将 rdf: 命名空间前缀与 RDF 语法模式关联起来,并将 RSS 1.0 模式建立为文档的默认命名空间。

语法

<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://purl.org/rss/1.0/">

必需

始终准确。

开始频道标记

频道元素包含描述频道本身的元数据,包括标题、简要说明和所描述资源(例如频道提供商的主页)的 URL 链接。

频道元素的 rdf:about 属性的 {resource} URL 必须相对于 RSS 文档中的任何其他 rdf:about 属性是唯一的,并且是标识频道的 URI。最常见的是,这是正在描述的主页的 URL 或可以找到 RSS 文件的 URL。

语法

<channel rdf:about="{resource}">

必需

必需。每个 RSS 文件最多 1 个。

title 频道标题

资源的标识字符串。在项目中使用时,这是项目链接的名称。在图像中使用时,这是图像的 Alt 文本。在频道中使用时,这是频道的标题。在文本输入中使用时,这是文本输入的标题。

语法

<title>TutorialsPoint</title>

必需

必需。

最大长度

1-40 个字符。

link 频道链接 (URL)

频道标题的 HTML 呈现将链接到的 URL,通常是父站点的主页或新闻页面

语法

<link>http://www.tutorialspoint.com</link>

必需

必需。

最大长度

1-500 个字符。

description 频道描述

频道将具有如下所述的描述标签:

语法

<description>教程、参考和手册的来源!</description>

必需

必需。

最大长度

1-500 个字符。

image 频道图像标签

在可选图像元素和此特定 RSS 频道之间建立 RDF 关联。 rdf:resource 的 {image_uri} 必须与图像元素的 rdf:about {image_uri} 相同。

语法

<image rdf:resource="{image_uri}" />

必需

仅当文档主体中存在图像元素时才必需

items 频道项目标签

RDF 目录,将文档的项目与此特定 RSS 频道关联起来。每个项目的 rdf:resource {item_uri} 必须与关联项目元素的 rdf:about {item_uri} 相同。

使用 RDF Seq(序列)包含所有项目,而不是使用 RDF Bag 来表示渲染和重建的项目顺序。

请注意,出现在文档中但不作为通道级项目序列成员的项目可能会被 RDF 解析器丢弃。

语法

<items><rdf:Seq><rdf:li resource="{item_uri}" /> ... </rdf:Seq></items>

必需

必需。

频道 textInput 标记

在可选的 textinput 元素和此特定 RSS 频道之间建立 RDF 关联。{textinput_uri} rdf:resource 必须与 textinput 元素的 rdf:about {textinput_uri} 相同。

语法

<textinput rdf:resource="{textinput_uri}" />

必需

仅当 texinput 元素存在时才必需。

结束频道标记

频道开始标记需要一个结束频道。

语法

</channel>

必需

必需。

图像开始标记:

与频道的 HTML 呈现相关联的图像。此图像应为大多数 Web 浏览器支持的格式。虽然后来的 0.91 规范允许宽度为 1-144,高度为 1-400,但惯例(和 0.9 规范)规定为 88x31。

语法

<image rdf:about="{image_uri}">.

必需:

可选;如果存在,也必须存在于频道元素中。

title 图像标题标签

呈现为 HTML 时与频道图像标签关联的替代文本("alt"属性)。

语法

<title>{image_alt_text}</title>

必需

如果存在图像元素,则必需。

最大长度

1-40 个字符。

图像 URL 标签

以 HTML 呈现时,在频道图像标签的"src"属性中使用的图像 URL。

语法

<url>{image_url}</url>

必需

如果存在图像元素,则必需。

最大长度

1-500 个字符。

link 图像链接标签

频道图像的 HTML 呈现将链接到的 URL。与频道的标题链接一样,这通常是父站点的主页或新闻页面。

语法

<link>{image_link}</link>

必需

如果图像元素存在,则必需。

最大长度

1-500 个字符。

图像结束标记

图像标记的结束标记。

语法

</image>

必需

必需;如果存在图像标记。

项目开始标记

虽然通常是新闻标题,但借助 RSS 1.0 的模块化可扩展性,这几乎可以是任何内容:讨论帖子、工作列表、软件补丁——任何具有 URI 的对象。每个 RSS 文档至少可以有一个项目。虽然 RSS 1.0 不强制执行上限,但为了向后兼容 RSS 0.9 和 0.91,建议最多有 15 个项目。

{item_uri} 必须相对于 RSS 文档中的任何其他 rdf:about 属性是唯一的,并且是标识项目的 URI。{item_uri} 应与 <item> 的 <link> 子元素的值相同元素(如果可能)。

建议每个 Feed 的项目数为 1-15。

语法

<item rdf:about="{item_uri}">

必填

必填 1 个或多个。

title 项目标题标签

项目的标题。

语法

<title>{item_title}</title>

必填

必填;每个项目标签均有。

最大长度

1-100 个字符。

link 项目链接标签

项目的 URL。

语法

<link>{item_link}</link>

必需

必需;带有每个项目标签。

最大长度

1-500 个字符。

description 项目描述标签

项目的简要描述/摘要。

语法

<description>{item_description}</description>

必需

可选;带有项目标签。

最大长度

1-500 个字符。

项目结束标签

项目标签的结束标签。

语法

</item>

必需

必需;对于每个项目标签。

开始文本输入标签

输入字段,用于允许用户将查询提交回发布商的网站。此元素应具有标题、链接(指向 cgi 或其他处理器)、包含一些说明的描述以及名称,用作 HTML 标签中的名称 <input type=text name="[name]">

语法

<textinput rdf:about="{textinput_uri}">

必需

可选;如果存在,也必须存在于频道元素中。

textinput_title 文本输入标题标签

文本输入字段的描述性标题。例如:"订阅"或"搜索!"。

语法

<title>{textinput_title}</title>

必填

如果存在 textinput,则必填。

最大长度

1-40 个字符。

Textinput 描述标签

textinput 字段用途的简要描述。例如:"订阅我们的新闻通讯..."或"搜索我们网站的存档..."。

语法

<description>{textinput_description}</description>

必填

如果存在 textinput,则必填。

最大长度

1-100 个字符。

Textinput 名称标签:

文本输入字段的(变量)名称。

语法

<name>{textinput_varname}</name>

必填:

如果存在 textinput,则必填。

最大长度

1-500 个字符。

Textinput 链接标记

textinput 提交将定向到的 URL(使用 GET)。

语法

<link>{textinput_action_url}</link>

必填

如果存在 textinput,则必填。

最大长度

1-500 个字符。

Textinput 结束标记

textInput 的结束标记。

语法

</textInput>

必需

textinput 必需。

rdf:RDF 结束标记

这是 RSS1.0 文档的结束标记。

语法

</rdf:RDF>

必需

必需。

使用特殊字符和 HTML 实体

尽管 RSS 1.0 文件是 XML 文档,但 RSS 0.91 通过支持全套 HTML 实体扩展了 XML。如果您想在 <url> 或 <link> 中使用特殊字符(如 &)标签,您必须用适当的小数或 HTML 实体替换这些字符。

在我们的 HTML 教程中查看完整的 HTML 实体

RSS 版本 1.0 示例 Feed

以下是示例 Feed 文件,展示了如何使用版本 1.0 编写 RSS Feed。

<?xml version="1.0"?>

<rdf:RDF 
   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
   xmlns="http://purl.org/rss/1.0/">
   
   <channel rdf:about="http://www.tutorialspoint.com">
      <title>TutorialsPoint</title>
      <link>http://tutorialspoint.com/rss</link>
   
      <description>
         Online Tutorials and Reference Manuals
      </description>
   
      <image rdf:resource= "http://tutorialspoint.com/images/tp-logo.gif" />
   
      <items>
         <rdf:Seq>
         <rdf:li resource="http://tutorialspoint.com/rss/index.html" />
         <rdf:li resource="http://tutorialspoint.com/php/index.html" />
         </rdf:Seq>
      </items>
   
      <textinput rdf:resource= "http://www.tutorialspoint.com/tp-contact.php" />
   
   </channel>
   
   <image rdf:about="http://tutorialspoint.com/images/tp-logo.gif">
      <title>TutorialsPoint Logo</title>
      <link>http://tutorialspoint.com</link>
      <url>http://tutorialspoint.com/images/tp-logo.gif</url>
   </image>
   
   <item rdf:about="http://tutorialspoint.com/rss/index.html">
      <title>A simple RSS tutorial</title>
      <link>http://tutorialspoint.com/rss/index.htm</link>
   
      <description>
         Learn RSS in simple and easy steps.
      </description>
   
   </item>
   
   <item rdf:about="http://tutorialspoint.com/php/index.html">
      <title>A complete guide for PHP Programmers</title>
      <link>http://tutorialspoint.com/php/index.htm</link>
   
      <description>
         A free online guide for PHP. Learn PHP in very easy steps.
      </description>
   
   </item>
   
   <textinput rdf:about="http://www.tutorialspoint.com/tp-contact.php">
      <title>Contact TutorialsPoint</title>
   
      <description>
         Contact TutorialsPoint for more detail
      </description>
   
      <name>s</name>
   
      <link>
         http://www.tutorialspoint.com/cgi-bin/tp-contact.cgi
      </link>
   
   </textinput>
</rdf:RDF>

RSS 1.0 文件扩展名

RSS 1.0 文档不需要特定的文件扩展名。建议使用 .rdf 或 .xml,前者为首选。

RSS 1.0 模块

RSS 1.0 模块保存在单独的文档中,可从 RSS 1.0 模块 在线获取。

rss-feed-formats.html