LXF87-88:Микроформаты

Материал из Linuxformat.

Перейти к: навигация, поиск

Что за штука… Микроформаты?

Хотите ли вы сделать ваш HTML еще более информативным? Ну конечно, да! Брайан Суда сообщит вам кое-что о новых форматах данных, позволяющих обогатить ваши web-сайты.

Громкие термины Web 2.0 постепенно приелись, и сейчас я все чаще слышу о каких-то микроформатах. Не могли бы вы объяснить мне, что это такое?

Микроформаты придают дополнительный смысл простым и широко распространенным в Интернете типам данных. Например, их можно использовать, чтобы структурировать контактную информацию или календарные события. Хотя термин «микроформаты» рассматривают как один из модных «кирпичиков» Web 2.0, сама идея включения дополнительных смысловых элементов в HTML витает в воздухе с 1997 года.

Это что, новый язык программирования, который мне придется изучать? Вообще-то мне уже хватает C# и Tcl.

Нет, это не новый язык. Микроформаты понятны для человека и работают внутри HTML 4.01 или XHTML. Они базируются на имеющихся стандартах, так что все, что вам понадобится знать — это HTML плюс несколько дополнительных атрибутов элементов.

Ага, так значит микроформаты — это просто разновидность CSS?

Вовсе нет, просто микроформаты, как и CSS, используют атрибут class. На этом их сходство заканчивается. CSS — это набор правил, указывающих, в каком стиле следует представить данные. Микроформаты же предназначены для того, чтобы добавить новый смысл к уже существующему тексту. Атрибут class был придуман W3C для того, чтобы для новые идеи (такие как микроформаты) могли хранить свои метаданные в рамках HTML.

Хорошо, и как же мне приступить к добавлению микроформатов в HTML?

Вообще говоря, дополнительные значения можно добавлять к HTML-документу всего в трех местах — в тэг meta, в атрибуты class и rev/rel. Поскольку микроформаты предназначаются для видимого пользователю содержимого страницы, они, в основном, фокусируются на двух последних — атрибутах class и rev/rel.

А расскажите немножко про историю разработки микроформатов!

История развития микроформатов началась задолго до того, как было придумано это слово. В 2002 году несколько энтузиастов, Тантек Сейлик [Tantek Celik], Мэтью Малленвег [Matthew Mullenweg] и Эрик Мейер [Eric Meyer] начали работу над XHTML Friends Network (XFN). Большую часть их работы сейчас можно увидеть на сайте Global Multimedia Protocols Group (http://gmpg.org). Их целью было «соединять людей просто и последовательно». Эта идея простого постепенного наращивания семантики впоследствии и легла в основу микроформатов.

Почему так важно, чтобы микроформаты были понятны человеку?

Человеко-читаемость очень важна по нескольким причинам. С глаз долой — из сердца вон. То, что вы видите каждый день в окне браузера, скорее будет поддерживаться в актуальном состоянии, чем какой-нибудь закодированный файл на сервере, который нужно скачать и загрузить в какое-нибудь приложение перед тем, как посмотреть. Если данные хорошо видны, то они будут более свежими и полезными для всех.

Да, но все мои данные хранятся в CMS-системе, которая заботится об их актуальности. Зачем мне могут понадобиться микроформаты?

Действительно, многие люди используют XML или базы данных, чтобы регулярно обновлять свой web-сайт. Это решает проблему поддержания файлов, отличных от HTML (таких как RSS, vCards и iCalendar) в актуальном состоянии, но это никак не увеличивает информативность ваших HTML-страниц. Обыкновенный посетитель вашего сайта наверняка не имеет доступа к вашей CMS-системе, по крайней мере, если вы не предоставляете ему какой-нибудь API. А при использовании микроформатов HTML-страница сама становится таким API.

Мой сайт не делает ничего особенного. Я не понимаю, зачем бы ему мог пригодиться API.

Представьте себе, что на вашем сайте опубликованы данные о сотрудниках некой компании в виде XML-файлов, а мое приложение понимает только формат vCard. Мне придется искать специальную программу, чтобы выполнить преобразование между форматами. Понимаете? Если не размещать данные прямо в HTML, вашей CMS-системе придется поддерживать 30 разных форматов, чтобы удовлетворить всех клиентов! А при использовании микроформатов становится возможным извлекать информацию прямо из HTML и преобразовывать ее к любому виду — даже к такому, о котором вы и не думали.

Значит, существуют разные форматы «микроформатов»?

Конечно! Когда микроформаты начинали свое существование, их создатели тщательно изучили, что публикуется в сети чаще всего. В число наиболее популярных тем вошла информация о людях, местах и событиях. Поэтому среди популярных микроформатов оказались hCard, повторяющий функциональность vCard и описывающий людей, места и организации, а также hCalendar, похожий на iCalendar и описывающий различные события. Другие микроформаты перекрывают возможности резюме (формат «hResume»), обзоров (можно описывать фильмы, продукты, сайты), цитатников, синдикаторов и так далее.

RSS и Atom — это микроформаты?

Нет, это старые добрые XML-форматы. Существует специальный микроформат, hAtom, который можно использовать для того, чтобы преобразовать в RSS или Atom обычную HTML-страницу. Микроформаты позволяют вносить новую семантику внутрь простого HTML.

Хорошо, тогда посмотрите на все эти сайты, публикующие устаревшие варианты RSS — вы хотите сказать, что если они разметят свои HTML-страницы при помощи микроформатов, то я смогу конвертировать их в Atom 1.0?

Точно, вы поняли идею! Представьте, что владелец сайта заключил разовый контракт с разработчиками, чтобы они создали сайт и сделали для него RSS-ленту. Пусть в тот момент последней версией Atom была 0.3, и поэтому разработчики использовали именно ее. Сейчас Atom уже дорос до 1.0, но все контракты давно закончились, а ресурсов на обновление системы синдикации в бюджете нет, и поэтому сайт застыл на уровне 0.3.

Микроформаты могут помочь предотвратить такую проблему. Дополнительная разметка, которой они снабжают HTML, позволяет получить информацию в любом формате, не ограничиваясь имеющимся Atom 0.3

Ага, мы все это время говорим о добавлении новой семантики. Я вот тут все жду возможности выложить в Интернет свою коллекцию марок, как бы мне это сделать?

Одной из ключевых особенностей микроформатов является то, что они не обладают бесконечной гибкостью. Решение всех мировых проблем — не их предназначение. Они созданы для решения конкретных задач, существующих в современном Интернете, и структурирования имеющейся информации. В идеале микроформаты должны позволять достичь максимальных результатов с минимальными затратами. Они основываются на том, что на сайтах уже опубликованы гигабайты и гигабайты данных, и нет нужды изобретать велосипед — достаточно немножко структурировать то, что уже есть, чтобы с ним было удобнее взаимодействовать.

А что, кто-то использует микроформаты в реальности?

О, многие сайты делают это. При помощи минимальной корректировки HTML-шаблонов многие сайты могут получить тысячи, а то и миллионы элементов микроформата всего за несколько минут. Такие сайты, как Yahoo Local, Yahoo Tech, Flickr, Meet-up, Upcoming, Eventful, Edgeio, Technorati, Ice Rocket, .Mac mail on Apple используют различные микроформаты.

Это все звучит просто замечательно, но какая компания владеет технологией микроформатов? Google их еще не купил?

Микроформаты не принадлежат никому. Прежде чем новый микроформат вступит в силу, он должен быть одобрен большой группой добровольцев и всемирным сообществом. Они же занимаются поддержкой имеющихся стандартов и документированием (все разработки предоставляются под очень либеральными лицензиями). Поскольку микроформаты не принадлежат ни компании, ни частному лицу, их использование нельзя ограничить решением Совета директоров. Это открытое сообщество, разрабатывающее открытые форматы данных, которые делают Интернет еще более приятным место для общения.

Да, я должен признать, это звучит очень вдохновляюще! Где я могу почитать про микроформаты?

Официальный сайт расположен по адресу http://microformats.org. Там вы найдете wiki, список рассылки, блог, ссылки на IRC-каналы и так далее. Кроме него, существует несколько отдельных сайтов, посвященных микроформатам — http://microformatique.com, http://www.whymicroformats.com. Вы также можете посмотреть списки ресурсов про микроформаты в различных каталогах — http://del.icio.us/tag/microformats, http://technorati.com/tags/microformats и http://ma.gnolia.com/tags/microformats. Даже новые Live Clipboard (http://snipurl.com/10so0) и Live Writer (http://windowslivewriter.spaces.live.com) от Microsoft используют микроформаты.

Личные инструменты
  • Купить электронную версию
  • Подписаться на бумажную версию