日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

全面了解和解析Blog和RSS的含義

 非常主體 2006-10-11

2006-01-04

什么是 Blog?

   “Blog”是 Web Log 的簡(jiǎn)稱(chēng)(譯者注:也就 是網(wǎng)志(中國(guó)大陸也叫博客)。

它是一種作者與讀者以日志風(fēng)格進(jìn)行交互的中介。在軟件社區(qū),人們以網(wǎng)志形式來(lái)共享觀(guān)念與思想變得越來(lái)越流行。如:http://blogs.就是CCW上的一個(gè) blogging?!  ?

   建立網(wǎng)志最輕松的方法是什么?   

   要想建立自己的網(wǎng)志,最容易的方法是到類(lèi)似 blogger.com 這樣的站點(diǎn)注冊(cè)一個(gè)新用戶(hù),它提供一個(gè)創(chuàng)建自定義網(wǎng)志的 Web 界面,并且可以立即使用所創(chuàng)建的網(wǎng)志。類(lèi)似 blogger.com 的站點(diǎn)有很多,它們都提供對(duì)網(wǎng)志特性的支持。 如果你想更多地控制網(wǎng)志的基礎(chǔ)結(jié)構(gòu)或者想要在自己的服務(wù)器上建立網(wǎng)志服務(wù)系統(tǒng)。你可在以下最流行的幾種網(wǎng)志應(yīng)用商業(yè)產(chǎn)品中選擇其一:Radio Userland、Manila 和 Movable Type。還有些易用的免費(fèi) .NET 網(wǎng)志應(yīng)用可以使用,最流行的有:.TEXT 和 dasBlog。只要把它們下載下來(lái),然后按照安裝說(shuō)明進(jìn)行安裝與設(shè)置,分分鐘便可建立起一個(gè)可運(yùn)行的網(wǎng)志服務(wù)系統(tǒng)。

  從功能上講,這兩個(gè)基于 .NET 的網(wǎng)志應(yīng)用系統(tǒng)不相上下。其主要區(qū)別在于 .TEXT 需要數(shù)據(jù)庫(kù),SQL Server 或者 MSDE,而dasBlog 將所有信息都存儲(chǔ)在 XML 文件中(它基于原來(lái)一些微軟公司開(kāi)發(fā)人員創(chuàng)建的 BlogX 框架),另一個(gè)差別是 .TEXT 在單個(gè)安裝配置中可支持多個(gè)網(wǎng)志(比如現(xiàn)在的 http://blogs. 就是如此),而 dasBlog 要支持多個(gè)網(wǎng)志,必須進(jìn)行多次安裝。但 dasBlog 有一個(gè)很突出的特性,那就是“Mail to Weblog”,它允許你通過(guò)郵件來(lái)發(fā)布新信息。

  新的 MSDN 網(wǎng)志服務(wù)站點(diǎn)和 PDC Bloggers 都是開(kāi)始查找關(guān)于軟件開(kāi)發(fā)主題的很好去處。只要瀏覽這些站點(diǎn)之一便可閱讀其經(jīng)過(guò)聚合的預(yù)定內(nèi)容。其預(yù)定的摘要會(huì)向你公開(kāi)許多個(gè)人網(wǎng)志,漸漸的你會(huì)自然而然地發(fā)現(xiàn)一些你比較喜歡閱讀的內(nèi)容。這樣,你便可以直接預(yù)定你最喜歡的個(gè)人網(wǎng)志摘要。

  對(duì)于專(zhuān)門(mén)討論 XML 和 Web 服務(wù)的網(wǎng)志,請(qǐng)查看 MSDN Web Services Developer Center 上的清單,我個(gè)人要花很多時(shí)間上這些網(wǎng)志站點(diǎn)?!  ?

   什么是 Feed(以下稱(chēng)為提要),如何預(yù)定它?   

   網(wǎng)志以 RSS 文檔

  形式為其內(nèi)容提供一個(gè)提要,該 RSS 文檔可以通過(guò)眾所周知 URL 獲得。RSS 文檔是一個(gè) XML 文件,它包含大量離散的新聞項(xiàng),如某個(gè)網(wǎng)志中的入口項(xiàng)(RSS 提要的例子參見(jiàn) Figure 1)。由于 RSS 是 XML 格式文件,所以它很容易被其它程序所使用。

  RSS 聚合器是一個(gè)讀取 RSS 文檔并顯示新聞項(xiàng)的程序。大多數(shù)聚合器只要輸入 RSS 的 URL,使得預(yù)定提要成為可能。

  RSS 使閱讀網(wǎng)志便得容易。大多數(shù)經(jīng)常閱讀網(wǎng)志的開(kāi)發(fā)人員都使用某種類(lèi)型的聚合器來(lái)幫助他們有效地篩選提要內(nèi)容。聚合器使得閱讀網(wǎng)志的感覺(jué)就象是在閱讀電子郵件,因?yàn)樗鼈兺怀鲂侣勴?xiàng)并將新聞項(xiàng)進(jìn)行緩沖處理以便離線(xiàn)閱讀(參見(jiàn) Figure 2)。

  還有一些在線(xiàn) RSS 聚合器將 RSS 提要捆綁到某個(gè)單獨(dú)的網(wǎng)站。其優(yōu)點(diǎn)是易于設(shè)置并且可以從任何計(jì)算機(jī)存取你的提要內(nèi)容。當(dāng)然,其缺點(diǎn)也是顯而易見(jiàn)的,那就是在閱讀時(shí)必須始終保持連接。

  RSS 是網(wǎng)志成為一種強(qiáng)大的新型信息交流形式之根本所在。在網(wǎng)志出現(xiàn)之前,大多數(shù)開(kāi)發(fā)人員為了要查找到需要的內(nèi)容,通常要花大量時(shí)間來(lái)篩選掉那些令人討厭的無(wú)關(guān)的信息。

  網(wǎng)志通過(guò)讓讀者選擇所要閱讀的提要,將控制權(quán)交給讀者,從而有效地構(gòu)建自己的個(gè)性化內(nèi)容流。

  其它類(lèi)型的站點(diǎn)也能利用 RSS 的優(yōu)點(diǎn)來(lái)聚合內(nèi)容。例如,多數(shù)主流的新聞?wù)军c(diǎn)包括 Wired、CNet、Yahoo 和 NPR News 都提供 RSS 提要。訪(fǎng)問(wèn) Blogdigger 和 Syndic8,你可以找到一些支持 RSS 的站點(diǎn)。

    微軟的 MSDN 提供 RSS 提要(RSS feeds)來(lái)聚合新添加到站點(diǎn)的技術(shù)內(nèi)容。MSDN 的 Just Published提要是一種保持 MSDN 新文章和下載的主要方式。甚至 MSDN Magazine(MSDN 雜志)都有其自己的 RSS 提要!可以預(yù)定:http://msdn.microsoft.com/msdnmag/rss/recent.xml 獲得每月的更新以便查看本期有何內(nèi)容?目前有許多種 RSS 聚合器可供選擇,在 http://blogs.law./tech/directory/5/aggregators 上可以找到一個(gè)相當(dāng)完整的列表。其中一些是在線(xiàn)聚合器,而另外一些是桌面應(yīng)用程序。有些是免費(fèi)的,另外一些需要付費(fèi)才能使用。

 哪個(gè) RSS 版本是最通用的?   

  這個(gè)問(wèn)題的答案要看你問(wèn)的是誰(shuí),RSS

  的版本有好多個(gè),0.90、0.91、0.92、0.93、0.94、1.0 和 2.0。要弄清楚這些版本之間的差別是巨大的挑戰(zhàn)之一。理解它們需要了解一些有關(guān)它們的歷史背景。Netscape 創(chuàng)建了 RSS 的最初版本 0.90,起初的名字是“RDF Site Summary”或者“Rich Site Summary”(規(guī)范中說(shuō)前者是正式名稱(chēng))。Netscape 創(chuàng)建 RSS 0.90 用于其 Web 門(mén)戶(hù),這個(gè)時(shí)候,其他人看到了 RSS 的使用潛力。Userland Software 是第一個(gè)開(kāi)始將 RSS 用于其網(wǎng)志商業(yè)產(chǎn)品者之一。

  版本 0.90 在很大程度上基于 W3C 的 Resource Description Framework (RDF)。許多人都認(rèn)為 RDF 過(guò)于復(fù)雜,因此都建議出一個(gè)免費(fèi)的簡(jiǎn)化版本 0.91。這個(gè)任務(wù)恰好就給了 Userland Software。Userland Software 便繼續(xù)發(fā)展 RSS 的簡(jiǎn)化版本,隨后出臺(tái)的版本包括:0.92、0.93 和 0.94。為了強(qiáng)調(diào)其所做的簡(jiǎn)化工作,他們將 RSS 的全稱(chēng)定為“Really Simple Syndication”。

  正當(dāng) Userland Software 繼續(xù)專(zhuān)注于其簡(jiǎn)化工作時(shí),另外一組開(kāi)發(fā)人員在復(fù)興最初的 RDF 版本(0.90),因?yàn)?RSS 號(hào)稱(chēng)自己更靈活。他們最終發(fā)布了一個(gè) RSS 1.0 的版本,其正式名稱(chēng)還是“RDF Site Summary”。由于使用 RDF,這個(gè)版本完全不同于 Userland Software 所控制的版本。Userland Software 當(dāng)然不太愿意看到 RSS 1.0 似乎要取代其 0.94 版本的事實(shí),于是出了一個(gè)新版本,并將版本號(hào)一下子跳到了 2.0。

  這就是今天的這種局面,形成了兩個(gè)主要的競(jìng)爭(zhēng)版本:一個(gè)基于 RDF 1.0,而另一個(gè)則不是(2.0),但它們兩個(gè)都共用相同的名字。這是一種可怕的混亂,因?yàn)榘姹咎?hào)導(dǎo)致人們誤認(rèn)為 2.0 是 1.0 的改進(jìn)版本,而實(shí)際上它們是兩個(gè)目標(biāo)完全不同的規(guī)范。另一組開(kāi)發(fā)人員已經(jīng)下狠心著手解決這種混亂問(wèn)題,通過(guò)定義新的摘要(syndication)規(guī)范來(lái)與 RSS 名字的隨意性決裂。這個(gè)解決方案稱(chēng)為 Atom(原子)項(xiàng)目。本文稍后將會(huì)詳細(xì)討論。

  使用哪個(gè)版本其實(shí)是無(wú)關(guān)痛癢的,大多數(shù) RSS 聚合機(jī)制支持所有的 RSS 版本(有些甚至支持 Atom)。最終的決定取決于你是否想使用 RDF,可謂蘿卜白菜,各有所愛(ài),它完全要看某人所信奉的 Semantic Web 概念而定。

  RSS 1.0 和 RSS 2.0 各是什么樣子?   

  RSS 1.0

  和 2.0 格式所包含的核心信息相同,但其結(jié)構(gòu)不一樣。我提供了一個(gè) RSS 1.0 文檔(參見(jiàn) Figure 1)以及一個(gè)同等的 RSS 2.0(參見(jiàn) Figure 2)用于對(duì)照。

  你會(huì)注意到頂行右邊開(kāi)始的根元素的差異,RSS 1.0 的根元素是 rdf:RDF,而 RSS 2.0 的根元素是 rss。rss 還包含一個(gè)強(qiáng)制版本屬性用以表示所用的RSS的準(zhǔn)確格式(可能的值包括:0.91, 0.94 等)。另一個(gè)主要差別是 RSS 1.0 文檔有名字空間限定,RSS 2.0 的文檔就沒(méi)有。不管怎樣,包含在兩個(gè)文檔中的信息本質(zhì)上是一樣的。

  兩個(gè)版本都包含 channel 元素,而 channel 元素又包含三個(gè)必須的元素:title、description 和 link,其代碼如下:

 ?。糲hannel>

   <title><!– channel 的標(biāo)題 –></title>

   <description><!– 簡(jiǎn)要描述 –></description>

   <link><!– channel 的 URL –></link>

   <!– 可選/可擴(kuò)展元素 –>

  </channel>

    除了這些必須的元素外,RSS 1.0 還定義了三個(gè)附加元素:image、items 和 textinput,其中,image 和 textinput 是可選的。另一方面,RSS 2.0 提供了 16 個(gè)附加元素,其中也包括 image、items 和 textinput,此外還有 language、copyright、managingEditor、pubDate 和 category。RSS 1.0 允許通過(guò)定義在單獨(dú)的 XML 名字空間中的可擴(kuò)展元素來(lái)創(chuàng)建這種類(lèi)型的元數(shù)據(jù)。

    這兩種格式在結(jié)構(gòu)上的主要區(qū)別必須要看其 item、image 和 textinput 節(jié)點(diǎn)的表示形式。RSS 1.0 中,channel 元素包含對(duì) item、image 和 textinput 節(jié)點(diǎn)的引用,這些節(jié)點(diǎn)存在于 channel 節(jié)點(diǎn)本身之外。這樣在 channel 和 所引用的節(jié)點(diǎn)之間建立了一種 RDF 關(guān)聯(lián)。如 Figure 1 所示,channel 元素與一個(gè) image 元素以及兩個(gè) item 元素關(guān)聯(lián)。RSS 2.0 中,item 元素只是在 channel 元素中連續(xù)排放(如 Figure 2 所示)。item 元素包含實(shí)際的新聞項(xiàng)信息。item 的結(jié)構(gòu)在兩個(gè)版本中是相同的。item 元素通常包含 title、link 和 description 元素,如下代碼所示:

  

  <item>

   <title><!– 項(xiàng)標(biāo)題 –></title>

   <link><!– 項(xiàng) URL –></link>

   <description><!– 簡(jiǎn)要描述 –></description>

   <!– 可選的/可擴(kuò)展的元素 –>

 ?。?item>

    在 RSS 1.0 中,title 和 link 是必須的,description 是可選的。而在 RSS 2.0 中,title 或 description 必須提供其中的一個(gè);其它均可選。這些只是定義在 RSS 1.0 中的 item 元素。RSS 2.0 提供幾個(gè)其它可選元素,其中有 author、category、comments、enclosure、guid、pubDate 和 source。RSS 1.0 獲取這樣的元數(shù)據(jù)是通過(guò)定義在單獨(dú)的 XML 名字空間中稱(chēng)為 RSS 模塊的可擴(kuò)展元素來(lái)實(shí)現(xiàn)的。例如,在 Figure 1 中,item 的日期是用 Dublic Core 模塊的 <dc:date> 元素表示的。
 
  有關(guān)不同格式的完整信息請(qǐng)參考 RSS 1.0 和 2.0 規(guī)范。

那么,何為 Atom?   

   前面我提到過(guò),Atom 乃一項(xiàng)目的名字,主要是開(kāi)發(fā)一個(gè)新的網(wǎng)志摘要格式以解決目前 RSS 存在的問(wèn)題(混亂的版本號(hào),不是一個(gè)真正的開(kāi)放標(biāo)準(zhǔn),表示方法的不一致,定義貧乏等等)。Atom 希望提供一個(gè)清晰的版本以解決每個(gè)人的需要,其設(shè)計(jì)完全不依賴(lài)于供貨商,任何人都可以對(duì)之進(jìn)行自由擴(kuò)展,完整詳細(xì)說(shuō)明。

  當(dāng)今許多 Blog 引擎已經(jīng)支持當(dāng)前的摘要格式。Figure 3 是一個(gè)Atom 0.3 提要例子,它與前述 Figure 1 及 Figure 2 RSS 提要等同。注意 Atom 提要用名字空間限定的,但它不使用 RDF。這使得 Atom 和 RSS 1.0 及 RSS 2.0 在某些地方有相似之處。Atom 在未來(lái)是否能被接受,人們拭目以待。

  除了定義新的摘要格式之外,Atom 還希望定義一個(gè)標(biāo)準(zhǔn)的檔案文件格式和一個(gè)標(biāo)準(zhǔn)的網(wǎng)志編輯 API(Atom API)。有關(guān) Atom 詳細(xì)規(guī)范以及其它 Atom 資源請(qǐng)?jiān)L問(wèn) The Atom Project。

  什么是 blogroll?

   blogroll 是網(wǎng)志提要的集合,

  大多數(shù) blogger(博客)在其個(gè)人網(wǎng)志上都提供 blogroll。這就允許讀者連接到其他趣味和寫(xiě)作風(fēng)格相投的人的網(wǎng)志上。Blogroll 方便了網(wǎng)絡(luò)上的溝通。通過(guò)使用Outline Processor Markup Language (OPML),人們可以用 XML 格式文件交換 blogroll。Figure 4 是 blogroll 的一個(gè)例子。

    大多數(shù)網(wǎng)志引擎都自己管理 blogroll,每當(dāng)讀者請(qǐng)求 blogroll 時(shí)都自己產(chǎn)生相應(yīng)的 XML 格式。同樣,大多數(shù)聚合器都能導(dǎo)入 blogroll 并自動(dòng)預(yù)定所包含的摘要。有關(guān) OPML 更多的信息參見(jiàn) http://opml.。

  能解釋 referrers、trackbacks 和 pingbacks 是什么嗎?

   大多數(shù)網(wǎng)志軟件都能讓讀者添加網(wǎng)志評(píng)論。但更常見(jiàn)的做法是讓讀者在其自己的網(wǎng)志添加一個(gè)入口回鏈到原來(lái)的帖子。博客們(Bloggers)都樂(lè)于跟蹤連接發(fā)生的時(shí)間以便新讀者能理解整個(gè)會(huì)話(huà)內(nèi)容。

  所謂 referrer 是一個(gè)外部站點(diǎn),用戶(hù)單擊該站點(diǎn)上一個(gè)超鏈接便可以到達(dá)你的網(wǎng)站。許多網(wǎng)志引擎當(dāng)讀者導(dǎo)航到你的網(wǎng)志的某個(gè)入口時(shí)都能自動(dòng)保持跟蹤。大多數(shù)引擎都會(huì)在網(wǎng)志入口底部顯示一個(gè) referrers 清單,以便讀者能往回導(dǎo)航到 referrer 的站點(diǎn),并清楚他們關(guān)于該入口要說(shuō)些什么,這基于一個(gè)假設(shè),那就是如果他們鏈接到它,可能就此會(huì)寫(xiě)些什么。referrer 存在的問(wèn)題是必須要有這個(gè)假設(shè)才成立??沒(méi)有足夠的信息說(shuō)明是否引用的頁(yè)面事實(shí)上包含有關(guān)信息。實(shí)際上,垃圾信息的發(fā)布者為了營(yíng)銷(xiāo)企圖已經(jīng)利用了這個(gè)漏洞來(lái)重定向讀者。
  Trackback 和 pingback 同一個(gè)規(guī)范,被用來(lái)彌補(bǔ)上述問(wèn)題的方案。使用 trackback 和 pingback,其他博客們能自動(dòng)發(fā)送一個(gè) ping 到你的網(wǎng)志以明確表示他們已經(jīng)寫(xiě)了一個(gè)引用特定帖子的入口。

  這種類(lèi)型的反鏈允許你的網(wǎng)志以更明顯的方式顯示所有評(píng)論的清單。當(dāng)今大多數(shù)網(wǎng)志軟件支持所有這些技術(shù)。參見(jiàn) TrackBack Technical Specification 和 Pingback 1.0。

如何為我的站點(diǎn)產(chǎn)生 RSS 提要?   

   Figure 5 舉例說(shuō)明了

  如何用 asp:Repeater 控件在 .aspx 頁(yè)面中生成 RSS 2.0 提要。該頁(yè)面假設(shè)你已經(jīng)在后端代碼文件中將控件的 DataSource 屬性設(shè)置成對(duì)應(yīng)的數(shù)據(jù)庫(kù)結(jié)果集?!  ?

   我想聚合幾個(gè) RSS 提要并將信息顯示在個(gè)人網(wǎng)站上,能解釋一下如何實(shí)現(xiàn)嗎?   

   因?yàn)?RSS 提要是 XML 文件,作為練習(xí),你可以用自己最擅長(zhǎng)的 XML API,比如,Microsoft .NET Framework 中的 System.Xml,F(xiàn)igure 6 中包含 ASP.NET Web 用戶(hù)控件代碼,它是我編寫(xiě)用來(lái)聚合 blogroll 文件中(.opml)所列出的 RSS 提要的一段代碼。這段代碼假設(shè) opml 元素包含 numberToDisplay 屬性,以表示你打算顯示的每個(gè)提要有多少項(xiàng)。

  

  Figure 7 ASP.NET Web 用戶(hù)控件
 
  你可以將控件拖到任何 .aspx 頁(yè)面中,它將顯示 blogroll 文件中列出的不同提要的項(xiàng),F(xiàn)igure 7 顯示了 Utah .NET User Group 網(wǎng)站使用這個(gè)控件的效果畫(huà)面。

  有沒(méi)有與網(wǎng)志交互的 Web Services APIs?
 

   許多網(wǎng)志引擎都提供屬于自己的 Web service 接口,通過(guò)編程與網(wǎng)志交互,但目前還沒(méi)有出現(xiàn)一種標(biāo)準(zhǔn)化的東西。

  .Text 和 dasBlog 兩者都提供某些 .asmx 端點(diǎn),可以通過(guò) SOAP 來(lái)實(shí)現(xiàn)編輯功能,但其接口是不同的。Blogger.com 提供基于 XML-RPC 的交互式 API (Blogger API)。Userland Software 對(duì)Blogger API 的功能進(jìn)行了增強(qiáng),并把它叫做 MetaWeblog API。這些可能是當(dāng)今公認(rèn)的網(wǎng)志 APIs,但仍然不是所有網(wǎng)志引擎都支持的。還有一個(gè)用于添加評(píng)論的獨(dú)力的 API 叫做 Comment API,同樣,它也不是被普遍支持。

    Atom 組正在努力解決這些問(wèn)題,Atom API 定義了一個(gè)標(biāo)準(zhǔn)的網(wǎng)志 API 用于發(fā)布和編輯網(wǎng)志內(nèi)容。有關(guān)信息請(qǐng)參考 The Atom Project 網(wǎng)站。

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶(hù)發(fā)布,不代表本站觀(guān)點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買(mǎi)等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶(hù) 評(píng)論公約

    類(lèi)似文章 更多