Академический Документы
Профессиональный Документы
Культура Документы
Александр Филяев.
1
с.1
Содержание
О пользовании этим руководством
Что такое Protégé-2000?
Планирование проекта Protégé-2000
Газетный пример
Проекты
Классы
Слоты
Формы
Экземпляры
Запросы
Поддержка RDF
Расширение Protégé-2000
Глоссарий
с.2
Что такое Protégé-2000?
Protégé-2000 – это интегрированное инструментальное программное средство, которое
используется разработчиками систем и экспертами по предметным областям для разработки
систем, основанных на знаниях. Приложения, разработанные при помощи Protégé-2000,
используются при решении задач и принятии решений в конкретной предметной области.
В то время как в нашем более раннем средстве Protégé/Win, как в классической системе баз
данных, отдельно определялись классы информации (схема) и хранились экземпляры этих
классов, Protégé-2000 облегчает работу и с классами, и с экземплярами. Так, отдельный
экземпляр может быть использован на уровне описания класса, а класс можно хранить, как
экземпляр. Подобным образом, слоты, которые ранее использовались только внутри классов,
сейчас поднялись до уровня, на котором находятся классы. Используя эту новую модель
знаний, мы также обеспечиваем соответствие протоколу ОКВС (Open Knowledge Base
Connectivity) для доступа к базам данных, хранящимся в системах представления знаний. В
конечном счете, приложения из этих компонентов также исполняются внутри
интегрированной среды Protégé-2000.
Средство Protégé-2000 получает доступ ко всем этим частям при помощи унифицированного
графического интерфейса пользователя, верхний уровень которого включает
перекрывающиеся вкладки для компактного представления частей и удобного их
совместного редактирования. Такой дизайн верхнего уровня со вкладками позволяет
2
интеграцию (1) моделирования онтологии классов, описывающей определенную дисциплину,
(2) создания средства приобретения знаний для сбора информации, (3) ввода отдельных
экземпляров данных и создание базы знаний и (4) выполнения приложений. Онтология
определяет набор понятий и их отношения. Средство приобретения знаний разрабатывается
специально для предметной области, позволяя экспертам по предметной области легко и
свободно вводить свои знания в предметной области. Конечная база знаний затем может быть
использована вместе с методом поиска решения задач для ответа на вопросы и решения
задач в предметной области. В конечном счете, приложение является конечным продуктом,
созданным, когда база знаний используется для решения задачи конечного пользователя с
использованием подходящих методов поиска решения задач, методов «эксперт-система» или
методов поддержки принятия решений.
Основное предположение в Protégé-2000 – это то, что системы баз знаний обычно очень
дорого строить и поддерживать. Например, предполагается, что разработкой системы,
основанной на знаниях, занимается команда, включая как разработчиков, так и экспертов по
предметной области, которые могут быть в меньшей степени знакомы с компьютерным ПО.
Protégé-2000 предназначено для того, чтобы вести разработчиков и экспертов по предметной
области в процессе разработки системы. Protégé-2000 предназначено для того, чтобы
позволить разработчикам повторно использовать онтологии предметных областей и методы
поиска решения задач, таким образом уменьшая время, необходимое для разработки и
поддержки программы. Несколько приложений могут использовать одну и ту же онтологию
предметной области для решения различных задач; один и тот же метод поиска решения
задач может быть использован с различными онтологиями. Более подробно о построении
систем, основанных на знаниях, и о подходе, используемом в Protégé-2000, можно узнать в в
разделее Планирование Проекта Protégé-2000.
с.3
О пользовании этим
руководством
Руководство пользователя Protégé-2000 является документацией по использованию Protégé-
2000, интегрированной системы разработки базы знаний, и управления ей. На этих страницах
дано описание пользовательского интерфейса вместе с пошаговыми инструкциями по
выполнению определенных задач. Для иллюстрирования объяснений на большей части
страниц руководства используются скриншоты Газетного примера.
с.4
3
Газетный пример
В этом руководстве мы используем примеры и скриншоты из вымышленного примера
"newspaper" («газета»). Этот пример находится в подкаталоге “examples” каталога, в который
установлена программа Protégé-2000.
Базу знаний с информацией о газетах можно использовать различными способами. Наша база
знаний, использованная в качестве примера, содержит:
с.5
Работа с проектом
● Создание проекта
● Открытие проекта
● Сохранение проекта
● Переименование проекта
● Сохранение проекта в другом формате
❍ Сохранение проекта в текстовом виде
● Импортирование проекта
❍ Импортирование текстовых файлов
❍ Импортирование RDF-файлов
● Включение проекта
● Конфигурирование проекта
● Генерация HTML из проекта
Управление окнами
● Каскадирование открытых окон
● Закрытие всех окон
● Работа с маленьким окном
● Работа с пометками
с.6
Создание проекта
Вы можете создать новый проект Protégé-2000 двумя способами:
● при запуске Protégé
4
● из окна Protégé
1. Запустите Protégé.
В диалоговом окне Вы можете создать новый проект, открыть существующий проект или
получить справку.
2. Если Вам не нужно изменять формат Ваших файлов, то убедитесь, что в поле New Project в
левой части окна выбрано Standard Text Files. Таким образом Вы создадите файл проекта в
формате Protégé-2000. (Подробную информацию о форматах файлов можно найти в разделе
Структура Проекта)
3. Нажмите New.
Откроется окно Protégé и станут видны стандартные вкладки. Будет создана пустая база
знаний, содержащая системные классы с корнем в классе :THING. Экземпляры созданы не
будут. Теперь Вы можете структурировать Ваш проект, создавая Ваши классы и слоты.
(Подробную информацию можно найти в разделах Создание нового класса и Создание слота)
4. Для того чтобы сохранить проект на диск, в меню Project выберите Save.
5. В строке Project диалогового окна введите имя Вашего проекта. Это имя файла Вашего
проекта (.pprj). Также Protégé создает внутренние файлы для собственного использования.
По умолчанию, эти файлы имеют то же имя, но с другим расширением.
5
2. Появится запрос подтверждения на сохранение изменения текущего файла, если таковые
имелись. Нажмите Yes для сохранения изменений и No, если по каким-то причинам Вы не
хотите изменять файл (например, Вы просматривали файл или экспериментировали).
3. В диалоге Select Format выберите формат Ваших файлов Protégé-2000 и нажмите OK.
Если Вам не нужно изменять формат Ваших файлов, то убедитесь, что в поле New Project в
левой части окна выбрано Standard Text Files.
4. Будет создана пустая база знаний, содержащая системные классы с корнем в
классе :THING. Экземпляры созданы не будут. Теперь Вы можете структурировать Ваш
проект, создавая Ваши классы и слоты. (Более подробно об этом можно узнать в разделах
Создание нового класса и Создание слота)
5. Для того чтобы сохранить проект на диск, в меню Project выберите Save.
6. В строке Project диалогового окна введите имя Вашего проекта. Это имя Вашего файла
проекта (.pprj).
Структура проекта
Каждый раз при создании проекта Вы можете выбрать его формат. Если Вам не нужна особая
структура (например, для экспортирования файлов), Вам следует выбрать Standard Text Files.
Независимо от выбранного формата, информация об интерфейсе Protégé-2000 сохраняется в
файле с расширением pprj (Protégé project). Вы можете создавать, открывать и сохранять
Ваши проекты непосредственно с помощью pprj-файла. Вам не нужно присваивать имена
другим файлам или обращаться к ним, если только Вы не хотите импортировать проект.
Кроме pprj-файла Protégé сохраняет внутри еще два файла. В этих файлах содержится
дополнительная информация об онтологии и экземплярах проекта. Когда Вы открываете
pprj-файл, Protégé-2000 автоматически загружает эти файлы. По умолчанию дополнительные
файлы сохраняются в текстовом формате:
о классах и слотах.
● Текстовый файл с расширением pins (Protégé instances), в котором содержится информация
об экземплярах.
Всякий раз при создании проекта Вы можете выбрать, в каких форматах будут сохранены эти
файлы:
● Standard Text Files (по умолчанию) – файлы проекта Protégé-2000 создаются по
вышеописанной схеме. Их можно просмотреть любым текстовым редактором или текстовым
процессором.
● JDBC Database (База данных JDBC) - создает проект как таблицу в базе данных JDBC.
6
с.8
установлена и сконфигурирована база данных. Более подробно об этом можно узнать в
разделе Сохранение проекта в виде базы данных.
● Resource Description Framework (RDF) - проект сохраняется в формате RDF. Подробную
информацию можно найти в разделе Сохранение проекта в формате RDF, а также разделе
Поддержка RDF в Protégé-2000. Если Ваша версия Protégé-2000 настроена для поддержки
дополнительных форматов, то Вы также увидите их в списке.
В любом случае, для доступа к проекту Protégé-2000 все также использует pprj-файл. В
Protégé Вы не должны заметить разницы.
с.9
2. Нажмите на кнопку «Создать», которая выглядит как и находится среди кнопок классов
в правой части Панели отношений классов, или щелкните правой кнопкой мыши и в
каскадном меню класса выберите «Create subclass».
7
3. Под выделенным классом добавится новый класс. У него будет устанавливаемое по
умолчанию имя, такое как project_CLASS_00001.
с.10
4. Для присвоения имени классу, выбора его роли, создания ограничений и создания и
редактирования слотов используйте Форму Класса. Более подробно об этом можно узнать в
разделе Просмотр Класса.
с.11
8
3. Окно классов (Class Window) отображает Ваши классы и позволяет Вам перестраивать
Вашу иерархию перетаскиванием элементов мышью. Несколько иконок дают
дополнительную информацию о Ваших классах; для описания см. раздел Иконки. Более
подробно о перестройке иерархии можно узнать в разделе Замена надкласса.
4. Панель поиска классов позволяет Вам найти класс в окне Отношений классов, набрав
полное имя класса или его часть и нажав на бинокль. Более подробно об этом можно узнать в
разделе Поиск класса.
Любые изменения, сделанные в этом или любом другом окне, сразу же вступают в силу. Для
того чтобы запомнить изменения, сохраните Ваш проект, выбрав Save в меню Project.
с.13
9
Нажатие на кнопки приведет к следующему результату:
Если кнопка «Создать» или «Удалить» серая, то это означает, что текущий класс нельзя
редактировать или удалить. Слева от такого класса всегда есть иконка серого цвета .
Класс нельзя редактировать, если он системный или включен из другого проекта.
с.14
Форма класса
Форму класса можно использовать для определения и редактирования атрибутов класса,
выбранного на Панели Отношений классов. Форму классов можно просмотреть несколькими
способами:
● Если на вкладке Classes выбран один класс, то Форма классов отображается справа.
● На вкладке Classes Форму классов также можно отобразить в отдельном окне, нажав
на иконку просмотра на панели Отношений классов.
● На вкладке Instances Форму классов можно отобразить, выбрав класс на панели Class и
нажав на иконку просмотра .
Всякий раз, когда Вы вносите изменения в Форму классов, они сразу же вступают в действие.
Для того чтобы сохранить изменения, в меню Project выберите Save.
10
В Форме классов имеется 6 отдельных областей:
с.15
Иконки примечаний
Иконки примечаний, , в верхнем правом углу формы позволяют Вам добавлять к Вашему
классу желтые «наклейки» и удалять эти «наклейки».
Примечание всегда отображается вместе с формой. Более подробно о том, как добавлять
примечания к любому фрейму (классу, экземпляру или слоту), можно узнать в разделе Работа
с Примечаниями.
11
Поле Name дает Вам возможность присвоить имя классу. При создании класса ему дается имя
по умолчанию, такое как CLASS_00001. Вы можете поменять имя нового или уже
существующего класса, выделив имя и набрав новое. К именам классов применяются
следующие правила:
Каждое слово в имени класса рекомендуется начинать с большой буквы, остальные писать
маленькими буквами и отделять слова подчеркиванием.
с.16
Protégé-2000 не накладывает каких-либо ограничений на роли Ваших классов. Единственное
правило касательно моделирования: делать все классы-листья (классы нижнего уровня)
конкретными, а все внутренние классы (верхнего уровня, не листья) – абстрактными.
12
того чтобы выделить интервал классов, нажмите на первый класс, затем удерживайте
клавишу Shift и нажмите на последний класс интервала.
Открытие нового класса не приведет к закрытию предыдущей формы. Это позволяет Вам
сравнить атрибуты двух или более классов. Изменения можно вносить из любой открытой
Формы Классов.
Если у Вас открыто несколько форм, Вы можете управлять ими следующим образом:
● Закрыть все открытые формы, нажав на кнопку «Закрыть все окна» под вкладкой
главного меню или выбрав пункт Close All Windows в меню Windows.
c.17
Просмотр класса
Вы можете редактировать существующий класс, используя Форму Класса, которую Вы
можете открыть двумя способами:
● из вкладки Classes
Примечание: Если класс появляется как один из Разрешенных Родителей для слота типа
Class, Вы также можете использовать Форму Классов, найдя экземпляр, у которого есть этот
слот и нажав на иконку просмотра . Более подробно об этом можно узнать в разделе
Стандартные Элементы управления.
13
Любые изменения, которые Вы вносите в Форму Классов, сразу же вступают в силу. Для того
чтобы запомнить изменения, сохраните Вашу базу знаний, выбрав Save в меню Project.
Каждое слово в имени класса рекомендуется начинать с большой буквы, остальные писать
маленькими буквами и отделять слова подчеркиванием.
14
Изменение ограничений
Ограничения класса определяются программно. Более подробно об этом можно узнать в
разделе Ограничения.
● На верхнем уровне. Редактирование слота на верхнем уровне влияет на слот везде, где бы
он ни появился, включая вкладку Slots и любые классы, к которым этот слот присоединен.
● В классе. Редактирование слота на уровне класса (переопределение) влияет только на слот
этого класса и его подклассов. На вкладке Slots и любых неродственных классах слот
останется неизменным.
с.20
Более подробно о редактировании слота можно узнать в разделе Просмотр Слота.
15
Ограничения глобальных и унаследованных классов
Ваш класс может иметь слоты, унаследованные от надкласса. Если слот определен глобально
или унаследован, то редактировать можно только:
Прямые слоты, которые были созданы или добавлены на уровне слота, не имеют
ограничений по редактированию.
Если Вы редактировали слот на уровне класса, то слот отображается с иконкой
переопределения .
с.21
Очистка переопределений слота
Если Вы переопределили слот в классе, Вы можете удалить переопределение и использовать
для слота определение верхнего уровня:
16
1. На панели Template Slots выделите имя слота.
2. Нажмите на Кнопку очистки переопределений в верхнем правом углу панели. Удалены
все изменения, которые Вы внесли на уровне класса, и для слота используется определение
верхнего уровня.
На панели Template Slots добавлен новый слот. Это слот присоединен напрямую и
отображается с бирюзовой иконкой . Вам не требуется давать слоту имя; тем не менее,
Вам может понадобиться переопределить фацеты. Если Вы хотите переопределить фацеты
слота, Вы можете нажать кнопку «Просмотр на Верхнем Уровне» или «Просмотр на
Уровне Класса» для того, чтобы отобразить Форму Слота. Более подробно об этом можно
узнать в разделе Просмотр Слота.
Исключение слота
Вы можете исключить любой прямой слот, который присутствует на панели Template Slots.
Для этого:
1. Выделите слот.
2. Нажмите кнопку «Исключить» . Слот будет исключен из класса.
Обратите внимание, что слот не был удален из базы знаний. Он все еще будет отображаться в
диалоговом окне Select Slots (см. выше раздел Добавление Слота) и на панели Slots. Более
подробно об этом можно узнать в разделе Удаление Слота.
с.22
Другие операции редактирования класса
Просмотр нескольких классов
Для того чтобы просмотреть или редактировать информацию сразу о нескольких классах,
выберите классы один за другим и нажмите на кнопку просмотра класса для того, чтобы
17
открыть Форму Класса для каждого класса. Открытие новой формы класса не приводит к
закрытию предыдущей формы. Это позволяет Вам сравнивать атрибуты двух или более
классов. Редактирования можно внести из любой открытой Формы Класса.
Изменение надклассов
Более подробно об изменении надкласса класса можно узнать в разделах Добавление
надкласса, Замена надкласса и Исключение надкласса.
с.23
Удаление класса
Для того чтобы удалить класс из базы знаний:
1. На панели Relationship выделите один или более классов. Для того чтобы выделить
несколько классов, при нажатии на классы удерживайте клавишу Ctrl. Для того чтобы
выделить интервал классов, нажмите на первый класс, затем удерживайте клавишу Shift и
нажмите на последний класс в интервале.
Вы не можете использовать каскадное меню для удаления нескольких классов.
2. Нажмите на иконку удаления класса . Появится запрос подтверждения.
Удаление класса приводит к удалению класса и всех его подклассов. После того как
класс был удален, восстановить его невозможно.
Класс нельзя удалить, если это системный класс или класс, добавленный из другого проекта.
Иконка класса слева указывает тип класса. Более подробно о включении проекта можно
узнать в разделе Включение Проекта.
с.25
Классы
Интерфейс пользователя
● Вкладка Classes
● Панель Relationship
● Кнопки работы с классом
● Окно класса
● Иконки класса
● Меню класса
● Панель Superclasses
● Форма класса
● Панель Template Slots
● Кнопки шаблонного слота
● Панель обратных ссылок
Действия с классами
● Создание класса
● Удаление класса
● Просмотр класса
● Просмотр отношений класса
● Поиск класса
● Скрытие класса
Действия с надклассами
● Замена надкласса
● Добавление надкласса
● Переход к другому надклассу
● Исключение надкласса
Действия с метаклассами
● Понимание метаклассов
● Создание метакласса
● Создание класса с использованием метакласса
● Изменение метакласса класса
● Изменение метакласса подклассов
19
с. 26
Вкладка Classes & Instances
● Вкладка Classes & Instances
с.27
1. Нажав на кнопку создания слота на панели Slot вкладки Slots. В результате будет создан
слот, но он не будет назначен какому-либо классу. Позже слот можно будет добавить к
одному или нескольким классам.
2. Щелкнув правой кнопкой мыши на панель Slot вкладки Slots и выбрав из меню слота
команду Create slot. Это идентично предыдущей операции.
3. Выбрав класс на вкладке Classes и затем нажав на кнопку создания шаблонного слота на
панели Template Slots. В результате будет создан слот, прикрепленный к выбранному классу.
20
с.28
После создания слота Вы можете определить и редактировать его свойства, как это описано в
разделе Редактирование Свойств Слота.
с.29
21
Кнопка «Просмотр»: Нажмите на эту кнопку для того, чтобы для
выделенного слота открыть Форму слота. Также Вы можете
просмотреть слот, щелкнув по нему дважды на панели Slot. См.
раздел Просмотр слота.
Кнопка «Создать»: Нажмите на эту кнопку для того, чтобы
создать новый слот.
Кнопка обратных ссылок: Нажмите на эту кнопку для того,
чтобы увидеть все объекты, которые ссылаются на выделенный
слот. См. раздел Просмотр обратных ссылок.
Кнопка «Исключить»: Нажмите на эту кнопку для того, чтобы
исключить из проекта выделенный слот. См. раздел Удаление
Слота.
с.30
Вкладка Slots
Вкладка Slots представляет единое окно, в котором Вы можете просматривать, создавать и
редактировать слоты. Хотя обычно полагают, что слоты прикрепляются к классу, их можно
определять и манипулировать ими независимо, и они могут существовать без каких-либо
взаимоотношений с классами. Пример вкладки Slots показан ниже. Окно состоит из 3 панелей:
1. Панель Slots в левом верхнем углу показывает все слоты в проекте и позволяет Вам
редактировать существующие слоты, создавать новые слоты, просматривать обратные
ссылки для слотов и удалять слоты. Более подробно об этом можно узнать в разделе Кнопки
Слота.
2. Панель Classes на вкладке Slots в левом нижнем углу показывает все классы, к которым
прикреплены слоты. Это окно только для просмотра. Для просмотра или манипулирования
классами, используйте вкладку Classes. Как упоминалось выше, слот может существовать без
привязки к классу. Примечание: Если Вы не можете увидеть Панель Classes, то, возможно,
Ваше окно слишком маленькое. Вы можете увидеть панель, увеличив Ваше окно или
переместив ползунок в нижней части Меню Slot. Более подробно об этом можно узнать в
разделе Работа с Маленьким Окном.
3. Когда выбран отдельный слот, панель Edit справа содержит Форму Слота для выбранного
слота. Форма Слота дает Вам возможность присвоить имя слоту, выбрать его мощность и тип
значения, определить ограничения, значения по умолчанию, максимальные и минимальные
значения, а также дать краткое описание. Форму Слота можно отобразить в отдельном окне,
нажав на Панели Slots кнопку просмотра слота . К Форме Слота также можно получить
доступ из панели Templates Slots вкладки Classes.
с.31
22
Более подробно о пользовательском интерфейсе вкладки Slots и о выполнении специальных
задач, можно узнать в разделе Слоты.
с.33
Добавление к классу
существующего слота
После создания слота Вы можете прикрепить его к одному или нескольким классам.
Например, слот name встречается и у Organization, и у Person.
Для того чтобы выбрать уже существующий для добавления его к классу:
23
«Просмотр на Уровне Класса» для того, чтобы отобразить Форму Слота. Более подробно
об этом можно узнать в разделах Просмотр Слота и Редактирование Свойств Слота.
с.34
Меню слота
Всякий раз, когда Вы выбрали слот в Форме Слота, Вы можете получить доступ к
каскадному меню слота, дважды щелкнув правой кнопкой мыши. Это меню позволяет Вам
выполнить ряд действий со слотом.
Меню класса позволяет Вам выполнить следующие действия. Не все действия доступны все
время - те, которые нельзя выполнить, выделены серым цветом.
● Create slot (Создать слот): создает новый слот. Эта операция идентична нажатию на
кнопку создания слота . Подробную информацию можно найти в разделе Создание слота.
● Delete selected slots: (Удалить выбранные слоты): Удаляет выделенный класс и все
его подклассы, исключая его из текущего проекта. Эта операция идентична нажатию на
кнопку удаления класса . Более подробно об этом можно узнать в разделе Удаление Класса.
● Change slot metaclass: (Изменить метакласс слота): (Обратите внимание, что метаклассы
с.35
● Expand (Развернуть): Показывает все слоты, которые подчинены выделенному слоту. Это
операция многоуровневого отображения, которая более масштабная, чем нажатие на
иконку , которая показывает только следующий уровень непосредственных подслотов.
● Collapse (Свернуть): Скрывает все слоты, которые подчинены выделенному слоту. Это
с.36
Вкладка Classes
Вкладка Classes представляет отдельное окно, в котором Вы можете просматривать,
создавать и редактировать классы, которые являются понятиями модели вашей предметной
области. Ниже показан пример. Окно состоит из трех панелей:
1. Панель Relationship в верхнем левом углу показывает классы иерархии и позволяет Вам
редактировать, создавать и удалять новые классы. Также она позволяет трансформировать
иерархию классов путем перетаскивания класса в новый надкласс.
Примечание: Если Вы не видите панель Superclasses, то, возможно, Ваше окно слишком
маленькое. Вы можете увидеть панель, увеличив Ваше окно или переместив ползунок в
нижней части панели класса Relationship. Более подробно об этом можно узнать в разделе
Работа с Маленьким Окном.
3. Когда выбран отдельный класс, панель Edit, расположенная справа, содержит Форму
Класса выделенного класса. Форма Класса позволяет Вам присвоить имя классу, выбрать его
роль, удалить ограничения, дать краткое примечание и, самое важное, определить и
редактировать шаблонные слоты. Форму Класса можно отобразить также в виде отдельного
окна, нажав на иконку просмотра на панели Relationship.
25
с. 39
26
Кроме того, Вы можете просматривать, создавать или удалять слоты, а также просматривать
обратные ссылки напрямую из вкладки Slots. Более подробно об этом можно узнать в разделе
Кнопки Слотов.
с. 41
В нашем примере у класса Editor есть несколько слотов, которые присутствуют на панели
Template Slots.
Иконки слота
Иконки в левом столбце указывают на то, где был создан слот.
с. 42
28
Бирюзовая иконка означает, что слот прямой, то есть он был создан
непосредственно в выбранном классе. responsible_for – это прямой
слот.
Остальные столбцы на панели Шаблонных Слотов дают резюме информации, которая была
введена или отредактирована в Форме Слота или на вкладке Slots.
Столбец Значение
Slot Name Отображает имя слота.
Type Указывает тип значения, которое может принять слот.
Возможные типы: Any, Boolean, Class, Float, Instance,
Integer, String и Symbol. Более подробно об этом можно
узнать в разделе Меню Типа Значения
Cardinality Указывает, может ли слот содержать Множество элементов
или Единственный элемент.
Other Facets Отображает любые другие фацеты, которые были определены
в Форме Слота или на вкладке Slots. Содержимое этого
столбца зависит от типа слота. Например, для слотов типа
Integer в последнем столбце может отображаться область
значения. Для слотов типа Instance отображаются
разрешенные классы. Слот published_in является слотом типа
Instance с разрешенным классом Newspaper. В этом столбце
также указаны необходимые значения или значения по
умолчанию.
с.43
Форма Слота
Форму Слота можно использовать для определения и редактирования атрибутов слота.
Форма Слота для выбранного слота отображается на Панели Редактирования Слота в правой
части вкладки Slots. Форму слота также можно отобразить в виде отдельного окна
следующим образом:
29
● Когда Вы выделяете слот на вкладке Slots, а затем нажимаете на кнопку просмотра слота
.
● Когда для выделенного класса Вы создаете новый слот, нажав на кнопку «Создать» на
панели Template Slots на вкладке Classes.
● Когда на панели Template Slots Вы выделяете слот и затем нажимаете на кнопку
шаблонного слота «Просмотр Слота на Верхнем Уровне» или «Просмотр на Уровне
Класса» .
В примере, показанном ниже, на панели Template Slots был выбран слот urgent класса Article.
В форме слота показан тип Boolean, с Единичной Мощностью и панель текстового
пояснения слота urgent.
Слот можно использовать более чем в одном классе. У каждого слота есть описание верхнего
уровня (системное); системное описание может быть уточнено для отдельного класса.
Масштаб Ваших изменений зависит от того, каким образом Вы получаете доступ к Форме
Слота. Более подробно об этом можно узнать в разделе Просмотр Слота:
● Когда Вы открываете Форму Слота через вкладку Slots или нажатием на кнопку «Просмотр
Слота на Верхнем Уровне» на панели Template Slots вкладки Classes, то Вы можете
просматривать и редактировать описание верхнего уровня; эти изменения влияют на слот
любого класса, в котором он встречается.
с. 44
● Когда Вы открываете Форму Слота нажатием на кнопку «Просмотр на Уровне Класса»
30
влияют на слот в текущем классе и его подклассах. Это тип редактирования называется
«переопределение».
Для отдельных типов значения под панелью Value Type появляется дополнительная панель:
Иконки Примечаний
Иконки примечаний, , в верхнем правом углу формы позволяют Вам добавлять к Вашему
классу желтые «наклейки» и удалять их. Примечание всегда отображается вместе с формой.
Более подробно о том, как добавлять примечания к любому фрейму (классу, экземпляру или
слоту), можно узнать в разделе Работа с Примечаниями.
Имя слота
Вы можете редактировать имя слота прямо из поля Name. В именах слотов различается
регистр букв. Каждое слово в имени класса рекомендуется начинать с маленькой буквы, а
слова отделять подчеркиванием (_).
31
Instance Экземпляр класса в базе знаний instance_00010
Integer Целое число 1, 2, -4
String Строка символов алфавита, можно с пробелами "имярек"
Symbol Список значений, которые могут не содержать пробелы Красный, синий и
зеленый
с.45
Для полного описания типов см. раздел Меню Типов Значений.
Мощность
Поле «Мощность» позволяет Вам определить число значений, допустимых или необходимых
для слота. По умолчанию слоту разрешено иметь максимум одно значение, то есть он может
иметь одно значение или не вообще не иметь значений.
Значение по умолчанию можно изменить, введя целое положительное число в поле at least
(минимум) и/или at most (максимум) или выбрав вариант multiple без значения at most.
● в поле required/at least устанавливается минимальное число значений слота. Для того
чтобы воспользоваться этим, введите целое положительное число в поле ввода at least.
Обычно at least устанавливают в 1, что требует значения для слота. Например, установка at
least равным 1 и at most равным 1 означает, что у слота может быть только одно значение.
Если Вы введете значение для at least, то автоматически будет выбрано required (требуется).
Если Вы установите at least больше, чем 1, то автоматически будет выбрано multiple.
● multiple/at most означает, что слот может иметь множественные значения, но существует
предел числу значений. Если Вы установите at most большим 1, то автоматически будет
выбрано multiple.
● multiple без значения at most означает, что значение слота может содержать любое число
элементов. (Например, слот keywords (ключевые слова) класса Article позволяет
множественные значения. Это значит, что у экземпляра Article может быть больше, чем 1
ключевое слово.) multiple хранятся в виде списка; возможны идентичные значения, хотя они
редко используются.
Minimum (необязательно)
Это поле может быть только у слотов типа Integer или Float.
Minimum позволяет Вам определить минимальное значение Вашего слота. Когда создается
экземпляр класса с этим слотом, значение слота должно быть больше или равно
минимальному. Например, минимум, равный 0 означает, что у экземпляры не могут
32
принимать отрицательные значения. Minimum и Maximum можно использовать совместно
для определения допустимого интервала.
Минимальное значение, когда оно есть, отображается в последнем столбце панели Template
Slots.
с.46
Maximum (необязательно)
Это поле может быть только у слотов типа Integer или Float.
Maximum позволяет Вам определить максимальное значение Вашего слота. Когда создается
экземпляр класса с этим слотом, значение слота должно быть меньше или равно
максимальному. Minimum и Maximum можно использовать совместно для определения
допустимого интервала.
Максимальное значение, когда оно есть, отображается в последнем столбце панели Template
Slots.
Пояснения (необязательно)
Поле «Пояснения» позволяет Вам ввести текстовое описание слота. Заполнять это поле
необязательно, делать это рекомендуется для того, чтобы облегчить поддержку базы знаний.
Информацию по операциям, которые Вы можете выполнять над слотами, можно найти в
разделах Кнопки Слота и Кнопки Шаблонного Слота.
33
Количество Шаблонных Значений не должно превышать значения поля at most Мощности
слота.
Шаблонные Значения, если они есть, отображаются в столбце Other Facets панели Slots
вкладки Classes. Они также автоматически появляются в поле значения слота Формы Класса
или Формы Экземляра любого класса или экземпляра, созданного с этим слотом.
с.47
Открытие новой формы слота не приводит к закрытию предыдущей формы. Это позволяет
Вам сравнивать атрибуты двух или более слотов. Изменения можно вносить прямо из любой
открытой формы.
Если у Вас открыто несколько форм, Вы можете управлять ими следующим образом:
● Закрыть все открытые формы, нажав на кнопку «Закрыть все окна» под вкладкой
главного меню или выбрав пункт Close All Windows в меню Windows.
с.48
Имя слота
Для того чтобы изменить имя слота, измените текст в поле Name. В именах слотов
различается регистр букв. Для того чтобы различать имена слотов и имена классов, каждое
слово в имени слота рекомендуется начинать с маленькой буквы.
Мощность
Для того чтобы изменить способность слота состоять или не состоять более чем из 1
элемента, выберите различные варианты для Мощности. По умолчанию слот может иметь
максимум 1 значение, то есть, он может иметь одно значение или вовсе не иметь значений.
● Для того чтобы установить минимальное число значений слота, введите целое
положительное число в поле ввода at least. Установка at least равным 1 требует для слота 1
значение. Установка at least равным 1 и at most равным 1 означает, что у слота может быть
только одно значение. Если Вы введете значения для at least, то автоматически будет
выбрано required (требуется). Если Вы установите at least больше, чем 1, то автоматически
будет выбрано multiple.
● Для того чтобы у слота могло быть несколько значений, выберите multiple.
● Для того чтобы у слота могло быть конечное число значений, введите число (максимум
значений) в поле ввода at most. Если Вы установите at most больше, чем 1, то автоматически
будет выбрано multiple.
Тип Значения
Для того чтобы изменить тип значения слота, выберите другое значение в меню Типа
Значения. Допустимые типы показаны в следующей таблице:
с.49
35
Тип Описание Примеры
Any Любой из типов, описанных ниже (логическое
объединение)
Boolean Логическое значение Правда, Ложь
Class Класс в базе знаний Организация
Float Число с десятичной запятой 1.0, 3.4e10, -0.3e-3
Instance Экземпляр класса в базе знаний instance_00010
Integer Целое число 1, 2, -4
String Строка символов алфавита, можно с пробелами "имярек"
Symbol Список значений, которые могут не содержать пробелы Красный, синий и
зеленый
● Для унаследованного слота типа Any Вы можете выбрать один из других типов.
● Для унаследованного слота, тип которого не Any, Вы не можете изменить тип слота.
Тем не менее, для слотов типов Class, Instance или Symbol Вы можете изменить варианты в
ассоциированном меню Allowed (Разрешенное).
Когда выбрано значение типа Class, Instance или Symbol, то под меню Value Type (Тип
Значения) появляется следующая дополнительная панель:
36
Для слота с Единичной мощностью Значения по умолчанию должны иметь единственное
значение или не иметь значения; для слота с Множественной мощностью Значения по
умолчанию могут состоять более чем из 1 элемента.
Minimum (необязательно)
Для слота типа Integer или Float Вы можете изменить минимальное значение, набрав в поле
Minimum новое значение. Если Вы редактируете слот определенного класса и слот является
унаследованным, то новое максимальное значение должно быть больше или равно
унаследованному минимальному значению.
Maximum (необязательно)
Вы можете изменить максимальное значение слота типа Integer или Float, набрав в поле
Maximum новое значение. Если Вы редактируете слот определенного класса и слот является
унаследованным, то новое максимальное значение должно быть меньше или равно
унаследованному максимальному значению.
Примечания (необязательно)
Вы можете изменить текстовое описание слота прямо из поля примечаний.
с.51
Просмотр слота
Вы можете просматривать и редактировать слот на двух уровнях:
● Просмотр/редактирование свойств верхнего уровня слота. Это изменяет слот везде, где он
В любом случае, Вы можете редактировать свойства слота прямо из Формы Слота. Более
подробно об этом можно узнать в разделе Редактирование свойств слота. Любые изменения,
сделанные в Форме Слота, сразу же вступают в силу. Для того чтобы запомнить изменения,
сохраните Ваш проект, выбрав Save в меню Project.
37
Просмотр слота на верхнем уровне
Вы можете редактировать свойства верхнего уровня слота прямо из вкладки Slots или с
помощью кнопки «Просмотр на верхнем уровне» на панели Template Slots.
Редактирование на верхнем уровне изменяет определение слота. Изменения появляются во
всех местах, где встречается слот, включая вкладку Slots и все классы, которые ссылаются на
слот.
с.52
1. На панели Slot вкладки Slots выберите слот, который Вам нужно редактировать.
2. Нажмите на кнопку просмотра слота . Для выбранного слота откроется Форма слота.
Для редактирования свойств верхнего уровня слота из панели Template Slots вкладки Classes:
В результате для выбранного слота откроется Форма Слота. Обратите внимание, что на
редактирование наследованного слота могут быть наложены ограничения.
38
Вы также можете редактировать слот на уровне класса. Изменения на уровне класса коснутся
только слота в текущем классе и его подклассах. Для редактирования свойств слота
определенного класса:
с.53
Слоты
Интерфейс пользователя
● Вкладка Slots
● Кнопки слота
● Меню слота
● Форма слота
● Меню Value Type
Действия со слотами
● Создание слота
● Просмотр слота
● Редактирование свойств слота
● Исключение слота из класса
● Удаление слота из проекта
● Добавление существующего слота к классу
● Очистка изменений слота
● Понимание обратных слотов
● Создание отношения обратных слотов
● Создание подслота
c. 54
39
Импортирование проекта
Импортирование проекта означает построение проекта Protégé-2000 из файлов не в формате
Protégé-2000. Например, это может быть файл «*.pont» из предыдущей версии Protégé-2000
или RDF-файл.
● Таблица базы данных: Вы можете импортировать проект из таблицы в базе данных JDBC.
● RDF-файлы: Вы можете импортировать проект из двух файлов RDF, которые описывают
информацию о классах/слотах и экземплярах.
с.55
Импортирование текстовых
файлов
Для того чтобы импортировать проект из текстовых файлов:
40
с.56
6. В строке Instances file name (Имя файла экземпляров) введите местоположение и имя
текстового файла, содержащего информацию о совместимых экземплярах. Обычно это файл
с расширением .pins. Для просмотра списка файлов нажмите на кнопку .
7. Нажмите ОК.
с.57
41
Protégé-2000 создаст файл проекта из информации о Ваших классах и экземплярах. Для того
чтобы сохранить проект и присвоить ему имя, из меню Project выберите Save. Более
подробно об этом можно узнать в разделе Сохранение Проекта.
с.58
с.59
42
4. В строку JDBC Driver диалогового окна введите имя Вашего драйвера JDBC.
5. В строку JDBC URL введите URL вашей базы данных.
6. Введите имя таблицы, содержащей информацию, которую Вы хотите импортировать.
7. Если для Вашей базы данных требуется имя пользователя и/или пароль, введите их в
соответствующих строках диалогового окна.
Protégé-2000 создаст файл проекта из информации о Ваших классах и экземплярах. Для того
чтобы сохранить проект и присвоить ему имя, из меню Project выберите Save. Более
подробно об этом можно узнать в разделе Сохранение Проекта.
с. 61
Вы можете преобразовать RDF-проект в проект формата Protégé-2000, импортировав его.
Исходный проект не изменяется. Если у Вас нет схемы для Вашей RDF (Ваши экземпляры не
имеют объявленный тип), то система создаст отдельный класс с требуемыми свойствами и
все импортированные экземпляры буду являться экземплярами этого класса. Затем Вы
можете использовать Protégé-2000 для того, чтобы создать схему и назначить подходящим
классам эти экземпляры.
43
Для того чтобы импортировать существующие RDF-файлы:
с.62
44
4. В поле Classes file name введите имя файла, содержащего Вашу схему RDF (если она есть).
Для поиска файла нажмите на кнопку .
5. В поле Instances file name введите имя файла, содержащего Ваши экземпляры RDF. Для
поиска файла нажмите на кнопку .
6. В поле Namespace (Пространство имен) введите имя Вашего пространства имен.
7. Нажмите на кнопку ОК, и система загрузит схему и экземпляры.
Более подробно об RDF- файлах и Protégé можно узнать в разделе Поддержка RDF в Protégé-
2000.
с.63
● убедитесь, что в Вашей системе установлена программа для работы с базами данных;
● убедитесь, что у Вас есть драйвер, совместимый с Вашей базой данных и версией Java VM,
которую Вы используете;
● добавьте драйвер к пути для Protégé, поместив jar-файл драйвера в подкаталог плагинов
каталога Protege-2000.
Примечание: Когда проект сохранен в базе данных JDBC, внутренние изменения в базе
данных (например, изменения слотов, классов и экземпляров) применяются сразу после того,
как они были созданы. Однако изменения пользовательского интерфейса (который хранится
в файле .pprj) не применяются до того, как Вы нажмете кнопку Save.
После того, как Вы создали Вашу базу данных JDBC, Вы можете сохранить Ваш проект
Protégé-2000, как файлы базы данных, двумя способами:
● Когда проект только создан, в диалоговом окне Select Format выберите JDBC Database.
● В меню Project выберите Save in Format..., а затем в диалоговом окне Select Format
выберите JDBC Database.
После того, как Вы выбрали формат, выберите имя и местоположение проекта следующим
образом:
1. После того, как Вы выберите JDBC Database, отобразится диалоговое окно Single Table
JDBC Database (База данных с единственной таблицей).
с.64
45
2. Для того чтобы выбрать или изменить имя или местоположение pprj-файла, введите
нужную Вам информацию в строку Project диалогового окна. Убедитесь, что файл имеет
расширение pprj. Чтобы определить новое местоположение, нажмите на кнопку . Если Вы
не определите местоположение проекта, то по умолчанию он будет сохранен в каталоге, где
установлена Protégé-2000.
3. В строку JDBC Driver диалогового окна введите имя класса Вашего драйвера. Имя класса
можно найти в документации, поставляемой с Вашим конкретным драйвером.
(Для Microsoft Access используйте: sun.jdbc.odbc.JdbcOdbcDriver.)
4. В строке JDBC URL введите URL для Вашей базы данных.
(Для Microsoft Access, перейдите к диалогу ODBC Data Source Administrator с помощью
Панели Управления и добавьте DSN пользователя Вашей базы данных Access. Если Вы не
знаете, как добавить DSN пользователя, обратитесь к Справке Microsoft Windows. Ваш URL
будет выглядеть как jdbc:odbc:< DSN-имя пользователя>)
5. Protégé-2000 автоматически использует имя существующего pprj-файла в качестве имени
таблицы базы данных. Если Вы хотите поменять его, наберите новое имя базы данных в
строке Table диалогового окна.
6. Если для Вашей базы данных требуется имя пользователя и/или пароль, введите их в
соответствующих строках диалогового окна.
7. Нажмите ОК.
с. 66
2. Для того чтобы выбрать или изменить имя или местоположение pprj-файла, введите
нужную Вам информацию в строку Project диалогового окна. Убедитесь, что файл имеет
расширение pprj. Чтобы определить новое местоположение, нажмите на кнопку . Если Вы
не определите местоположение проекта, то по умолчанию он будет сохранен в каталоге, где
установлена Protégé-2000.
3. Protégé-2000 создаст два файла: один для схемы (классы и слоты), а другой для
экземпляров. По умолчанию эти файлы используют имена существующего pprj-файла. Если
Вы хотите изменить имя
с.67
файла схемы, в строке Classes file name диалогового окна наберите новое имя. Убедитесь, что
файл имеет расширение .rdfs.
47
4. Если Вы хотите изменить имя файла экземпляров, в строке Instances file name диалогового
окна наберите новое имя. Убедитесь, что файл имеет расширение .rdf.
5. В поле Namespace введите пространство имен RDF для Вашего проекта. Все классы, слоты
и экземпляры находятся в этом пространстве имен.
6. Нажмите ОК.
с.68
Импортирование, создание и
сохранение RDF(S)-файлов
● Для импортирования существующие файлы RDF(S) в Protégé-2000 выберите пункт меню
Project | Import, а в диалоге формата для сохранения выберите RDF Schema. В
соответствующие поля введите имя файла, содержащего Вашу схему RDF и имя файла,
содержащего информацию об экземплярах RDF.
● Чтобы создать новый проект RDF, который будет включать схему и информацию об
экземплярах, выберите пункт меню Project | New, а в диалоге формата для сохранения
выберите RDF Schema.
с.69
2. Загрузите основной проект и выберите Project | Save as .... Если Вы включили проекты,
которые были загружены с выходным буфером RDF(S), Вы увидите кнопку Advanced ....
Измените часть или все пространства имен и сохранитесь (в консольном окне будет показано
напоминание, если изменялись имена пространств имен). Закройте проект.
3. Для каждого включенного проекта, где Вы изменяли имя пространства имен по умолчанию,
загрузите и измените пространство имен (через Project | Save as ...).
4. Теперь Вы можете загрузить основной проект.
Пример
В каталоге Protege-2000/examples/rdf Вы можете найти простой пример.
49
с.71
Открытие проекта
Вы можете открыть существующий проект Protégé-2000 двумя способами:
1. Запустите Protégé.
Диалоговое окно позволяет Вам создать новый проект, открыть существующий проект или
получить подсказку.
2. Для того чтобы выбрать проект из списка недавних проектов, отметьте нужный проект в
списке и нажмите ОК. ИЛИ
3. Для того чтобы открыть проект, которого нет в списке, нажмите Open Other... (Открыть
Другой…). Найдите pprj-проект, который Вы хотите открыть и нажмите ОК.
50
с.72
Независимо от формата Вашего проекта Вы можете создавать, открывать или сохранять
Ваши проекты прямо через pprj-файл. Вам не нужно присваивать имя или обращаться к
другим типам файлов, пока Вы не захотите построить проект.
Для того чтобы сохранить открытый проект на диск после его редактирования, в меню
Project выберите Save.
с.73
Сохранение проекта
Для того чтобы сохранить проект Protégé-2000:
1. В меню Project выберите Save или нажмите на кнопку Save Project («Сохранить
Проект») .
2. Если это новый проект, Вам будет предложено ввести имя и определить местоположение.
Вам просто нужно выбрать имя и местоположение pprj-файла; остальные файлы будут
созданы автоматически. Если Вы не определите местоположение проекта, то по умолчанию
проект будет сохранен в каталоге, где установлена Protégé-2000.
3. Нажмите ОК.
Более подробно о том, как сохранить текущий проект под другим именем, можно узнать в
разделе Переименование Проекта.
с.74
Переименование Проекта
Для того чтобы сохранить проект под другим именем:
1. В меню Project выберите Save As.
2. В строке Project этого окна ведите новое имя для pprj-файла. Если Вы хотите определить
местоположение файла, нажмите на кнопку .
3. По умолчанию новые имена автоматически вводятся для всех дополнительных файлов
проекта (например, pont- и pins-файлы для стандартного текстового формата). Вам не нужно
присваивать имена файлам этих типов, если Вы хотите использовать новые имена. Однако
для этих файлов Вы можете выбрать другое имя. Вы можете захотеть сделать это, если,
например, Вы создаете новый pprj-файл, который все еще обращается pont- и pins-файлам со
старыми именами. В этом случае введите имена для pont- и pins-файлов.
4. Нажмите ОК.
с.75
с.76
52
Примечание: Когда проект сохраняется в текстовом формате, изменения проекта не
применяются до нажатия кнопки «Сохранить».
● Когда проект только создан, в диалоговом окне Select Format выберите Standard Text Files.
● Из меню Project выберите Save in Format..., а затем в диалоговом окне Select Format
выберите Standard Text Files.
1. Когда Вы выбрали Standard Text Files, отображается диалоговое окно Text Files:
2. Для того чтобы выбрать или изменить имя или местоположение pprj-файла, введите
нужную информацию в строку Project диалогового окна. Если Вы не определите
местоположение проекта, то по умолчанию проект сохраняется в каталоге, где установлена
Protégé-2000.
3. Protégé-2000 автоматически применит имя pprj-файла в качестве имени
с.77
файла, содержащего информацию о классах. Если Вы хотите изменить это, введите имя в
строке Class file name. Убедитесь, что файл имеет расширение pont.
4. Protégé-2000 автоматически применит имя pprj-файла в качестве имени файла,
содержащего информацию об экземплярах. Если Вы хотите изменить это, введите имя в
строке Instance file name. Убедитесь, что файл имеет расширение pins.
5. Нажмите ОК.
с.78
Включение проекта
В текущий проект Protégé-2000 Вы можете добавить уже существующий проект. Это дает
Вам возможность построить один большой проект из одного или нескольких маленьких
53
проектов. Включенные классы, слоты и экземпляры нельзя редактировать; однако
включенные формы редактировать можно.
После того, как проект включен в другой проект, его нельзя оттуда исключить, используя
интерфейс Protégé-2000. Включенный проект можно исключить путем редактирования
экземпляра «Project» в pprj-файле.
с.79
Конфигурирование проекта
Вы можете изменить конфигурацию проекта, используя диалоговое окно Configure
(Конфигурировать). Это диалоговое окно позволяет Вам изменить окно Вашего проекта.
Некоторые из доступных вариантов:
с.80
54
2. Убедитесь в том, что выбрано Tab Widgets. Оно покажет вкладки, которые могут быть в
Вашем проекте. Вкладки с галочкой в квадратике видны; остальные скрыты. По умолчанию в
проекте отображаются вкладки Clses, Slot, Forms, Instances и Queries. Также все проекты
включают KAToolTab (Инструмент Приобретения Знаний) и ClsesandInstancesTab (Классы и
Экземпляры). В зависимости от проекта в этом окне могут быть показаны дополнительные
вкладки.
3. Если Вы хотите скрыть вкладку, нажмите на галочку перед ней. Например, если Вы даете
свой проект кому-то для ввода экземпляров, Вам может понадобиться скрыть все другие
вкладки.
4. Если Вы хотите отобразить вкладку, нажмите на квадратик перед ней для того, чтобы ее
добавить. Например, для одновременного просмотра классов и экземпляров Вам может
понадобиться отобразить вкладку Classes and Instances.
5. Нажмите ОК, чтобы закрыть диалоговое окно и увидеть новую конфигурацию.
Конфигурирование настроек
Для изменения настроек:
1. Из меню Project выберите Configure....
2. В диалоговом окне Configure нажмите на вкладку Options.
с.81
55
3. Эта вкладка позволяет Вам выбрать следующие настройки:
❍Display hidden classes (Показывать скрытые классы): Позволяет Вам выбрать то, сможете ли
Вы видеть классы, которые скрыли с использованием правой кнопки мыши, или нет.
❍ Display abstract class icon (Показывать иконку абстрактного класса): Позволяет Вам выбрать,
4. Если Вы хотите выбрать функцию, нажмите на нее, чтобы поставить галочку. Например,
для одновременного просмотра классов и экземпляров Вам может понадобиться отобразить
вкладку Classes and Instances.
5. Если Вы хотите убрать функцию, нажмите на нее, чтобы убрать галочку.
6. Нажмите ОК, чтобы закрыть диалоговое окно и увидеть Вашу новую конфигурацию.
56
Ведение журнала позволяет Вам сохранить записи всех изменений проекта, которые Вы
делаете. Изменения хранятся в ASCII(текстовом)-файле, на каждой строчке – по одному
изменению.
Файл журнала создается в том же каталоге, что и проект, с расширением .pjrn. Его можно
прочитать с помощью любого текстового редактора.
с. 83
Генерация HTML из проекта
Вы можете сгенерировать HTML из проекта. Это позволяет Вам увидеть иерархию классов и,
по выбору, все экземпляры. На выходе будет индексная страница, на которой будет показана
иерархия классов проекта, включая ссылки на отдельные страницы каждого класса.
Страницы класса включают описания слотов и, по выбору, экземпляры. Если выбраны
экземпляры, то у них есть индивидуальные страницы, они присутствуют в индексной
иерархии и под каждым классом. Вы можете сгенерировать HTML-страницы для всего
проекта или его части.
57
2. Если Вы хотите сохранить проект не в том месте, где он сохраняется по умолчанию,
наберите в строке Output Directory новое местоположение или нажмите на кнопку для
перехода в нужное место.
3. Если Вы хотите сгенерировать отдельную страницу для каждого экземпляра, убедитесь,
что выбрано Include Instances.
4. Нажмите ОК.
1. В меню Project выберите Generate HTML.... Появилось диалоговое окно Generate HTML
Options.
2. Если Вы хотите сохранить проект не в том месте, где он сохраняется по умолчанию,
наберите в строке Output Directory новое местоположение или нажмите на кнопку для
перехода в нужное место.
3. Если Вы хотите сгенерировать отдельную страницу для каждого экземпляра, убедитесь,
что выбрано Include Instances.
4. Для того чтобы ограничить количество классов, вначале удалите класс :THING из Root
Classes (Корневые классы), выделив его и нажав на кнопку «Исключить» . Исключение
класса :THING позволяет Вам выбрать нужные Вам классы.
5. Для того чтобы выбрать корневой класс, нажмите на кнопку «Добавить» в правой части
списка Root Classes. Отображается диалоговое окно Select Classes.
с.84
58
6. Выделите 1 или более классов, которые Вы хотите сделать корневыми. Выбор класса как
корневого означает, что он и его подклассы будут отображены в HTML-иерархии. Вы можете
выбрать несколько классов, удерживая при этом клавишу Ctrl.
7. Нажмите ОК.
8. Выбранные Вами классы добавлены в список Root Classes. Вы можете выбрать
дополнительные классы, повторив Шаги 5-8.
9. Когда Вы сделали корневыми все нужные классы, нажмите ОК.
Далее показаны примеры выходных индексной страницы и страницы класса для проекта
newspaper, где в качестве корневого выбран класс Layout_info.
Индексная страница:
59
с.86
с.87
1. Нажмите на кнопку «Закрыть все окна» сразу под панелью главного меню.
60
Все открытые окна форм будут закрыты. Главное окно Protégé останется открытым.
с.88
Для того чтобы увидеть или увеличить эти области, попробуйте одно из следующих действий:
1. Расширьте окно Protégé с помощью мыши. Скрытая часть вскоре станет видна, если окно
станет достаточно большим.
2. ИЛИ Переместите бегунок туда, где должна быть скрытая область. Например, для
просмотра панели Search Results поместите курсор над бегунком в правой части окна и
перетащите бегунок влево. Для просмотра панелей Superclasses, Query Library или Classes,
поместите курсор над бегунком в левом нижнем углу окна и перетащите бегунок вверх.
3. ИЛИ Если Ваше окно очень маленькое, Вы можете переключаться между двумя окнами,
нажимая на кнопки линейки прокрутки. Например, для того чтобы переключиться между
панелями Query и Query Library, нажмите на кнопку «вверх» на панели прокрутки, чтобы
отобразить только панель Query Library; нажмите на кнопку «вниз», чтобы отобразить только
панель Query.
61
с.90
Работа с примечаниями
Protégé-2000 позволяет Вам добавить «желтую наклейку» к любому фрейму, то есть, классу,
экземпляру или слоту. Это позволяет Вам добавлять примечания, не являющиеся частью
структуры онтологии. Примечание всегда отображается вместе с формой. Для того чтобы
добавить примечание к форме:
3. Как обычно, с помощью мыши Вы можете изменить размер или положение примечания.
62
с. 92
На рисунке ниже показано меню Class Relationship для класса Editor в примере Newspaper. У
класса Editor есть два слота типа Instance: responsible_for и sections. У других классов
можно было бы увидеть больше слотов или только Superclass и Reference.
Некоторые действия можно произвести только при просмотре отношений Superclass. Это
создание нового класса и изменение иерархии с помощью мыши.
Вид панели Superclasses не меняется, с тем чтобы отражать выбор в меню Relationship.
Superclass
Отношение Superclass (по умолчанию) отображает структуру вида надкласс-подкласс Вашей
базы знаний. В представленное дерево входят все классы базы знаний. (Некоторые классы
могут быть скрыты. Вы можете выбрать, показывать ли скрытые классы на панели Class
Relationship, выбрав Configure из меню Project и переключив опцию Display Hidden Classes
63
(Показывать Скрытые Классы) на вкладке Display. Вид Superclass дает Вам полную
картину структуры классов. Этот вариант всегда показан в меню.
Reference
Отношение Reference отображает иерархию классов, начиная с выбранного класса, которые
связаны друг с другом через слоты класса. Таким образом, вид Reference показывает
объединение всех ссылочных отношений слотов.
с. 93
Ссылочные отношения слотов
Если в виде Superclass Вы выберите класс, то в меню будет показан список всех слотов типа
Class или Instance для этого слота. Выбор слота из меню покажет иерархию классов, начиная
с выбранного класса, которые связаны друг с другом через слот, выбранный в меню.
Например, у класса Editor в примере Newspaper есть слот supervises типа Instance.
Единственный разрешенный класс для этого слота – это класс Employee. Это будет показано,
когда будет выбран supervises.
В более сложных базах знаний отображаемое дерево может быть еще больше. Первичный
класс может ссылаться через слот на несколько классов. Класс, на который через слот
ссылается выбранный класс, сам может иметь этот слот, и тогда связанные с ним классы
появятся в дереве. Это делает возможной построение сложной иерархии, которая графически
отображает слотовые отношения между классами.
с.94
Иконки классов
Иконки на Окне Классов предоставляют информацию о структуре и природе Вашей базы
знаний. Иконки слева от имени класса предоставляют информацию об отображении иерархии
классов:
64
Эта иконка показывает, что отображаются все прямые подклассы
класса. Вы можете нажать на эту иконку для того, чтобы скрыть
подклассы. В нашем примере, отображаются подклассы Content. В
некоторых представлениях эта иконка показана как -.
Эта иконка показывает, что у класса есть прямые подклассы,
которые не отображаются в данный момент. Вы можете нажать на
эту иконку для того, чтобы отобразить подклассы. В нашем
примере, у Layout_info есть подклассы, которые не отображены. В
некоторых представлениях эта иконка показана как +.
Нет Отсутствие или означает, что у класса нет подклассов.
иконки Например, у Library нет подклассов.
с. 96
Замена надкласса
65
Вы можете заменить надкласс класса, перетащив его мышью на панели Class Relationship.
Для замены надкласса:
1. На панели Class Relationship выделите Columnist. Из-за того, что у Columnist больше
одного надкласса, убедитесь, что выбрали копию Columnist, которая находится под
Employee. (Когда у класса имеется более одного надкласса, Вы можете использовать панель
Superclasses для того, чтобы выбрать нужную копию. Более подробно об этом можно узнать в
разделе Переход к другому Надклассу.) Обратите внимание, что информация о слотах класса
Columnist отражает те слоты, которые унаследованы от Person.
с.97
66
с.98
Обратите внимание, что если Вы выделите Columnist после того, как изменилось его
местоположение, у него появились три дополнительных слота. Эти новые слоты он
унаследовал от Employee. Когда Вы изменяете надкласс класса, он всегда будет терять и
приобретать слоты.
с.99
Поиск класса
Для того чтобы найти класс на панели Class Relationship:
1. В Окне Поиска Класса в нижней части панели Class Relationship наберите имя класса
полностью или его часть.
67
Если найденный класс не виден на панели Class Relationship в данный момент, Protégé-2000
с.100
автоматически прокрутит окно к соответствующему месту и развернет иерархию, чтобы
класс был виден.
Если Вы не можете найти искомый класс, то, возможно, класс является скрытым. Для того
чтобы удостовериться что скрытые классы отображаются, в меню Project выберите
Configure, перейдите на вкладку Options и убедитесь, что пункт Display Hidden Classes
выбран. Когда пункт Display Hidden Classes выбран, скрытые классы отображаются с
иконкой .
с.101
Окно классов
Окно классов на панели Class Relationship отображает Ваши классы и позволяет Вам
перестраивать Вашу иерархию с помощью перетаскивания мышью. Несколько иконок
предоставляют дополнительную информацию о Ваших классах; для описания см. раздел
Иконки.
68
Все классы показаны по нисходящей, прямым или косвенным образом, от системного
класса :THING. Иконки показывают дополнительную информацию о Вашем классе.
● Вы можете удалить класс, нажав на кнопку удаления класса . Более подробно об этом
можно узнать в разделе Удаление Класса.
● Вы можете найти класс, набрав имя класса полностью или частично в Поле Поиска
Класса, а затем нажав на кнопку «Найти» . Более подробно об этом можно узнать в разделе
Поиск Класса.
● Вы можете получить доступ к меню каскадирования класса, выбрав класс, а затем нажав
правую кнопку мыши. Более подробно об этом можно узнать в разделе Меню Класса.
с.102
Вы также можете выбрать просмотр классов согласно Ссылке. Более подробно об этом
можно узнать в разделе Просмотр Отношений Классов.
с.103
Кнопки экземпляров
Кнопки работы с экземплярами, , расположенные в верхнем правом углу Панели
Direct Instances, дают Вам возможность просмотреть, а также редактировать, создать или
69
удалить экземпляр. Обратите внимание, что где бы эти иконки ни появились, нажатие на них
дает один и тот же результат; например, см. раздел Кнопки Класса.
Если кнопки «Просмотреть» или «Удалить» недоступны, это значит, что данный экземпляр
нельзя редактировать или удалять. Слева от такого экземпляра всегда расположена серая
иконка . Экземпляры, включенные из другого проекта, нельзя редактировать. Если кнопка
«Создать» недоступна, то для класса, выбранного на панели Class вкладки Instances нельзя
создавать экземпляры. Так происходит, если класс абстрактный, с иконкой .
с.105
70
1. Выделите элемент, для которого Вы хотите увидеть список обратных ссылок. Вы должны
убедиться в том, что переключились на нужное место:
Для класса, перейдите на вкладку Class и выделите элемент на панели Class Relationship.
Для слота, перейдите на вкладку Slots и выделите элемент на панели Slots.
Для экземпляра, перейдите на вкладку Instances, на панели Class вкладки Instances выберите
класс, к которому принадлежит экземпляр, и выделите элемент на панели Direct Instances.
2. Нажмите на кнопку обратных ссылок в правом верхнем углу панели.
Также можно просмотреть те классы, которые связаны через определенный слот. Более
подробно об этом можно узнать в разделе Просмотр Отношений Классов.
с.106
Ограничения
Предварительную информацию об ограничениях можно найти в разделе PAL Библиотеки
плагинов.
с.107
Подклассы, с отступом вправо, находятся под своими надклассами. Классы, у которых более
одного надкласса, встречаются в дереве больше одного раза. Все классы показаны как
нисходящие, прямо или косвенно, от системного класса :THING.
71
Цифры справа от класса предоставляют информацию о количестве прямых экземпляров
класса. Например, класс Editor имеет 4 экземпляра. Когда выделен класс с экземплярами,
последние отображаются на панели Direct Instances. Если цифры нет, то у класса нет
экземпляров.
с.108
Вкладка Instances
Вкладка Instances предоставляет окно, в котором Вы можете просматривать, создавать и
редактировать экземпляры. (Классы моделируют понятия Вашей предметной области, слоты
моделируют свойства классов и отношения между ними, а экземпляры моделируют
действительные данные.)
с.109
72
Когда Вы создаете экземпляры слота, тип слота также определяет, каким образом слот
отображается в Форме Экземпляра. Более подробно об экземплярах и типах можно узнать в
разделе Стандартные Элементы управления.
Any
Тип значения Any означает, что слот может принять любое из других значений: Boolean,
Class, Float, Instance, Integer, String или Symbol. Если класс наследует слот с типом Any, то
слот может быть модифицирован путем ограничения его до определенного типа. Это
единственный случай, когда можно изменить фактический тип значения унаследованного
слота.
Any позволяет Вам создать родовой слот для класса верхнего уровня и затем определить
фактический тип значения на более низком уровне. Например, пусть Вы моделируете
таксономию всех позвоночных в экосистеме, с конкретными видами в качестве экземпляров.
Вы могли бы создать слот Пища на уровне класса Позвоночное. Затем, для класса
Плотоядное животное, вы могли бы ограничить слот Пища до типа Instance, то есть в
качестве пищи Вы могли бы выбрать определенный вид, уже имеющийся в Вашей
таксономии. С другой стороны, для подкласса Травоядное Растение, Вы могли бы ограничить
слот Пища до типа Symbol и составить список названий возможных растений,
употребляемых в пищу.
Boolean
Слот типа Boolean может принять логическое булево значение, то есть истину или ложь.
с.110
Экземпляр класса со слотом типа Boolean отображает слот в виде флаговой кнопки.
Например, класс Personals_Ad содержит слот Urgent (Срочный) типа Boolean; экземпляр
Silly класса Personals_Ad не является Срочным, в то время как экземпляр M137 – да:
73
Class
Слот типа Class в качестве значений содержит классы. В частности, когда в качестве типа
значения выбран Class, отображается панель Allowed Parents. Затем в качестве значения(-й)
слота принимается один из этих классов или любого подкласса этих классов.
Например, предположим, что Вы создали базу знаний, которая помимо другой информации
включает:
● Надкласс Лекарства, который в качестве классов содержит лекарства, отпускаемые по
рецепту.
● Конкретный класс Пациенты, экземплярами которого являются пациенты.
В классе Вы можете создать слот препараты и сделать его типа Class, с классом Лекарства
в качестве Разрешенных Родителей. Когда пользователь создает экземпляр, он может
выбрать препараты из списка лекарств, отпускаемых по рецепту, которые являются
подклассами класса Лекарства.
с.111
2. Выберите один или более классов. Для того чтобы выделить несколько классов, при
нажатии на каждый класс удерживайте клавишу Ctrl. Для того чтобы выделить интервал
классов, нажмите на первый класс, затем удерживайте клавишу Shift и нажмите на последний
класс интервала.
3. Нажмите ОК.
74
Для того чтобы исключить надкласс из списка разрешенных родителей для слота типа Class:
1. Выберите классы, которые нужно исключить. Для того чтобы выделить несколько классов,
при нажатии на каждый класс удерживайте клавишу Ctrl. Для того чтобы выделить интервал
классов, нажмите на первый класс, затем удерживайте клавишу Shift и нажмите на последний
класс интервала.
2. Нажмите на кнопку «Исключить» в верхней части панели Allowed Parents.
Float
В качестве значений слота типа Float выступают числа; эти числа могут иметь десятичную
запятую. Значения типа Float хранятся в Вашей системе как числа с плавающей запятой и
они являются столь же точными как и Ваша система. При вводе значения типа Float для
экземпляра Вы можете использовать десятичную запятую или экспоненциальное
представление.
Представление Описание
Для слотов типа Float Вы также можете ввести Минимальное и/или Максимальное
значение. Более подробно об этом можно узнать в разделе Форма Слота.
Instance
В качестве значений слота типа Instance выступают экземпляры. В частности, когда в
качестве типа значения выбран Instance, отображается панель Allowed Classes. Затем в
качестве значения(-й) слота экземпляра класса принимаются экземпляры разрешенных
классов или их подклассов.
с.112
75
В газетном примере в качестве значений слота responsible_for (ответственный_за) класса
Editor используются экземпляры класса Employee. Экземпляр Chief_Honcho ответственен за
3 экземпляра, которые унаследованы от Employee: Mr. Science, Sports Nut и Ms Gardiner.
Для того чтобы добавить разрешенные классы для слота типа Instance:
Для того чтобы исключить надкласс из списка разрешенных классов для слота типа Instance:
1. Выберите классы, которые нужно исключить. Для того чтобы выделить несколько классов,
при нажатии на каждый класс удерживайте клавишу Ctrl.
с.113
Для того чтобы выделить интервал классов, нажмите на первый класс, затем удерживайте
клавишу Shift и нажмите на последний класс интервала.
76
2. Нажмите на кнопку «Исключить» в верхней части панели Allowed Classes.
Integer
В слоте типа Integer в качестве значений экземпляра выступают числа; эти числа не могут
иметь десятичную запятую. Значения типа Integer хранятся в Вашей системе, как целые
числа. Вы можете ввести положительные и отрицательные числа.
Для слотов типа Integer Вы также можете ввести Минимальное и/или Максимальное
значение. Более подробно об этом можно узнать в разделе Форма Слота.
String
Значениями слота типа String являются текстовые строки. Для экземпляра Вы можете ввести
ASCII-символы, включая буквы нижнего и верхнего регистров, числа, основные символы
клавиатуры, такие как !, _ и %.
Значения типа String также могут включать пробелы.
Например, слот weekday (день недели) класса Prototype_Newspaper позволяет Вам выбрать
один из семи дней недели: понедельник, вторник, среда, четверг, пятница, суббота,
воскресенье. У экземпляра есть выпадающее меню, которое позволяет пользователю выбрать
один из символьных значений слота:
77
с.114
Панель разрешенных значений
Кнопки в правом верхнем углу панели Разрешенных значений позволяют Вам добавлять,
редактировать и удалять значения из списка разрешенных значений слота типа Symbol.
1. Выберите значения, которые Вы хотите исключить. Для того чтобы выделить несколько
значений, при нажатии на каждое значение удерживайте клавишу Ctrl. Для того чтобы
выделить интервал значений, нажмите на первое значение, затем удерживайте клавишу Shift
и нажмите на последнее значение интервала.
2. Нажмите на кнопку «Исключить» в верхней части панели Разрешенных значений.
с.116
Стандартные поля
Для каждого слота в экземпляре Форма экземпляра отображает поле, где Вы можете ввести
информацию для этого слота.
Внешний вид и свойства поля зависят от типа информации, включенной в поле.
78
Примечание: здесь описаны только поля по умолчанию. Вы можете выбрать другие
форматы для полей, использующих Формы.
79
У некоторых полей (например, Float, Всегда имеют Кнопки Поля, которые
Integer, Symbol) нет Кнопок Поля. позволяют просматривать, добавлять
или создавать, а также удалять
значения поля.
с.117
Для того чтобы добавить значение, нажмите на кнопку поля «Добавить» или «Создать» .
Способ ввода значения зависит от типа поля. Например, вы можете выбрать значения из
списка или можете просто набрать свое значение в выпадающем окне ввода.
с.118
1. На вкладке Slots выделите слоты, которые Вы хотите исключить. Для того чтобы выделить
несколько слотов, при нажатии на каждый слот удерживайте клавишу Ctrl. Для того чтобы
выделить интервал слотов, нажмите на первый слот, затем удерживайте клавишу Shift и
нажмите на последний слот интервала.
2. Нажмите на кнопку удаления слота или нажмите правой кнопкой мыши и из меню слота
выберите Delete selected slots. Слотов больше нет в списке слотов. Также слоты удалены из
всех классов, в которых они встречались.
Удаление слота нельзя отменить. Однако если Вы закроете Protégé-2000 без сохранения
изменений, Вы возвратитесь к последней сохраненной версии. Если во время последнего
сеанса работы Вы внесли большие изменения в Ваш проект, Вам может понадобиться
сохраниться до удаления слотов. Для этого из меню Project выберите Save.
80
Также Вы можете исключить слот из определенного класса, в котором он встречается, без
удаления его из проекта. Более подробно об этом можно узнать в разделе Исключение слота.
с.119
Добавление надкласса
Вы можете добавить надкласс двумя способами: с помощью панели Superclasses или
«перетаскиванием» на панели Class Relationship.
81
с.120
Добавление надкласса с помощью
«перетаскивания»
Для того чтобы добавить надкласс с помощью «перетаскивания» на панели Class Relationship:
Обратите внимание, что если Вы не будете удерживать клавишу Ctrl, когда будете отпускать
кнопку мыши, то действие будет интерпретировано как Замена Надкласса.
Если после того, как Вы отпустите класс под новым надклассом, ничего не произойдет, то
целевой класс не может быть надклассом класса, который был перемещен. Например,
потомки перемещенного класса запрещены.
Примечания
Добавление надкласса отражается в более чем одном надклассе класса, который после этого
наследует слоты и фацеты всех его надклассов. На панели класс со множественными
надклассами обозначается и встречается несколько раз, по одному разу для каждого
надкласса. К примеру, класс Columnist в газетном примере на Панели отношений классов
встречается дважды: один раз с надклассом Author, а другой раз с надклассом Person. Более
82
подробно о замене надкласса другим надклассом можно узнать в разделе Изменение
Надкласса.
с.121
Исключение надкласса
Для того чтобы исключить надкласс класса:
Вы можете исключить надкласс, только если у класса имеется более чем один родитель.
Подкласс все еще присутствует в базе знаний как подкласс другого(-их) своего(-их)
надкласса(-ов). Если класс имеет только одного родителя, кнопка «Исключить» недоступна.
Например, для того чтобы исключить Person как надкласс Columnist в газетной базе знаний:
В этой базе знаний класс Columnist имеет несколько надклассов, поэтому он остается
подклассом Author. Обратите внимание, что подкласс, такой как Columnist, теряет свою
иконку , когда у него уже нет нескольких надклассов.
Для того чтобы удалить класс из базы знаний, выделите класс и нажмите на кнопку удаления
класса . См. раздел Удаление Класса.
с.122
Меню класса
Всякий раз, когда Вы выбираете класс, Вы можете получить доступ к каскадному меню
класса, нажав на правую кнопку мыши. Это меню позволяет Вам выполнить ряд действий с
классами.
83
3. Сделайте выбор и нажмите на левую кнопку мыши.
Меню класса позволяет Вам выполнить следующие действия. Не все действия доступны все
время; те действия, которые нельзя выполнить выделены серым цветом.
● Delete selected class: (Удалить выбранный класс): Удаляет выделенный класс и все
его подклассы, исключая его из текущего проекта. Эта операция идентична нажатию на
кнопку удаления класса . Подробную информацию можно найти в разделе Удаление
Класса.
● Change metaclass: (Изменить метакласс): (Обратите внимание, что метаклассы являются
дополнительной возможностью; прежде чем Вы начнете использовать метаклассы, Вы
должны хорошо понимать Protégé.) Изменяет метакласс выделенного класса. Более подробно
об этом можно узнать в разделе Изменение Метакласса класса.
● Change metaclass of subclasses (Изменить метакласс для подклассов): (Обратите
внимание, что метаклассы являются дополнительной возможностью; прежде чем Вы начнете
использовать метаклассы, Вы должны хорошо понимать Protégé.) Изменяет метакласс всех
подчиненных классов на метакласс выделенного класса.
с.123
● Expand (Развернуть): Показывает все классы, которые подчинены выделенному классу.
84
с.124
Панель Superclasses
Панель Superclasses, в левом нижнем углу вкладки Classes, отображает все надклассы класса,
выделенного на Панели отношений классов. Эта панель позволяет Вам добавлять и
исключать надклассы класса, а также перейти на другой надкласс на Панели отношений
классов и выделить другое вхождение этого же класса.
Примечание: Если Вы не видите панель Superclasses, то, возможно, Ваше окно слишком
маленькое. Вы можете увидеть панель, увеличив Ваше окно или переместив ползунок в
нижней части Панели отношений классов. Более подробно об этом можно узнать в разделе
Работа с Маленьким Окном.
85
Добавление надкласса
Для того чтобы добавить надкласс к выбранному классу, нажмите на кнопку «Добавить» , в
окне Select Class выделите класс, который Вы хотите сделать дополнительным надклассом, и
нажмите ОК. Более подробно об этом можно узнать в разделе Добавление Надкласса.
Исключение надкласса
Для того чтобы исключить надкласс из списка надклассов выбранного класса, выделите
надкласс, который Вы хотите исключить и нажмите на кнопку «Исключить» . Связь
«надкласс/подкласс» исчезла, но надкласс не удален из базы знаний. Более подробно об этом
можно узнать в разделе Исключение Надкласса.
с.126
элемент.
● Столбец Facet Value (Значение Фацета): показывает любую информацию о фацетах слота.
86
Панель обратных ссылок можно просмотреть, выбрав элемент и нажав на кнопку обратных
ссылок. Более подробно об этом можно узнать в разделе Просмотр обратных ссылок.
Кнопка просмотра
Кнопка просмотра: Нажмите на эту кнопку для того, чтобы
открыть форму для выделенного фрейма. В зависимости от
фрейма, это может быть Форма класса, Форма слота или Форма
Экземпляров.
Столбец Frame
Этот столбец показывает имя каждого фрейма, который ссылается на выделенный элемент,
вместе с иконкой, которая дает дополнительную информацию о ссылающемся фрейме.
с.127
Иконка слева от имени класса обозначает тип фрейма. Могут появится следующие
стандартные иконки:
87
имени экземпляра.
В этом столбце также может фигурировать имя любого другого слота в проекте.
с.128
Столбец значения фацета
Этот столбец предоставляет информацию о значении фацетов для определенных типов
обратных ссылок и информацию о межклассовых отношениях слотов.
Например, элемент может фигурировать, как значение слота, который вызывается тем
фреймом. На рисунке выше класс Author фигурирует, как Разрешенный Класс для слота
author, как показано во второй строке. Кроме того, слот author фигурирует, как слот класса
Article. Поэтому Article ссылается на Author. Эта ссылка фигурирует в пятой строке примера.
Для вложенной ссылки этого типа значение столбца фацета определяет, фигурирует ли
выбранный элемент, как Разрешенный Класс или как Разрешенный Родитель.
88
Для классов, используя Меню Class Relationship, также можно увидеть те классы, с которыми
установлены отношения через определенный слот. Более подробно об этом можно узнать в
разделе Просмотр Отношений Классов.
с.129
Сокрытие класса
Вы можете сделать класс скрытым, используя Меню Класса. Вы можете использовать это,
если например, Вы хотите запретить пользователю просмотр части Вашей базы знаний, но
хотите сохранить структуру большого проекта. Все подклассы скрытого классы тоже скрыты.
4. Если скрытые классы видны в Вашем проекте, Вы увидите иконку , показывающую, что
класс является скрытым.
Если скрытые класс не видны в Вашем проекте, Вы больше не увидите этот класс.
1. Если скрытые классы в данный момент не показаны в проекте, сделайте их видимыми. Для
этого выберите Configure в меню Project, перейдя на вкладку Options, и убедитесь, что
возможность Display Hidden Classes включена.
2. Выберите скрытый класс, который Вы хотите сделать видимым. Вы узнаете, что он скрыт,
по его иконке .
3. Нажмите правой кнопкой мыши для того, чтобы отобразить Меню Класса.
4. Выберите Make class visible (Сделать класс видимым) и нажмите левую кнопку мыши.
с.130
89
5. Иконка Вашего класса исчезнет. Теперь, если Вы выберите не отображать скрытые
классы, Вы все еще сможете увидеть класс, если его надкласс не будет все еще скрыт.
с.131
Примечание: Если Вы не видите Панель Superclasses, то, возможно, Ваше окно слишком
маленькое. Вы можете увидеть панель, увеличив Ваше окно или переместив ползунок в
нижней части Панели отношений классов. Более подробно об этом можно узнать в разделе
Работа с Маленьким Окном.
с.132
90
с.133
Понимание метаклассов
Метаклассы – это часть того, как Protégé обращается к классам внутри и создает их. Хотя Вы
могли не использовать метаклассы напрямую в Вашем проекте, Protégé использует свои
исходные метаклассы для создания Ваших классов и определения их свойств. Создавая свои
собственные метаклассы и определяя их свойства, Вы можете создать для Ваших классов
дополнительные шаблоны. Это позволяет Вам дать Ваших классам более сложные свойства и
значительно расширить возможности Ваших проектов Protégé.
Например, предположим, что Вы создаете базу знаний вин и винных заводов. В этой базе
знаний сорт вина является классом, а определенная этикетка – экземпляр этого класса. Для
справки Вы могли бы создать шаблон для вина, который бы для каждого класса вина говорил
Вам, какой винный завод, по Вашему мнению, является лучшим производителем этого сорта
91
вина. Затем, применяя шаблон ко всем классам вин, Вы можете хранить эту информацию на
уровне класса для каждого сорта вина.
STANDARD-CLASS
с.134
По умолчанию, когда класс создается как часть проекта, Protégé рассматривает этот класс как
экземпляр метакласса STANDARD-CLASS. Свойства STANDARD-CLASS создают
первоначальный вид класса и определяют свойства в Форме Класса. Вы можете взглянуть на
STANDARD-CLASS, чтобы увидеть, как слоты метакласса преобразуются в свойства класса.
Слоты STANDARD-CLASS
Слоты STANDARD-CLASS отображаются на панели Template Slots, когда Вы выбираете
класс. STANDARD-CLASS использует стандартные типы слотов (String, Symbol и т.д.),
которые используются для всех классов, но делает это довольно сложным способом.
Слот :NAME является стандартным слотом типа String, в котором хранится имя
класса. :DOCUMENTATION также является слотом типа String. Слот :ROLE регулирует роль
слота и определяет, является ли он Абстрактным или Конкретным, по умолчанию слот
является Конкретным.
92
Другие слоты более сложные. Например, рассмотрим слот :DIRECT-SUPERCLASSES. Этот
слот отслеживает все прямые надклассы класса, храня их в виде списка экземпляров.
Внутренние программные операции добавляют и удаляют экземпляры из подходящего
значения слота всякий раз, когда Вы вносите изменения в проект Protégé. Таким образом,
Protégé представляет структуру Вашего проекта, используя свои средства для хранения и
представления структуры, что очень похоже на то, как Вы создаете структуру проекта.
Как только Вы создали метакласс, Вы можете создать все или некоторые классы в Вашем
проекте, используя в качестве шаблона новый метакласс вместо :STANDARDCLASS.
Очевидно, что создание подкласса :STANDARD-CLASS и затем создание новых слотов или
переопределение существующих сильно расширяет возможности Вашего проекта.
с.135
STANDARD-CLASS на вкладке Forms
93
Форма Класса для класса, созданного из STANDARD-CLASS
Т.к. любой новый класс по умолчанию создается с использованием :STANDARD-CLASS, то
сама Форма Класса отображает структуру и конфигурацию, которые были определены
для :STANDARD-CLASS на вкладке Forms. Если Вы создаете новый проект и затем
изменяете Форму Класса на вкладку Forms, то Ваши изменения будут отображаться для
каждого класса, как старого, так и нового.
с.136
94
Из-за больших возможностей метаклассов Вам нужно быть особенно внимательными при
экспериментировании с текущим проектом. Будет лучше работать с копией.
с. 137
Создание Метакласса
Примечание: перед тем как создавать и использовать метаклассы, Вы должны хорошо
ориентироваться в основном интерфейсе Protégé и не иметь трудностей при создании проекта,
а также создании и изменении классов, слотов, форм и экземпляров.
с. 138
95
3. Используйте Форму Класса для присваивания классу имени, создания ограничений, а
также создания и редактирования слотов.
с. 139
Создание класса с использованием
метакласса
Примечание: перед тем как создавать и использовать метаклассы, Вы должны хорошо
ориентироваться в основном интерфейсе Protégé и не иметь трудностей при создании проекта,
а также создании и изменении классов, слотов, форм и экземпляров.
96
После того, как Вы добавили в Ваш проект один или несколько метаклассов,
непосредственно создав их или включив другой проект, у которого уже есть метакласс, Вы
можете выбрать метакласс, необходимый Вам для создания класса. Когда вы создаете класс с
использованием нестандартного метакласса, классу присваиваются атрибуты, определяемые
выбранным метаклассом. Если вы не внесете изменений, каждый новый подкласс,
создаваемый для класса, также будет использовать выбранный метакласс.
В этом примере используется проект вин, включающий в себя Шаблон вина, который
дополняет структуру метакласса.
с. 140
97
с.141
5. Используйте Форму Класса для присвоения классу имени, выбора его роли, создания
ограничений и создания и редактирования слотов.
с. 142
Для любого класса, имеющегося в Вашем проекте, Вы можете изменить метакласс, который
Вы используете для этого класса. Это дает классу и Форме Класса атрибуты, определяемые
новым метаклассом. Новые классы, которые Вы создаете, как подклассы класса, также будут
использовать новый метакласс. Однако имеющиеся подклассы будут продолжать
использовать присвоенный им ранее метакласс, пока Вы специально не измените этого.
98
2. Щелкните правой клавишей мыши и выберите «Change metaclass...»
с. 143
с. 144
Когда вы меняете метакласс класса, у всех его подклассов сохраняется их прежний метакласс.
Это обеспечивает возможность не размножать изменения, когда Вы этого не хотите. Тем не
менее, часто бывает, что Вы хотите, чтобы у имеющихся подклассов был тот же самый
метакласс, что и у их родителей. Protégé предоставляет возможность быстро изменять
метаклассы всех классов, подчиняющихся определенному классу. Обратите внимание, что
Вам нужно сделать это всего лишь раз; по умолчанию новые классы используют метакласс
своего прямого надкласса.
Вы можете изменить метакласс только для того, чтобы согласовать его с метаклассом
выбранного класса. Если метаклассом выбранного класса является :STANDARD-CLASS, у
всех подклассов исчезнет всякая дополнительная информация о метаклассе.
Чтобы работать с метаклассами, Вы должны были добавить один или более метаклассов в
свой проект, непосредственно создав их или включив проект, у которого уже есть метаклассы.
В этом примере используется проект вин, включающий Шаблон вина, дополняющий
структуру метакласса.
с. 145
100
3. На экране появляется диалоговое окно для подтверждения. Для продолжения нажмите OK.
с. 146
С.147
101
Вкладка Classes & Instances включает следующие компоненты:
с.148
1. Панель отношений классов в верхнем левом углу, на которой показана иерархия класса и
которая позволяет создавать, удалять и редактировать классы. Обратите внимание на то, что
на этой панели есть все кнопки класса и функции ниспадающего меню, имеющиеся на
Панели отношений классов на вкладке Classes.
2. Панель Superclasses в нижнем левом углу, позволяющую производить действия с
надклассами. Для получения подробной информации см. раздел Панель Superclasses.
3. Панель Class, на которой показан выбранный в данный момент класс.
4. Панель Direct Instances, которая выполняет все функции Панели Instances и позволяющую
Вам создавать и удалять экземпляры.
5. Панель Form в правой части, отображающую информацию о выбранном в данный момент
объекте. Когда выбирается отдельный класс, Панель Form содержит Форму Класса
выбранного класса. Когда выбран отдельный экземпляр, Панель Form содержит Форму
Экземпляров выбранного экземпляра.
с. 149
102
Удаление переопределения слота
Вы можете удалить переопределение слота на уровне класса с помощью кнопки
Шаблона слота «Удалить изменения формы» на Панели Template Slots.
с. 150
Создание подслота
Обычно, когда Вы создаете новый слот, это всегда слот верхнего уровня. Тем не менее, Вы
также можете создать подслот существующего слота. Например, Вы можете это сделать, если
вы хотите создать два слота с общей информацией и при этом один из слотов (подслот) будет
иметь больше ограничений.
4. Новый слот создается как подслот выбранного слота. За исключением имени, при создании
он имеет те же свойства, что и его слот-родитель.
103
5. Вы можете использовать Форму Слота для редактирования свойств нового слота.
с. 151
Если в Вашем проекте несколько метаслотов, то для любого имеющегося слота Вы можете
изменить метаслот, используемый для этого слота. Это дает слоту и Форме Слота атрибуты,
определяемые новым метаслотом. Создаваемые Вами подслоты, которые подчиняются слоту,
также будут использовать новый метаслот. Однако имеющиеся слоты будут продолжать
использовать метаслоты, которые были заданы для них ранее, пока Вы специально это не
измените.
104
3. В диалоговом окне отображаются метаклассы слота. Обратите внимание на то, что если
класс в данный момент использует нестандартный класс, то Вы можете возвратиться
к :STANDARD-SLOT.
с. 152
с. 153
105
2. На панели Template Slots выделите слоты, которые Вы хотите исключить. Чтобы
исключить несколько слотов, при нажатии на каждый слот удерживайте клавишу Ctrl. Чтобы
выделить интервал слотов, нажмите на первый слот, затем нажмите клавишу Shift и нажмите
на последний слот интервала.
3. Нажмите на кнопку исключения шаблонного слота . Среди слотов класса этих слотов
больше нет. Слоты исключаются также и из всех подклассов класса.
Вы также можете удалить слот из всей базы знаний, используя вкладку Slots. Более подробно
об этом можно узнать в разделе Исключение слота.
с. 154
В этом разделе дается обзор того, как нужно проводить анализ проекта и разработку
обратных слотов. Более подробно об использовании пользовательского интерфейса можно
узнать в разделе Создание отношений обратных слотов.
Определите отношения
106
Это обратные отношения, которые часто имеют место: например, если Mr. Science
редактирует раздел Science , то раздел Science редактируется Mr. Science. Возможны
различные типы обратных отношений. Рассмотрите следующие критерии:
с.155
Проанализируйте отношения в Protégé
После того, как Вы определили отношения в своей онтологии, Вам нужно проанализировать
ее в рамках вашего проекта Protégé. Для обратных отношений между слотами-экземплярами
определите следующее:
• Какой(-ие) класс(ы) Protégé Вам нужен(-жны) для первого набора экземпляров?
Убедитесь, что Вы выбрали класс или классы, подходящие для проекта. Особенно
важно выбрать не слишком короткий список классов, т.е. Вам необходимо выбрать
такой список классов, чтобы любой возможный экземпляр был в одном из этих
классов. В то же время для простоты вам необходимо, чтобы список классов был
сосредоточен на экземплярах и не был бы слишком большим.
Например, в проекте newspaper один из репортеров, Larry Tennis-Nut, – большой
энтузиаст и иногда редактирует раздел Спорт. Имеет смысл расширить список классов
до Editor и Reporter. Однако продавцам или корреспондентам не разрешается
редактировать раздел. Следовательно, хотя можно было бы просто использовать класс
Employee, все-таки лучше этого не делать.
Назовите этот первый список классов Список_Классов_А. Это вполне может быть
отдельный класс.
• Если второй набор экземпляров отличается от первого, проведите такой же анализ для
второго набора экземпляров. Здесь мы ограничимся экземплярами класса Section.
Назовите второй список классов Список_Классов_В. Это вполне может быть
отдельный класс. Он также может быть идентичен Список_Классов_А.
107
3. Прикрепите Ваши слоты Protégé к соответствующим классам. Сначала прикрепите
исходный_слот к каждому классу из Списка_Классов_В.
Помните, что искомые значения исходного_слота находятся в Списке_Классов_А.
Перекрестная связь между классами образуется через прикрепление слота к
Списку_Классов_В.
4. Подобным образом прикрепите обратный_слот к каждому классу Списка_Классов_А.
5. Сделайте обратный_слот обратным исходному_слоту. Фактически, вы можете сделать это
сразу после создания обоих слотов.
Обратите внимание, если вы создаете обратные отношения слотов после создания нескольких
экземпляров, то имеющиеся экземпляры не будут показывать информацию об обратных
слотах.
с. 157
Однако в зависимости от структуры Вашей базы знаний эти условия могут быть
неподходящими или неосуществимыми. Возможны и другие условия. Например, допустим,
слоты А и В – обратные слоты. Если к одному из разрешенных классов слота А не
прикреплен слот В, то для этих экземпляров не будет создано значение обратного слота.
Обратное отношение все же будет правильно работать для тех разрешенных классов, к
которым прикреплен слот В.
Слот может иметь не более одного обратного слота. Более подробно о разработке обратных
отношений слотов можно узнать в разделе Понимание обратных слотов.
Обратите внимание, что если вы создаете обратные отношения слотов после того, как были
созданы экземпляры, имеющиеся экземпляры не будут показывать информацию об обратных
слотах.
108
● связав два существующих слота;
● создав новый слот, обратный существующему слоту.
1. Откройте Форму Слота для одного из двух слотов. Вы можете сделать это из вкладки Class
или из вкладки Slots. То, какой из слотов Вы выберите, не имеет значения.
2. Нажмите на кнопку «Добавить» справа от поля Inverse Slot. Если кнопка выделена серым
цветом, то вы не можете создать обратный слот для выбранного слота. Убедитесь, что слот
имеет тип Class или Instance.
3. Выберите нужный Вам слот из диалогового окна Select Slot. Будут показаны только слоты
только типа Class или Instance.
с. 158
4. Нажмите OK. Теперь оба слота будут обратными друг другу. Вы можете просмотреть
Форму Слота второго слота, щелкнув дважды кнопкой мыши на его имени в поле Inverse Slot.
Вы увидите, что в нем первый слот уже является обратным ему слотом. Рекомендуется также
проверить, что Allowed Classes каждого слота содержит все возможные классы, в которых
появится другой слот.
109
1. Откройте Форму Слота для слота, для которого Вы хотите создать обратный слот. Вы
можете сделать это из вкладки Class или из вкладки Slots. Не имеет значения, какой из слотов
вы выберите.
2. Нажмите на кнопку «Создать» в правой части формы Inverse Slot. Если кнопка
выделена серым цветом, Вы не можете создать обратный слот для выбранного слота.
Убедитесь, что слот имеет тип Class или Instance.
3. Создан новый класс типа Instance. Форма Слота для вновь созданного класса открывается
автоматически.
с. 159
110
7. Прикрепите новый слот к классам, в которых вы хотите, чтобы он появлялся. Помните, что
прикрепление слота к классу также прикрепляет его ко всем подклассам класса.
с. 160
1. Выделите поле Inverse Slot в Форме Слота для одного из двух слотов.
2. Нажмите на кнопку «Исключить» в правой части поля Inverse Slot. Отношение слотов
будет удалено.
111
с. 161
Понимание метаслотов
Метаслоты или метаклассы слота подобны метаклассам, за исключением того, что они
определяют свойства слотов, а не свойства классов. Метакласс слота – это метакласс,
который можно использовать как шаблон для определения метода, которым Protégé строит
слот. Создавая новый метаслот, Вы можете создать другой шаблон для выбранных слотов.
Это позволяет присоединять дополнительную информацию к Вашему слоту на уровне класса.
Это особенно полезно, если у Вас несколько слотов, у каждого из которых похожая структура.
Если в Вашем проекте много метаслотов, Protégé позволяет выбрать метаслот для
использования его по умолчанию для каждого вновь создаваемого слота. Для классов в
Protégé-2000 эта возможность недоступна, т.к. она больше подходит для слотов.
Метаслоты – это часть иерархии :SLOT на вкладке Class, которая включена в каждый проект.
Любой подкласс метаслота – это тоже метаслот.
Обратите внимание, что метаслоты показаны на вкладке Class, потому что каждый слот – это
экземпляр метакласса слота. Слоты – это не значения и не подслоты глобального слота.
STANDARD-SLOT
По умолчанию, когда слот создается как часть проекта, Protégé рассматривает этот слот, как
экземпляр метакласса слота :STANDARD-SLOT. Свойства :STANDARD-SLOT создают
начальный вид слота и определяют свойства в Форме Слота. Так же как и с :STANDARD-
CLASS, в :STANDARD-SLOT Вы можете увидеть, как слотам метаслота передаются свойства
слота.
В новом проекте у :STANDARD-SLOT есть иконка по умолчанию для того, чтобы показать,
что это метаслот, используемый по умолчанию при создании новых слотов. Если Вы создаете
новый метаслот и изменяете значение по умолчанию, у нового метаслота, используемого по
умолчанию, появится иконка .
Слоты :STANDARD-SLOT
112
Как и в :STANDARD-CLASS слоты STANDARD-SLOT переносятся в поля Формы Слота,
также как и другие связанные свойства слота. Различные слоты :STANDARD-SLOT создают
поля ввода и любые значения по умолчанию для типа значения, мощности, максимума и
минимума и т.д. Соотношение слотов в метаклассе
с.162
и полях Формы Класса рассматривается более подробно в разделе Понимание метаклассов.
с. 164
Создание метаслота
113
Примечание: перед тем как создавать и использовать метаслоты (метаклассы слотов) Вы
должны хорошо ориентироваться в основном интерфейсе Protégé и не иметь трудностей при
разработке проекта, а также создании и изменении классов, слотов, форм и экземпляров.
Создание метаслота почти идентично созданию метакласса. Вам всего лишь нужно убедиться,
что класс создается подчиненным :SLOT. Любой метаслот подчинен :SLOT. По умолчанию
каждый класс, подчиненный :SLOT, является метаслотом, если Вы этого не измените. Часто
рекомендуется создать метаслот, подчиненный :STANDARD-SLOT для того, чтобы у слота,
созданного с использованием метаслота, были различные свойства,
определяемые :STANDARD-SLOT.
2. Нажмите на кнопку «Создать» в правой части Панели отношений классов или щелкните
правой кнопкой мыши и в Меню класса выберите Create subclass. Новый класс будет
добавлен под выделенным классом. Он унаследует свойства выбранного метакласса.
с. 165
114
Например, нажмите на кнопку шаблонных слотов «Создать» в правой части панели
Template Slots, чтобы создать новый слот. Этот слот будет показан, как элемент управления
любого слота, который Вы создаете, используя метаслот.
с. 166
Установка метаслота,
используемого по умолчанию
Примечание: перед тем как создавать и использовать метаслоты (метаклассы слотов) Вы
должны хорошо ориентироваться в основном интерфейсе Protégé и не иметь трудностей при
разработке проекта, а также создании и изменении классов, слотов, форм и экземпляров.
Если в Вашем проекте много метаслотов, Protégé позволяет выбрать метаслот для
использования его по умолчанию для каждого вновь создаваемого слота. Слот, используемый
по умолчанию, обозначается справа иконкой по умолчанию .
1. Нажмите на нужный Вам метаслот на Панели отношений классов. Это должен быть класс,
подчиненный :SLOT.
115
2. Щелкните правой кнопкой мыши и в Меню класса выберите Set as default slot metaclass
(Установить как метакласс слота по умолчанию). Эта функция активна, только если
выбран метаслот.
с. 167
Если Вы это сделаете, то не будет назначен метаслот по умолчанию. В этом случае, если у
вас есть только один конкретный метаслот, то он будет использоваться по умолчанию. Если у
вас более одного конкретного метаслота, то каждый раз при создании нового слота
программа будет предлагать выбрать метаслот.
с. 168
116
Формы
● Понимание форм
Интерфейс пользователя:
● Вкладка Forms
● Панель Forms
● Кнопки формы
● Панель редактирования формы
● Меню ключа просмотра
● InstanceTableWidget
● ContainsWidget
● SliderWidget
● ImageMapWidget
Действия с формами:
● Изменение характеристик формы
● Изменение внешнего вида элемента управления
● Выбор способа отображения элемента управления
с. 169
Форма Экземпляров
Форма экземпляров может использоваться для определения и редактирования атрибутов
слота в экземпляре, выбранном на панели Direct Instances. Если выбран один класс, Форма
экземпляров отображается в правой части вкладки Instances. Форма экземпляров также
отображается в отдельном окне, когда Вы нажимаете на кнопку просмотра экземпляра на
панели Direct Instances. Как только вы вносите изменения в Форму экземпляров, они сразу же
начинают действовать. Чтобы сохранить изменения, выберите Save в меню Project.
117
Для каждого слота экземпляра Форма экземпляров отображает поле, в котором Вы можете
ввести информацию для этого слота. Вид поля и его настройки зависят от типа информации,
которая находится в поле.
Если тип информации, которую Вы вводите, не подходит для слота, введенная информация
станет красной, когда Вы выйдете из этого слота. Например, нельзя вводить десятичное
число в слот типа integer. Значения, нарушающие другие условия для слота, такие как
значения, которые меньше минимума или больше максимума, также будут красными.
с. 170
Если в слот необходимо ввести значение, а в текущий момент в нем нет значения, поле
очерчено красным цветом.
Иконки примечаний
Иконки примечаний, , в верхнем правом углу формы позволяют Вам добавлять к Вашему
классу желтые «наклейки» и удалять их. Примечание всегда отображается вместе с формой.
Более подробно о том, как добавлять примечания к любому фрейму (классу, экземпляру или
слоту), можно узнать в разделе Работа с Примечаниями.
118
c.171
Примечание: Если Вы работаете с маленьким экраном, Вы можете не увидеть эту панель. Для
того чтобы увидеть или увеличить панель Библиотеки, переместите ползунок в нижней части
Панели Запросов (над Панелью Query Library) или нажмите на кнопку «вверх» в нижней
части Панели Запросов. Более подробно об этом можно узнать в разделе Работа с Маленьким
Окном.
с.172
119
Панель Search Results (Результаты
поиска)
Панель Search Results в правой части Панели Запросов отображает результаты поиска после
того, как Вы нажали на кнопку Find (Найти).
Примечание: Если Вы работаете с маленьким экраном, Вы можете не увидеть эту панель. Для
того чтобы увидеть или увеличить панель Search Results, переместите ползунок в правой
части Панели Запросов (слева от панели Query Library) или нажмите на кнопку в нижней
части Панели Запросов. Более подробно об этом можно узнать в разделе Работа с Маленьким
Окном.
с.173
120
не являются частью Вашей базы знаний, а являются способом определения экземпляров в
Вашем проекте, основываясь на классах и свойствах слотов.
1. Панель Query, в которой Вы можете ввести или модифицировать запрос. Вы также можете
объединять несколько запросов.
2. Панель Search Results, на которой отображаются результаты запроса после того, как Вы
нажали на кнопку «Найти».
3. Query Library, которая позволяет Вам сохранять или извлекать запросы. Сохраненные
запросы можно изменять или соединять в последовательность.
Примечание: Если Вы работаете с маленьким экраном, Вы можете не увидеть все эти панели.
Для того чтобы увидеть или увеличить панель Библиотеки Запросов, переместите ползунок в
нижней части Панели Запросов. Для того чтобы увидеть или увеличить панель Search Results,
переместите ползунок в правой части окна. Более подробно об этом можно узнать в разделе
Работа с Маленьким Окном.
с.174
с.175
Панель Запросов
Панель Запросов позволяет Вам вводить, модифицировать или сохранять Ваши запросы.
121
Панель Запросов состоит из следующих компонентов:
1. Одна или несколько строк поиска, в которых Вы можете конструировать запрос, выбирая
класс, слот, критерий и значение.
2. Объединенные кнопки Запроса, которые позволяют Вам добавлять или исключать
дополнительные строки поиска и определять то, как они группируются.
с.176
3. Кнопка поиска, которая позволяет Вам запустить Ваш запрос.
4. Поле Query Name и кнопка Сохранения Запроса, которые позволяют присвоить имя
запросу и сохранить его.
Строка(-и) Запроса
В каждой строке запроса есть:
1. Поле ввода Класса, которое позволяет Вам определить класс нажатием на кнопку
«Выбрать Класс» (Select Class) . Если класс уже показан, то нажатие на кнопку «Выбрать
Класс» исключает его. Вы также можете просмотреть выбранный класс, нажав на кнопку
просмотра , или исключить его, нажав на кнопку «Исключить» .
2. Поле ввода Слота, которое позволяет Вам определить слот нажатием на кнопку «Выбрать
Слот» (Select Slot) . Если слот уже показан, то нажатие на кнопку «Выбрать Слот»
исключает его. Вы также можете просмотреть выбранный слот, нажав на кнопку просмотра ,
или исключить его, нажав на кнопку «Исключить» .
3. Меню критерия, которое позволяет Вам установить критерий для запроса, основанного на
слоте.
4. Окно или меню ввода значения, которое позволяет Вам установить значение для сравнения.
Тип вводимого значения основывается на типе значения слота.
122
Тип слота Меню критерия Действие
Boolean Проверяет, является ли булево
значения истинным или ложным,
как выбрано в меню справа.
Class Сравнение по выбранному критерию
с классом, который выбран справа.
Для того чтобы выбрать класс,
нажмите на кнопку «Выбрать
Класс» . Для того чтобы исключить
класс, нажмите на кнопку
«Исключить» . Можно выбрать
только один класс.
Float Сравнение по выбранному критерию
со значением, набранным в поле
ввода Float справа.
123
More (Больше) Нажмите на эту кнопку для того, чтобы создать
дополнительную сроку запроса, для которой затем
можно будет выбрать класс, слот и критерий.
Fewer (Меньше) Если имеется две и более строк запроса, то нажмите
на эту кнопку для того, чтобы исключить самую
нижнюю строку запроса.
Clear (Очистить) Нажмите на эту кнопку для того, чтобы очистить все
строки запроса и уменьшить Панель Запроса до
одного пустого окна запроса.
Match All (Полное Для двух или более строк запроса нажмите на эту
соответствие) кнопку для того, чтобы найденный экземпляр
удовлетворял всем критериям, заданным в строках
запроса (конъюнкция - И).
Match Any Для двух или более строк запроса нажмите на эту
(Не обязательно кнопку для того, чтобы найденный экземпляр
полное соответствие) удовлетворял как минимум одному критерию,
заданному в строках запроса (дизъюнкция - ИЛИ).
Кнопка поиска
Find (Найти) Когда желаемый запрос составлен, нажмите на эту кнопку для
того, чтобы найти все экземпляры, который удовлетворяют
выбранному критерию.
с.178
Имя запроса and Сохранение запроса
Окно Query Name (Имя Запроса) в нижней части панели позволяет Вам, набрав строку,
присвоить имя запросу.
с.179
Прямой экземпляр – это экземпляр, который был создан прямо в классе. Однако из-за
наследования экземпляр класса является также и экземпляром надклассов класса. Поэтому
экземпляр может быть экземпляром многих классов; однако он может быть прямым
экземпляром одного класса.
124
Эта панель содержит три компонента:
Окно экземпляров
Когда на панели Class вкладки Instances выбран отдельный класс, Окно экземпляров
показывает все экземпляры класса. Экземпляры отображаются в алфавитном порядке по
тексту ключа просмотра, который является слотом, назначенным для идентификации класса.
Если Вы не выберите слот для ключа просмотра, Protégé-2000 будет использовать ключ по
умолчанию, <имя экземпляра>, такой как newspaper_0017. Более подробно об этом можно
узнать в разделе Меню ключа просмотра.
с.181
125
Кнопки поля
У некоторых полей есть кнопки поля, , расположенные в верхнем правом углу поля.
Эти кнопки позволяют Вам просматривать, редактировать, создавать, добавлять или удалять
значение поля. Эти доступные кнопки зависят от типа поля.
● Множественные поля любого типа, т.е., поля, которые позволяют более одного значения.
● Одиночные Поля класса и Поля экземпляра.
126
полей это добавит в список новое
Поля класса и поля значение; обратите внимание, что Вы не
экземпляра можете добавить одно и то же значение
дважды. Для одиночных Полей класса и
Полей экземпляра это позволяет Вам
выбрать из списка уже существующих
значений.
Все множественные Нажмите на эту кнопку для того, чтобы
поля исключить значение. Для
множественных полей это исключает из
Поля класса и поля поля выделенное значение. Для
«Исключить»
экземпляра одиночных Полей класса и Полей
экземпляра это очищает список, но не
удаляет выбранных класс или экземпляр
из базы знаний.
c.183
Экземпляры
Интерфейс пользователя:
● Вкладка Instances
❍ Панель Class на вкладке Instances
■ Окно Instances
■ Кнопки экземпляра
❍ Форма экземпляров
■ Кнопки поля
■ Стандартные поля
Основные действия:
● Непосредственное создание экземпляра
● Создание экземпляра из поля
● Просмотр экземпляра
● Удаление экземпляра
● Поиск экземпляра
● Изменение класса экземпляра
127
с.184
Поиск экземпляра
Для того чтобы найти экземпляр на панели Direct Instances:
1. На панели Class вкладки Instances выберите класс, который содержит этот экземпляр.
2. В окне поиска экземпляра в нижней части панели Direct Instances наберите имя экземпляра
полностью или его часть.
Если есть только одно совпадение, то выбор на панели перейдет на экземпляр, который
содержит введенный текст. Если есть несколько совпадений, то появится диалог с
предложением выбрать нужный экземпляр.
Сравнение производится без учета регистра текста и его положения. В следующем списке
поиск si найдет MirDoomed by Collision и Sunburned Swans Sing Sad Song.
Если Вы не можете найти нужный экземпляр, он может быть в другом классе. Для поиска
классов Вы можете воспользоваться окном поиска в нижней части панели Class вкладки
Instances.
с.186
Если Вы не выберите слот для ключа просмотра, Protégé-2000 будет использовать ключ по
умолчанию, <имя экземпляра>, такой как newspaper_0017. Обычно полезно установить
ключ просмотра.
с.187
Поля класса
Слот типа class содержит значения, которые являются классами. Поля класса позволяют Вам
вводить их как значения слота.
1. Нажмите на кнопку просмотра для того, чтобы открыть Форму класса для класса,
который отображается или выбран в поле ввода.
Если класса нет, кнопка просмотра выкрашена в серый цвет. Более подробно о
редактировании класса можно узнать в разделе Просмотр класса.
129
Для выбора класса в качестве значения слота или изменения существующего значения:
с.188
1. Нажмите на кнопку просмотра для того, чтобы открыть Форму класса для класса,
который отображается или выбран в поле ввода.
Если класса нет, кнопка просмотра выкрашена в серый цвет. Более подробно о
редактировании класса можно узнать в разделе Просмотр класса.
Для выбора класса в качестве значения слота или изменения существующего значения:
130
2. Нажмите на кнопку «Исключить» . Выбранные классы исключены.
с.189
Поля экземпляра
Единичное поле Instance
Экземпляр с единичным слотом типа Instance отображается с полем ввода и четырьмя
кнопками, которые позволяют Вам редактировать, создавать, добавлять и исключать
экземпляры. Значением этого слота является отдельный экземпляр:
1. Нажмите на кнопку просмотра для того, чтобы открыть Форму экземпляров для
экземпляра, который отображается или выбран.
2. Введите новую информацию прямо в Форме экземпляров.
Любые изменения в Форме Экземпляров сразу же вступают в силу. Обратите внимание, что
значение экземпляра – это ссылка на выбранный экземпляр. Это значит, что если Вы
редактируете экземпляр в любом месте, изменения появятся во всех местах, в которых на
него происходит ссылка.
Если в данный момент не отображается ни один экземпляр, кнопка просмотра выкрашена в
серый цвет.
В результате этого будет создан новый экземпляр, как прямой экземпляр выбранного Вами
класса. Более подробно об этом можно узнать в разделе Создание экземпляра из поля.
с.190
131
В результате этого в качестве значения поля будет выбран уже существующий экземпляр.
Этот экземпляр также можно просмотреть на панели Direct Instances, и он также может
появиться в качестве значения других экземпляров. Обратите внимание, что любые изменения
в этом экземпляре появятся во всех местах, где встречается этот экземпляр. Перед
редактированием существующего экземпляра Вы должны быть уверены, что Вы хотите
сделать глобальные изменения. В некоторых случаях вместо этого, возможно, более подойдет
создание нового экземпляра.
В результате этого экземпляр будет удален, как значение текущего поля, но он не будет
удален из проекта. Экземпляр все еще можно будет просмотреть через панель Direct Instances
для соответствующего класса, и он все еще присутствует в любом другом поле, в котором он
был выбран. Для того чтобы удалить экземпляр из базы знаний, воспользуйтесь кнопкой
«Удалить» на панели Direct Instances. Более подробно об этом можно узнать в разделе
Удаление Экземпляра.
1. Нажмите на кнопку просмотра для того, чтобы открыть Форму экземпляра для
экземпляра, который отображается или выбран в поле ввода.
2. Введите новую информацию прямо в Форме экземпляра.
132
Для создания нового экземпляра:
с.191
2. Заполните форму для нового экземпляра.
с.192
1. На панели Class вкладки Instances выделите класс, который имеет слот типа Instance.
Например, для того, чтобы создать экземпляр класса Section, Вы можете выбрать класс
Article, у которого есть слот Section.
2. На панели Direct Instances выберите экземпляр.
3. В Форме Экземпляров перейдите на поле для слота Instance. Вот поле для слота Section:
133
4. Нажмите на кнопку «Создать» в правом верхнем углу поля. Если для слота существует
несколько разрешенных классов, то будет появится диалоговое окно Select Concrete CIs.
Выберите нужный класс и нажмите ОК. Если существует только один разрешенный класс,
Вы можете пропустить этот шаг.
5. Для нового экземпляра появится Форма Экземпляров. У него будет имя по умолчанию,
такое как project_INSTANCE_00001.
с.193
Примечание: значение слота является ссылкой на выбранный экземпляр. Это значит, что
если Вы редактируете экземпляр в любом месте, то изменения появятся во всех местах, в
которых на него ссылаются.
с.194
Например, класс Personals_Ad содержит булев слот Urgent; экземпляр Silly класса
Personals_Ad не является Urgent, тогда как экземпляр M137 таковым является:
134
с.195
Представление Описание
Для установки значения единичного слота типа Float, просто введите в поле ввода нужное
число.
Для очистки единичного слота типа Float, просто удалите значение в поле ввода.
Примечание: Информация в поле типа Float должна быть числом с плавающей запятой.
Если Вы введете текст или другую неверную информацию, то введенный текст будет
135
красного цвета и не будет сохранен в системе. Вместо этого будет сохранено предыдущее
значение (если оно было).
с.196
Множественное поле типа Float
Множественный слот типа Float отображается у экземпляра в виде списка с тремя кнопками:
с.197
Для редактирования значения единичного слота типа Integer просто нажмите на поле ввода и
внесите изменения.
Для создания значения единичного слота типа Integer просто введите в поле ввода целое
число.
Для очистки единичного слота типа Integer, просто удалите значение в поле ввода.
Примечание: Информация в поле типа Integer должна быть целым числом. Если Вы введете
текст или другую неверную информацию, то введенный текст будет красного цвета и не
будет сохранен в системе. Вместо этого будет сохранено предыдущее значение (если оно
было).
с.198
1. Выберите значение, которое Вам нужно редактировать.
2. Нажмите на кнопку просмотра . Отображается диалоговое окно редактирования значения
типа Integer.
3. Отредактируйте значение прямо в диалоговом окне.
4. Нажмите ОК.
137
Для добавления значения в множественный слот типа Integer:
с.199
Для установки значения слота просто введите в поле текст. В строку Вы можете ввести
ASCII-символы, включая строчные и прописные буквы, цифры и основные символы
клавиатуры, такие как !, _ и %. Значения типа String также могут включать пробелы.
Вы можете ввести строку прямо в слоте. Для очистки слота просто удалите находящийся там
текст.
138
Для редактирования существующего значения множественного слота типа String:
с.200
буквы, цифры и основные символы клавиатуры, такие как !, _ и %. Значения типа String
также могут включать пробелы.
3. Нажмите ОК.
с.201
Для установки значения слота нажмите на список и дважды щелкните для подтверждения
выбора.
139
Для изменения значения слота выберите другой элемент списка. Для очистки слота выберите
пустое значение наверху списка.
с.202
Непосредственное создание
экземпляра
Создание экземпляров является частью итеративного процесса разработки проекта Protégé-
2000. Перед тем, как создавать экземпляры, Вам нужно создать и организовать классы и
слоты, моделирующие структуру Вашей базы знаний.
● Вы можете создать экземпляр напрямую, из панели Direct Instances. Это описано ниже.
● Вы можете создать экземпляр из Поля экземпляра другого экземпляра. См. раздел
Создание экземпляра из поля.
Из панели Direct Instances экземпляр будет создан прямо в выбранном классе. Для создания
нового экземпляра из панели Direct Instances:
1. На панели Class вкладки Instances выделите класс, в котором Вы хотите создать экземпляр.
140
2. Нажмите на кнопку создания экземпляра в правой части панели Direct Instances. Новый
экземпляр появится на панели Direct Instances. У него будет
с.203
имя по умолчанию, такое как project_INSTANCE_00001.
с.204
Просмотр и редактирование
экземпляра
141
Для просмотра и редактирования экземпляра:
Любые изменения, сделанные в Форме экземпляра, сразу же вступают в силу. Для того чтобы
запомнить изменения, сохраните Ваш проект, выбрав Save в меню Project. Для возврата к
последней сохраненной версии, закройте Protégé-2000 без сохранения изменений. Если во
время текущего сеанса Вы внесли большие изменения в Вашу базу знаний, Вы можете
захотеть сохраниться до редактирования экземпляров. Вы также можете редактировать
экземпляр из поля. Более подробно об этом можно узнать в разделе Поля экземпляра.
с.205
Удаление экземпляра
Для удаления экземпляра из базы знаний:
После того, как экземпляр был удален, его нельзя восстановить. Однако если Вы закроете
Protégé-2000 без сохранения изменений, Вы можете возвратиться к последней сохраненной
версии. Если во время текущего сеанса Вы внесли большие изменения в Вашу базу знаний,
Вы можете захотеть сохраниться до удаления экземпляров. Для этого выберите Save в меню
Project. Вы также можете исключить значение из слота. Это не удалит экземпляр из базы
знаний. Более подробно об этом можно узнать в разделе Поля экземпляра в главе
Стандартные поля.
с.206
с.207
Запросы
Интерфейс пользователя
● Вкладка Queries
● Панель Query
● Панель Search Results
● Панель Query Library
Действия с запросами
● Создание запроса
● Создание сложного запроса
● Запуск запроса
● Сохранение запроса
● Извлечение запроса
● Очистка запроса
с.208
1. Если Вы знаете класс, который хотите указать, нажмите на кнопку «Выбрать Класс» над
окном ввода класса. (Если Вы хотите создать запрос, основанный исключительно на слоте,
начните с Шага 3.)
2. Выберите нужный класс из диалогового окна Select Classes и нажмите ОК. (Если Вы хотите
создать запрос, основанный исключительно на классе, то сейчас Вы уже готовы его
запустить.)
144
с.209
3. Нажмите на кнопку «Выбрать Слот» над окном ввода слота.
4. Выберите слот из диалогового окна Select Slot. Если Вы выбрали класс, то видны только
слоты, прикрепленные к этому классу. Если класс не выбран, то доступны все слоты.
Нажмите ОК.
с.210
Запуск запроса
Кнопка Find в нижней части панели Query позволяет Вам запустить Ваши запросы и легко
найти все экземпляры, которые удовлетворяют критерию на панели Query.
145
1. Убедитесь, что запрос составлен так, как Вам хочется. См. Создание Запроса или Создание
Сложного Запроса.
2. Нажмите кнопку Find. Экземпляры, которые удовлетворяют условиям запроса,
отображаются на панели Search Results.
с.211
1. Заполните первое окно запроса, как это описано в разделе Создание Простого Запроса.
2. Нажмите на кнопку More. Появилось дополнительное окно запроса.
3. Заполните новое окно запроса. Вы можете использовать то же класс или слот, но не
обязаны делать это.
4. Продолжайте нажимать на кнопку More для создания нужного количества окон запроса,
чтобы добавить больше критериев к вашему запросу.
5. Для того чтобы каждый найденный экземпляр подходил по всем критериям (логическое И),
нажмите Match All. Для того чтобы найти все экземпляры, удовлетворяющие хотя бы одному
критерию (логическое ИЛИ), нажмите на кнопку Match Any.
6. Для того чтобы запустить запрос, нажмите на кнопку Find.
Если Вы создаете сложный запрос и хотите исключить критерий в последнем (самом нижнем)
окне запроса:
с.212
Сохранение запроса
После составления желаемого запроса, как описано в разделе Создание Запроса или Создание
Сложного Запроса, Вы можете сохранить его в Библиотеке Запросов для того, чтобы извлечь
его позже. Это особенно полезно для сложных запросов или часто используемых запросов.
с.213
Извлечение Запроса
146
После того, как Вы сохранили запрос в Библиотеке Запросов, Вы можете извлечь его в любое
время.
с.214
Очистка Запроса
Вы можете удалить все информацию на Панели Запросов. Это позволяет Вам начать создание
нового запроса или загрузить старый.
с.215
Расширение Protégé-2000
Protégé-2000 включает интерфейс программиста приложений, Protégé API, которые
позволяют программисту на Java расширить систему Protégé. API предоставляет классы Java-
package и классы для сложных операций, таких как создание новых элементов управления.
Документация для этого класса Java-package находится на
http://protege.stanford.edu/doc/pdk/index.html.
с.216
Понимание форм
Проект Protégé-2000 включает классы и экземпляры. Вкладка Classes используется
экспертами по предметной области и инженерами по знаниям для создания онтологий, то
есть, для разработки набора классов, описывающих данную предметную область. Вкладка
Instances используется для получения экземпляров, и обычно ей пользуются люди, которые
147
не являются ни экспертами по предметной области, ни инженерами по знаниям. Например,
команда специалистов по медицине могла бы тщательным образом построить онтологию,
связанную болезнями крови. Затем, медсестры в больнице могли бы ввести экземпляры для
описания каждого пациента.
Управление формами решает эту проблему. Используя вкладку Forms, разработчик может
изменить внешний вид и удобство форм. Формы, которые Вы создаете для своих классов на
вкладке Forms, затем используются для ввода экземпляров на вкладке Instances. Вкладка
Forms также позволяет Вам создать несколько интерфейсов пользователя для одной и той
онтологии – формы приобретения знаний могут быть изменены для каждой группы
пользователей.
с.217
Вкладка Forms
Вкладка Forms состоит из одного окна, в котором Вы можете просматривать и редактировать
прототип форм. Окончательный вид формы, которые Вы проектируете и создаете на вкладке
Forms, можно увидеть на вкладке Instances. Конечные пользователи будут использовать
готовые формы для ввода экземпляров в базу знаний.
1. На панели Forms слева показана иерархия классов, и эта панель позволяет Вам очистить
все настройки Вашей формы, а также создать форму из одной из следующих имеющихся
конфигураций: конфигурация по умолчанию, конфигурация формы, созданная для родителя,
или конфигурация формы другого класса.
2. На панели Forms Edit показана конфигурация формы, связанной с выделенным классом.
Каждый слот класса связан с элементом управления пользовательского интерфейса на форме.
Если Вы не создали или не изменили форму, Protégé-2000 использует конфигурацию по
умолчанию, основанную на типе и мощности слота.
148
с.218
Как упоминалось выше, разрабатываемые Вами формы появляются на вкладке Instances. На
следующем рисунке показана та же форма, как она видна на вкладке Instances:
149
с.220
Панель Forms
На панели Forms в левой части вкладки Forms отображаются все классы Вашего проекта.
Панель Forms состоит из трех компонентов:
1. В окне Forms показана иерархия классов Вашего проекта. Иконки дают дополнительную
информацию о форме, связанной с классом. В этом окне Вы можете изменить иерархию. Для
изменения иерархии воспользуйтесь вкладкой Classes.
2. Кнопки Формы в правом верхнем углу панели позволяют Вам очистить все настройки
Вашей формы, а также создать форму с имеющейся конфигурацией.
3. Окно Поиска Формы позволяет Вам найти форму в Окне Forms, набрав полное имя или его
часть и нажав на изображение бинокля.
Окно Forms
На нем показаны все формы проекта, по имени связанного класса. Когда в этом окне
выделяется класс, то связанная с ним форма отображается на панели Form Edit справа.
Каждый класс, конкретный или абстрактный, имеет связанную с ним форму. Для
конкретного класса пользователь определяет экземпляр класса, заполняя форму класса. Для
абстрактного класса эта форма используется только для определения исходной конфигурации,
которая затем может быть наследована другими классами.
с.221
150
Если Вы не создали или не изменили форму, Protégé-2000 использует конфигурацию по
умолчанию, основанную на типе и мощности слота.
с.222
Кнопки формы
Кнопки формы в правом верхнем углу панели Forms позволяют Вам изменить конфигурацию
выбранной формы:
с.223
Компоненты
Панель редактирования формы содержит следующие компоненты:
1. Меню Browser Key, которое позволяет Вам выбрать ключ просмотра для формы.
2. Меню Widget Type, которое позволяет Вам выбрать тип элемента выбранного в данный
момент управления, если таковой имеется.
3. Ряд элементов управления пользовательского интерфейса. Выбранный в данный момент
элемент управления, если таковой имеется, выделяется синим цветом. Элементы управления
преобразуются в поля ввода на вкладке Instances и регулируют то, как пользователи вводят
информацию в виде экземпляров. Каждый слот в классе ассоциирован с элементом
управления пользовательским интерфейсом на форме.
Кроме того, двойное нажатие на панель Form Edit выводит диалоговое окно следующего
вида:
152
информацию об элементе управления и редактировать его конфигурацию, в зависимости от
его типа.
2. Двойное нажатие на фоне панели Form Edit выводит диалоговое окно Form Configuration,
которое позволяет Вам просматривать тип каждого элемента управления, восстанавливать
отображение скрытых элементов управления и выбирать, какой элемент управления, если
таковой имеется, будет занимать большую часть пространства по горизонтали и/или по
вертикали при увеличении размера формы.
с.224
Конфигурация по умолчанию
Если Вы не создали или не изменяли форму, Protégé-2000 использует конфигурацию по
умолчанию следующего вида:
На примере ниже показана форма по умолчанию для Газеты, которая имеет 4 слота. Имеется
3 различных типа значений слота и слоты как единичной, так и множественной мощности.
153
с. 225
Вы можете использовать панель для разработки интерфейса, который обеспечит легкий ввод
несопоставимых типов информации, представленной различными типами слотов.
с.227
Нажатие на меню отображает список возможных вариантов выбора для выбранного в данный
момент элемента управления. Например, для простого элемента управления для ввода текста
Вы можете выбрать между TextFieldWidget и TextAreaWidget.
154
Новый выбор изменит внешний вид элемента управления в форме. Например, слот urgent
имеет тип Boolean. По умолчанию он отображается как CheckBoxWidget, который
предоставляет выпадающий список, элемент которого может выбрать пользователь. Выбирая
ComboBoxWidget из меню Widget Type и изменяя его размер, Вы можете сделать так, чтобы
элемент управления отображался как выпадающий список с вариантами выбора true и false.
1. В левой части вкладки Forms выберите имя класса, чью форму Вы хотите редактировать на
панели Forms.
2. На панели Form Edit нажмите на элемент управления, который Вам нужно редактировать.
Элемент управления будет выделен в синей рамке.
3. Нажмите на меню Selected Widget Type. Отобразится список возможных типов элементов
управления.
4. Выберите тип элемента управления, который Вы хотите использовать.
с.228
Если Вы выберите <none> из меню Widget Type, элемент будет удален из панели Form Edit и
не будет отображаться в Форме Экземпляра для этого класса. Для восстановления
отображения элемента управления, который был удален в результате выбора <none>,
откройте диалог Form Configuration двойным нажатием на фону панели Form Edit и выберите
другой тип отображения элемента управления.
с.229
Для изменения метки элемента управления введите новую метку в поле ввода и нажмите ОК.
с.230
Другие панели
Для комплексных элементов управления, таких как элементы со множественной мощностью,
в диалоговом окне Widget Configuration могут появиться другие панели. Например,
диалоговое окно для стандартного InstanceList Widget также может содержать панель Buttons.
Эта панель позволяет Вам выбрать, какие кнопки отображать в форме.
156
с.231
Панель Widget
На панели Widget отображается вся информация об элементах управления формы. Например,
на панели Widget диалогового окна конфигурации формы для класса Editor перечислены все
слоты класса Editor с выбранным в данный момент типом элемента управления.
157
Для того чтобы изменить тип элемента управления для слота:
Если элемент управления был удален из меню Widget Type в результате выбора <none>, Вы
можете восстановить отображение элемента управления, выбрав другой тип элемента
управления в диалоговом окне конфигурации формы под панелью Widget.
с.232
Панель Layout
На панели Layout отображается информация о текущей конфигурации. Вы можете
использовать панель Layout для выбора элемента управления, который увеличится при
увеличения размера при изменении размера Protégé-2000. Это может быть полезно, например,
когда у Вас есть complex table widget и Вы хотите, чтобы он занимал большую часть формы.
В результате нажатия на одно из меню появится список всех элементов управления. Вы
можете выбрать элемент управления, который расширяется вертикально, и элемент
управления, который расширяется горизонтально. При желании это может быть один и тот
же элемент управления. Выбор <all> в меню означает, что все элементы управления
пропорционально изменяют свой размер.
158
c.233
159
Float Элемент управления для ввода
текста, который проверяет,
является ли введенное значение
десятичным числом
Instance Элемент управления для
отображения текста и четыре
кнопки, который позволяют Вам
определить экземпляр в качестве
значения этого слота
Integer Элемент управления для ввода
текста, который проверяет,
является ли введенное значение
целым числом
String Элемент управления для ввода
текста
с.235
160
выбора типа элемента управления зависят от типа значения слота. Для некоторых типов
значений существует только один возможный элемент управления.
Symbol.
Для того чтобы изменить элемент управления, вначале выберите элемент управления,
который Вы хотите изменить, а затем в Меню типа элемента управления выберите новый тип
элемента управления.
с.236
Элемент управления
InstanceRowWidget
Элемент управления InstanceRowWidget - это дополнительный элемент управления для
слотов типа Instance единичной мощности (значение at most равно 1). Элемент управления по
умолчанию, InstanceFieldWidget, показывает имя Экземпляра, который выбран в качестве
значения слота. Элемент управления InstanceRowWidget фактически показывает значения
слота для элемента управления.
Переделка InstanceRowWidget
161
Когда Вы выбираете InstanceRowWidget в Меню типа элемента управления, то обычно Вам
придется изменить размер этого элемента управления.
Кроме того, Вам может не понадобиться использовать все слоты и менять порядок их
появления. Эти изменения Вы можете сделать, используя диалоговое окно
Конфигурирования формы. Обратите внимание, что текущая реализация не позволяет Вам
изменить порядок напрямую путем перемещения, но Вы можете переупорядочить слоты,
сначала исключив их из элемента управления, а затем добавив их в нужном Вам порядке.
с.237
Для того чтобы добавить или удалить слоты, изменить их порядок или изменить имя, под
которым они отображаются:
3. Для внесения изменений Вы должны нажать на Column Name (Имя столбца) слота, в
который Вы хотите внести изменения. (Верхний ряд, Slot Name (Имя слота), является
свойством слота и не может быть изменен.)
4. Для того чтобы удалить столбец, нажмите на Column Name и нажмите на кнопку
«Удалить» .
с.238
162
5. Для того чтобы переименовать столбец, измените текст в поле Column Name.
6. Для того чтобы добавить столбец, нажмите на кнопку «Добавить» .
Столбец будет добавлен к уже существующим.
7. Для того чтобы переупорядочить столбцы, вначале исключите все столбцы, кроме того,
который бы Вы хотели сделать первым, а затем добавьте другие столбцы. Например, для того
чтобы name был первым в примере, Вам надо удалить столбцы other_information и
phone_number, а затем добавить столбцы, которые Вы хотите вернуть.
с.239
с.240
Элементы управления
InstanceRowWidget и
InstanceTableWidget
Элемент управления InstanceRowWidget - это дополнительный элемент управления для
слотов типа Instance множественной мощности (значение at most не определено или больше
1). Элемент управления по умолчанию, InstanceListWidget, показывает имена Экземпляров,
163
которые выбраны в качестве значений слота. Элемент управления InstanceTableWidget
фактически показывает значения слота для элемента управления.
Переделка InstanceTableWidget
Когда Вы выбираете InstanceTableWidget в Меню типа элемента управления, то обычно Вам
придется изменить размер этого элемента управления.
Кроме того, Вам может не понадобиться использовать все слоты и изменить порядок их
появления. Эти изменения Вы можете сделать, используя диалоговое окно
Конфигурирования формы. Обратите внимание, что текущая реализация не позволяет Вам
изменить порядок напрямую путем перемещения, но Вы можете переупорядочить слоты,
сначала исключив их из элемента управления, а затем добавив их в нужном Вам порядке.
Для того чтобы добавить или удалить слоты, изменить их порядок или изменить имя, под
которым они отображаются:
с.241
164
3. Для того чтобы внести изменения, Вы должны нажать на Column Name (Имя столбца)
слота, в который Вы хотите внести изменения. (Верхний ряд, Slot Name (Имя слота),
является свойством слота и не может быть изменен.)
4. Для того чтобы удалить столбец, нажмите на Column Name и нажмите на кнопку
«Удалить» .
5. Для того чтобы переименовать столбец, измените текст в поле Column Name.
6. Для того чтобы добавить столбец, нажмите на кнопку «Добавить» .
Столбец будет добавлен к уже существующим.
7. Для того чтобы переупорядочить столбцы, вначале исключите все столбцы, кроме того,
который бы Вы хотели сделать первым, а затем добавьте другие столбцы. Например, для того
чтобы name был первым в примере, Вам надо удалить столбцы other_information и
phone_number, а затем добавить столбцы, которые Вы хотите вернуть.
с.242
165
с.243
Элемент управления ContainsWidget
Элемент управления ContainsWidget - это дополнительный элемент управления для слотов
типа Instance. Элемент управления по умолчанию, InstanceFieldWidget или InstanceListWidget,
показывает имя Экземпляра (-ов), которые выбраны в качестве значений слота. Элемент
управления ContainsWidget фактически содержит версию формы для каждого экземпляра,
являющегося значением слота.
Элемент управления ContainsWidget полезен главным образом для слота типа Class или
Instance, где форма Разрешенных Классов довольно проста и где мощность является
единичной или малой. Для экземпляра, который предоставляет резюме выбранных полей,
можно получить InstanceRowWidget или InstanceTableWidget.
с.244
166
Элемент управления SliderWidget
Элемент управления SliderWidget доступен только для слотов типа Integer, которые являются
ограниченными, т.е. они имеют и Максимальное, и Минимальное значение. В этом случае,
Вы можете создать элемент управления, который выглядит, как бегунок, возможные
значения которого показаны в виде отметок на линейке. Выбранное значение показывается
справа и изменяется автоматически, как только Вы перемещаете стрелку бегунка.
с.245
Элемент управления
ImageMapWidget
Позволяет Вам связывать изображения с разными значениями слота типа Symbol. Затем
пользователь может выбрать символ, нажав на изображение, которое связано с ним.
Выбранные изображения должны быть прямоугольными.
167
Конфигурирование элемента управления
ImageMapWidget
Для конфигурирования элемента управления ImageMapWidget:
с.246
● проект table, который позволяет Вам отображать информацию, хранящуюся как функция
Для того чтобы использовать эти элементы управления, Вам нужно не только включить
связанный с ними проект, но и добавить к проекту другую информацию и, в случае таблиц,
убедиться, что Ваш проект действительно поддерживает этот элемент управления. Требуемая
дополнительная работа, тем не менее, позволяет Вам создать интерфейс, передающий всю
информацию визуальным или непосредственным способом. Более подробно об этом можно
узнать в учебном пособии.
с.247
● Изменить ключ просмотра, то есть слот, который используется для идентификации разных
экземпляров при отображении в списке.
● Изменить конфигурацию, выбрав один элемент управления, который занимает большую
Если Вы не выберите слот для ключа просмотра, Protégé-2000 будет использовать ключ по
умолчанию, <имя экземпляра>, такой как newspaper_0017. Обычно полезно установить
ключ просмотра.
1. Выберите имя класса, чью форму Вы хотите редактировать на панели Forms в левой части
вкладки Forms.
2. Нажмите на Меню ключа просмотра. Виден список слотов.
3. Выберите слот, который Вы хотите установить в качестве ключа просмотра.
Изменение конфигурации
Вы можете выбрать элемент управления, который будет расширяться при расширении формы
с изменением размера окна Protégé-2000.
с.248
Это может быть полезно, например, когда у Вас есть составной табличный элемент
управления и Вы хотите, чтобы он занимал большую часть формы. Для этого:
1. Дважды щелкните по любому месту фона формы, т.е. по области, где нет элемента
управления. Отображается диалоговое окно Конфигурирования формы.
169
2. Нажмите на панель Layout.
3. Для того чтобы выбрать элемент управления, который будет занимать большую часть
пространства по вертикали при увеличении размеров формы, выберите имя элемента
управления из меню Fill Vertical Space With:. Выбор <all> означает, что все элементы
управления увеличатся в равной степени.
4. Для того чтобы выбрать элемент управления, который будет занимать большую часть
пространства по горизонтали при увеличении размеров формы, выберите имя элемента
управления из меню Fill Horizontal Space With:. Вы можете выбрать тот же или другой
элемент управления. Выбор <all> означает, что все элементы управления увеличатся в равной
степени.
Для возврата формы в исходное состояние, так чтобы ни один элемент управления не
увеличивался больше других, убедитесь, что в обеих меню выбрано <all>.
с.249
170
2. В поле метки диалогового окна Конфигурирования элемента управления введите нужную
метку. Вы можете ввести несколько слов.
3. Нажмите ОК.
с.250
1. Нажмите на элемент управления, чтобы выбрать его. Вокруг элемента управления
появилась синяя рамка.
2. Нажмите на внутреннюю часть элемента управления и удерживайте кнопку мыши.
3. Перетащите элемент управления в нужное место.
Примечание: Для того чтобы скрыть элемент управления, так чтобы он не отображался на
форме, используйте Меню типа элемента управления. Более подробно об этом можно узнать
в разделе Сокрытие элемента управления.
171
3. Выберите кнопки, которые будут отображаться, убедившись, что в нужных флаговых
кнопках есть флажки.
4. Нажмите ОК.
с.251
Вы также можете исключить элемент управления из формы, полностью скрыв его, или
восстановить отображение скрытого элемента управления.
1. Выберите элемент управления, который Вы хотите изменить, нажав на него один раз.
Вокруг элемента управления появилась синяя рамка.
2. В Меню типа элемента управления выберите другой вид.
1. Выберите элемент управления, который Вы хотите изменить, нажав на него один раз.
Вокруг элемента управления появилась синяя рамка.
2. В Меню типа элемента управления выберите <none>. Выбранный элемент управления
исключен из формы.
172
1. Дважды щелкните кнопкой мыши по пустому месту формы для того, чтобы отобразить
диалоговое окно Конфигурирования формы.
2. Выберите элемент управления, отображение которого Вы хотите восстановить, выбрав его
имя на панели Widget.
3. Нажмите на текст <none> под столбцом Widget.
4. Выберите другой вид для элемента управления.
5. Нажмите ОК.
с.257
с.258
В простом газетном примере задачей, которую нужно решить, мог бы стать поиск всех
рекламных объявлений, которые стоят дороже некоторого предела. Для решения этой задачи
в онтологию нужно включить класс рекламы, который включает стоимость и дату
опубликования. Если эта информация будет разбросана по всем выпускам, то решателю задач
будет сложнее получить доступ ко всем экземплярам рекламных объявлений и их стоимости.
174
Краткий словарь терминов
Add Добавить
Any Любой
Boolean Булев
Cardinality Мощность
Cascade Windows Каскадировать Окна
Class Button Кнопка работы с классами
Class Constraint Ограничение Класса
Class Documentation Информация о Классе
Class Form Форма Класса
Class Name field Поле «Имя Класса»
Class Relationship pane Панель отношений классов
Class Role Роль Класса
Class Window Окно классов
Class Класс
Close All Windows Закрыть все окна
Create Создать
Create slot Создать слот
Create subclass Создать подкласс
Create Symbol Создать символ
Defaults Значения по Умолчанию
Delete selected class Удалить выбранный класс
Documentation Пояснения
Edit Symbol Редактировать Символ
Find Найти
Float Число с плавающей запятой
Integer Целое число
Inverse Slot Обратный Слот
Instance Экземпляр
JDBC Database База данных JDBC
Make class visible Сделать класс видимым
Maximum Максимальный
Minimum Минимальный
Multiple Множественный
New Новый
Note Icon Иконка Примечаний
Project Проект
Save Сохранить
Select Slot Выбрать Слот
Single Единичный
Standard Text Files Стандартные текстовые файлы
String Строка
Superclasses pane Панель надклассов
Symbol Символ
Template Slots Шаблонные Слоты
Template Values Шаблонные Значения
The Queries Tab Вкладка Запросы
The Query Library Pane Панель Библиотека Запросов
The Query Pane Панель Запроса
The Search Results Pane Панель Результаты поиска
Type Тип
175
Value Type Тип Значения
View Вид
Windows Окна
176