我有一個入門級的問題,我的書無法提供幫助,我也困惑了一位同事。我可以在不指定前綴的情況下使用RDF,以及如何在SPARQL查詢中指定謂詞?SPARQL中沒有前綴的查詢
我這樣做是R中的RRDF包,但如果我設置了專賣店作爲
A=new.rdf(ontology=F)
add.triple(A,"Ian","sonOf","Daddy")
add.triple(A,"Ian","sonOf","Mummy")
add.triple(A,"Ian","likes","Chocolate")
我得到以下信息
## Error: com.hp.hpl.jena.query.QueryParseException: Lexical error
at line 1, column 40. Encountered: " " (32), after : "sonOf"
到查詢
sparql.rdf(A, "select ?son ?parent where {?son sonOf ?parent}")
我能以這種方式使用sonOf
嗎?我是否必須先設置我自己的Schema?我在做一些根本性錯誤?如果我的所有數據都駐留在同一個數據源上,我必須使用前綴嗎?
這真的很有用。如果我嘗試這樣做,它仍然不起作用。我是否必須在我指定的URI處定義任何內容?即在你的例子中,是my.namespace.com實際使用? – drw
那麼這個URI必須實際存在於你的數據中,我不熟悉你使用的軟件包,所以我不知道它是如何創建URIs,如你的問題所示。它可能會保持相對URI,在這種情況下,您應該能夠直接使用'',如果這樣做不起作用,請嘗試將數據轉儲到NTriples,因爲這需要它將URI全寫出 –
RobV
是否存在一種告訴倉庫中所有'名稱空間'可用的方法?或者有沒有辦法告訴一個三元組與哪個命名空間相關聯?請參閱[我最近的問題](http://stackoverflow.com/questions/40854135/how-to-list-all-all-namespaces-in-virtuoso) – amphibient