2016-07-21 18 views
1

Ich habe bereits eine Eulenontologie, die Klassen, Instanzen und Objekteigenschaften enthält. Wie kann ich sie einer relationalen Datenbank wie MYSQL zuordnen, indem ich Python als Programmiersprache benutze (ich bevorzuge Python)?
Zum Beispiel, eine Ontologie Dose enthält die Klassen: "Land und Stadt" und Instanzen wie: "Vereinigte Staaten und NYC". Also muss ich verwalten sie in relationalen Datenbanken Tabellen zu speichern. Ich würde gerne wissen, ob es so einige Python-Bibliotheken gibt.Wie kann ich eine Ontologiekomponente einer relationalen Datenbank zuordnen?

+0

Gibt es einen Grund, warum Sie keine RDF-Datenbank zum Speichern und Abfragen Ihrer Daten verwenden? – Michael

+0

Ich benutze OWL, gibt es ein Problem damit? Ich denke, Eule kann auch eine Ontologie formulieren? Recht ? –

+0

Es gibt nichts besonderes an OWL, dass eine RDF-Datenbank nicht speichern konnte, es gibt eine definierte Zuordnung von OWL zu RDF-Tripel. Ob die RDF-Datenbank die Argumentation unterstützt, ist eine andere Sache. Aber eine relationale dB wird nicht, also schätze ich, dass dir das egal ist. – Michael

Antwort

0

Wenn ich Sie gut verstehe, könnte ich SQLite mit Python verwenden. SQLite ist groß, weil Sie die Bibliothek nur importieren mit:

import sqlite3 

Und dann gibt es keine Notwendigkeit für einen Server. Die Dinge werden in einer Datei gespeichert, gerenaly mit der Endung: .db

einen Blick auf die doc haben, sind das Beispiel hilfreich: https://docs.python.org/2/library/sqlite3.html

EDIT: Ihre Datenbank und Tabellen zu überprüfen oder zu erstellen, rate ich Ihnen tu Verwenden Sie sqlitebrowser, das ist leicht und einfach zu bedienen: http://sqlitebrowser.org/

+0

Entschuldigung, in meinem Fall muss ich die Ontologieelemente in einer relationalen Datenbank speichern, um über sie einige SQL-Abfragen zu führen. Zum Beispiel enthält eine Ontologie-Dose die Klassen "Land und Stadt" und Beispiele wie: "Vereinigte Staaten und NYC". Also werde ich es schaffen, sie in relationalen Datenbanken zu speichern. Ich würde gerne wissen, ob es so einige Python-Bibliotheken gibt. oder Alternativen ... –

+0

Wie wäre es mit Tabellen "Agenten" mit den Spalten "country", "city", etc ... und in jedem rohen erstellen Sie eine Instanz mit "USA" und "NYC" um die Spalte zu füllen? Oder vielleicht habe ich Sie missverstanden und Sie möchten eine Bibliothek, die dies für Sie tut, damit Sie die SQL-Sachen nicht selbst verarbeiten müssen? –

+0

Ich möchte die Ontologie analysieren und die entsprechenden Tabellen mit ihrem Inhalt erstellen. Ich frage nicht nach der konzeptionellen Modellierung der Datenbank. Ich spreche wirklich über die Art und Weise, wie man eine Ontologie auf einige Tabellen abbildet. Ich möchte wissen, wie es geht. –

0

Verwenden Sie das richtige Werkzeug für den Job. Sie verwenden RDF, das ist OWL Axioms ist unerheblich, und Sie möchten es speichern und abfragen. Verwenden Sie eine RDF-Datenbank. Sie sind für das Speichern und Abfragen von RDF optimiert. Es ist eine Verschwendung von Ihrer Zeit, um Speicher in & Abfrage in MySQL, wenn andere Leute bereits herausgefunden haben, wie dies am besten tun.

Nebenbei gibt es eine Möglichkeit, RDF einer relationalen Datenbank zuzuordnen. Dafür gibt es eine formale Spezifikation namens R2RML.