Page MenuHomePhabricator

NME when using label service and rdfs:label predicate with the same variable
Closed, ResolvedPublic

Description

It should be possible to use rdfs:label and label:service without conflicts

Example:

SELECT ?item ?itemLabel ?instance_of ?instance_ofLabel WHERE {
  ?item wdt:P31 wd:Q146.
  SERVICE wikibase:label { bd:serviceParam wikibase:language "en". }

  ?item wdt:P31 ?instance_of.
  ?instance_of rdfs:label ?instance_ofLabel.
  FILTER((LANG(?instance_ofLabel)) = "en")
}

Event Timeline

Restricted Application added a subscriber: Aklapper. · View Herald Transcript

Could you describe a bit more what is wrong now?

I tried to run the query and I get the following error:

java.util.concurrent.ExecutionException: java.util.concurrent.ExecutionException: org.openrdf.query.QueryEvaluationException: com.bigdata.rdf.internal.NotMaterializedException: TermId(14703282L)
Smalyshev renamed this task from label:service and rdfs:label should not conflict to NME when using label service and rdfs:label predicate with the same variable.Jul 14 2017, 7:17 PM
Smalyshev triaged this task as Medium priority.

Looks like the same issue as T159723: bound variable + SERVICE = NME.

Change 533117 had a related patch set uploaded (by Igor Kim; owner: Igor Kim):
[wikidata/query/rdf@master] Fix NME on bind variable both by LabelService and some other clause

https://gerrit.wikimedia.org/r/533117

Change 533117 merged by jenkins-bot:
[wikidata/query/rdf@master] Fix NME on bind variable both by LabelService and some other clause

https://gerrit.wikimedia.org/r/533117

debt claimed this task.