Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/heroku/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用SPARQL获取数据属性断言值?_Sparql_Ontology_Protege4 - Fatal编程技术网

如何使用SPARQL获取数据属性断言值?

如何使用SPARQL获取数据属性断言值?,sparql,ontology,protege4,Sparql,Ontology,Protege4,我试着做下面的本体论。我希望使用SPARQL获得数据属性断言值 我试图提出以下问题: prefix ab:<http://www.semanticweb.org/bhuiyanh/ontologies/2019/8/untitled-ontology-38#> SELECT ?AV ?lane WHERE { ?AV ab:Driving ab:N_Time_1. ab:N_Time_1 ab:Driving ?lane. } 我没有足够的声誉来评论,所以下面是一些可行

我试着做下面的本体论。我希望使用SPARQL获得数据属性断言值

我试图提出以下问题:

prefix ab:<http://www.semanticweb.org/bhuiyanh/ontologies/2019/8/untitled-ontology-38#>

SELECT ?AV ?lane
WHERE {
  ?AV ab:Driving ab:N_Time_1.
  ab:N_Time_1 ab:Driving ?lane.
}

我没有足够的声誉来评论,所以下面是一些可行的方法

尝试将lane变量强制转换为整数,因为形式为
“1”^^xsd:integer
的文本通常被写成
1

prefix ab:<http://www.semanticweb.org/bhuiyanh/ontologies/2019/8/untitled-ontology-38#>
SELECT ?AV ?lane WHERE 
{ ?AV ab:Driving ab:N_Time_1. 
 ab:N_Time_1 ab:lane ?_lane. 
 bind( xsd:integer(?_lane) as ?lane )
}

属性名为
lane
,因此它应该是
SELECT?AV?lane其中{?AV ab:Driving ab:N_Time_1.ab:N_Time_1 ab:lane?lane.}
@AKSW您的评论很好。请你把它写在一个答案中,这样代码就可以以一种易于阅读的方式正确格式化?@AKSW.谢谢。现在可以了。但是车道结果是“1”^^。实际上我希望结果只显示1。可以通过SPARQL查询吗?
prefix ab:<http://www.semanticweb.org/bhuiyanh/ontologies/2019/8/untitled-ontology-38#>
SELECT ?AV ?lane WHERE 
{ ?AV ab:Driving ab:N_Time_1. 
 ab:N_Time_1 ab:lane ?_lane. 
 bind( xsd:integer(?_lane) as ?lane )
}
SELECT ?AV ?lane WHERE 
{ ?AV ab:Driving ab:N_Time_1. 
 ab:N_Time_1 ab:lane ?_lane. 
 bind( str(?_lane) as ?lane )
}