| rssh ( @ 2008-05-08 13:44:00 |
| Entry tags: | developers.org.ua, онтологии, работа, ссылки |
В поисках семантической модели
Или "снова о онтологиях".
Все кто интересовался разработкой ПО знают что в идеале должна быть сначала ращработана концептуальная модель предметной области, но на практике никто ее в чистом виде не видел. Иногда еще люди гордо ведут глоссарий (что безусловно вещь хорошая и необходимая).
Но - вот только сейчас развитие технологии привело к тому, что:
1. Модели предметной области (без програм) наконец-то практически возможно определить и сделать.
2. Они могут оказаться полезными для разработки и документирования ПО
То есть в идеале картинка полной разщработки выглядит так: у нас есть модель предметной области на каком-то языке моделирования, это модель отображается в код и схему БД с помощью какого-то (автоматического или ручного) процесса маппинга.
Модель предметной области можно давать суппорту/клиентам и новым членам команды для вхождения в тему. (Собственно этим она может быть полезна и если она сократит срок "вьезда в тему" для нового человека, то ее полезность и экономическую оправданность можно посчитать. Еще формальную модель можно проверять на ошибки и проч. - но эта отдельная тема и в общем случае c экономикой не все ясно.
Итак - что составляет концептуальную модель: "сущности и отношения между ними в некоторой связной картине мира ". Вот этот элемент "связной картины мира" и отсуствовал до недавнего времени. Я смотрю - буквально пару лет назад ситуация изменилась -- использование онтологий превысило какой-то критический объем и можно уже воспользоваться некоторыми результатами.
Сущности и отнощшения между ними обычно записываются в виде триплетов "сущность - отношение - сущность" (или иногда четверок);
Типы сущностей и отношений тоже могут быть описанны с помощью "метаописаний" относительно небольшого начального словаря
Для таких триплетов есть ствнлартный язык RDF (http://www.w3.org/2001/sw/) а для собственно онтологий - OWL (http://www.w3.org/TR/owl-features/
Ссылки
http://www.schemaweb.info/ Список существующиз общесдоступных онтологий
SUMO http://www.ontologyportal.org/ -- я сейчас начну ее использовать для частичного моделирования предметной области в текущем проекте. Там определено приблизительно 20000 понятий и 70000 аксиом. Есть маппинг в WordNet
WordNet http://wordnet.princeton.edu/ -- лексическая база английского языка. Собственно семантический отношений там нет, но must be known about
МукиТуе http://verbs.colorado.edu/~mpalmer/proj
Gellish http://sourceforge.net/projects/gel
ailev. Много интересного но все убивается в неудобный формат распостранения и отсуствие средств навигации. Т. е. для того что бы что-то сделать надо сначала хотя-бы загрузить словарь в БД или преобразовать в RDF а потом уже искать нужные сущности. Так как рядом есть RDF онтологии, где есть средства навигации и запросов, то работу по приведению Gellish определений в стандлартный вид оплачивать не имеет смысла.
Скорее интересное чем полезное: DBPedia (http://dbpedia.org/About) -- В википедии есть категории - вот вся информация из википедии о том что к чему относится в структированном виде хранится тут