RSS – Version 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>
......更多的item标签......
<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"?>
或者<?xml version="1.0" encoding="[编码代码在这里]"?>
这是一个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链接(例如提供频道的主页)。频道元素的rdfabout属性的{资源} URL必须与RSS文档中的任何其他rdf:about属性不同,并且是标识频道的URI。通常,这要么是正在描述的主页的URL,要么是可以找到RSS文件的URL。
语法
<channel rdf:about="{resource}">
必需
必需。每个RSS文件最多有1个。
频道标题
资源的识别字符串。在项目中使用时,这是项目链接的名称。在图像中使用时,这是图像的Alt文本。在频道中使用时,这是频道的标题。在文本输入中使用时,这是文本输入的标题。
语法
<title>TutorialsPoint</title>
必需
必需。
最大长度
1-40个字符。
频道链接(URL)
HTML渲染的频道标题链接到的URL,通常是父网站的主页或新闻页面
语法
<link>http://www.tutorialspoint.com</link>
必需
必需。
最大长度
1-500个字符。
频道描述
频道将包含一个描述标签,如下所述:
语法
<description>Your source for tutorials, references and manuals!</description>
必需
必需。
最大长度
1-500个字符。
频道图像标记
建立可选图像元素与此特定RSS频道之间的RDF关联。rdf:resource的{image_uri}必须与图像元素的rdf:about{image_uri}相同。
语法
<image rdf:resource="{image_uri}" />
必需
仅当文档主体中存在图像元素时才需要。
频道项目标记
关联文档中的项目与此特定RSS频道的RDF目录。每个项目的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规范)规定为88×31。
语法
<image rdf:about="{image_uri}">。
必需:
可选的;如果存在,则在频道元素中必须存在。
图像标题标记
频道的图像标记在HTML中呈现时,与其相关联的替代文本(“alt”属性)。
语法
<title>{image_alt_text}</title>
必需
如果存在图像元素,则是必需的。
最大长度
1-40个字符。
图像URL标记
在呈现为HTML的频道图像标记的“src”属性中使用的图像的URL。
语法
<url>{image_url}</url>
必需
如果存在图像元素,则是必需的。
最大长度
1-500个字符。
图像链接标记
HTML呈现的频道图像将链接到的URL。这与频道的标题链接一样是父站点的主页或新闻页面。
语法
<link>{image_link}</link>
必需
如果存在图像元素,则是必需的。
最大长度
1-500个字符。
图像结束标记
图像标记的关闭标记。
语法
</image>
必需
如果存在图像标记,则是必需的。
项目开始标记
虽然通常是新闻头条,但由于RSS 1.0的模块化可伸缩性,这可以是任何东西:讨论贴子、工作列表、软件补丁——任何具有URI的对象。每个RSS文档至少可以有一个项目。虽然RSS 1.0不强制实施上限,但为了与RSS 0.9和0.91向后兼容,推荐最多十五个项目。
{item_uri}必须与RSS文档中的任何其他rdf:about属性不同,并且是标识该项的URI。如果可能,{item_uri}应与项目元素的<link>
子元素的值相同。
推荐每个Feed中的文章数量为1-15.
语法
<item rdf:about="{item_uri}">
必需
必需1个或1个以上。
文章标题标签
文章的标题。
语法
<title>{item_title}</title>
必需
每个文章标签都必需。
最大长度
1-100个字符。
文章链接标签
文章的URL。
语法
<link>{item_link}</link>
必需
每个文章标签都必需。
最大长度
1-500个字符。
文章描述标签
文章的简短描述/摘要。
语法
<description>{item_description}</description>
必需
一个文章标签可选。
最大长度
1-500个字符。
文章结束标签
文章标签的关闭标签。
语法
</item>
必需
每个文章标签都必需。
开始文本输入标签
一个输入字段,用于允许用户将查询提交回发布者的网站。这个元素应该有一个标题,一个链接(到cgi或另一个处理器),包含一些指令的描述和一个名称,用作HTML标记中的名称<input type=text name="[name]">
。
语法
<textinput rdf:about="{textinput_uri}">
必需
可选;如果存在,必须同时存在于频道元素中。
Textinput Title Tag
文本输入字段的描述性标题。例如:“订阅”或“搜索!”。
语法
<title>{textinput_title}</title>
必需
如果存在文本输入,则必需。
最大长度
1-40个字符。
文本输入说明标签
文本输入字段用途的简短说明。例如:“订阅我们的新闻通讯以获取……”或“搜索我们网站的存档……”。
语法
<description>{textinput_description}</description>
必需
如果存在文本输入,则必需。
最大长度
1-100个字符。
文本输入名称标签:
文本输入字段的(变量)名称。
语法
<name>{textinput_varname}</name>
必需
如果存在文本输入,则必需。
最大长度
1-500个字符。
文本输入链接标签
文本输入提交将被定向到的URL(使用GET)。
语法
<link>{textinput_action_url}</link>
必需
如果存在文本输入,则必需。
最大长度
1-500个字符。
文本输入结束标记
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.htm" />
<rdf:li resource="http://tutorialspoint.com/php/index.htm" />
</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.htm">
<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.htm">
<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模块中提供在线查看。