RSS是一种消息来源格式规范,用以发布经常更新资料的网站,例如博客、新闻的网摘。RSS文件,又称做摘要、网摘、更新、频道等,包含了全文或节选文字,再加上一定的属性数据。RSS让发布者自动发布信息,也使读者能够聚合和定期更新不同网站的网摘。RSS可以通过以网页或桌面为架构的软件来阅读,即RSS阅读器、新闻聚合器等,并进行定期更新检查、自动下载。
RSS可以是以下三种解释中任一种的缩写,
Really Simple Syndication
RDF (Resource Description Framework) Site Summary
Rich Site Summary
RSS规范的主要版本有0.91、1.0和2.0等。
1.0版和0.91版内容不同、风格不同、制定标准的人也不同,称为RDF分支;
2.0版和0.91版一脉相承,称为2.*分支。
早期版本的RSS阅读器不支持RDF分支,而当前主流的RSS阅读器都同时兼容两种分支。
RSS 2.*规范由美国人Dave Winer个人进行维护,在全球大部分网站得到使用。可能是版权方面的原因,RSS 2.*规范并没有在W3C、IETF或者ISO等国际标准化组织发布,而是在RSS Advisory Board发布。
RSS 2.0规范说明
RSS标志
本规范是RSS 2.0规范的2.0.10版本,2007-10-15在RSS Advisory Board发布,波波坡原创翻译。点击这个链接可以获得RSS的最新版本的英语规范。
RSS是一个Xml格式的数据或文件,根节点是一个带有版本号的
必须的子节点:
项目说明举例
频道名称。
程序员的波波坡。
与频道关联的Web站点或者站点区域的Url。
http://www.bobopo.com
简要介绍该频道是做什么的。
包含编程、休闲、知识、杂记的程序员站点。
可选的子节点:
项目说明举例
频道内容使用的语言。详见常用HTML、RSS语言代码列表。
zh-cn
频道内容的版权说明。
Copyright 2008,2009 bobopo.com
责任编辑的Email地址。
rosbicn@hotmail.com
频道相关网站管理员的Email地址。
rosbicn@hotmail.com
频道内容发布日期。遵循RFC 822。
Wed, 04 Mar 2009 00:00:01 GMT
频道内容最后的修改日期。遵循RFC 822。
Wed, 04 Mar 2009 09:42:31 GMT
频道所属的一个或几个类别。详见后文。
Html
生成该频道的程序名字符串。
Bobopo Site Generator 2009
解释当前RSS文件的文档的Url。(给不知道啥是RSS的某人看:)
http://www.bobopo.com/code/rss.htm
允许进程注册为“cloud”,频道更新时通知它,为 RSS 提要实现了一种轻量级的发布-订阅协议。详见后文。
详见后文。
内容有效期,一个数字,指明该频道可被缓存的最长分钟数。
60
指定一个 GIF或JPEG或PNG图片,用以与频道一起显示。详见后文。
详见后文。
內容分级,主要指成人、限制、儿童等,多数情况不用,如果要用参见PICS。
定义可与频道一起显示的输入框。多数情况不用。详见后文。
提示新闻聚合器,哪些小时时段它可以跳过。可包含最多24个
提示新闻聚合器,那些天它可以跳过。可包含最多7个
项目说明举例
项目的名称。
RSS简介。
项目的Url。
http://www.bobopo.com/article/rss.htm
项目的摘要。
RSS(简易资讯聚合)是一种消息来源格式规范,用以发布经常更新资料的网站,例如部落格文章、新闻、音讯或视讯的网摘。RSS文件(或称做摘要、网络摘要、或频更新,提供到能道)包含了全文或是节录的文字,……
作者的Email地址。通常忽略。
rosbicn@hotmail.com
频道所属的一个或几个类别。详见后文。
Html
与此项目相关的评论的Url。
http://www.bobopo.com/comments/rss.htm
此项目相关的多媒体附件。属性url表示附件网址,属性length表示附件字节数,属性type表示附件的MIME类型。
项目的唯一识别码。详见后文。
http://www.bobopo.com/article/rss.htm
项目的发布日期。遵循RFC 822。
Wed, 04 Mar 2009 00:00:01 GMT
项目来源于哪个Rss频道。如果一个Rss是从其他Rss转贴过来,可以用这个。必须包含属性url,指向另外一个rss。
示例1:对HTML标记进行编码。
结果:this is bold
示例2:HTML标记放在CDATA段中编码。
结果:this is bold
示例3:对尖括号进行编码
结果:5 < 8, ticker symbol
示例4:尖括号放在CDATA段中编码。
结果:5 < 8, ticker symbol
示例如下,
guid是全球唯一识别码的意思,用来唯一确定Rss项目的字符串。现在,一个新闻聚合器往往用这个字符串来判断某个项目是不是新的。
guid并没有什么语法上面的规定,新闻聚合器肯定把它视作字符串。建立这个字符串的唯一性取决于项目的内容。往往用项目相关的Url来做guid。
如果
这个东西主要是给HTTP-POST、XML-RPC或者SOAP 1.1这类的Web Service用的。如果真的要用,请看这里。
项目说明举例
必须。cloud程序所在机器的域名或IP地址。
rpc.bobopo.com
必须。访问cloud程序所通过的端口。
80
必须。程序所在路径,不一定需要是真实路径。
/RPC2
必须。 注册的可提供的服务或过程。
cloud.rss
必须。协议,http-post、xml-rpc、soap之一。
xml-rpc
示例如下,
项目说明举例
必须。表示该频道的Gif、Jpeg或Png图像的Url。
http://www.bobopo.com/style/images/bobopo.gif
必须。图象描述。当频道以Html呈现时用作标签的alt属性。
程序员的波波坡。
必须。站点Url,当频道以Html呈现时,该图像会链接到此。
http://www.bobopo.com
可选。 数字,图象的像素宽度,最大值144,默认值为88。
120
可选。 数字,图象的像素高度,最大值400,默认值为31。
120
可选。 当频道以Html呈现时,作为围绕着该图像形成的链接Tag的title属性。
包含编程、休闲、知识、杂记的程序员站点。
上述
用户可以用
项目说明
必须。输入框中Submit按钮上的文字。
必须。输入框的解释。
必须。输入框对象的名字。
可选。 输入框提交的Url。
RSS 2.0代码示
我的另一篇博文有讲怎么用C# 3.5、4.0来生成和解析rss 详见:用C#实现RSS的生成和解析,支持RSS2.0和Atom格式
发表评论