Archive for the 'semantic web' Category
18
Nov
i`m back

Я снова вернулся. И я счастлив. Но. Тут не о том. Не буду рассказывать о причинах моего отсутствия, расскажу лучше о том, как преобразится блог. Я поудалял все лишние посты (оставил только тематические и те, которые было жалко удалить): о личной жизни и прочей нечисти буду писать на тумблр. Когда-нибудь. Когда время будет. Тут же отныне останется две основные и две вспомогательные категории: java и semantic web; projects и misc (на случай если всё-же очень захочется нечисти тут).

Итак, пишем о жаве и семантик веб. И начнём прямо сейчас. Те, кто меня читал в начале этого года, помнят, возможно, что темой моей дипломной работы был Семантический Веб. Собственно, практической частью работы было написание API на жаве, semanticAPI. АПИ включает в себя два пакета: microformatParser и rdfParser, в каждом - класс document и единственный (кроме конструктора, конечно же) публичный метод - gerMicroformats() и parseRdf() соответственно. Не буду вдаваться в реализацию, желающим полистать сорцы могу предложить их скачать тут, желающим всё это просто напросто заюзать (если такие правда будут), предлагаю ознакомиться с UML-диаграммами и презентацией (оставил с защиты работы; если заинтересует, выложу русскую версию) ниже и скачать jar-файл.

microformatParser:

microformatParser

rdfParser:

rdfParser

Презентация:

21
May
semantic web.  | 

metaVocabОчередной вольный перевод наброска спецификации. Сегодня мы рассмотрим онтологию, которая используется для описания авторов и генераторов rdf-документов, MetaVocab (рабочее название -
RDF Site Summary 1.0 Modules: Administrative, потому и картинка к посту такая). Данная онтология имеет статус “proposed”, но уже используется в некоторых контекстах. Как и TrackBack, онтология разрабатывалась как дополнение к RSS 1.0, но может использоваться в не-rdf-форматированном RSS 2.0. Итак, начнём:

Авторы:

Aaron Swartz, The Info Network
Ken MacLeod, Terrapin Technologies, Inc.

Версия:

Последняя версия: 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.

20
May
semantic web.  | 

trackbackЭто вольный перевод наброска спецификации онтологии 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, ибо мой материал каким-то образом схож, либо ссылается на пост (категорию), ассоциированную с данной ссылкой.”

Это всё нужно чтобы:

Пользователю не приходилось искать ТрекБек-ссылку к посту, на который он хочет сослаться. А также чтобы оторвать механизм реализации трекбеков от конкретного движка.

20
May
semantic web.  | 

web 3.0Онтоло?гия — это попытка всеобъемлющей и детальной формализации некоторой области знаний с помощью концептуальной схемы. Обычно такая схема состоит из иерархической структуры данных, содержащей все релевантные классы объектов, их связи и правила (теоремы, ограничения), принятые в этой области.

Онтологии применяются в искусственном интеллекте, семантической паутине (SemanicWeb) и технологии программирования как форма представления знаний о реальном мире или его части.(via)

Чего это я вдруг? Просто по мере написАния дипломной, рецензии и отзыва к ней, я постараюсь выкладывать на всеобщее обозрение показавшиеся мне особо интересными части.

Сегодня речь пойдёт об онтологиях. Как утверждает Коля, вся информация будет жить в rdf-документах, а доставать её мы будем с помощью sparql-запросов. Но что же сидит в этих самых rdf-документах? А вот и правильно, онтологии.

Существует несколько языков описания онтологий. Нас в данном контексте (веб) интересует owl (ontology web language), как расширение rdf и rdfs, который является стандартом W3C.

С этого поста я начну понемногу описывать существующие на сегодняшний день онтологии. А сегодня советую интересующимся почитать про первые две из них у Коли:

07
Mar

Для обозначения метаданных о графике (графический редактор, фотоаппарат, автор), музыке (название, исполнитель, альбом, год), видео (автор, ещё что-то :) ).

Данные давно уже отображаются в том же Flicker’е, Last.fm’е и YouTub’е. Идея - как-нибудь унифицировать это отображение. Что-то вроде..

Continue reading ‘Идея: hMedia.’

06
Mar
semantic web.  | 

logoДа уж, в последнее время я немного подзабыл, что мой теглайн состоит из одного слова, semanti. Буду исправляться. Итак, сегодня поговорим о более богатом поиске, с парсингом метаданных.

Continue reading ‘Ищем, используя метаданные’

05
Dec
semantic web.  | 

Подразумеваются блоги на Вордпрессе. Увидел статью тут, решил перевести.

Есть два варианта решения данной проблемы. Первый: ручками копипастить соответствующий код, полученный с помощью редакторов микроформатов. Делается так: Continue reading ‘Используем микроформаты в своём блоге.’



Мальчикам и девочкам:


Любителям почитать:

Более того: