Неразрешенное префиксное имя: wdt: P195 - PullRequest
0 голосов
/ 20 января 2020

У меня есть следующий шаблон строки в java:

    public static final String SPARQL_QUERY_TEMPLATE_FILTER_MUSEUM_EXPONATES =
        "PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>" +
        "select ?thing" +
        "where" +
        "{" +
        "    ?thing rdfs:label \"%s\"@en ." +
        "    filter exists { ?thing wdt:P195 [] } ." +
        "}";

        String sparqlQuery = String.format(SPARQL_QUERY_TEMPLATE_FILTER_MUSEUM_EXPONATES, exponateName);

, который при оценке выдает следующую ошибку:

Exception in thread "main" org.apache.jena.query.QueryParseException: Line 1, column 136: Unresolved prefixed name: wdt:P195
at org.apache.jena.sparql.lang.ParserBase.throwParseException(ParserBase.java:522)
at org.apache.jena.sparql.lang.ParserBase.resolvePName(ParserBase.java:287)
at org.apache.jena.sparql.lang.sparql_11.SPARQLParser11.PrefixedName(SPARQLParser11.java:4857)
at org.apache.jena.sparql.lang.sparql_11.SPARQLParser11.iri(SPARQLParser11.java:4841)
at org.apache.jena.sparql.lang.sparql_11.SPARQLParser11.PathPrimary(SPARQLParser11.java:2873)
at org.apache.jena.sparql.lang.sparql_11.SPARQLParser11.PathElt(SPARQLParser11.java:2804)
at org.apache.jena.sparql.lang.sparql_11.SPARQLParser11.PathEltOrInverse(SPARQLParser11.java:2828)
at org.apache.jena.sparql.lang.sparql_11.SPARQLParser11.PathSequence(SPARQLParser11.java:2783)
at org.apache.jena.sparql.lang.sparql_11.SPARQLParser11.PathAlternative(SPARQLParser11.java:2762)
at org.apache.jena.sparql.lang.sparql_11.SPARQLParser11.Path(SPARQLParser11.java:2755)
at org.apache.jena.sparql.lang.sparql_11.SPARQLParser11.VerbPath(SPARQLParser11.java:2716)
at org.apache.jena.sparql.lang.sparql_11.SPARQLParser11.PropertyListPathNotEmpty(SPARQLParser11.java:2652)
at org.apache.jena.sparql.lang.sparql_11.SPARQLParser11.TriplesSameSubjectPath(SPARQLParser11.java:2607)
at org.apache.jena.sparql.lang.sparql_11.SPARQLParser11.TriplesBlock(SPARQLParser11.java:1792)
at org.apache.jena.sparql.lang.sparql_11.SPARQLParser11.GroupGraphPatternSub(SPARQLParser11.java:1713)
at org.apache.jena.sparql.lang.sparql_11.SPARQLParser11.GroupGraphPattern(SPARQLParser11.java:1675)
at org.apache.jena.sparql.lang.sparql_11.SPARQLParser11.ExistsFunc(SPARQLParser11.java:4381)
at org.apache.jena.sparql.lang.sparql_11.SPARQLParser11.BuiltInCall(SPARQLParser11.java:4298)
at org.apache.jena.sparql.lang.sparql_11.SPARQLParser11.Constraint(SPARQLParser11.java:2240)
at org.apache.jena.sparql.lang.sparql_11.SPARQLParser11.Filter(SPARQLParser11.java:2168)
at org.apache.jena.sparql.lang.sparql_11.SPARQLParser11.GraphPatternNotTriples(SPARQLParser11.java:1856)
at org.apache.jena.sparql.lang.sparql_11.SPARQLParser11.GroupGraphPatternSub(SPARQLParser11.java:1738)
at org.apache.jena.sparql.lang.sparql_11.SPARQLParser11.GroupGraphPattern(SPARQLParser11.java:1675)
at org.apache.jena.sparql.lang.sparql_11.SPARQLParser11.WhereClause(SPARQLParser11.java:431)
at org.apache.jena.sparql.lang.sparql_11.SPARQLParser11.SelectQuery(SPARQLParser11.java:124)
at org.apache.jena.sparql.lang.sparql_11.SPARQLParser11.Query(SPARQLParser11.java:29)
at org.apache.jena.sparql.lang.sparql_11.SPARQLParser11.QueryUnit(SPARQLParser11.java:20)
at org.apache.jena.sparql.lang.ParserSPARQL11$1.exec(ParserSPARQL11.java:48)
at org.apache.jena.sparql.lang.ParserSPARQL11.perform(ParserSPARQL11.java:96)
at org.apache.jena.sparql.lang.ParserSPARQL11.parse$(ParserSPARQL11.java:52)
at org.apache.jena.sparql.lang.SPARQLParser.parse(SPARQLParser.java:34)
at org.apache.jena.query.QueryFactory.parse(QueryFactory.java:147)
at org.apache.jena.query.QueryFactory.create(QueryFactory.java:79)
at org.apache.jena.query.QueryFactory.create(QueryFactory.java:52)
at org.apache.jena.query.QueryFactory.create(QueryFactory.java:40)
at com.wd.knowledge.aggregators.DBPediaAggregator.queryMueumExponates(DBPediaAggregator.java:49)
at com.wd.knowledge.aggregators.DBPediaAggregator.main(DBPediaAggregator.java:70)

Этот точный шаблон запроса, без спецификатора формата %s нормально работал на конечной точке wikidata sparql.

...