Я снова вернулся. И я счастлив. Но. Тут не о том. Не буду рассказывать о причинах моего отсутствия, расскажу лучше о том, как преобразится блог. Я поудалял все лишние посты (оставил только тематические и те, которые было жалко удалить): о личной жизни и прочей нечисти буду писать на тумблр. Когда-нибудь. Когда время будет. Тут же отныне останется две основные и две вспомогательные категории: java и semantic web; projects и misc (на случай если всё-же очень захочется нечисти тут).
Итак, пишем о жаве и семантик веб. И начнём прямо сейчас. Те, кто меня читал в начале этого года, помнят, возможно, что темой моей дипломной работы был Семантический Веб. Собственно, практической частью работы было написание API на жаве, semanticAPI. АПИ включает в себя два пакета: microformatParser и rdfParser, в каждом - класс document и единственный (кроме конструктора, конечно же) публичный метод - gerMicroformats() и parseRdf() соответственно. Не буду вдаваться в реализацию, желающим полистать сорцы могу предложить их скачать тут, желающим всё это просто напросто заюзать (если такие правда будут), предлагаю ознакомиться с UML-диаграммами и презентацией (оставил с защиты работы; если заинтересует, выложу русскую версию) ниже и скачать jar-файл.
microformatParser:
rdfParser:
Презентация:
Очередной вольный перевод наброска спецификации. Сегодня мы рассмотрим онтологию, которая используется для описания авторов и генераторов rdf-документов, MetaVocab (рабочее название -
RDF Site Summary 1.0 Modules: Administrative, потому и картинка к посту такая). Данная онтология имеет статус “proposed”, но уже используется в некоторых контекстах. Как и TrackBack, онтология разрабатывалась как дополнение к RSS 1.0, но может использоваться в не-rdf-форматированном RSS 2.0. Итак, начнём:
Авторы:
Версия:
Последняя версия: http://web.resource.org/rss/1.0/modules/admin/
Статус:
Proposed
Права:
Разрешено использование, копирование, модифицирование и распространение Спецификации Модуля RDF Site Summary 1.0,а также её сопроводительной документации для любых целей, при условии, что уведомление об авторских правах и этот пункт будет присутствовать во всех копиях. Владельцыавторских прав не гарантируют пригодность спецификации для каких-либо целей. Она предоставляется “как есть” без выраженных или подразумеваемых гарантий.
Данный копирайт относится к авторским правам на Модуль RDF Site Summary 1.0 и к его сопроводительной документации, и не распространяется на формат самого RSS Модуля.
Описание:
Модуль добавляет некоторые администраторские свойства, чтобы увеличить надёжность в использовании RSS поверх провайдеров, агрегаторов, клиентов и других пользователей.
<admin:errorReportsTo> - это URI (обычно ‘mailto:’ URL), который служит для связи с автором, либо источником для конкретного RSS/RDF. Будет использоваться в качестве фидбэка о технических проблемах при использовании RSS, RDF, либо XML.
<admin:generatorAgent> - это URI софтвера, который был использован для генерации данного RSS/RDF. Идентично User-Agent’у в HTTP, или полю X-Mailer в email-сообщении. Может использоваться для отлавливания и исправления ошибок в программном обеспечении, а также для сбора статистических данных. URI должен содержать версию софтвера, а также в случае использования разрешимой URL, должен возвращать человеко-читаемую html-страницу.
Определение пространства имён:
xmlns:admin=”http://webns.net/mvcb/”
Модель:
<channel> Elements:
- <admin:errorReportsTo rdf:resource=”URI”/>
- <admin:generatorAgent rdf:resource=”URI”/>
Пример:
<?xml version="1.0" encoding="utf-8"?>
<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:admin="http://webns.net/mvcb/"
xmlns="http://purl.org/rss/1.0/">
<channel rdf:about="http://meerkat.oreillynet.com/?_fl=rss1.0">
<title>Meerkat</title>
<link>http://meerkat.oreillynet.com</link>
<description>Meerkat: An Open Wire Service</description>
<admin:errorReportsTo rdf:resource="mailto:channel-owner@acme.orgs"/>
<admin:generatorAgent rdf:resource="http://Orchard.SourceForge.net/1.2/"/>
<image rdf:resource="http://meerkat.oreillynet.com/icons/meerkat-powered.jpg" />
<items> <rdf:Seq> <rdf:li rdf:resource="http://c.moreover.com/click/here.pl?r123" /> </rdf:Seq> </items>
<textinput rdf:resource="http://meerkat.oreillynet.com/" /> </channel>
<image rdf:about="http://meerkat.oreillynet.com/icons/meerkat-powered.jpg"> <title>Meerkat Powered!</title> <url>http://meerkat.oreillynet.com/icons/meerkat-powered.jpg</url> <link>http://meerkat.oreillynet.com</link> </image>
<item rdf:about="http://c.moreover.com/click/here.pl?r123"> <title>XML: A Disruptive Technology</title> <link>http://c.moreover.com/click/here.pl?r123</link> </item>
<textinput rdf:about="http://meerkat.oreillynet.com/">
<title>Search Meerkat</title> <description>Search Meerkat's RSS Database...</description> <name>s</name> <link>http://meerkat.oreillynet.com/</link> </textinput> </rdf:RDF>
По теме:
В следующий раз поговорим о Basic Geo (WGS84 lat/long) Vocabulary.
Это вольный перевод наброска спецификации онтологии TrackBack. Начнём:
Авторы:
- Justin Klubnik (justin AT madskills DOT com), justin.madskills.com
- Benjamin and Mena Trott (trackback AT movabletype DOT com), movabletype.org
Версия:
Current Version: 1.0 (Draft)
Права:
Разрешено использование, копирование, модифицирование и распространение Спецификации Модуля RSS 1.0/2.0 TrackBack,а также её сопроводительной документации для любых целей, при условии, что уведомление об авторских правах и этот пункт будет присутствовать во всех копиях. Владельцыавторских прав не гарантируют пригодность спецификации для каких-либо целей. Она предоставляется “как есть” без выраженных или подразумеваемых гарантий.
Данный копирайт относится к авторским правам на Модуль RSS 1.0/2.0 TrackBack и к его сопроводительной документации, и не распространяется на формат самого RSS Модуля.
Описание:
Модуль построен на TrackBack-системе, разработанной в рамках движка MovableType. TrackBack - это P2P фреймворк, разработанный для коммуникации между сайтами. Сайты, поддерживающие данную технологию, общаются при помощи пингов. Пинг сообщает сайту, что на пингующем сайте появилась ссылка на пост (либо на категорию) с целевого сайта.
Пинги посылаются на TrackBack-URL’ы. TrackBack-URL’ы - это уникальные URL’ы, ассоциированные с постом (категорией), которые умеют принимать пинги. Производится запрос (HTTP GET) к соответствующей URL, которая в общем виде выглядит следующим образом:
http://foo.com/mt/mt-tb.cgi?tb_id=ID
Тут ID - это ID того, к чему мы посылаем ТрекБек (пост, категория).
Определение пространства имён:
xmlns:trackback=”http://madskills.com/public/xml/rss/module/trackback/”
Синтаксис:
Модели данных у RSS 1.0 (RDF Site Summary) и у RSS 2.0 (Really Simple Syndication) разные. Потому синтаксис модуля будет отличаться в каждом из них. Значения же различных элементов остаётся, в основном, тем же.
trackback:ping
trackback:ping - является суб-элементом элемента item, и содержит TrackBack URL item‘a. Вот пример реализации для RSS 1.0:
<item rdf:about="http://blog.folone.org.ua/MOCK=155/"> <title>[Онтологии] Trackback</title> <link>http://blog.folone.org.ua/MOCK=155/</link> <description>Жорик решил рассказать об и так всем уже известном механизме трекбека</description> <trackback:ping rdf:resource="http://blog.folone.org.ua/MOCK=155/trackback"/> </item>
И для RSS 2.0:
<item> <title>[Онтологии] Trackback</title> <link>http://blog.folone.org.ua/MOCK=155/</link> <description>Жорик решил рассказать об и так всем уже известном механизме трекбека</description> <trackback:ping>http://blog.folone.org.ua/MOCK=155/trackback</trackback:ping> </item>
Вкратце, эти RSS itemы теперь говорят: “Пингуйте, будьте добры, сюда: http://blog.folone.org.ua/MOCK=155/trackback.”
trackback:about
trackback:about - суб-элемент item‘а, содержит TrackBack URL, который пингуется как ссылка к данному item‘у. Каждый item может содержать ноль и больше инстанций trackback:about.
Для RSS 1.0 это выглядит так:
<item rdf:about="http://bar.com/weblog/rss_plus_trackback.html"> <title>[Онтологии] Trackback</title> <link>http://blog.folone.org.ua/MOCK=155/</link> <description>Жорик решил рассказать об и так всем уже известном механизме трекбека</description> <trackback:ping rdf:resource="http://blog.folone.org.ua/MOCK=155/trackback"/> <trackback:about rdf:resource="http://blog.folone.org.ua/MOCK=154/trackback"/> </item>
Для RSS 2.0 - так:
<item> <title>[Онтологии] Trackback</title> <link>http://blog.folone.org.ua/MOCK=155/</link> <description>Жорик решил рассказать об и так всем уже известном механизме трекбека</description> <trackback:ping>http://blog.folone.org.ua/MOCK=155/trackback</trackback:ping> <trackback:about>http://blog.folone.org.ua/MOCK=154/trackback</trackback:about> </item>
Вкратце, эти item‘ы теперь говорят: “Пингуйте, будьте добры, сюда: http://blog.folone.org.ua/MOCK=155/trackback. А сам я пингану http://blog.folone.org.ua/MOCK=154/trackback, ибо мой материал каким-то образом схож, либо ссылается на пост (категорию), ассоциированную с данной ссылкой.”
Это всё нужно чтобы:
Пользователю не приходилось искать ТрекБек-ссылку к посту, на который он хочет сослаться. А также чтобы оторвать механизм реализации трекбеков от конкретного движка.
Онтоло?гия — это попытка всеобъемлющей и детальной формализации некоторой области знаний с помощью концептуальной схемы. Обычно такая схема состоит из иерархической структуры данных, содержащей все релевантные классы объектов, их связи и правила (теоремы, ограничения), принятые в этой области.
Онтологии применяются в искусственном интеллекте, семантической паутине (SemanicWeb) и технологии программирования как форма представления знаний о реальном мире или его части.(via)
Чего это я вдруг? Просто по мере написАния дипломной, рецензии и отзыва к ней, я постараюсь выкладывать на всеобщее обозрение показавшиеся мне особо интересными части.
Сегодня речь пойдёт об онтологиях. Как утверждает Коля, вся информация будет жить в rdf-документах, а доставать её мы будем с помощью sparql-запросов. Но что же сидит в этих самых rdf-документах? А вот и правильно, онтологии.
Существует несколько языков описания онтологий. Нас в данном контексте (веб) интересует owl (ontology web language), как расширение rdf и rdfs, который является стандартом W3C.
С этого поста я начну понемногу описывать существующие на сегодняшний день онтологии. А сегодня советую интересующимся почитать про первые две из них у Коли:
Да уж, в последнее время я немного подзабыл, что мой теглайн состоит из одного слова, semanti. Буду исправляться. Итак, сегодня поговорим о более богатом поиске, с парсингом метаданных.
Подразумеваются блоги на Вордпрессе. Увидел статью тут, решил перевести.
Есть два варианта решения данной проблемы. Первый: ручками копипастить соответствующий код, полученный с помощью редакторов микроформатов. Делается так: Continue reading ‘Используем микроформаты в своём блоге.’







