DBpedia SPARQL-Abfrage gibt mehrere und doppelte Datensätze zurück

Ich bin ein Neuling in SPARQL und auch verwirrt von den vielfältigen Syntaxstandards, die es gibt. Ich habe Probleme, eindeutige Daten mit der folgenden Abfrage aus DBpedia abzurufen:

SELECT DISTINCT ?Museum, ?name, ?abstract, ?thumbnail, ?latitude,
   ?longitude, ?photoCollection, ?website, ?homepage, ?wikilink
WHERE { 
  ?Museum a dbpedia-owl:Museum ; 
          dbpprop:name ?name ; 
          dbpedia-owl:abstract ?abstract ; 
          dbpedia-owl:thumbnail ?thumbnail ; 
          geo:lat ?latitude ;  
          geo:long ?longitude ; 
          dbpprop:hasPhotoCollection ?photoCollection ;
          dbpprop:website ?website ; 
          foaf:homepage ?homepage ; 
          foaf:isPrimaryTopicOf ?wikilink .
  FILTER(langMatches(lang(?abstract),"EN")) 
  FILTER (langMatches(lang(?name),"EN"))
}
LIMIT 20

SPARQL-Ergebnisse

Wie jeder sehen kann, sind die Einträge fürGeffrye_Museum undInstitute_for_Museum_Research werden in Ergebnissen wiederholt, weilInstitute_for_Museum_Research hat zwei verschiedene Werte für den Namen undGeffrye_Museum hat zwei Längengrade. In beiden Fällen möchte ich, dass die zweiten Werte verworfen werden. d.h.Geffrye_Museum der Längengradwert-0.0762194 muss ignoriert werden, und fürInstitute_for_Museum_Research der Name Wert"Institut für Museumsforschung"@en muss ignoriert werden.

Beachten Sie, dass ich bereits Filter für die gewünschten Felder anwende und dies einfach eine Fülle von Daten in DBpedia ist, die ich auf Abfrageebene selbst behandeln möchte. Wie kann ich also festlegen, dass DBpedia nur den ersten Wert zurückgibt, wenn für dieselbe Spalte mehrere Werte vorhanden sind?

Antworten auf die Frage(1)

Ihre Antwort auf die Frage