2011-01-06 67 views
4

我是新來的SPARQL querys和我使用閃爍SPARQL運行上,則爲一個RDF文件的查詢:沒有結果時,SPARQL

<defaultNamespac:courses rdf:ID="Cources"> 
    <defaultNamespac:course rdf:resource="#Course1"/> 
    <defaultNamespac:course rdf:resource="#Course10"/> 
    <defaultNamespac:course rdf:resource="#Course2"/> 
    <defaultNamespac:course rdf:resource="#Course3"/> 
    <defaultNamespac:course rdf:resource="#Course4"/> 
    <defaultNamespac:course rdf:resource="#Course5"/> 
    <defaultNamespac:course rdf:resource="#Course6"/> 
    <defaultNamespac:course rdf:resource="#Course7"/> 
    <defaultNamespac:course rdf:resource="#Course8"/> 
    <defaultNamespac:course rdf:resource="#Course9"/> 
</defaultNamespac:courses> 

查詢是如下:

選擇x當然

WHERE {X <file:/F:/Stuff/Muaz/GUC/Met.rdf#courses>當然?}

的問題是,不返回任何結果(只顯示x和過程)?。怎麼了?我越來越緊張,請儘快幫助我。非常感謝你!

PS:查詢可以返回哪些數據類型? (只有字符串或數字?!)

回答

1

只是一個快速猜測它是defaultNamespac或defaultNamespace?在末尾有e

如果不是錯誤嘗試運行查詢:

SELECT * WHERE { ?s ?p ?o } 

如果我下面的RDF文件,用defaultNamepac定義:

<rdf:RDF 
    xmlns:contact="http://www.w3.org/2000/10/swap/pim/contact#" 
    xmlns:defaultNamespac="http://foo.bar" 
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> 
    <defaultNamespac:courses rdf:about="file:///Users/msalvadores/kk.rdf#Cources"> 
    <defaultNamespac:course rdf:resource="file:///Users/msalvadores/kk.rdf#Course1"/> 
    <defaultNamespac:course rdf:resource="file:///Users/msalvadores/kk.rdf#Course10"/> 
    <defaultNamespac:course rdf:resource="file:///Users/msalvadores/kk.rdf#Course2"/> 
    <defaultNamespac:course rdf:resource="file:///Users/msalvadores/kk.rdf#Course3"/> 
    <defaultNamespac:course rdf:resource="file:///Users/msalvadores/kk.rdf#Course4"/> 
    <defaultNamespac:course rdf:resource="file:///Users/msalvadores/kk.rdf#Course5"/> 
    <defaultNamespac:course rdf:resource="file:///Users/msalvadores/kk.rdf#Course6"/> 
    <defaultNamespac:course rdf:resource="file:///Users/msalvadores/kk.rdf#Course7"/> 
    <defaultNamespac:course rdf:resource="file:///Users/msalvadores/kk.rdf#Course8"/> 
    <defaultNamespac:course rdf:resource="file:///Users/msalvadores/kk.rdf#Course9"/> 
    </defaultNamespac:courses> 
</rdf:RDF> 

然後的結果以上查詢將如圖所示:

alt text

在我的情況王氏命名空間xmlns:defaultNamespac="http://foo.bar",如果我想要的方式運行查詢,那麼我必須使用命名空間...

SELECT ?x ?course 

WHERE {?x <http://foo.bar#courses> ?course } 

我的建議是,要避免這些錯誤嘗試總是設置的命名空間。

+0

SELECT * WHERE {?s/p?o} – Muaz 2011-01-07 12:03:49