此外,许多内容治理和 weblog 工具也直接支持 RSS。多数 weblog 工具,包括 Movable Type、Blogger 和 Radio Userland 都支持 RSS。一些内容治理系统,包括 Zope 和 CityDesk 现在也支持它了。
扩展 RSS
RSS 2.0 有许多可选元素,包括多数频道都需要的那些元素。但是它还支持扩展性,因此您可以使用规范中没有的元素。不过,RSS 2.0 规范并没有花费多少时间定义如何实现扩展。关于扩展性,规范中总结为:“RSS 提要可以包含本页中没有描述的元素,只要这些元素定义在一个名称空间中。”
这就留下了很大的想像空间!所幸的是,规范中包含一个例子,您可以参考目前使用的几个例子。
基本的思想是您可以增加需要的标签 —— 但是,增加带有多种含义的元素太轻易了。使用您的频道的人们可能并不知道某个标签是什么含义。比如,假如我要在一个频道中使用 <analog> 标签,它的含义就不很清楚。Web 专家可能认为这个标签指的是 Analog,它是最流行的 Web log 文件分析器。科幻迷可能认为这个标签是关于 Analog 的,一本经典的科幻杂志。音乐家可能认为它指的是流行的合成器类型,生物学家认为这是一种器官,电子工程师认为是一种电路。含糊性使人们很难理解标签的含义。
因此,RSS 答应您增加所喜欢的任何标签,但是要求必须和名称空间一起使用。这样有助于澄清标签的含义。
再回到 <analog> 的例子,我可能希望创建一组关于电子商务的标签,并让 <analog> 标签作为一个“e-business”元素。为此,我增加如下的名称空间:
xmlns:ebusiness="http://www.lewingroup.com/ebusinessChannel"这就创建了一个名为“ebusiness”的名称空间,并表明这个名称空间的文档在我的站点上。为了使用 <analog> 标签,我可以使用这种格式:<ebusiness:analog>。这样就能与其他类似的含义中区分开来,比如 <sciencefiction:analog> 或 <synthesizers:analog>。
关于扩展性,一个更实际的例子可以在 RSS 2.0 规范的示例文件中找到:
清单 2. RSS 2.0 规范示例文件中的名称空间<?xml version="1.0"?><!-- RSS generated by Radio UserLand v8.0.5 on 9/30/2002; 4:00:00 AM Pacific --><rss version="2.0" xmlns:blogChannel="http://backend.userland.com/blogChannelModule"> <channel> <title>Scripting News</title> <link>http://www.scripting.com/</link> <description>A weblog about scripting and stuff like that.</description> <language>en-us</language> <blogChannel:blogRoll> http://radio.weblogs.com/0001015/userland/scriptingNewsLeftLinks.opml </blogChannel:blogRoll> <item> <description>Joshua Allen: <a href="http://www.netcrucible.com/blog/2002/09/29.html#a243"> Who loves namespaces?</a></description> <pubDate>Sun, 29 Sep 2002 19:59:01 GMT</pubDate> <guid> http://scriptingnews.userland.com/backissues/2002/09/29#When:12:59:01PM </guid> </item> </channel></rss>
评论加载中…
![]() |