Редактор онтологий
Редактор онтологий OsaWL предназначен для индивидуальной и коллективной разработки онтологий в графическом (графовое представление) и/или табличном видах. Набор инструментов редактора онтологий OsaWL позволяет просто и наглядно проектировать базы знаний (TBox) и манипулировать базой фактов (ABox) произвольных предметных областей.
Информация в онтологической платформе OsaWL хранится в виде структур, называемых триплетами: ❮Субъект, предикат, Объект❯. Триплет — это базовый “факт”, элементарное высказывание о некоторых знаниях. Субъекты и Объекты триплетов — это вершины сетевого (графового) представления знаний, а предикаты — это связи между вершинами.
Например, в триплете ❮ООО Ромашка, имеет сотрудника, Иван Иванов❯ ООО Ромашка играет роль Субъекта, Иван Иванов — Объекта, а имеет сотрудника — предиката. В настоящем документе будет также встречаться следующая форма записи триплета: p(R1, R2), где R1 — это Субъект, R2 — Объект, а p — предикат.
Редактор онтологий OsaWL позволяет решать следующие задачи:
- Редактирование базовых сущностей онтологий: классов, отношений и свойств, атрибутов отношений, индивидов и их отношений
- Стилизация внешнего вида объектов (форма, цвет, иконки, размер) для облегчения визуальной идентификации
- Организация мультиоконного представления для быстрого доступа к связанным онтологиям, редактору правил, документам, семантическим запросам, определениям и др.
- Импорт онтологий из форматов RDF/XML, OWL/XML, Turtle и других
- Экспорт онтологий в OWL/XML
- Совместное редактирование онтологий с отображением изменений в режиме реального времени
- Коллективная разработка онтологий с поддержкой функций отправки фрагментов онтологии на согласование, мониторинга хода согласования, комментирования шагов согласования, вычисления уровня коллективной согласованности онтологий и их фрагментов
- Фильтрация и поиск объектов онтологии
- Ручное или автоматическое позиционирование объектов онтологии на полотне
- Кластеризация (группировка) объектов онтологии для облегчения читаемости и навигации по онтологии
- Создание и назначение тегов (текстовых меток) на объекты онтологии для быстрого поиска и фильтрации
- Пошаговый анализ онтологии — режим, при котором отображаются объекты, имеющие непосредственные отношения с исследуемым объектом
- Разграничение доступа к онтологиям и объектам онтологий
- Фиксация и сравнение версий онтологий
- Повторное использование онтологий и объектов онтологий
- Слияние и мутация объектов онтологий: классов, отношений, экземпляров
- Формирование описания онтологии в web-формате W3C включая разделы: аннотация, авторы, классы, отношения, свойства и экземпляры. Быстрая навигация между разделами онтологии и синхронизация с графовым представлением.
Редактор атрибутов отношений
Спецификация отношений дополнительными атрибутами позволяет машине логического вывода платформы OsaWL автоматически выводить (создавать) в базе фактов новые знания, а также ограничивать возможности индивидов по вступлению в отношения с другими индивидами.
Все атрибуты отношений учитываются ядром платформы OsaWL в процессе манипулирования базой фактов и позволяют поддерживать непротиворечивость данных.
Атрибут отношения | Описание | Примеры |
---|---|---|
Является функциональным | Запрещено одновременное наличие двух и более отношений p(X1, Y1) и p(X1, Y2), т.е. в любой момент времени индивид X1 не может быть связан по отношению p более чем с одним другим индивидом | Отношение имеет отца является функциональным, т.к. человек не может иметь более одного биологического отца |
Является не функциональным | Разрешено одновременное наличие двух и более отношений p(X1, Y1) и p(X1, Y2) | Отношение имеет брата/сестру является не функциональным, т.к. человек может иметь сколько угодно братьев и сестер |
Является рефлексивным | Разрешены отношения вида p(X1, X1), т.е. индивид X1 связан с индивидом X1 отношением p | Отношение геометрически подобен является рефлексивным, т.к. треугольник подобен самому себе |
Является не рефлексивным | Запрещены отношения вида p(X1, X1) | Отношение имеет отца является не рефлексивным, т.к. человек не может быть отцом самому себе |
Является симметричным | Если в базе фактов имеется триплет p(X1, Y1) и отношение p является симметричным, то в базе фактов машиной логического вывода будет порожден новый триплет p(Y1, X1) | Отношение имеет брата/сестру является симметричным, т.к. если у Василия есть брат Иван, то отсюда автоматически следует, что у Ивана есть брат Василий |
Является транзитивным | Если базе фактов имеются триплеты p(X1, Y1) и p(Y1, Z1) и отношение p является транзитивным, то в базе фактов машиной логического вывода будет порожден новый триплет p(X1, Z1) | Отношение имеет предков является транзитивным. Если Лев имеет предка Дмитрий, а Дмитрий имеет предка Вячеслав, то Лев имеет предка Вячеслав |
Является инверсным функциональным | Запрещено одновременное наличие двух и более отношений p(X1, Y1) и p(X2, Y1), т.е. в любой момент времени не может быть более одного индивида, связанного по отношению p с индивидом Y1 | Отношение имеет питомца является инверсным функциональным, т.к. если Дмитрий имеет питомца Мурка, то никакой другой человек не может иметь этого же питомца |
Минимальная мощность отношения | Число, указывающее минимально-возможное количество индивидов, с которыми можно вступить в отношение | Отношение имеет родителей имеет минимальную мощность равную 2 (два), т.к. у любого человека не может быть менее двух биологических родителей |
Максимальная мощность отношения | Число, указывающее максимально-возможное количество индивидов, с которыми можно вступить в отношение | Отношение имеет родителей имеет максимальную мощность равную 2 (два), т.к. у любого человека не может быть более двух биологических родителей |
Редактор отношений между отношениями
Отношение между отношениями | Описание | Примеры |
---|---|---|
Инверсия | Если отношения p1 и p2 связаны отношением инверсии, то при наличии в базе фактов триплета p1(X1, Y1) машина логического вывода создаст новый триплет p2(Y1, X1) и наоборот, т.е. • p1(X1, Y1) ⇨ p2(Y1, X1) • p2(Y1, X1) ⇨ p1(X1, Y1) | Отношение имеет мужа инверсно отношению имеет жену , т.к. если Татьяна имеет мужа Дмитрий, то Дмитрий имеет жену Татьяна |
Надсвойство | Если отношение р2 является надсвойством для отношения р1, то при наличии в базе фактов триплета р1(Х1, Y1) машина логического вывода создаст новый триплет p2(X1, Y1), т.е. • p1(X1, Y1) ⇨ p2(X1, Y1) | Отношение имеет предков является надсвойством для отношений имеет отца и имеет мать . Если Лев имеет отца Дмитрий и Лев имеет мать Татьяна, то Лев имеет предков Дмитрий и Татьяна |
Непересечение | Если отношение р1 не пересекается с отношение р2, то при наличии в базе фактов триплета р1(X1, Y1) не может существовать триплет p2(X1, Y1) и наоборот | Отношение имеет мужа не пересекается с отношением имеет отца . Если Татьяна имеет мужа Дмитрий, то Татьяна не может иметь отца Дмитрий и наоборот |
Редактор правил
Редактор правил OsaWL позволяет описать последовательность логических рассуждений, которые приводят к выводу новых фактов. Правила OsaWL используются при решении следующих задач:
- Определение “динамических” классов, экземплярами которых будут являться любые объекты, удовлетворяющие условиям правила
- Вычисление отношений между индивидами
- Ограничение диапазонов отношений
- Имяобразование индивидов
- Вычисление скалярных свойств индивидов, в том числе используя функции агрегации данных
Графический редактор правил
Графический редактор правил позволяет описать последовательность логических рассуждений объединяя триплеты в цепочки и накладывая ограничения на равенство или не равенство субъектов и объектов триплетов. Созданное правило может быть использовано для вычисления отношений между индивидами.
На изображении выше представлено правило для вычисления полных братьев и сестер для любого человека на основании следующей цепочки рассуждений: если два различных человека имеют общих отца и мать, то они являются братьями (сестрами, братом и сестрой).
Текстовый редактор правил
Текстовый редактор правил позволяет описать последовательность рассуждений в виде логических условий или формул для вычисления значений свойств.
Примеры текстовых правил:
- [Оборудование].[имеет_повреждение].[нормативное_время_устранения_минуты] > 1 — правило может быть использовано для создания “динамического” класса “Оборудование с повреждением”, экземплярами которого в любой момент времени будет только оборудование с наличием повреждения, время устранения которого занимает более одной минуты
- [Задача].[принадлежит_проекту].[имеет_код] + “.” + [Задача].[имеет_код] + «. » + [Задача].[имеет_название] — правило может быть использовано для имяобразования экземпляров класса “Задача” (задачи проекта) на основании кода проекта, которому принадлежит задача, кода и названия самой задачи
- [АнализИсполненияБюджета].[годАнализа].inverse([годПериода]).inverse([период]).[план].sum() — правило может быть использовано для расчета суммарного плана по бюджету на год
Редактор семантических запросов
Редактор семантических запросов позволяет в визуальной форме сконструировать запрос к базе фактов (ABox) или базе знаний (TBox) платформы OsaWL. Редактор семантических запросов может быть использован для решения следующих задач:
- извлечение данных из базы знаний и базы фактов для последующего анализа
- дополнительная фильтрация извлекаемых данных, в том числе с использованием динамических ограничений: результаты запроса могут зависеть от пользователя, выполняющего запрос, и времени выполнения запроса
- представление результатов запроса в различных форматах — табличный, графовый, сводная таблица
- группировка и агрегация результатов запроса
- довычисление результатов — описание дополнительных формул для расчета производных значений
- повторное многократное использование семантических запросов при создании отчётов, документов и дашбордов
На изображении ниже представлен графический редактор семантического запроса и результаты выполнения запроса в табличной форме:
Редактор документов и публикаций
Редактор документов и публикаций OsaWL позволяет создавать документы с помощью WYSIWYG- или Markdown-редактора, а также объединять документы в публикации произвольной структуры.
С помощью документов могут быть решены следующие задачи:
- создание текстовых документов произвольного содержания с использованием заголовков, списков, таблиц, изображений, видео, контейнеров, цитат, аббревиатур и сокращений, ссылок и пр.
- встраивание результатов семантических запросов в текст документа в виде таблиц или сводных таблиц. Такие таблицы будут автоматически синхронизированы с базами знаний и фактов и будут оставаться актуальными
- встраивание графовых представлений онтологий в текст документа, которые будут меняться вместе с онтологиями
- встраивание ссылок на термины в текст документа с возможностью отображения их определений
- связывание документов с любыми объектами платформы OsaWL
- экспорт документов в форматы PDF и MS Word, печать документов
- встраивание диаграмм — блок-схем, диаграмм последовательности, диаграмм классов, состояний, связь-сущность диаграмм и др.
Настоящий документ является примером документа, созданного с использованием редактора документов OsaWL.
Редактор диаграмм
Редактор диаграмм OsaWL позволяет создавать блок-схемы, диаграммы, описывать бизнес-процессы и архитектуры предприятий.
Создаваемые элементы диаграмм являются экземплярами трех классов (или их наследников): Узлы, Коннекторы и Контейнеры, которые входят в онтологию диаграмм платформы OsaWL, поэтому могут вступать в отношения с любыми другими экземплярами платформы.
Базовая версия платформы OsaWL включает три базовые нотации:
- BPMN 2.0
- ArchiMate 3.0
- Стандартная (базовый набор узлов, коннекторов и контейнеров)
Платформа предоставляет инструментарий для создания дополнительных (пользовательских) нотаций, включая графическое представление элементов нотаций. На изображении ниже представлен пример диаграммы, созданной с использованием пользовательской нотации для описания ИТ-инфраструктуры.
С помощью редактора диаграмм OsaWL могут быть решены следующие задачи:
- Разработка блок-схем, диаграмм, описаний бизнес-процессов и архитектур предприятий в базовых или пользовательских нотациях
- Редактирование свойств и отношений элементов диаграмм, как экземпляров соответствующих классов (так же известно как редактирование пользовательских данных элементов диаграмм)
- Отображение связанных данных с элементами диаграмм в табличном виде. Содержание связанных данных определяется с помощью механизма семантических запросов
- Переходы между связанными диаграммами, формирование иерархии диаграмм
- Автоматическая генерация диаграмм с использованием механизмов семантических запросов
Редактор отчетов
Редактор отчетов OsaWL позволяет решать следующие задачи:
- Формирование шаблонов отчетов, в том числе многостраничных
- Предварительный просмотр отчетов
- Использование семантических запросов в качестве источников данных для отчетов
- Условное цветокодирование данных в отчете (например, при необходимости выделить отрицательные отклонения)
- Различные формы представления данных в отчете, в том числе в виде графиков и диаграмм
- Дополнительная фильтрация данных на уровне отчета
- Создание дополнительных расчетных показателей в шаблоне отчета и агрегация данных
- Параметризация отчетов
- Экспорт отчетов во все распространенные “офисные” форматы файлов
Редактор определений
Редактор определений OsaWL позволяет решать следующие задачи:
- Редактирование и хранение определений для объектов онтологий: экземпляров классов, классов, скалярных свойств, отношений. В текстах определений могут быть размещены ссылки на другие объекты онтологий и результаты семантических запросов
- Автоматическое создание глоссария терминов предметной области. Навигация по определениям терминов. Навигация между связанными терминами. Списочное и иерархическое представления глоссария
Редактор ролевой модели
Ролевая модель OsaWL реализована с помощью концепции Представлений классов, которые позволяют разграничить доступ пользователей к классам и экземплярам классов, а также описать форму представления экземпляров в табличном виде и виде формы (карточки) редактирования.
У класса может быть любое количество представлений, содержащих разные состав и названия полей, различные настройки поведения полей.
На изображении ниже в упрощенном виде представлена онтология представлений и соответствие элементов пользовательского интерфейса элементам онтологии.
API для работы с онтологическим ядром
Платформа OsaWL предоставляет возможность взаимодействия с онтологическим ядром платформы с использованием REST API, предоставляющим методы для создания, удаления, чтения и изменения объектов онтологий с учетом ролевой модели доступа.