在ask查询中使用union(Sparql)

在ask查询中使用union(Sparql),sparql,Sparql,我有一个ask查询,其中包含一些工会: PREFIX foo: <http://example.com/ontologies/MyOntology.owl#> PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> ask { { <http://someiri.com> ?b ?c. filter(!bound(?b)). } union { ?x <h

我有一个ask查询,其中包含一些工会:

PREFIX foo: <http://example.com/ontologies/MyOntology.owl#>
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>

ask
{
  {
    <http://someiri.com> ?b ?c.
    filter(!bound(?b)).
  }
  union
  {
   ?x <http://someiri.com> ?y.
   filter(!bound(?x)).
  }
   union
  {
    ?g ?h <http://someiri.com>.
    filter(!bound(?h)).
  }
   union
  {
    <http://someiri.com> rdf:type foo:RESTEndPoint
  }
}
前缀foo: 前缀rdf: 问 { { 公元前 滤子(!界(?b))。 } 协会 { ?x?y。 滤子(!界(?x))。 } 协会 { ?g?h。 滤子(!界(?h))。 } 协会 { rdf:类型foo:RESTEndPoint } } ask声明将如何对待工会

如果联合中的所有三元组都被计算为true,它会返回true吗


或者,如果它发现至少有一个三元组的计算结果为true,它将返回true?

基本上SPARQL ASK将执行,直到发现一个图形模式为true,否则返回false


因此,如果任何联合图模式找到匹配项,则ASK结果为真。如果所有联合图模式都找不到匹配项,则ASK结果为false。

基本上,SPARQL ASK将执行,直到发现一个图模式为true,否则返回false

因此,如果任何联合图模式找到匹配项,则ASK结果为真。如果所有联合图模式都找不到匹配项,则ASK结果为false