Язык веб-онтологий ( OWL ) — это семейство языков представления знаний для создания онтологий . Онтологии — это формальный способ описания таксономий и классификационных сетей, по существу определяющий структуру знаний для различных областей: существительные, представляющие классы объектов, и глаголы, представляющие отношения между объектами.
Онтологии напоминают иерархии классов в объектно-ориентированном программировании , но есть несколько важных отличий. Иерархии классов предназначены для представления структур, используемых в исходном коде, которые развиваются довольно медленно (возможно, с ежемесячными изменениями), тогда как онтологии предназначены для представления информации в Интернете и, как ожидается, будут развиваться почти постоянно. Точно так же онтологии обычно гораздо более гибки, поскольку они предназначены для представления информации в Интернете, поступающей из самых разных источников разнородных данных. С другой стороны, иерархии классов, как правило, довольно статичны и полагаются на гораздо менее разнообразные и более структурированные источники данных, такие как корпоративные базы данных. [1]
Языки OWL характеризуются формальной семантикой . Они построены на основе стандарта Консорциума Всемирной паутины (W3C) для объектов, называемого структурой описания ресурсов (RDF). [2] OWL и RDF привлекли значительный академический, медицинский и коммерческий интерес.
В октябре 2007 года [3] была создана новая рабочая группа W3C [4] для расширения OWL несколькими новыми функциями, как было предложено в сообщении участника OWL 1.1. [5] W3C анонсировала новую версию OWL 27 октября 2009 года. [6] Эта новая версия, названная OWL 2, вскоре нашла свое применение в семантических редакторах, таких как Protégé , и в программах семантического рассуждения , таких как Pellet, [7] RacerPro, [8 ] ] FaCT++ [9] [10] и HermiT. [11]
Семейство OWL содержит множество разновидностей, сериализаций, синтаксисов и спецификаций со схожими названиями. OWL и OWL2 используются для обозначения спецификаций 2004 и 2009 годов соответственно. Будут использоваться полные названия видов, включая версию спецификации (например, OWL2 EL). В более общем смысле будет использоваться семейство OWL . [12] [13] [14]
Философия и информатика имеют долгую историю онтологического развития. Начиная с 1990-х годов, ряд исследовательских работ изучали, как идея представления знаний (КР) от искусственного интеллекта (ИИ) может быть полезна во Всемирной паутине. К ним относятся языки, основанные на HTML (называемые SHOE ), основанные на XML (называемые XOL, позже OIL ), а также различные языки KR на основе фреймов и подходы к получению знаний.
В 2000 году в США DARPA начало разработку DAML под руководством Джеймса Хендлера . [15] [ источник самостоятельной публикации ] В марте 2001 года Объединенный комитет ЕС и США по языкам разметки агентов решил, что DAML следует объединить с OIL. [15] Специальная совместная рабочая группа ЕС и США по языкам разметки агентов была создана для разработки DAML+OIL в качестве языка веб-онтологий. Эта группа финансировалась совместно DARPA (в рамках программы DAML) и проектом финансирования технологий информационного общества (IST) Европейского Союза. DAML+OIL задумывался как тонкий слой над RDFS [15] с формальной семантикой , основанной на логике описания (DL). [16]
DAML+OIL оказывает особенно большое влияние на OWL; Дизайн OWL был специально основан на DAML+OIL. [17]
Семантическая сеть предоставляет общую структуру, которая позволяет совместно использовать и повторно использовать данные в пределах границ приложения, предприятия и сообщества.
- Консорциум Всемирной паутины, деятельность W3C по семантической сети [18]
язык декларативного представления, на который влияют идеи представления знаний
- Консорциум Всемирной паутины, Деятельность по метаданным [19]
В конце 1990-х годов Консорциум Всемирной паутины (W3C) по метаданным начал работу над схемой RDF (RDFS), языком для обмена словарным запасом RDF . RDF стал рекомендацией W3C в феврале 1999 года, а RDFS — кандидатом в рекомендации в марте 2000 года . [19] В феврале 2001 года действие семантической сети заменило действие метаданных. [19] В 2004 году (в рамках более широкой редакции RDF) RDFS стал рекомендацией W3C. [20] Хотя RDFS обеспечивает некоторую поддержку спецификации онтологий, необходимость в более выразительном языке онтологий стала очевидной. [21] [ собственный источник ]
В понедельник, 31 мая, работа нашей рабочей группы официально завершится. Мы достигли всего того, что нам было поручено сделать, и я считаю, что наша работа оценивается весьма высоко.
- Джеймс Хендлер и Гус Шрайбер, Рабочая группа по веб-онтологии: выводы и будущая работа [22]
Консорциум Всемирной паутины (W3C) создал рабочую группу по веб-онтологии в рамках своей деятельности в области семантической сети. Он начал работу 1 ноября 2001 года под руководством сопредседателей Джеймса Хендлера и Гуса Шрайбера. [22] Первые рабочие проекты абстрактного синтаксиса , ссылки и синопсиса были опубликованы в июле 2002 года. [22] OWL стал официальной рекомендацией W3C 10 февраля 2004 года, а рабочая группа была расформирована 31 мая 2004 года. [22]
В 2005 году на семинаре OWL Experiences And Directions Workshop был достигнут консенсус в отношении того, что последние достижения в логике описания позволят сделать более выразительный пересмотр, чтобы более полно удовлетворять требования пользователей, сохраняя при этом хорошие вычислительные свойства. В декабре 2006 года в W3C было подано заявление участника OWL1.1 [23] . W3C учредил рабочую группу OWL в рамках Semantic Web Activity в сентябре 2007 года. В апреле 2008 года эта группа решила назвать этот новый язык OWL2, что указывает на существенную доработку. [24]
OWL 2 стал рекомендацией W3C в октябре 2009 года. В OWL 2 представлены профили для улучшения масштабируемости типичных приложений. [6]
Почему бы не быть непоследовательным хотя бы в одном аспекте языка, который целиком ориентирован на последовательность?
— Гус Шрайбер, Почему OWL, а не WOL? [25]
OWL был выбран как легко произносимая аббревиатура, которая дает хорошие логотипы, предполагает мудрость и отдает дань уважения проекту представления знаний Уильяма А. Мартина « Один мировой язык» 1970-х годов. [26] [27] [28]
В ходе обзора онтологий, доступных в сети в 2006 году, было собрано 688 онтологий OWL. Из них 199 были OWL Lite, 149 — OWL DL и 337 OWL Full (по синтаксису). Они обнаружили, что 19 онтологий имели более 2000 классов, а 6 — более 10 000. В том же опросе было собрано 587 словарей RDFS. [29]
Онтология — это явная спецификация концептуализации.
- Том Грубер , Подход к переводу спецификаций переносимых онтологий [30]
Данные, описываемые онтологией семейства OWL, интерпретируются как набор «индивидов» и набор «утверждений о свойствах», которые связывают этих людей друг с другом. Онтология состоит из набора аксиом , которые накладывают ограничения на множества индивидов (называемых «классами») и типы разрешенных между ними отношений. Эти аксиомы обеспечивают семантику, позволяя системам выводить дополнительную информацию на основе явно предоставленных данных. Полное введение в выразительные возможности OWL представлено в Руководстве W3C по OWL . [31]
Онтологии OWL могут импортировать другие онтологии, добавляя информацию из импортированной онтологии в текущую онтологию. [17]
Онтология, описывающая семьи, может включать аксиомы, утверждающие, что свойство hasMother присутствует между двумя людьми только тогда, когда также присутствует hasParent, и что люди класса HasTypeOBlood никогда не связаны через hasParent с членами HasTypeABBlood. сорт. Если указано, что отдельная Харриет связана через «hasMother» с отдельной Сью и что Харриет является членом класса «HasTypeOBlood», то можно сделать вывод, что Сью не является членом «HasTypeABBlood». Однако это верно только в том случае, если понятия «Родитель» и «Мать» означают только биологического родителя или мать, а не социального родителя или мать.
Чтобы выбрать подмножество разрешимой логики первого порядка, использовалась логика высказываний , увеличивая ее мощность за счет добавления логики, представленной соглашением с аббревиатурами:
Спецификация OWL, одобренная W3C, включает определение трех вариантов OWL с разными уровнями выразительности. Это OWL Lite, OWL DL и OWL Full (упорядочены по возрастанию выразительности). Каждый из этих подъязыков является синтаксическим расширением своего более простого предшественника. Имеет место следующий набор соотношений. Их инверсии этого не делают.
OWL Lite изначально предназначался для поддержки тех пользователей, которым в первую очередь нужна иерархия классификации и простые ограничения. Например, хотя он поддерживает ограничения мощности , он допускает только значения мощности 0 или 1. Была надежда, что обеспечить инструментальную поддержку для OWL Lite будет проще, чем для его более выразительных родственников, что позволит ускорить переход для систем, использующих тезаурусы и другие таксономии . Однако на практике большинство ограничений выразительности, налагаемых на OWL Lite, сводятся к не более чем синтаксическим неудобствам: большинство конструкций, доступных в OWL DL, могут быть построены с использованием сложных комбинаций функций OWL Lite и столь же выразительны, как и логика описания . [24] Таким образом, разработка инструментов OWL Lite оказалась почти такой же сложной, как разработка инструментов для OWL DL, а OWL Lite не получил широкого распространения. [24]
OWL DL спроектирован так, чтобы обеспечить максимально возможную выразительность при сохранении полноты вычислений (сохраняется либо φ, либо ¬φ), разрешимости (существует эффективная процедура для определения того, является ли φ выводимой или нет) и доступности практических алгоритмов рассуждения. OWL DL включает в себя все конструкции языка OWL, но их можно использовать только при определенных ограничениях (например, ограничения на количество не могут быть наложены на свойства, которые объявлены транзитивными; и хотя класс может быть подклассом многих классов, класс не может быть экземпляром другого класса). OWL DL назван так из-за его соответствия с логикой описания — областью исследований, изучающей логику, формирующую формальную основу OWL.
Это можно выразить как , используя приведенную выше логику букв.
OWL Full основан на семантике, отличной от OWL Lite или OWL DL, и был разработан для сохранения некоторой совместимости со схемой RDF. Например, в OWL Full класс можно рассматривать одновременно как совокупность индивидуумов и как отдельный индивидуум; это не разрешено в OWL DL. OWL Full позволяет онтологии дополнять значение заранее определенного словаря (RDF или OWL). OWL Full неразрешим, поэтому ни одно программное обеспечение для рассуждений не может выполнить для него полное рассуждение.
В OWL 2 есть три подъязыка языка. OWL 2 EL — это фрагмент, имеющий полиномиальную сложность рассуждений по времени; OWL 2 QL предназначен для облегчения доступа и запроса данных, хранящихся в базах данных; OWL 2 RL — это подмножество правил OWL 2.
Семейство языков OWL поддерживает множество синтаксисов. Полезно отличать синтаксисы высокого уровня , предназначенные для спецификации, от синтаксисов обмена , более подходящих для общего использования.
Они близки к структуре онтологий языков семейства OWL.
Синтаксис высокого уровня используется для определения структуры и семантики онтологии OWL. [32]
Абстрактный синтаксис OWL представляет онтологию как последовательность аннотаций , аксиом и фактов . Аннотации содержат метаданные, ориентированные на машину и человека. Информация о классах, свойствах и индивидах, составляющих онтологию, содержится только в аксиомах и фактах. Каждый класс, свойство и индивидуум либо анонимны , либо идентифицируются ссылкой URI . Факты содержат данные либо об индивидууме, либо о паре индивидуальных идентификаторов (о том, что идентифицированные объекты различны или одинаковы). Аксиомы определяют характеристики классов и свойств. Этот стиль похож на языки фреймов и совершенно не похож на хорошо известные синтаксисы для DL и структуры описания ресурсов (RDF). [32]
Шон Беххофер и др. утверждают, что, хотя этот синтаксис и сложно разобрать, он вполне конкретен. Они приходят к выводу, что абстрактный синтаксис имен может вводить в заблуждение. [33]
Этот синтаксис точно соответствует структуре онтологии OWL2. Он используется OWL2 для определения семантики, сопоставлений для обмена синтаксисами и профилями. [34]
Синтаксические отображения в RDF определены [32] [36] для языков семейства OWL. Было разработано несколько форматов сериализации RDF. Каждый из них посредством этого сопоставления ведет к синтаксису языков семейства OWL. RDF/XML является нормативным. [32] [36]
OWL2 определяет сериализацию XML , которая точно моделирует структуру онтологии OWL2. [37]
Манчестерский синтаксис — это компактный, удобочитаемый синтаксис, стиль которого близок к фреймовым языкам. Доступны варианты для OWL и OWL2. Не все онтологии OWL и OWL2 могут быть выражены в этом синтаксисе. [38]
Рассмотрим онтологию чая на основе класса Tea. Во-первых, необходим идентификатор онтологии. Каждая онтология OWL должна быть идентифицирована URI (скажем, http://www.example.org/tea.owl). Этот пример дает представление о синтаксисе. В целях экономии места ниже преамбулы и определения префиксов опущены.
Онтология ( <http://example.org/tea.owl > Объявление ( Класс ( : Tea ) )
<Ontology ontologyIRI= "http://example.org/tea.owl" ... > <Prefix name= "owl" IRI= "http://www.w3.org/2002/07/owl#" /> <Декларация> <Class IRI= "Чай" /> </ Декларация> </Онтология>
Онтология : <http://example.org/tea.owl> Класс : Чай
<rdf:RDF ... > <owl:Ontology rdf:about= "" /> <owl:Class rdf:about= "#Tea" /> </rdf:RDF>
<http://example.org/tea.owl> rdf : введите сова : Онтология . : Чай рдф : тип сова : Класс .
Классы OWL соответствуют концепциям логики описания (DL) , свойства OWL — ролям DL , а отдельные лица называются одинаково как в терминологии OWL, так и в DL. [40]
Вначале IS-A был довольно простым. Однако сегодня у этой наследственной связи почти столько же значений, сколько существует систем представления знаний.
- Рональд Дж. Брахман , Чем является и чем не является IS-A [41]
Ранние попытки построить большие онтологии были затруднены отсутствием четких определений. Члены семейства OWL обладают теоретико-модельной формальной семантикой и поэтому имеют прочную логическую основу.
Логики описания — это семейство логик, которые представляют собой разрешимые фрагменты логики первого порядка с привлекательными и хорошо понятными вычислительными свойствами. Семантика OWL DL и OWL Lite основана на списках DL. [42] Они сочетают в себе синтаксис для описания и обмена онтологиями и формальную семантику, которая придает им смысл. Например, OWL DL соответствует логике описания, а OWL 2 соответствует логике . [43] Для этих DL существуют надежные, полные, завершающие рассуждения (т.е. системы, которые гарантированно извлекают все следствия из знаний в онтологии).
OWL Full совместим со схемой RDF (RDFS) и может дополнять смысл существующего словаря структуры описания ресурсов (RDF). [44] Теория моделей описывает формальную семантику RDF. [45] Эта интерпретация объясняет значение словаря RDF и RDFS. Таким образом, значение онтологий OWL Full определяется расширением значения RDFS, а OWL Full является семантическим расширением RDF. [46]
Предположение [закрытого] мира подразумевает, что все, чего мы не знаем, ложно , в то время как предположение открытого мира утверждает, что все, чего мы не знаем, неопределенно .
- Стефано Маццокки, Закрытый мир против открытого мира: первая битва семантической сети [47]
Языки семейства OWL используют предположение об открытом мире . Согласно предположению об открытом мире, если истинность утверждения не может быть доказана с использованием текущих знаний, мы не можем сделать вывод, что это утверждение ложно.
Реляционная база данных состоит из наборов кортежей с одинаковыми атрибутами . SQL — это язык запросов и управления для реляционных баз данных. Пролог — логический язык программирования . Оба используют предположение о закрытом мире .
Следующие инструменты включают общедоступные браузеры онтологий:
{{cite web}}
: CS1 maint: архивная копия в заголовке ( ссылка )