FOAF文件的清洗、檢索、繪圖

信息系統(tǒng)前沿課--范老師授課

第二次作業(yè)

一、重新使用Markdown

熟悉語法,了解Markdown的用法,選擇在線編輯工具簡書進行編輯。

二、回顧xml、rdf、Foaf

1、xml語言

xml語言與HTML語言既相識有不同,在我的理解看來HTML語言更加注重的是簡潔、規(guī)范化的網(wǎng)絡(luò)設(shè)計語言,用來顯示網(wǎng)頁就好。xml語言我認為其復(fù)雜性是高于HTML語言的,設(shè)計其的主要作用應(yīng)該是著重于對于其要表現(xiàn)的內(nèi)容的數(shù)據(jù)表示。以后的可讀性、遷移性、更新的難度應(yīng)該要低一些。

2、rdf資源描述框架

我覺得就是結(jié)構(gòu)化的xml框架,能夠描述xml文件中的各種數(shù)據(jù)區(qū)分數(shù)據(jù)與元數(shù)據(jù)。

3、Foaf

foaf文件是一種 XML/RDF 詞匯表,通過URL來找朋友,構(gòu)建關(guān)聯(lián)數(shù)據(jù),然后形成一種人與人之間相互聯(lián)系的社交網(wǎng)絡(luò)的一種小工具。

三、清洗數(shù)據(jù)

項目要求是清洗整理班級同學(xué)FOAF文件,使其符合RDF數(shù)據(jù)規(guī)范和關(guān)聯(lián)數(shù)據(jù)發(fā)布原則,首先我根據(jù)要求找不到FOAF清洗,RDF規(guī)范檢查的工具。所以我先退而求其次選擇了xml檢查工具,通過DTD的w3c在線檢查工具檢查并沒有發(fā)現(xiàn)時什么問題。我發(fā)現(xiàn)就文件是否正確的角度來說中英文并沒有檢測出什么不同的地方。

image.png

那么問題來了,范老師究竟是想要我們做什么樣的數(shù)據(jù)清洗呢?我決定進一步的探索,我選擇了網(wǎng)上推薦的一款開源編輯軟件editix xml editor

image.png

安裝后,新建工程并開始使用
通過檢測全部的文件我試圖發(fā)現(xiàn)全班同學(xué)的rdf是否有問題

image.png

結(jié)果不出所料


那么我想這里單單從語法、從用法的角度是沒有必要清洗foaf數(shù)據(jù)的必要了,那么問題來了,我們該怎么做?我先分析了同學(xué)們的foaf文件
發(fā)現(xiàn)有幾點不同

  • 1、有的同學(xué)使用中文字符(其中中文字符在editxml中存在亂碼現(xiàn)象----懷疑應(yīng)該改成拼音或者英文表達)


    image.png
  • 2、有的同學(xué)認識的人數(shù)不同

  • 3、具體的在<foaf:knows>認識的人的標(biāo)簽下全部的同學(xué)都有
    <foaf:name>范煒</foaf:name>
    <foaf:mbox_sha1sum>762ec4260f2e1f25685e918a2f8adf9da6712be0</foaf:mbox_sha1sum>兩個標(biāo)簽但是并不是所有的都有


    image.png

    標(biāo)簽。去foaf網(wǎng)站查找后其實這本是

image.png

針對以上的幾點不同是我們需要優(yōu)先考慮的清洗的部分。
但是我發(fā)現(xiàn)還是沒有什么問題,所以我決定不要信任軟件的全部檢查,一個個查看同學(xué)的foaf文件

結(jié)果:軟件真是不能相信的

image.png
image.png

有的是少了person(06號)
學(xué)號尾號是17的同學(xué)少了person

image.png

尾號為18的同學(xué)刪除qq號后面數(shù)字后正常
22號也是相同的問題
經(jīng)過長時間認真的篩查后,清洗foaf的工作圓滿的完成了。

四、將FOAF文件存入RDF TripleStore

下載apache jena .zip解壓
然后下載fusiki

image.png

解壓后打卡cmd

image.png
image.png

打開localhost:3030,然后進行上傳工作。


image.png
image.png

然而在上傳的時候出現(xiàn)了很多的錯誤。為什么呢,出現(xiàn)編碼問題
經(jīng)過仔細的排查我發(fā)現(xiàn)有兩個解決途徑:
1、將中文全部表示為英文標(biāo)識
2、通過notepad++將編碼格式改變


image.png

但是增加這一行后沒有解決問題
通過軟件更改編碼模式
最后我通過更改編碼格式來解決這個額問題

image.png

都上傳成功了
點擊edit

image.png

點擊info查看信息

五、使用SPARQL語法進行簡單查詢

SPARQL是為rdf開發(fā)的一種查詢語言和數(shù)據(jù)獲取協(xié)議,反正就把它當(dāng)作關(guān)系型數(shù)據(jù)庫的sql語言進行nosql數(shù)據(jù)庫的查詢。
進行最簡單的3元組查詢

image.png

調(diào)整limit可以改變查詢獲得的數(shù)量
調(diào)整offset可以跳過開始的條數(shù)
并且通過實驗我發(fā)現(xiàn)大小寫在sparql中都是可以的

查詢個人

image.png
image.png

在我看來這個data文件形成了一個大表,把所有foaf文件鏈接起來

image.png

接下來查詢失敗


查詢名字(賓語部分)

image.png

六、補充相關(guān)數(shù)據(jù),建立數(shù)據(jù)關(guān)聯(lián)。

這里我查詢了一下并沒有具體的做法。
1、創(chuàng)建新的節(jié)點
2、通過D2R服務(wù)器在語義Web上發(fā)布關(guān)系數(shù)據(jù)庫的工具

七、建立可視化關(guān)系圖

image.png
image.png

然而下載失敗
使用另外一個軟件


image.png

再次更換技術(shù)路線使用progege


image.png

在Protege中應(yīng)該是不能編輯OWL代碼的,但可以生成或?qū)С鯫WL、RDF代碼。如果想直接編輯OWL代碼,然后在針對這種可視化的語言進行操作。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容