2012-11-02 32 views
4

複雜的SPARQL查詢很難構建,而且難以閱讀。是否有辦法在SPARQL中「包含」子查詢,比如使用「include queryX」這一行,這樣可以避免每次在單獨的更復雜的查詢中寫出重複的簡單查詢?包含來自單獨文件的sparql子查詢

+3

沒有內置的規範。根據您使用的SPARQL工具,可能會支持定義模板,添加佔位符,參數等,但任何此類功能都將是非標準的。 – Alex

+0

Blazegraph支持命名子查詢:https://wiki.blazegraph.com/wiki/index.php/NamedSubquery –

回答

0

SPARQL FAQ提到了以下可能性:

子查詢的一個非常有限的形式可以與SPARQL引擎將通過創建由以下組成的一個URL執行當從或來自名爲子句命名在圖HTTP的GET來實現嵌入的SPARQL CONSTRUCT查詢提交給SPARQL端點並提供該URL作爲所查詢的RDF數據集的一部分。在實踐中,這種技術通常效率低下,並且受到涉及軟件可能的URL最大長度限制。

W3C wiki也提到了一些其他可能的解決方法。