Скачать презентацию
Идет загрузка презентации. Пожалуйста, подождите
Презентация была опубликована 11 лет назад пользователемНикита Мусаков
1 Компонента KIF Converter проекта KNOWLEDGE.NET Санкт-Петербургский Государственный Университет Докладчик Сигалин Максим Владимирович Научный руководитель Сафонов Владимир Олегович, проф., д.т.н.
2 KIF (Knowledge Interchange Format) Обмен знаниями Язык исчисления предикатов второго порядка Не имеет конструкций для описания фреймов/онтологий
3 Система Ontolingua Надстройка над KIF Имеет конструкции для описания фреймов/онтологий Набор трансляторов в другие языки представления знаний
4 Процесс конвертации
5 Конструкции Knowledge.NET Фреймы Онтологии
6 Фреймы Общий вид: frame FR_CATEGORY FR_IDEN { SLOTS }
7 Слоты SLOTS ::= own_slots [[SL_DESC] SL_NAME[=SL_VALUE];]+ [ instance_slots [SL_DESC SL_NAME[=SL_VALUE];]+ ]
8 Слоты (расширенное описание) facets { type TYPE; [value VALUE;] [default_value DEF_VALUE;] } SL_NAME;
9 Наследование фреймов own_slots is_a FR_IDEN1, | FR_IDEN2, FR_IDEN3, FR_IDEN4, …;
10 Онтологическая модель Концепты Подконцепты A is_subconcept_of B,C; А { is_subconcept_of B,C; } Thing
11 Определение через отношения Пересечение concept A is_intersection_of B, C, D… Объединение concept A is_union_of B, C, D… Дополнение concept A is_complement_of B, C, D…
12 Свойства datatype property PROP_NAME { domain A, B, C, …; range X, Y, Z,...; }
13 Пример #ontology Vehicles #concepts Color is_subconcept_of Thing; Vehicle is_subconcept_of Thing; Plane is_subconcept_of Vehicle; Submarine is_subconcept_of Vehicle; disjoint Plane, Submarine; disjoint Color, Vehicle; #properties object property HasColor { domain Vehicle; range Color; }
14 Подсвойства object property X is_subproperty_of Y { domain A, B, C, …; range K, L, M, …; }
15 Пример #concepts concept Human { is_subconcept_of{ Thing; HasSibling some_values_from Sibling; IsChildOf cardinality 2; } #properties object property IsChildOf { domain Human; range Human; inverse HasChild; }
16 Экземпляры individual Dmitry { alias Dima; is_a Human; HasSibling = Nina; HasAncestor = {Victor, Ludmila, Grigory, Alena}; HasChild = {Egor, Maria}; }
17 Конструкции Ontolingua DEFINE-CLASS DEFINE-FRAME DEFINE-INSTANCE
18 DEFINE-CLASS (DEFINE-CLASS ( )DEFINE-CLASS {:def | :iff-def} [:constraints ] [:class-slots ( *)] [:instance-slots ( *)] [:default-slot-values ( *)] )
19 Пример (define-class female-person (?person) "female humans"define-class :iff-def (and (human ?person) (= (gender ?person) female)) )
20 Слоты (Name (SLOT-VALUE-TYPE string)) Предопределенные собственные слоты: INSTANCE-OF SUBCLASS-OF ALIAS DOMAIN RANGE...
21 DEFINE-INSTANCE (define-instance define-instance ( +)... )
22 Реализация Интерфейс IModelItem Паттерн Composite Методы: ICollection getChildren() Write(StreamWriter writer) Интерфейс IModel: IModelItem
23 Реализации IModelItem Класс AbstractModelItem реализация метода write(StreamWriter writer) – делегирует своим частям Иерархия KIFObject: AbsractModelItem Иерархия OntolinguaObject: KIFObject Части-терминалы паттерн Flyweight
24 Реализации IModel KIFModel OntolinguaModel
25 Создание моделей Интерфейс IModelBuilder паттерн Builder методы buildFrame(DataFrame frame) buildSlot(Slot slot)... IModel getModel() Реализации KifModelBuilder OntolinguaModelBuilder
26 Конвертация в KIF Класс KifModelBuilder: OntolinguaModelBuilder при создании делегирует методы предку канонизирует заменяет конструкции Ontolingua на конструкции KIF вычисляет зависимости, меняя и пополняя модель
27 Запуск из Visual Studio 2005
28 ?
Еще похожие презентации в нашем архиве:
© 2024 MyShared Inc.
All rights reserved.