SPARQL查询是否可以导入或重用一组PREFIX定义(名称空间绑定)?



我通过在Jupyter笔记本(基于web的REPL环境)中执行SPARQL查询来记录我对RDF数据的探索。

我经常通过复制前一个查询来创建查询以进行调整。笔记本充满了SPARQL查询,它们都以相同的8个PREFIX定义开始(例如,PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>)。

我保持前缀列表短是为了减少混乱,但这意味着我必须经常切换窗口来搜索必须添加的其他前缀(例如,PREFIX eurovoc: ...)。

是否有一种方法可以将PREFIX定义保存在文件中,然后简单地将这些定义导入查询?

或者,因为我目前使用Apache JENA命令行实用程序arq在Jupyter Notebook中执行查询,所以我很乐意使用任何允许将SPARQL查询拆分为多个文件的命令行实用程序,或者其他诸如此类的解决方案。

我在stackoverflow.com和Web上搜索了这个问题的答案,尝试了许多涉及SPARQL、PREFIX、声明、定义、冗余、导入、重用、重用、名称空间、绑定、分离、文件和多个的查询,我在这里复制了这些查询,以便让可能问同样问题的其他人更容易找到这个问题。

我在寻找类似的东西时偶然发现了这个问题。我知道,SPARQL没有导入指令,但是有像rdf.sh这样的工具,它可以查看文件中使用的所有前缀并构建所需的定义(它们通常基于prefix.cc)。

此外,我见过端点(例如Fuseki)具有预定义的前缀定义并自动完成SPARQL,但是依赖它们会使查询的可移植性降低。

最新更新