粗说RSS

来源:互联网 发布:泽野弘之知乎 编辑:程序博客网 时间:2024/04/28 09:43

 2003年我加入CSDN的时候,blog刚刚开始流行。那个时候CSDN已经有一个“文档中心”,其中汇集了某个作者发表在CSDN上的所有文章。无论从那个方面来看,我都不觉得这个blog跟文档中心有什么实质的差别。不过很快韩磊就告诉我,blog是可以订阅的,这一下区别就很明显了。不多时,blog火了,随之“RSS” 成了一个热词儿。

 我这个人有一个怪癖,就是对所有英文缩写词我都喜欢问一个究竟,到底代表啥意思。通常情况下这都很有好处,能够加强理解和记忆。然而在RSS这个词上,我却吃尽了苦头。有的人告诉我,RSS代表“Really Simple Syndication”,有的文章里说RSS的本义是“RDF Site Summary”,更有甚者,还有人说是“Rich Site Summary”,简直乱七八糟,越听越糊涂。我花了好大劲才搞明白其中的来龙去脉:

 1. 1999年Netscape发布RSS 0.90规范,这个规范后来成为RSS 1.0的出发点,这个时候RSS代表RDF Site Summary,因为这个规范是基于W3C RDF(Resource Description Framework)建立起来。

 2. 2001年Netscape发布RSS 0.91规范,这个时候RSS也不再基于RDF,而是重新设计,名字也改为Rich Site Summary。

 3. 在RSS 0.91的基础之上,Web社群自发建立了RSS 2.0规范,这其中的RSS代表Really Simple Syndication。其实从技术上看,RSS 2.0跟RSS 1.0已经没有什么关系了,但是名字上却好像是同一个技术规范的升级版本一样,这样就带来了认识上的混乱。

 4. 还不仅仅是认识混乱的问题,无论是RSS 1.0还是RSS 2.0,都存在一些设计不周到的地方,比如对于尖括号字符的处理。所以后来又定义了ATOM作为新的syndication标准格式。

 5. 以ATOM为基础,IETF正在制定ATOM Publishing Protocol(APP)协议,这是一个非常通用的应用层协议,用于发布和编辑Web资源,是为REST量身定做的协议,很值得注意。Google的GData API就是在APP基础上扩展而成的。不过Microsoft对APP不太满意,于是另起炉灶,搞了一个Web3S协议,用于同样目的。

 另外,syndication是个大有来头的词。Syndicate是“辛迪加”的词源,而“辛迪加”是指工业联合会。在新闻媒体行业,“辛迪加”特指报业辛迪加,也就是发布同一篇文章或图片,以供辛迪加内的各报章刊登。很明显,这跟在我们Web上用RSS或ATOM要做到的事情一模一样。所以syndication是一个非常准确的词。很多人把这个词翻译为“同步”,显然失去了其真义。

 关于APP与Web3S的争论,InfoQ上的这篇文章是一个很好的入口。