關聯數據入門——RDF應用
引言
語義網(Semantic Web)是一種數據的網絡,讓數據得以共享,而不僅僅是被應用程序束縛。
但語義網也不僅僅是把數據放在互聯網上,而是試圖將數據聯系起來,并產生數據與現實事物的聯系,以方便人與機器閱讀與理解這些數據。
The Semantic Web isn't just about putting data on the web. It is about making links, so that a person or machine can explore the web of data.
——Linked Data Design Issues . Tim Berners-Lee
關聯數據(Linked Data)是第一種可行的語義網表達形式,它采用RDF數據模型,利用URI(統一資源標識符)命名數據實體,來發(fā)布和部署實例數據和類數據,從而可以通過HTTP協議揭示并獲取這些數據,同時強調數據的相互關聯、相互聯系以及有益于人機理解的語境信息。
Linked data is a set of best practices for publishing and deploying instance and class data using the RDF data model, and uses uniform resource identifiers (URIs) to name the data objects. The approach exposes the data for access via the HTTP protocol, while emphasizing data interconnections, interrelationships and context useful to both humans and machine agents.
——Linked Data FAQ . M.K. Bergman
因為語義網是一項龐大的工程,并相伴著各種困難,使其成為一種長期目標與愿景,而關系數據是一類實踐活動,其可行并實用,成為當前語義網實現的一種最佳可行方案。
RDF的特點
資源描述框架(Resource Description Framework),作為XML(Extensible Markup Language)的一種衍生版本,他是關聯數據的基本數據模型。蒂姆·伯納斯-李(Tim Berners-Lee)在設計它的時候面臨了以下兩個問題:
•怎樣去設計方便易學易于傳播并適合標準化的語言?
•怎樣去設計離散數據的入口和出口?
為了解決這兩個問題,RDF有以下一些特點:
•使用XML作為基本語言
•使用URIs作為現實事物的名字
•使用HTTP URIs使人們知道如何通過名字在網絡中尋找數據(即創(chuàng)建離散數據入口)
•包含與其他URIs的聯系,使人們可以通過其找到更多有用的東西(即創(chuàng)建離散數據出口)
•使用三元組(Triple)形式存儲數據
實際上,一些RDF版本并非使用XML語言,這里主要指的是初始版本。
一個簡單的RDF例子
<?xml version="1.0"?>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:dc="http://purl.org/dc/elements/1.1/">
<rdf:Description rdf:about="http://www.w3.org/">
<dc:title>World Wide Web Consortium</dc:title>
</rdf:Description>
</rdf:RDF>
將該RDF例子通過W3C RDF驗證服務,會出現以下列表:
Triples of the Data Model
Number | Subject | Predicate | Object |
1 | http://www.w3.org/ | http://purl.org/dc/elements/1.1/title | "World Wide Web Consortium" |
這是啥東東?
三元組(Triple),RDF數據模型的基本表現單元。所謂三元組就是:主(Subject)-謂(Predicate)-賓(Object)。
A triple store is designed to store and retrieve identities that are constructed from triplex collections of strings (sequences of letters). These triplex collections represent a subject-predicate-object relationship that more or less corresponds to the definition put forth by the RDF standard.
——Triple Store . Jack Rusher
不同于關系數據,其數據本身沒有龐大的聯系(這在數據網絡如此龐大的數據面前也是不可行的),而是使用類似人類陳述語句(Statement)的方式來存儲數據,例如:
•Tom is a man.(Tom是個男人)
•Tom lives in a red house.(Tom住在一個紅房子里)
•Tom married with Lili.(Tom和Lili結婚了)
可見三元組形式也有強大的數據存儲表達潛力,人類正是這種形式的長期受益者。當然像上面這么表述對人類友好,但對機器卻不怎么友好,因為這種謂語對于賓語并沒有良好的限定,至少機器不這么認為。所以我們應該寫成這樣的模式:
•Tom(Tom) sex(性別) man(男)
•Tom(Tom) house(房子) red(紅色)
•Tom(Tom) wife(妻子) Lili(Lili)
回到標題,這是什么東東?其表述了下列內容:
1.http://www.w3.org (表示該陳述是描述的主體是什么,由于HTTP URI映射現實事物,所以可以看做該是對什么現實事物的描述)
2.http://purl.org/dc/elements/1.1/title (主體的屬性,一般表示賓體的類型,例如dc:title是都柏林核心中用來指明資源名稱的,即客體是該資源的一個名字)
3.World Wide Web Consortium (客體)
別人是如何獲得RDF的?
下圖說明了這個過程:
•首先先對HTTP URI進行請求。
•通常瀏覽器HTTP請求頭是:text/html、application/xhtml+xml類型,故服務器返回一般html/xhtml文檔。
•但對于語義瀏覽器,其HTTP請求頭是:application/rdf+xml類型,故服務器進行303重定向,得到相應RDF文件。
也就是說,對于一個HTTP URI可以返回兩種表達形式:文檔和數據。這樣就建立了兩種不同的網絡,一個利于人類閱讀的文檔網,另一種是利于機器閱讀的數據網。
上一篇:powerbuilder(pb)中 xml的應用一例
欄 目:XML/RSS
下一篇:XML 非法字符(轉義字符)
本文標題:關聯數據入門——RDF應用
本文地址:http://mengdiqiu.com.cn/a1/XML_RSS/11708.html
您可能感興趣的文章
- 01-11XPath入門 - XSL教程 - 3
- 01-11使用Spry輕松將XML數據顯示到HTML頁的方法
- 01-11關于html嵌入xml數據島如何穿過樹形結構關系的問題
- 01-11讀大數據量的XML文件的讀取問題


閱讀排行
本欄相關
- 01-11關于XSL - XSL教程
- 01-11WMLScript的語法基礎
- 01-11選擇模式 - XSL教程 - 2
- 01-11WML學習之五 顯示表單
- 01-11WML學習之三 顯示文本
- 01-11匹配模式 - XSL教程 - 4
- 01-11WML語法大全與相關介紹第1/3頁
- 01-11XPath入門 - XSL教程 - 3
- 01-11測試模式 - XSL教程 - 5
- 01-11WAP建站WML語言語法基礎教程第1/6頁
隨機閱讀
- 08-05織夢dedecms什么時候用欄目交叉功能?
- 08-05dedecms(織夢)副欄目數量限制代碼修改
- 01-10delphi制作wav文件的方法
- 01-10使用C語言求解撲克牌的順子及n個骰子
- 01-10SublimeText編譯C開發(fā)環(huán)境設置
- 01-11Mac OSX 打開原生自帶讀寫NTFS功能(圖文
- 01-10C#中split用法實例總結
- 08-05DEDE織夢data目錄下的sessions文件夾有什
- 04-02jquery與jsp,用jquery
- 01-11ajax實現頁面的局部加載