2016-05-03 19 views
1

Ich bin vor kurzem in die Welt des Semantic Web getaucht. Es war glatt, bis jetzt. Auf den Punkt ... Ich versuche, Artikel von dbpedia zu bekommen, aber irgendwie bekomme ich keine Ergebnisse. Für das, was ich in der DBpedia-Ontologie gesehen habe, glaube ich, dass das korrekt sein soll. Artikel ist eine "Unterklasse" von WriteWork, also auch Buch. Ich kann Bücher und ihre Informationen durch die RDF Triples bekommen. Wenn ich eine SPARQL-Abfrage verwende, die fast die gleiche wie für Bücher ist, bekomme ich keine Ergebnisse. Das ist seltsam, weil ich weiß, dass es in Wikipedia Verweise auf Artikel gibt.Wie Artikel aus dbpedia abgerufen werden?

Die Abfrage für Bücher:

SELECT DISTINCT ?book 
WHERE { ?book a dbo:Book . } 

Wenn ich dbo ersetzen: Buch für dbo: Artikel, ich habe nichts bekommen. Ich teste hier: http://dbpedia.org/sparql

Kann mir jemand die richtige Richtung zeigen?

+0

Wie lautet Ihre Namensraumdefinition für das Präfix 'dbo:'? – scotthenninger

+0

Kennen Sie irgendeine Ressource in DBpedia, die ein Artikel ist? –

+0

@scothenninger es ist eines der Standard-Präfixe, die Sie in http://dbpedia.org/sparql –

Antwort

4

Wenn Sie testen, welche subslasses von dbo:WrittenWork keine Mitglieder haben, mit dieser Abfrage

SELECT DISTINCT * 
WHERE { 
    ?class rdfs:subClassOf dbo:WrittenWork . 
    FILTER NOT EXISTS {?s a ?class } 
} 

Sie werden sehen, dass dbo:Article unter ihnen ist.

+0

Sie haben Recht. Ich weiß nicht wie. Ich habe einige Artikel in Wikipedia gefunden, wo dbpedia Informationen erhalten sollte. –

+0

Whoa. Das scheint eine wirklich ineffiziente Art zu sein, SELECT DISTINCT * WHERE {? Class rdfs: subClassOf dbo: WrittenWork.} Zu sagen und erhält keine Instanzen von dbo: Article, was die Frage des OP zu sein scheint. – scotthenninger

+3

@scothenninger als 'dbo: Book' und' dbo: Play' haben Mitglieder, und bezweifelnd, dass ich den korrekten URI von 'dbo: Article' kenne, meine Absicht war es zu sehen, welche anderen Unterklassen von' dbo: WrittenWork' keine Mitglieder haben . Die Abfrage spiegelt diese Absicht wider. Im Allgemeinen bevorzuge ich eine Abfrage, die einige Ergebnisse liefert, da in vielen Fällen keine Ergebnisse aufgrund einer fehlerhaften Abfrage auftreten können. –

Verwandte Themen