2016-05-10 3 views
0

Ich bin neu bei DBpedia und möchte alle Organisationen in bestimmten Ländern (ex Frankreich) und bestimmten Sprachen (ex fr) extrahieren. Ich bin mit Schnorchel und haben diese Anfrage:DBpedia: Wie alle Organisationen in bestimmten Ländern und spezifischen Sprachen zu extrahieren sind

PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> 
PREFIX dbo: <http://dbpedia.org/ontology/> 
SELECT ?org { 
    SELECT DISTINCT ?org { 
    ?org a/rdfs:subClassOf* dbo:Organisation . 
} ORDER BY ?org 
} 

Was soll ich als nächstes tun? Ich habe mehrere Tutorials überprüft, habe aber immer noch keine Ahnung.

Antwort

0

Schritt 0 ist das Entfernen der Unterauswahl. Die einzige Zeit, in der Unterselektionen tatsächlich benötigt werden, ist, wenn Aggregate berechnet und zum Auffinden anderer Tripel verwendet werden.

Schritt 1 ist dann zu erkunden, wie DBPedia Länder und Sprache darstellt. Versuchen Sie, die folgende Abfrage:

PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> 
PREFIX dbo: <http://dbpedia.org/ontology/> 
SELECT * 
WHERE { 
    ?org a/rdfs:subClassOf* dbo:Organisation . 
    ?org ?p ?o 
} ORDER BY ?org 

Von dort werden Sie feststellen, dass dbo:location verwendet wird, um die Lage einer Organisation darzustellen. Dann ersetzen Sie die ?p durch dbo:location und machen Sie die gleiche Art von Exploration auf dem Land, um die Sprache zu bekommen.

Bei diesen Erkundungen können Sie feststellen, dass verschiedene Eigenschaften für die Darstellung des Landes usw. verwendet werden. DBPedia ist nicht immer konsistent und daher ist das Erkunden mit SPARQL eine sehr nützliche Methode, um die Daten abzufragen.

+0

Ich folge Ihrem Schritt ersetzen die sechste Zeile mit folgenden: aber ich habe einen Fehler. '? Org duo: location: France' Ich weiß, es könnte eine grundlegende syntaktische Fehler sein. Ich überprüfe bereits [dieses Tutorial] (http://www.cambridgesemantics.com/semantic-university/sparql-by-example, aber immer noch Ich weiß nicht, wie man sparkq richtig schreibt, oder schlagen Sie irgendein Tutorial vor? –

+0

Ich denke, Sie brauchen '? org duo: location: France'. Beachten Sie den Raum nach' duo: location'. Für SPARQL Ausbildung, Google 'SPARQL tutorial 'SPARQL by Example ist ziemlich gut. – scotthenninger

Verwandte Themen