2013-03-12 92 views
1

我需要一個具有相當數量(大約一百萬)RDF三元組的項目的數據集。我在網上找到了很多數據集,但是它們都以URI的形式存在三元組中的數據。我需要一個數據集,其中的數據完全是字符串文字的形式。rdf三元數據集

我需要這種格式的數據。

person1,isNamed ,‘Serge Abiteboul’ 
person2,isNamed ,‘Rick Hull’ 
person3,isNamed ,‘Victor Vianu’ 

我對RDF是什麼以及如何使用它有很少或根本不知道。那麼,有人可以幫助我如何將數據轉換爲這種格式,或者是否有方法將數據從URI轉換爲字符串文字。

回答

3

不能有一個只包含字符串文字的RDF三元組。

RDF三元組由主體,謂詞和對象組成。主題和謂詞總是URI。對象可以是URI或(字符串)文字。 (但是,主題和對象也可以是空白節點。)

要在RDF中描述數據,您需要表示事物/概念/關係的URI。

請參閱http://www.w3.org/TR/rdf-concepts/


對於您的示例,您可以使用流行的FOAF詞彙表。在Turtle syntax它可能看起來像:

<http://example.com/team/person1#me> <http://xmlns.com/foaf/0.1/name> "Serge Abiteboul" . 
  • 這裏的URI http://example.com/team/person1#me(=主題)將代表實際的人(而不是那個人頁)。如果沒有這樣的URI,你可以在你自己的域名下創建它(FOAF詞彙表有不同的類和屬性來描述人)。
  • 的URI http://xmlns.com/foaf/0.1/name(=謂詞)是FOAF詞彙defined

    name - 用於某些事情名稱。

    [...]

    的東西的name是一個簡單的文本字符串。

  • "Serge Abiteboul"(= object)是一個字符串文字。

對象文字的數據類型可以用XML Schema,例如指定"-5.0"^^xsd:decimal爲十進制數字。對象字符串的語言也可以被指定,例如, "house"@en英文字符串。


當然,你可以使用,而不是使用完整的URI所有的時間前綴(但最終它仍然是URI):

@prefix foaf: <http://xmlns.com/foaf/0.1/> . 
@prefix ex: <http://example.com/team/> . 

ex:person1#me foaf:name "Serge Abiteboul" . 

所以,如果你想進行建模在RDF數據,你必須

  • 查找(或創建)爲您想要描述的抽象事物的URI,並
  • 找到(或創建)定義類和屬性(以URI的形式)的詞彙表/本體來描述抽象事物及其關係。

一些流行詞彙:

人員和社交網絡,看FOAF。對於在線社區,請參閱SIOC。有關作者和文檔元數據,請參閱Dublin Core。對於類層次結構,請參閱RDFS和SKOS。有關產品,請參閱GoodRelations。對於軟件項目,請參閱DOAP。 And so on.