首頁(yè) > 開(kāi)發(fā) > HTML > 正文

RSS 2.0 規范

2018-10-16 21:10:27
字體:
來(lái)源:轉載
供稿:網(wǎng)友
什么是RSS?
    RSS是一種網(wǎng)頁(yè)內容聯(lián)合格式(web content sydication format)。
    它的名字是Really Simple Syndication的縮寫(xiě)。
    RSS是XML的一種。所有的RSS文檔都遵循XML 1.0規范,該規范發(fā)布在W3C網(wǎng)站上。
    
    在一個(gè)RSS文檔的開(kāi)頭是一個(gè)<rss>節點(diǎn)和一個(gè)規定的屬性version,該屬性規定了該文檔將以RSS的哪個(gè)版本表示。如果該文檔以這個(gè)規范來(lái)表示,那么它的version屬性就必須等于2.0。
    
    在<rss>節點(diǎn)的下一級是一個(gè)獨立的<channel>節點(diǎn),該節點(diǎn)包含關(guān)于channel的信息和內容。
    
關(guān)于本文檔    
    該文檔是在2002年秋天撰寫(xiě)的,當時(shí)的RSS版本為2.0.1。
    它包含從RSS 0.91規范(2000年)開(kāi)始的所有的修改和添加,以及包含在RSS 0.92(2000年12月)和RSS 0.94(2002年8月)中的新的特性。
   
必需的頻道節點(diǎn)
    下面有一份必須包含的頻道(channel)節點(diǎn)的列表,每一個(gè)都有一個(gè)簡(jiǎn)單的描述、一個(gè)例子、應該出現的位置和更詳細描述的超鏈接。
   
元素描述范例
title頻道(channel)名稱(chēng)。它可以告訴別人如何訪(fǎng)問(wèn)你的服務(wù)。如果你有一個(gè)與你的RSS文件內容一致的HTML網(wǎng)站,你的title元素值應該與你的網(wǎng)站的標題相同。GoUpstate.com News Headings
link響應該頻道的網(wǎng)站的URLhttp://www.goupstate.com/
description關(guān)于該頻道的描述The latest news from GoUpstate.com, a Spartanburg Herald-Joural Web Site

可選的頻道元素
    下面是可選的頻道元素列表
 
節點(diǎn)描述 范例
language 使用的語(yǔ)言。這允許聚合器對所有的意大利語(yǔ)站點(diǎn)分組。en-us
copyright版權聲明 Copyright 2002, Spartanburg Herald-Journal
managingEditor內容負責人的Emailgeo@herald.com (George Matesky)
webMaster技術(shù)人員的Emailbetty@herald.com (Betty Guernsey)
pubDate內容的發(fā)布時(shí)間Sat, 07 Sep 2002 00:00:01 GMT
lastBuildDate最后更新時(shí)間Sat, 07 Sep 2002 09:42:31 GMT
category指定該頻道所屬的一個(gè)或多個(gè)分類(lèi)。遵循與item級category元素相同的規則。<category>Newspapers</category>
generator生成該頻道的程序名稱(chēng)MightyInHouse Content System v2.3
docs指向rss格式文檔的url地址?http://blogs.law.harvard.edu/tech/rss
cloud允許所有進(jìn)程注冊一個(gè)cloud用于獲得頻道的更新通知,并為rss種子實(shí)現一個(gè)輕量級的發(fā)布訂閱協(xié)議。<cloud domain="rpc.sys.com" port="80" path="/RPC2" registerProcedure="pingMe" protocol="soap"/>
ttlttl是Time to live的縮寫(xiě)。它指示cache的有效保存時(shí)間。<ttl>60</ttl>
image與頻道一起顯示的圖片地址
rating該頻道的統計圖片地址
textInput指定一個(gè)textbox與該頻道一起顯示
skipHours告訴使用者哪些時(shí)段是可以忽略的
skipDays告訴使用著(zhù)哪些天是可以忽略的

<channel>子節點(diǎn)<image>
<image>是一個(gè)可選的<channel>子節點(diǎn),該節點(diǎn)包含三個(gè)必需的子元素和三個(gè)可選的子元素。
<url>是GIF、JPEG或PNG圖像文件的URL地址,該圖像代表整個(gè)頻道
<title>用于描述上面的圖像,等同于HTML語(yǔ)言中的<img>的alt屬性
<link>是要連接的站點(diǎn)的url,當顯示頻道時(shí),圖像的連接指向該站點(diǎn)。
<title>和<link>應該與頻道的<title>和<link>有相同的值
可選的節點(diǎn)包括<width>和<height>,它們是數字類(lèi)型,指定圖像的寬度和高度,單位為像素
<description>就是link的TITLE屬性中文本,它將在調用網(wǎng)頁(yè)時(shí)顯示出來(lái)。

圖像寬度的最大值為144,默認值為88
圖像高度的最大值為400,默認值為31

<channel>子節點(diǎn)<cloud>
<cloud>是一個(gè)可選的<channel>子節點(diǎn)。
它指定一個(gè)可以支持rssCloud接口的web服務(wù),rssCloud接口可以用HTTP-POST,XML-RPC或SOAP1.1實(shí)現。
它的目的是允許通知注冊為cloud的進(jìn)程頻道被更新,從而實(shí)現一個(gè)輕量級的發(fā)布訂閱協(xié)議。
<cloud domain="rpc.sys.com" port="80" path="/RPC2" registerProcedure= "myCloud.rssPleaseNotify" protocol="xml-rpc" />
在這個(gè)例子中,為了請求頻道通知,你需要發(fā)送一個(gè)XML-RPC消息到rpc.sys.com的80端口,路徑為/RPC2。調用的過(guò)程為myCloud.rssPleaseNotify。

<channel>子節點(diǎn)<ttl>
<ttl>是一個(gè)可選的<channel>子節點(diǎn)。
ttl是time to live的縮寫(xiě)。它表示頻道在被刷新前應該被緩存的時(shí)間。這使得rss源可以被一個(gè)支持文件共享的網(wǎng)絡(luò )所管理,例如Gnutella
例如:<ttl>60</ttl>

<channel>子節點(diǎn)<textInput>
<textInput>是<channel>的可選的子節點(diǎn),<textInput>包含四個(gè)子節點(diǎn)。
<title>--提交按鈕的標簽
<description>--該文本輸入區的描述
<name>--文本輸入區的名稱(chēng)
<link>--處理文本輸入的CGI腳本的URL
使用<textInput>的目的有些神秘(?)。你可以用它提供一個(gè)搜索引擎輸入框,或讓讀者提供反饋信息。許多聚合器忽略該節點(diǎn)。

<item>的節點(diǎn)
一個(gè)頻道可以包含許多項目(item)節點(diǎn)。一個(gè)項目可以代表一個(gè)故事――比如說(shuō)一份報紙或雜志上的故事,如果是這樣的話(huà),那么項目的描述則是故事的概要,項目的鏈接則指向整個(gè)故事的存放位置。項目的所有節點(diǎn)都是可選的,但是至少要包含至少一個(gè)標題(title)和描述(description)。

節點(diǎn)描述 范例
titleitem的標題 Venice Film Festival Tries to Quit Sinking
linkitem的URL  http://www.nytimes.com/2002/09/07/movies/07FEST.html
descriptionitem概要Some of the most heated chatter at the Venice Film Festival this week was about the way that the arrival of the stars at the Palazzo del Cinema was being staged.
author作者的email地址oprah@oxygen.net
categoryitem可以包含在一個(gè)或多個(gè)分類(lèi)中Simpsons Characters
comments與item相關(guān)的評論的地址http://www.myblog.org/cgi-local/mt/mt-comments.cgi?entry_id=290
enclosure附加的媒體對象
guid可以唯一確定item的字符串http://inessential.com/2002/09/01.php#a2
pubDateitem發(fā)布的時(shí)間Sun, 19 May 2002 15:21:36 GMT
sourcerss頻道來(lái)源Quotes of the Day

<item>子節點(diǎn)<source>
<source>是<item>的可選節點(diǎn)。
它的值是item來(lái)自的rss頻道的名稱(chēng),從item的title衍生而來(lái)。它有一個(gè)必須包含的屬性url, 該屬性鏈接到XML序列化源。
<source url="http://static.userland.com/tomalak/links2.xml">Tomalak's Realm</source>
該節點(diǎn)的作用是提高連接的聲望,進(jìn)一步推廣新聞項目的源頭。它可以用在聚合器的Post命令中。當從聚合器通過(guò)webblog訪(fǎng)問(wèn)一個(gè)item時(shí),<source>能夠自動(dòng)被生成。

<item>子節點(diǎn)<enclosure>
<enclosure>是<item>的可選節點(diǎn)。
它有三個(gè)必要的屬性。url屬性指示enclosure的位置,length指出它的字節大小,type屬性指出它的標準MIME類(lèi)型
url必須為一個(gè)http url。
<enclosure url="http://www.scripting.com/mp3s/weatherReportSuite.mp3" length="12216320" type="audio/mpeg" />

<item>子節點(diǎn)<category>
<category>是<item>的可選節點(diǎn)。
它有一個(gè)可選屬性或域,該屬性是一個(gè)用來(lái)定義分類(lèi)法的字符串。
該節點(diǎn)的值是一個(gè)正斜杠分割的字符串,它用來(lái)在指定的分類(lèi)法中識別一個(gè)分級位置(hierarchic  location)。處理器可以為分類(lèi)的識別建立會(huì )話(huà)。(Processors may establish conventions for the interpretation of categories)下面有兩個(gè)例子:
<category>Grateful Dead</category>
<category domain="http://www.fool.com/cusips">MSFT</category>
你可以根據你的需要為不同的域(domain)包含很多category節點(diǎn),并且可以在相同域的不同部分擁有一個(gè)前后參照的item。

<item>子節點(diǎn)<pubDate>
<pubDate>是<item>的可選節點(diǎn)。
它的值是item發(fā)布的日期。如果它是一個(gè)沒(méi)有到達的日期,聚合器在日期到達之前可以選擇不顯示該item。
<pubDate>Sun, 19 May 2002 15:21:36 GMT</pubDate>


<item>子節點(diǎn)<guid>
<guid>是<item>的可選節點(diǎn)。
guid是globally unique identifier的縮寫(xiě)。它是一個(gè)可以唯一識別item的字符串。當item發(fā)布之后,聚合器可以選擇使用該字符串判斷該item是否是新的。
<guid>http://some.server.com/weblogItem3207</guid>
guid沒(méi)有特定的語(yǔ)法規則,聚合器必須將他們看作一個(gè)字符串。生成具有唯一性的字符串guid取決于種子的源頭。
如果guid節點(diǎn)有isPermaLink屬性,并且值為真,讀取器就會(huì )認為它是item的permalink。permalink是一個(gè)可在web瀏覽器中打開(kāi)的url鏈接,它指向<item>節點(diǎn)所描述的全部item。
<guid isPermaLink="true">http://inessential.com/2002/09/01.php#a2</guid>

isPermaLink是可選屬性,默認值為真。如果值為假,guid將不會(huì )被認為是一個(gè)url或指向任何對象的url。

<item>子節點(diǎn)<comment>
 
<comment>是<item>的可選節點(diǎn)。
如果出現,它指向該item評論的url
<comments>http://rateyourmusic.com/yaccs/commentsn/blogId=705245&itemId=271</comments>

<item>子節點(diǎn)<author>
 
<author>是<item>的可選節點(diǎn)。
它是item的作者的email。對于通過(guò)rss傳播的報紙和雜志,作者可能是寫(xiě)該item所描述的文章的人。對于聚集型webblogs,作者可能不是責任編輯或站長(cháng)。對于個(gè)人維護的webblog,忽略<author>節點(diǎn)是有意義的。
<author>lawyer@boyer.net (Lawyer Boyer)</author>

發(fā)表評論 共有條評論
用戶(hù)名: 密碼:
驗證碼: 匿名發(fā)表