MDN’s new design is in Beta! A sneak peek: https://blog.mozilla.org/opendesign/mdns-new-design-beta/

50 字解說 RDF

 

好吧,可能比 50 字還要多一點,但重點十分簡單(並且已經幫諸位只想看重點的成功人士標為粗體)。資源描述架構,或稱為「RDF」(Resource Description Framework),其實是指兩件事。

首先,RDF 是種圖像式模型,用以描述網路上的資源(如網頁內容、電子郵件訊息等),以及這些資源之間的關係。

不過這到底是什麼意思?對 Mozilla 開發者來說,這代表 RDF 資料模型(就是那個「圖像」)可以用來組織、整合網路上的資源。

舉「書籤」為例。目前大部分的網頁瀏覽器讓你將書籤歸入資料夾的樹狀結構,每個書籤則指向一個網頁的 URI(通用資源定義符,Uniform Resource Identifier)。

但網頁只是眾多網路資源的其中一項,其他還有如電子郵件內容、新聞群組的訊息(或整個新聞群組)、搜尋引擎的探索結果... 等等。基本上,若說這些其他資源不能存入書籤、與其他書籤擺在一起以資料夾整理,也沒什麼道理。甚至還應該可以建立一個「智慧型」資料夾,點選後就動態找出符合某些條件的內容。

一個「書籤」尚且應有眾多相關的屬性:您可能想自己定義一些書籤的「分類規則」、依據麥金塔的「hot」、「warm」、「cool」色彩標準上色;又或許,您想標示某個書籤與另一個書籤有關,還可能想將其同時放入多個不同的資料夾。

RDF 圖像提供絕佳資料模型,可以建立上述的「通用」書籤服務:這種圖像可以指向任意資源、亦能以幾乎任何想得到的方式組織。

別那麼快下結論,還有...

第二,RDF 是種串接式的語法。這種語法讓圖像式的資料模型可以透過「代理人」溝通。

這又是什麼意思?基本上,這代表 RDF 資料模型可以跨越網路來交流,其圖像內容還可以在收到遠端服務的資訊時動態變更。

我們再回到書籤的例子。就說我有個書籤的「資料夾」,其實指向我的電子郵件收件匣:一旦點選這個資料夾,哇喔,所有昨晚收下來的郵件都列出來了!

不過這是怎麼辦到的?其實這個「收件資料夾」指向一個網路資源,此資源內含更多的 RDF 來拓展資源版圖。此「網路資源」為一個指向 CGI 的 URI(像是 http://www.mozilla.org/smart-mail/get-mail.cgi?user=waterson&folder=inbox),此 CGI 會建立串接 RDF、就像是把一張圖片以 XML 方式表達一樣:

 <rdf:RDF
     xmlns:rdf="http://www.w3.org/TR/WD-rdf-syntax#"
     xmlns:sm="http://www.mozilla.org/smart-mail/schema#">
   <rdf:Description
     about="http://www.mozilla.org/smart-mail/get-mail.cgi?user=waterson&folder=inbox">
     <sm:message id="4025293">
        <sm:recipient>
          Chris Waterson "waterson@netscape.com"
        </sm:recipient>
        <sm:sender>
          Aunt Helga "helga@netcenter.net"
        </sm:sender>
        <sm:received-by>x-wing.mcom.com</sm:received-by>
        <sm:subject>Great recipe for Yam Soup!</sm:subject>
        <sm:body>
          http://www.mozilla.org/smart-mail/get-body.cgi?id=4025293
        </sm:body>
     </sm:message>
     <sm:message id="4025294">
        <sm:recipient>
          Chris Waterson "waterson@netscape.com"
        </sm:recipient>
        <sm:sender>
          Sarah Waterson "waterson.2@postbox.acs.ohio-state.edu"
        </sm:sender>
        <sm:received-by>x-wing.mcom.com</sm:received-by>
        <sm:subject>We won our ultimate game</sm:subject>
        <sm:body>
          http://www.mozilla.org/smart-mail/get-body.cgi?id=4025294
        </sm:body>
     </sm:message>
   </rdf:Description>
 </rdf:RDF>

收到上面這堆怪物之後,RDF 引擎會將 RDF 資料放在圖像中的適當位置。負責實際繪出書籤介面的 Tree 控制項此時將收到通知,知道應該繪出 Aunt Helga 關於 Yam Soup 之信件的一些圖示。

其實,這正是 SmartMail 運作的原理。

聯絡: Chris Waterson (waterson@netscape.com)

原始文件資訊

Interwiki Language Links

文件標籤與貢獻者

 此頁面的貢獻者: irvinfly, BobChao
 最近更新: irvinfly,