Frage

Betrachten Sie einen Satz wie:

John Smith reiste nach Washington.

Ein Name Tagger würde an einem guten Tag "John Smith" als Person und 'Washington' als Ort identifizieren.Ohne andere Beweise kann es jedoch nicht sagen, welche von allen möglichen "John Smiths in der Welt oder sogar welche der verschiedenen" Washingtons ist, es ist.

Irgendwann kann ein gewisser Auflösungsprozess entscheiden, basierend auf anderen Beweisen.Bis zu diesem Zeitpunkt ist jedoch eine gute Praxis, um diese Referenzen in RDF darzustellen?Weisen Sie ihnen in einigen Namespace eindeutige Identifikatoren zu.Machen Sie leere Tupel (z. B. eine Person namens John Smith wurde in Dokument d 'referenziert.)?Eine andere Alternative?Ein Buch, das ich habe, gibt ein Beispiel mit anonymen Witterungsstationen, aber ich folge nicht ganz, wie ihr Beispiel mit allem anderen über RDF eingreift.

War es hilfreich?

Lösung

Weisen Sie ihnen einzigartige Kenner in Ihrem eigenen Namespace zu.Wenn Sie später entdecken, dass dieses "Washington" derselbe ist wie http://dbpedia.org/resource/Washington ,_d.c ., Oder was auch immer, Sie können eine Eule hinzufügen: Someas, um das zu behaupten.

Andere Tipps

Zunächst vorhanden, es gibt vorhandene gute Dienste, die Sie für die Erkennung von Entity wie opencalais , zemanta und Alchemie .

Um jedoch spezifischer zu sein, ja einfach "Mint" Ihren eigenen Uris (Identifikatoren) für jedes Ding, dann sprechen Sie mit ihnen - um eine Vertretung für diese Informationen in der Schildkröte anbieten zu können

generasacodicetagpre.

und wenn Sie später zusammenpassen, können Sie Eule verwenden: Someas als Glenn McDonald erwähnt.

kann für Sie relevant sein, um zu lesen, wie Apache Stanbol es tut: http://stanbol.apache.org/docs/trunk/components/enhancer/hinancementstruktur.html

Sie können entweder Ihre eigene URI als oben erörtert oder einen Blank-Knoten verwenden. Es gibt Vor- und Nachteile für beide Ansätze:

uri hat eine externe Identität, sodass Sie explizit auf Ihr Konzept in zukünftigen Abfragen beziehen können, die einige Abfragen viel einfacher machen können; Sie haben jedoch eine externe Identität, so dass der Algorithmus, den Sie zum Bau der URIs verwenden, zu einem kritischen Teil Ihrer Infrastruktur, und Sie müssen garantieren, dass sie beide stabil und einzigartig sind. Dies kann zunächst trivial sein, aber wenn Sie anfangen, mit mehreren Dokumenten mit unterschiedlichen Zeiten wiederaufbereitet zu sein, oft parallel, und auf verteilten Systemen, hört es ziemlich schnell auf, geradeaus weiter zu sein.

Blank-Knoten wurden speziell zur Lösung dieses Problems aufgenommen, um dieses Problem zu lösen, ihre Einzigartigkeit wird durch ihr Scoping garantiert. Wenn Sie jedoch auf einen Blank-Knoten in einer Abfrage, ausdrücklich verweisen müssen, müssen Sie entweder eine nicht standardmäßige Erweiterung verwenden oder einen Ort finden, um den Knoten zu charakterisieren.

In beiden Fällen, aber insbesondere sollten Sie einen Blank-Knoten verwenden, sollten Sie die Herkunftsaussagen einschließen, um sie sowieso zu charakterisieren.

@ Nathans Beispiel ist ein guter, um die Idee zu bekommen.

also ein Beispiel mit leer-Knoten könnte sein:

generasacodicetagpre.

Beachten Sie, dass die Verwendung von RFC5147-Text- / Plain-Fragment-Identifiers verwendet werden soll, um die verarbeitete Datei eindeutig zu ermitteln, dies bietet Ihnen Flexibilität, wie Sie individuelle Läufe identifizieren möchten. Die Alternative besteht darin, all dies in der URI für die Dokumententräger aufzunehmen oder die Provenienz ganz aufzugeben.

generasacodicetagpre.

Sie werden feststellen, dass FOAF: Name hat eine Reihe von Eulen: Ding, so kann es auf irgendetwas angewendet werden. Eine Alternative könnte SKOS: Konzept und RDFs: Label für die richtigen Substantive verwenden.

Eine abschließende Überlegung für Blank-Knoten vs. URI ist, dass jeder Datastore, den Sie verwenden, letztendlich alle verwendeten URI speichern müssen, und dies kann Auswirkungen auf die Leistung haben, wenn Sie sehr große Datensätze verwenden.

letztendlich, wenn ich die Provenienzinformationen in der Grafik zusammen mit den endgültigen einheitlichen Entitäten veröffentlichen würde, würde ich geneigt sein, mit Blank-Knoten zu gehen und URIs zu den Konzepten zuzutragen, die ich letztendlich Entitäten mit vereinheitlichen.

Wenn ich jedoch nicht die Herkunft der Schlussfolgerungen verfolgen werde, und dies ist nur ein Pass von vielen in einer Pipeline, das letztendlich die Zwischenergebnisse verwerfen wird, ich würde nur einen tadellosen Uris mit einem dokumentierten Hash, den Zeitstempel und id und mit ihm fertig sein.

generasacodicetagpre.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top