0

查询如下:

PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>

SELECT distinct ?value
    from <http://fr.dbpedia.org>
    WHERE{                                          

        ?sub rdfs:label ?value.                     
                    FILTER (CONTAINS(LCASE(?value), 'data')).                                                           
        }

limit 10  

它使用DBpedia 端点工作得非常好,但是当我尝试使用 ARC2 从 PHP 使用它时,我收到以下错误:

查询 errorsArray([0] => ARC2_SPARQLPlusParser [1] => 不完整或无效的组图模式中的 FILTER。无法处理 ARC2_SPARQLPlusParser 中的“”)

任何想法可能是什么问题?谢谢!

4

1 回答 1

1

ARC2 不支持完整的 SPARQL 1.1(参见源代码),因此CONTAINS不受支持。您可以尝试REGEX改用:

前缀 rdfs:http ://www.w3.org/2000/01/rdf-schema#

SELECT distinct ?value
    from <http://fr.dbpedia.org>
    WHERE{                                          

        ?sub rdfs:label ?value.                     
                    FILTER (REGEX(STR(?value), 'data', 'i')).                                                           
        }

limit 10  
于 2017-04-29T15:47:47.513 回答