Микроформаты ( мкФ ) [примечание 1] — это набор определенных классов HTML , созданных для использования в качестве последовательных и описательных метаданных об элементе , обозначающих его как представляющий определенный тип данных (например, контактную информацию , географические координаты , события, сообщения в блогах, продукты, рецепты и т. д.). [1] Они позволяют программному обеспечению надежно обрабатывать информацию, поскольку заданные классы относятся к конкретному типу данных, а не являются произвольными. Микроформаты появились примерно в 2005 году и были преимущественно разработаны для использования поисковыми системами, веб-распространением и агрегаторами, такими как RSS . [2]
Хотя содержимое веб-страниц допускало некоторую «автоматическую обработку» с момента появления Интернета, такая обработка затруднена, поскольку элементы разметки , используемые для отображения информации в сети, не описывают, что означает эта информация. [3] Микроформаты могут устранить этот разрыв, добавляя семантику и тем самым устраняя другие, более сложные методы автоматизированной обработки, такие как обработка естественного языка или очистка экрана . Использование, внедрение и обработка микроформатов позволяют индексировать, искать, сохранять или делать перекрестные ссылки на элементы данных, чтобы информацию можно было повторно использовать или комбинировать. [3]
По состоянию на 2013 год [обновлять]микроформаты позволяют кодировать и извлекать детали событий, контактную информацию, социальные отношения и аналогичную информацию.
Microformats2, сокращенно mf2, представляет собой обновленную версию микроформатов. Mf2 обеспечивает более простой способ интерпретации структурированного синтаксиса и словарей HTML , чем более ранние способы, в которых использовались RDFa и микроданные. [4]
Микроформаты появились примерно в 2005 году [примечание 2] как часть массового движения за создание узнаваемых элементов данных (таких как события, контактные данные или географические местоположения), допускающих автоматическую обработку программным обеспечением, а также возможность непосредственного чтения конечными пользователями. [3] [примечание 3] Первыми появились микроформаты на основе ссылок. К ним относятся ссылки для голосования, выражающие мнения о связанной странице, которые поисковые системы могут учитывать в мгновенных опросах. [5]
CommerceNet , некоммерческая организация, которая продвигает электронную коммерцию в Интернете, помогает спонсировать и продвигать эту технологию, а также поддерживает сообщество микроформатов различными способами. [5] CommerceNet также помогла стать соучредителем сайта сообщества Microformats.org. [5]
Ни CommerceNet, ни Microformats.org не действуют как орган по стандартизации . Сообщество микроформатов функционирует через открытую вики , список рассылки и канал интернет-релейного чата ( IRC ). [5] Большинство существующих микроформатов возникли на вики-сайте Microformats.org и связанном с ним списке рассылки [ нужна ссылка ] в результате сбора примеров поведения веб-публикаций и их последующей систематизации. Некоторые другие микроформаты (например, rel=nofollow и unAPI ) были предложены или разработаны в других местах.
Стандарты XHTML и HTML допускают встраивание и кодирование семантики в атрибуты элементов разметки . Микроформаты используют преимущества этих стандартов, указывая наличие метаданных с помощью следующих атрибутов:
class
rel
<a href=... rel=...>...</a>
)rev
Например, в тексте «Птицы, сидящие на ночлег в точке 52,48 , -1,89 » — это пара чисел, которые, исходя из их контекста, можно понимать как набор географических координат . С переносом в промежуткиgeo
(или другие элементы HTML) с конкретными именами классов (в данном случае latitude
и longitude
все являются частью спецификации географического микроформата ):
Птицы расположились на ночлеге на высоте <span class= "geo" > <span class= "latitude" > 52,48 </span> , <span class= "longitude" > -1,89 </span> </span>
Программные агенты могут точно распознавать, что представляет собой каждое значение, а затем выполнять различные задачи, такие как индексирование, определение местоположения на карте и экспорт на устройство GPS .
В этом примере контактная информация представлена следующим образом:
<ul> <li> Джо Доу </li> <li> The Sample Company </li> <li> 604-555-1234 </li> <li><a href= "http://example.com/ " > http://example.com/ </a></li> </ul>
С микроформатной разметкой hCard это будет выглядеть следующим образом:
<ul class= "vcard" > <li class= "fn" > Джо Доу </li> < li class= "org" > Пример компании </li> <li class= "tel" > 604-555-1234 </li> <li> <a class= "url" href="http://example.com/" > http://example.com/ </a></li> </ul>
Здесь форматированное имя ( fn
), организация ( org
), номер телефона ( tel
) и веб-адрес ( url
) идентифицируются с использованием конкретных имен классов, и все это заключено в class="vcard"
, что указывает на то, что другие классы образуют hCard (сокращение от «HTML vCard ») и названы не просто случайно. Также существуют другие, необязательные классы hCard. Программное обеспечение, такое как плагины браузера, теперь может извлекать информацию и передавать ее в другие приложения, например в адресную книгу.
Было разработано несколько микроформатов, обеспечивающих семантическую разметку определенных типов информации. Однако были ратифицированы только hCard и hCalendar, остальные остались в виде проектов:
Использование микроформатов в HTML-коде предоставляет дополнительные данные форматирования и семантики, которые могут использовать приложения. Например, такие приложения, как веб-сканеры, могут собирать данные об онлайн-ресурсах, а настольные приложения, такие как клиенты электронной почты или программы планирования, могут собирать подробную информацию. Использование микроформатов также может облегчить создание «мэшапов», таких как экспорт всех географических местоположений на веб-странице, например, в Карты Google для их пространственной визуализации.
Некоторые расширения браузера, такие как Оператор для Firefox и Oomph для Internet Explorer , предоставляют возможность обнаруживать микроформаты в HTML-документе. Когда используются hCard или hCalendar, такие расширения браузера позволяют экспортировать микроформаты в форматы, совместимые с утилитами управления контактами и календарем, такими как Microsoft Outlook . При работе с географическими координатами они позволяют отправлять местоположение в такие приложения, как Google Maps . Yahoo! Язык запросов можно использовать для извлечения микроформатов с веб-страниц. [13] 12 мая 2009 года Google объявил, что они будут анализировать микроформаты hCard, hReview и hProduct и использовать их для заполнения страниц результатов поиска. [14] Впоследствии в 2010 году они расширили это правило, включив в него hCalendar для событий и hRecipe для кулинарных рецептов. [15] Аналогичным образом микроформаты обрабатываются Bing [16] и Yahoo! . [17] По состоянию на конец 2010 года это тройка крупнейших поисковых систем в мире. [18]
В 2006 году Microsoft заявила, что им необходимо включить микроформаты в предстоящие проекты [19] , как и другие компании-разработчики программного обеспечения.
Алекс Фааборг резюмирует аргументы в пользу того, чтобы переложить ответственность за микроформатные пользовательские интерфейсы на веб-браузер, а не усложнять HTML: [20]
Различные комментаторы предлагали обзоры и обсуждения принципов проектирования и практических аспектов микроформатов. Микроформаты сравнивают с другими подходами, которые преследуют ту же или подобную цель. [21] По состоянию на 2007 год [обновлять]высказывалась некоторая критика в адрес одного или всех микроформатов. [21] Распространение и использование микроформатов пропагандировалось с 2007 года [обновлять]. [22] [23] Технический директор Opera Software и создатель CSS Хокон Виум Ли сказал в 2005 году: «Мы также увидим разработку множества микроформатов, и я верю, что именно так будет построена семантическая сеть ». [24] Однако в августе 2008 года Тоби Инкстер, автор службы анализа микроформатов «Swignition» (ранее «Cognition»), отметил, что с 2005 года не публиковалось никаких новых спецификаций микроформатов. [25]
Ученый-компьютерщик и предприниматель Рохит Харе заявил, что сокращение, повторное использование и переработка — это «сокращение от нескольких принципов проектирования», которые послужили мотивацией для разработки и применения микроформатов. [5] : 71–72 Эти аспекты можно резюмировать следующим образом:
Поскольку некоторые микроформаты используют атрибут title <abbr>
элемента HTML для сокрытия машиночитаемых данных (особенно даты, времени и географических координат) в «шаблоне дизайна abbr», простое текстовое содержимое элемента недоступно для программ чтения с экрана , которые расширяют сокращения. [26] В июне 2008 года BBC объявила, что откажется от использования микроформатов с использованием abbr
шаблона проектирования из-за проблем с доступностью. [27]
Микроформаты — не единственное решение для предоставления «более интеллектуальных данных» в сети; альтернативные подходы используются и находятся в стадии разработки. Например, в качестве альтернативных подходов упоминается использование разметки XML и стандартов семантической сети. [5] Некоторые противопоставляют их микроформатам в том смысле, что они не обязательно совпадают с принципами проектирования «сокращение, повторное использование и переработка», по крайней мере, не в такой же степени. [5]
Один из сторонников микроформатов Тантек Челик охарактеризовал проблему альтернативных подходов:
Мы хотим, чтобы вы выучили новый язык, и теперь вам нужно вывести эти дополнительные файлы на свой сервер. Это хлопотно. (Микроформаты) снижают входной барьер. [3]
Для некоторых приложений может быть оправдано использование других подходов. Если тип описываемых данных не соответствует существующему микроформату, RDFa может встраивать в HTML произвольные словари, такие как, например, научные данные, специфичные для предметной области, такие как зоологические или химические данные, для которых не существует микроформата. Такие стандарты, как GRDDL W3C, позволяют конвертировать микроформаты в данные, совместимые с семантической сетью. [28]
Другой сторонник микроформатов, Райан Кинг, так описывает совместимость микроформатов с другими подходами:
Микроформаты предоставляют многим людям простой способ разместить семантические данные в Интернете. Благодаря GRDDL все эти данные становятся доступными для инструментов семантической сети RDF. Микроформаты и GRDDL могут работать вместе, чтобы улучшить сеть. [28]
Микроформаты2 были предложены и обсуждены на FOOeast 2 мая 2010 г. [29] Целью Microformats2 было облегчить авторам публикацию микроформатов, а разработчикам их использование, сохраняя при этом обратную совместимость [30]
Используя microformats2, приведенный выше пример будет размечен как:
Птицы расположились на ночлеге на высоте <span class= "h-geo geo" > <span class= "p-latitude latitude" > 52,48 </span> , <span class= "p-longitude longitude" > -1,89 </span> < /пролет>
и:
<ul class= "h-card vcard" > <li class = "p-name fn" > Джо Доу </li> <li class= "p-org org" > Пример компании </li> <li class= "p-tel tel" > 604-555-1234 </li> <li> <a class= "u-url url" href= "http://example.com/" > http://example.com/ </a></li> </ul>
Нам нужны микроформаты и чтобы люди согласовали их. Он ускорит обмен данными в сети… …они нужны нам для таких вещей, как карточки контактов, события, указания…