【问题标题】:How to query a named graph in Apache Jena Fuseki server如何在 Apache Jena Fuseki 服务器中查询命名图
【发布时间】:2015-11-13 08:37:03
【问题描述】:

我正在将一个 .ttl 文件加载到 Jena Fuseki 服务器中,而不是默认图,我使用的是命名图 <http://examples/test>

/home/user/jena-fuseki-1.1.1/./s-put http://192.168.1.38:3030/ds/data http://example/test /home/user/testdata.ttl

我可以使用以下命令加载图表并检索结果。

/home/user/jena-fuseki-1.1.1/./s-get http://192.168.1.38:3030/ds/data http://example/test

但是当我开始使用s-query 命令进行查询时,它会采用默认的未命名图。如何使s-query 命令在命名图上工作。

 /home/user/jena-fuseki-1.1.1/./s-query --service http://localhost:3030/ds/query 'SPARQL Query'

这是对默认的未命名图进行查询。如何让它在命名图<http://example/test>上工作?

【问题讨论】:

    标签: sparql fuseki apache-jena named-graphs


    【解决方案1】:

    要访问查询中的命名图,请使用 GRAPH 关键字。

    SELECT ?subject ?predicate ?object
    WHERE {
      GRAPH <http://examples/test>
      {
        ?subject ?predicate ?object
      }
    }
    

    http://www.w3.org/TR/sparql11-query/#queryDataset

    【讨论】:

    【解决方案2】:

    您可以使用FROM 子句在 SPARQL 查询中指定命名图。例如,要获取图表中的所有三元组,请使用

    SELECT ?subject ?predicate ?object
    FROM <http://examples/test>
    WHERE {
      ?subject ?predicate ?object
    }
    

    详细说明和更多选项可在SPARQL 1.1 Query Language specification of W3C 中找到。

    【讨论】:

    猜你喜欢
    • 2012-06-23
    • 2013-08-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-06-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多