ПРОГРАММНЫЕ ПРОДУКТЫ И СИСТЕМЫ
Архив статей журнала
При работе в библиотеке Owlready2 языка Python с онтологиями, в которых изначально классы, индивидуумы и отношения написаны кириллицей, машина логического вывода reasoner выдает некорректные данные. Вследствие сбоя в кодировке Owlready2 дублирует онтологию, а вместо текста кириллицы появляются нечитаемые символы. Решить данную проблему предлагается путем явного задания кодировки выходных данных в файле reasoning.py, а именно cp1251, то есть стандартной 8-битной кодировки для русских версий Microsoft Windows. Сам файл находится в корневой папке программы - \Python\Python311\Lib\site-packages\owlready2\ для версии Python 3.11.0. Он и рассматривается в данной статье. Для поиска решения использован метод сравнительного анализа различных версий библиотеки Owlready2 и ее предшественника - библиотеки Owlready. Решение найдено путем сравнения команд работы с исходными данными в различных версиях библиотек Owlready. После внесения соответствующего изменения упрощается работа с онтологиями в Python, особенно при многократных запусках машины логического вывода reasoner. Становится возможным использование огромного функционала библиотеки Owlready2 для работы с русскоязычными онтологиями, например, для создания соответствующих русскоязычных баз знаний. Предложенный в статье способ может быть полезен для ИТ-специалистов, разрабатывающих информационные системы на основе онтологий предметных областей, а также при работе с онтологиями в рамках образовательного процесса в вузе.