我必须使用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)如果是有效查询,那么:响应是空结果吗?
答案 0 :(得分: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)
}
答案 1 :(得分:2)
(1)有人可以为Pizza.owl建议两个sparql查询吗?
以下是两个例子:
SELECT * WHERE { ?s ?p ?o }
和
SELECT ?class WHERE { ?class a owl:Class }
(2)这个查询有效吗?
是
(3)如果是有效查询,那么:响应是空结果吗?
我认为你的意思是“如果我查询序列化披萨本体的RDF文档,那么响应是否为空结果?”。答案是是。
答案 2 :(得分:1)
(2)似乎是一个有效的查询
我不明白你问题的第(3)部分。 (2)无法与布尔值进行比较,因为它返回一个结果集,如果你想要一个布尔结果,那么你需要使用ASK查询。如果ASK查询返回true,则表示您正在查询的数据中存在查询解决方案,因此它不会是空结果。