【问题标题】:One SPARQL endpoint for Select, Describe and Construct using Jena ARQ一个使用 Jena ARQ 进行选择、描述和构造的 SPARQL 端点
【发布时间】:2012-09-05 11:40:16
【问题描述】:

我已经构建了一个简单的网页作为前端用户界面,供用户输入 sparql 查询。我使用 Jena ARQ 作为后端(我使用 Grails)sparql 查询引擎。目前,用户只能输入“选择”查询,我使用:

ResultSet results = qexec.execSelect();

执行查询并返回结果。但现在,我还希望用户从同一页面向后端发送 Describe 和 Construct 查询。正如该线程中所讨论的:Jena Sparql and construct,我们需要使用

Model results = qexec.execConstruct()

在后端。所以我的问题是,在后端,我如何知道查询字符串是 Select 查询、Describe Query 还是 Construct 查询,以便我可以从 execSelect()、execDescribe() 或 execConstruct() 中进行选择?前端有什么需要改变的吗?

【问题讨论】:

    标签: sparql jena arq


    【解决方案1】:

    Query class 具有查找查询类型的方法:

    if (qexec.getQuery().isSelectType()) {
        ResultSet results = qexec.execSelect();
        // ...
    } else {
        Model results = qexec.execConstruct();
        // ...
    }
    

    为了完整起见,您可能还应该处理 DESCRIBEASK

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多