Один момент, который необходимо отметить, в случае Oracle, если не, когда соответствия и существуют не еще, разделяют исключение, повышен.
RDFLIB - это зрелая реализация тройного хранилища с большим количеством документации .
Однако эта библиотека работала у меня только для небольших проектов. Например, есть хороший каталог RDF / XML Библиотеки проекта Гутенберга , который я не смог взломать (на моем двухъядерном компьютере с 2 ГБ ОЗУ), потому что он просто слишком велик (~ 100M) - даже у Java / Protege была тенденция останавливаться на этом размере файлов. Жаль.
Альтернатива: http://seth-scripting.sourceforge.net/
онтология - это словарь, который определяет URI и согласовывает значение каждого из них. Тривиальная онтология - это просто набор URI, которые вы выбираете более или менее неожиданно. К сожалению, этот метод не дает вам никакой информации о семантических отношениях ваших онтологических сущностей. Чтобы объяснить эти отношения, вы обычно описываете их с помощью файла OWL и обычно используете для этого инструменты. Пользуюсь Protege. это нормально.
Если есть смысл представить что-либо в виде ориентированного графа, почему бы просто не использовать класс графа? Python-graph предлагает простые представления графа на чистом Python. В NetworkX немного сложнее использовать реализацию C.
Вы можете использовать rdflib для хранения троек. Затем вы должны принять собственное решение о том, какую онтологию вы хотите построить. Посмотрите на формат OWL.
Я играл с python и онтологиями во время своей докторской диссертации, так что, возможно, беглый просмотр моей диссертации может дать вам некоторые идеи. Например, краткое резюме OWL или UML-модель инструмента онтологии Plone .