Язык веб-онтологий
Язы́к веб-онтоло́гий (англ. Web Ontology Language; OWL), семейство языков представления знаний для разработки онтологий. Язык OWL характеризуется формальной семантикой.
История создания
Консорциум Всемирной паутины (W3C) создал рабочую группу по веб-онтологии в рамках своей деятельности в семантическом Вебе. Она начала работу 1 ноября 2001 г. Первые рабочие проекты абстрактного синтаксиса, ссылки и краткий обзор были опубликованы в июле 2002 г. OWL стала официальной рекомендацией W3C 10 февраля 2004 г., а рабочая группа была распущена 31 мая 2004 г.
В 2005 г. на семинаре OWL Experiences And Directions было достигнуто согласие относительно того, что последние достижения в области дескрипционной логики позволят сделать более выразительную редакцию для более полного удовлетворения требований пользователей при сохранении хороших вычислительных свойств. В октябре 2007 г. начала работать новая рабочая группа по расширению языка, который был назван OWL 1.1. В апреле 2008 г. эта группа решила назвать этот новый язык OWL 2, что указывает на существенный пересмотр (Grau. 2008).
OWL 2 стал рекомендацией W3C в октябре 2009 г. Данные, описываемые онтологией в семействе OWL, интерпретируются как набор экземпляров и набор утверждений о свойствах, которые связывают эти экземпляры друг с другом. Онтология состоит из набора аксиом, которые накладывают ограничения на наборы экземпляров (называемые классами) и типы отношений, разрешённых между ними. Эти аксиомы обеспечивают семантику, позволяя выводить дополнительную информацию на основе явно предоставленных данных.
Онтологии OWL могут импортировать другие онтологии, добавляя информацию из импортированной онтологии в текущую онтологию (Horrocks. 2003).
Диалекты OWL
Спецификация OWL, одобренная W3C, включает определение трёх вариантов OWL с различными уровнями выразительности. Это OWL Lite, OWL DL и OWL Full (OWL Web Ontology Language Reference W3C Recommendation 10 February 2004) (упорядоченные по возрастанию выразительности). Каждый из этих подъязыков является синтаксическим расширением своего более простого предшественника.
OWL Lite предназначен для определения иерархий и простых ограничений. OWL Lite имеет более низкую формальную сложность, чем OWL DL.
OWL DL предоставляет возможности максимальной выразительности при сохранении полноты вычислений (все логические заключения, подразумеваемые той или иной онтологией, будут гарантированно вычислимыми) и разрешимости. OWL DL включает все языковые конструкции OWL, но они могут использоваться только согласно определённым ограничениям (например, класс может быть подклассом многих классов, но не может сам быть представителем другого класса). OWL DL так назван из-за его соответствия дескрипционной логике.
OWL Full предоставляет максимальную выразительность и синтаксическую свободу RDF без гарантий вычисления.
Стандарт OWL 2, принятый в 2012 г., существенно расширяет его возможности. Прежде всего, он определяет три «профиля», каждый из которых налагает определённые ограничения на возможности языка, с целью достижения приемлемой производительности в тех или иных практических ситуациях. Перечислим профили OWL 2 [OWL 2 Web Ontology Language Structural Specification and Functional-Style Syntax (Second Edition) W3C Recommendation 11 December 2012]:
OWL 2 EL оптимизирован для обработки онтологий с большим числом классов и свойств.
OWL 2 QL больше подходит для онтологий с большим количеством индивидуальных объектов.
OWL 2 RL применяется в случаях, когда нужно добиться приемлемой производительности без существенной потери выразительности языка.
Абстрактный синтаксис OWL
Абстрактный синтаксис OWL представляет онтологию в виде последовательности аннотаций, аксиом и фактов. Аннотации содержат метаданные, ориентированные на машины и человека. Информация о классах, свойствах и отдельных лицах, составляющих онтологию, содержится только в аксиомах и фактах. Каждый класс, свойство и физическое лицо либо анонимны, либо идентифицируются по ссылке URI. Факты содержат данные либо об экземпляре, либо о паре индивидуальных идентификаторов (что идентифицированные объекты различны или одинаковы). Аксиомы определяют характеристики классов и свойств.
Связь с дескрипционной логикой
OWL обладает теоретико-модельной формальной семантикой и поэтому имеет прочную логическую основу. Дескрипционные логики (иногда употребляется термин «дескриптивные») логики (DL) – это семейство логик, которые являются разрешимыми фрагментами логики первого порядка с привлекательными и хорошо понятными вычислительными свойствами. OWL-онтология включает определение следующих понятий.
Экземпляр – это объект, соответствующий индивидууму дескрипционной логики.
Класс – это набор объектов. Класс может содержать экземпляры класса, индивидуумы. Класс может иметь любое количество экземпляров. Экземпляр может не принадлежать ни к одному, принадлежать к одному или нескольким классам. Класс может быть подклассом другого, наследующим характеристики от своего родительского суперкласса. Это соответствует логическому подразделению и концепции дескрипционной логики. Языки семейства OWL поддерживают различные операции над классами, такие как объединение, пересечение и дополнение. Они также допускают перечисление классов, мощность, непересечение и эквивалентность.
Метаклассы – это классы, имеющие экземплярами другие классы. Они разрешены в OWL Full.
Свойства (атрибуты) – это бинарные отношения, характеристики экземпляров класса. Атрибуты иногда выступают в качестве значений данных или ссылок на другие экземпляры. Атрибуты могут проявлять логические особенности, например, быть транзитивными, симметричными, обратными и функциональными. Атрибуты также могут иметь домены (области определения) и диапазоны (области значений). Свойства OWL соответствуют ролям DL.
Свойства типов данных – это отношения между экземплярами классов и литералами RDF или типами данных XML Schema.