2012-03-26 14 views
2

Ich habe die folgende Abfrage, die funktioniert:Geotagged dbpedia sparql Abfrage - wollen in Folge abstrakt aufzunehmen gesetzt

SELECT ?page ?lat ?long (bif:st_distance(?geo, bif:st_point(42.883, -72.8981))) 
WHERE{ 
?m foaf:page ?page. 
?m geo:geometry ?geo. 
?m geo:lat ?lat. 
?m geo:long ?long. 
FILTER (bif:st_intersects (?geo, bif:st_point(42.883, -72.8981), 300)) 
} 
ORDER BY ASC 4 LIMIT 5 

Allerdings Ich mag würde einige Informationen aus den Ergebnissen zu setzen abzurufen, insbesondere die http://dbpedia.org/ontology/abstract abstrakte Inhalte? von jedem der 5 obigen Ergebnisse.

Ist es auch möglich zu spezifizieren, dass das obige Ergebnisset "Attraktion" oder "Tourismus" markiert ist? Mit anderen Worten, könnte die Ergebnismenge nur "Tourismus" bezogene Ergebnisse für das oben genannte Gebiet enthalten.

Ich habe gespielt mit: ? Txt bif: enthält "Tourismus". ohne Glück.

Jede Hilfe wird geschätzt, danke im Voraus.

Antwort

1

Hinzufügen die dbo:abstract Eigenschaft und Filterung nur für Englisch-Wert (so dass Sie nicht mehr Zusammenfassungen in verschiedenen Sprachen für die gleiche Einheit erhalten hat):

SELECT ?page ?lat ?long (bif:st_distance(?geo, bif:st_point(42.883, -72.8981))) ?abstract 
WHERE{ 
    ?m foaf:page ?page. 
    ?m geo:geometry ?geo. 
    ?m geo:lat ?lat. 
    ?m geo:long ?long. 
    ?m <http://dbpedia.org/ontology/abstract> ?abstract. 
    FILTER (bif:st_intersects (?geo, bif:st_point(42.883, -72.8981), 300)) 
    FILTER (LANG(?abstract) = "en") 
} 
ORDER BY ASC 4 LIMIT 5 

Kann wirklich nicht mit dem Tagging help I Ich habe Angst.

+0

Das ist eine große Hilfe, um mich zu starten, vielen Dank! – Paul