Тоже хочу принять участие в размышлениях на тему семантического веба, начатого здесь и здесь.
Мной было потрачено определенное количество времени на исследования принципов и тенденций развития семантического веба, хочу поделиться основными результатами и мыслями.
Ответ очень простой — необходимость отделять зерна от плевел, т.е. «информацию» от «информационного шума».
Как это может качественно повлиять на веб:
Если необходимость и преимущества «семантического веба» более и менее понятны, то вот варианты реализации вызывают некоторые опасения.
На данный момент мы оперируем такими понятиями как URI (Uniform Resource Identifier), онтологии, которые описываются такими языками как RDF и OWL и др.
Скажу честно — мои попытки разобраться с этими языками и методами их использования потерпели крах — они сложны для понимания, неоднозначны и требуют доработки. Поиск каких-то работающих и понятных инструментов тоже не обвенчались успехом. Как по мне, это и есть основной стоп-фактор развитие данного направления.
Также мы имеем такое понятие, как микроформаты, которые, как мне кажется, дальше по своей сути продвинулись в идейном развитии, но, к сожалению, не достаточно далеко.
Из того, что я встречал, внимания заслуживает разработка OpenCalais, которая позволяет извлекать некоторую семантическую информацию с текстов и веб-ресурсов. Их сервис позволяет определить, к какой категории знаний (техника, образование, политика и др.) относится тот или иной текст, извлечь термины и получить некоторую другую подобную информацию. Несмотря на кажущуюся красоту всего происходящего, серьезно использовать этот сервис еще рано.
Второй стоп-фактор — это то, что семантические данные необходимо вводить самостоятельно, в связи с чем возникает вопросы о том, кто это будет делать и кто за это будет платить.
Мое мнение такое: автоматизация может помочь, но полностью полагаться на нее нельзя по той простой причине, что вопросы понимания и логических связей между понятиями — это субъективная оценка, на данном этапе развития не поддающиеся формализации.
Итак, при создании сайта мы рисуем уникальный дизайн, адаптируем его под все известные поисковые системы и веб-стандарты, подтачиваем под разные браузеры, подбираем контенщиков, специалистов по продвижению и платим им деньги и, самое главное, все считают это нормальным. Так почему же семантическая составляющая не может быть частью этого процесса?
С точки зрения автора сайта нет смысла заниматься семантикой, потому что:
Проанализировав (и немного пофантазировав) сложные и не очень возможные методы интеграции семантических данных, я остановился на простом и очевидном способе: интеграция в виде тегов и (или) в нотации CSS.
Пример:
Для того, чтобы код был валидный, дописываем схему:
В нотации CSS:
.mySemanticClass {
keywords: mathcad;
contentType: content;
category: math;
}
В наш HTML файл семантический файл подключаем как и простой CSS файл.
В своей работе я выделил основные атрибуты, которые хотелось бы иметь уже сейчас. Вот их список:
У данного подхода один явный недостаток — необходимость заручиться поддержкой поисковых гигантов, которые будут использовать данный подход при индексации страниц. Но данную идею уже можно внедрять в CMS, блогодвижках — для этого нужно внедрить соответствующий код в движок и некоторые дополнительные поля для ввода и использовать эту информацию в собственной логике поиска и фильтрации данных.
P.S. Как кто-то хорошо подметил, за идею не бьют. Поэтому было бы интересно обсудить и такой вариант развития semantic web. Спасибо за внимание!
Мной было потрачено определенное количество времени на исследования принципов и тенденций развития семантического веба, хочу поделиться основными результатами и мыслями.
Зачем мне это нужно?
Ответ очень простой — необходимость отделять зерна от плевел, т.е. «информацию» от «информационного шума».
Как это может качественно повлиять на веб:
- если ввести в поисковую систему запрос, содержащий название некого топика или новости, то можно заметить, что 80% результатов — это один и тот же текст, «внедренный» в графический интерфейс того или иного ресурса
- концентрация на информации, а не на баннерах, списков ссылок, друзей друзей и т.д.
- более точный поиск за счет учета лишь релевантного контента
- ваш вариант?
Что мы имеем на данный момент?
Если необходимость и преимущества «семантического веба» более и менее понятны, то вот варианты реализации вызывают некоторые опасения.
На данный момент мы оперируем такими понятиями как URI (Uniform Resource Identifier), онтологии, которые описываются такими языками как RDF и OWL и др.
Скажу честно — мои попытки разобраться с этими языками и методами их использования потерпели крах — они сложны для понимания, неоднозначны и требуют доработки. Поиск каких-то работающих и понятных инструментов тоже не обвенчались успехом. Как по мне, это и есть основной стоп-фактор развитие данного направления.
Также мы имеем такое понятие, как микроформаты, которые, как мне кажется, дальше по своей сути продвинулись в идейном развитии, но, к сожалению, не достаточно далеко.
Из того, что я встречал, внимания заслуживает разработка OpenCalais, которая позволяет извлекать некоторую семантическую информацию с текстов и веб-ресурсов. Их сервис позволяет определить, к какой категории знаний (техника, образование, политика и др.) относится тот или иной текст, извлечь термины и получить некоторую другую подобную информацию. Несмотря на кажущуюся красоту всего происходящего, серьезно использовать этот сервис еще рано.
Ручной труд или автоматизация?
Второй стоп-фактор — это то, что семантические данные необходимо вводить самостоятельно, в связи с чем возникает вопросы о том, кто это будет делать и кто за это будет платить.
Мое мнение такое: автоматизация может помочь, но полностью полагаться на нее нельзя по той простой причине, что вопросы понимания и логических связей между понятиями — это субъективная оценка, на данном этапе развития не поддающиеся формализации.
Постановка задач и варианты их решения
Итак, при создании сайта мы рисуем уникальный дизайн, адаптируем его под все известные поисковые системы и веб-стандарты, подтачиваем под разные браузеры, подбираем контенщиков, специалистов по продвижению и платим им деньги и, самое главное, все считают это нормальным. Так почему же семантическая составляющая не может быть частью этого процесса?
С точки зрения автора сайта нет смысла заниматься семантикой, потому что:
- это требует дополнительных трудозатрат (это еще полбеды)
- это требует обучения новым стандартам и языкам (тот же RDF и OWL)
- отсутствие или слабая поддержка семантики поисковыми системами
Интеграция семантических данных
Проанализировав (и немного пофантазировав) сложные и не очень возможные методы интеграции семантических данных, я остановился на простом и очевидном способе: интеграция в виде тегов и (или) в нотации CSS.
Пример:
<div id=”content” xml:semantic=”keywords: mathcad; contentType: content; category: math;”> Mathcad is desktop software for performing and documenting engineering and scientific calculations.
Для того, чтобы код был валидный, дописываем схему:
<!DOCTYPE html PUBLIC
"-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"
[
<!ATTLIST div keywords CDATA #IMPLIED>
<!ATTLIST div contentType (copyright|content|definition|links|references| bibliographic|related|image) CDATA #IMPLIED>
<!ATTLIST div category (Business_Finance|Entertainment_Culture| Environment|Health_Medical_Pharma|Hospitality_Recreation|Law_Crime| Politics|Sports|Technology_Internet|Weather|Other) CDATA #IMPLIED>
...
<!ATTLIST div progLang CDATA #IMPLIED>
]>
В нотации CSS:
<div id=”content” xml:semanticClass=”mySemanticClass”> Mathcad is desktop software for performing and documenting engineering and scientific calculations.
.mySemanticClass {
keywords: mathcad;
contentType: content;
category: math;
}
В наш HTML файл семантический файл подключаем как и простой CSS файл.
Атрибуты и категории
В своей работе я выделил основные атрибуты, которые хотелось бы иметь уже сейчас. Вот их список:
- contentType defines content type (top, bottom, advertisement, content, links, references, bibliographic, related, image, video etc.);
- keywords defines the relevant keywords or phrases for block content; synonyms defines related terms and synonyms (e.g. «Obama» and «president»;
- category defines content category (Business_Finance, Entertainment_Culture, Environment, Health_Medical_Pharma, Hospitality_Recreation, Law_Crime, Politics, Sports, Technology_Internet, Weather, Other) [6].
- importance defines content importance and can be a float value from 0 to 1;
- ref attribute defines additional reference related with block content;
- parent is a identifier of parent block which says that it must be considered with parent block;
- author defines copyrights and can be used for citations, proverbs, programming code;
- progLang defines a programming language.
- интегрировать семантические данные можно сразу на этапе создания HTML
- это может делать и верстальщик и программист, который знаком с CSS (а таких гораздо больше чем знатоков RDF)
Но ведь будущее уже здесь!
У данного подхода один явный недостаток — необходимость заручиться поддержкой поисковых гигантов, которые будут использовать данный подход при индексации страниц. Но данную идею уже можно внедрять в CMS, блогодвижках — для этого нужно внедрить соответствующий код в движок и некоторые дополнительные поля для ввода и использовать эту информацию в собственной логике поиска и фильтрации данных.
P.S. Как кто-то хорошо подметил, за идею не бьют. Поэтому было бы интересно обсудить и такой вариант развития semantic web. Спасибо за внимание!