1

我必须使用 ROWLKit http://www.dis.uniroma1.it/quonto/?q=node/30

(1) 任何人都可以为 Pizza.owl 建议两个 sparql 查询吗?


(2) 这个查询有效吗?

PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX pizza: <http://www.co-ode.org/ontologies/pizza/pizza.owl#>
SELECT * 
WHERE { ?p rdf:type pizza:Pizza;
           pizza:hasTopping ?t.
        ?t rdf:type pizza:TomatoTopping }

(3) 如果它是一个有效的查询,那么:响应是一个空结果吗?

4

3 回答 3

3
SELECT DISTINCT *
WHERE { 
 ?NombrePizza ?Relacion pizza:MushroomTopping .
 ?Relacion owl:inverseOf pizza:isToppingOf .
 OPTIONAL { 
  ?NombrePizza2 ?Relacion2 pizza:HamTopping .
  ?Relacion2 owl:inverseOf pizza:isToppingOf . 
 }
 FILTER(?NombrePizza2 = ?NombrePizza)
}
于 2011-10-03T01:58:08.560 回答
2

(1) 任何人都可以为 Pizza.owl 建议两个 sparql 查询吗?

这里有两个例子:

SELECT * WHERE { ?s ?p ?o }

和:

SELECT ?class WHERE { ?class  a  owl:Class }

(2) 这个查询有效吗?

是的。

(3) 如果它是一个有效的查询,那么:响应是一个空结果吗?

我假设您的意思是“如果我查询序列化披萨本体的 RDF 文档,响应是否为空结果?”。答案是肯定的。

于 2012-08-21T12:31:31.490 回答
1

(2) 似乎是一个有效的查询

我不明白你问题的第(3)部分。(2) 不能与布尔值进行比较,因为它返回一个结果集,如果你想要一个布尔结果,那么你需要使用 ASK 查询。如果 ASK 查询返回 true,则表示您正在查询的数据中有查询的解决方案,因此它不会是空结果。

于 2010-01-21T11:40:19.693 回答