Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Пособие по онтологиям (от Власенко).doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
555.52 Кб
Скачать
    1. . Картирование онтологий

Для того чтобы онтологии имели максимальный эффект, они должны быть широко распространены. А чтобы минимизировать интеллектуальные усилия, затрачиваемые на разработку онтологий, они должны быть пригодны для многократного использования. В наилучшем варианте они должны быть составлены из компонентов.

Как правило, большая часть усилий по разработке онтологии состоит в связывании классов и свойств с целью максимально точного отражения заложенного в понятия смысла. Это – самая емкая часть разработки онтологии.

Эквивалентность классов и свойств (equivalentClass, equivalentProperty). Чтобы связать вместе ряд онтологий, входящих в качестве компонентов в другие онтологии, часто полезно иметь возможность указать, что данный класс или свойство в одной онтологии эквивалентны классу или свойству в другой. Если при этом объединенные онтологии являются противоречивыми (например, в одной онтологии «все А – это В», а в другой «все А – это не В»), то не будет никакого расширения (ни индивидов, ни отношений), которое удовлетворяло бы получающейся комбинации.

Свойство owl:equivalentClass используется, чтобы показать, что 2 класса имеют абсолютно одинаковых представителей. Отметим, что в OWL DL классы просто обозначают наборы индивидов, но не самих индивидов. Однако в OWL Full существует возможность использовать owl:sameAs между двумя классами, чтобы показать, что они идентичны во всех отношениях.

Выражения класса могут быть адресатами как в rdfs:subClassOf, так и в owl:equivalentClass. Это избавляет от необходимости создавать названия для каждого выражения класса и обеспечивает мощную способность определения, основанную на удовлетворении характеристик свойств. Например:

<owl:Class rdf:ID="МосковскиеВещи">

<owl:equivalentClass>

<owl:Restriction>

<owl:onProperty rdf:resource="#расположенВ" />

<owl:someValuesFrom rdf:resource="#РегионМосковский" />

</owl:Restriction>

</owl:equivalentClass>

</owl:Class>

Здесь МосковскиеВещи – это именно вещи, расположенные в Московском регионе. Различие между таким использованием owl:equivalentClass и rdfs:subClassOf – это различие между условиями «необходимого» и «необходимого и достаточного». В случае использования subClassOf вещи, расположенные в Московском регионе, не обязательно должны относиться к классу МосковскиеВещи. Но при использовании owl:equivalentClass все, что расположено в Московском регионе, должно быть в классе МосковскиеВещи.

Идентичность между индивидами (sameAs). Этот механизм аналогичен подобному механизму для классов, но объявляет идентичными двух индивидов. Наиболее часто sameAs применяется для того, чтобы приравнять индивидов при унификации онтологий.

Очень важным моментом является то, что в OWL нет допущения об уникальном имени. То, что 2 имени отличны друг от друга, не означает, что они обозначают различных индивидов; sameAs провозглашает идентичность между двумя разными именами. Отметим, что использование sameAs для приравнивания двух классов неэквивалентно приравниванию их с помощью equivalentClass. Это заставляет классы быть интерпретируемыми как индивиды. В данном случае онтология относится к категории OWL Full. В OWL Full sameAs может использоваться для приравнивания любых элементов онтологии и приводит к тому, что эти элементы интерпретируются как индивиды.

Различие индивидов (differentFrom, AllDifferent). Это – один из способов утверждать, что значения взаимно отличны. Существует также более удобный механизм для определения набора взаимно различных индивидов. Следующий фрагмент утверждает, что понятия Студент, Школьник, Аспирант – все взаимно различны:

<owl:AllDifferent>

<owl:distinctMembers rdf:parseType="Collection">

<vin:Учащийся rdf:about="#Студент" />

<vin:ЦветВина rdf:about="#Школьник" />

<vin:ЦветВина rdf:about="#Аспирант" />

</owl:distinctMembers> </owl:AllDifferent>

Отметим, что owl:distinctMembers может использоваться только в комбинации с owl:AllDifferent.