Microformat

From Wikipedia, the free encyclopedia

Jump to: navigation, search

A microformat is a web-based[1] approach to semantic markup that seeks to re-use existing XHTML and HTML tags to convey metadata[2] and other attributes. This approach allows information intended for end-users (such as contact information, geographic coordinates, calendar events, and the like) to also be automatically processed by software.

Although the content of web pages is technically already capable of "automated processing", and has been since the inception of the web, such processing is difficult because the traditional markup tags used to display information on the web do not describe what the information means.[3] Microformats are intended to bridge this gap by attaching semantics, and thereby obviate other, more complicated methods of automated processing, such as natural language processing or screen scraping. The use, adoption and processing of microformats enables data items to be indexed, searched for, saved or cross-referenced, so that information can be reused or combined.[3]

Current microformats allow the encoding and extraction of events, contact information, social relationships and so on. More are being developed. Version 3 of the Firefox browser,[4] as well as version 8 of Internet Explorer[5] are expected to include native support for microformats.

Contents

[edit] Background

Microformats emerged as part of a grassroots movement to make recognizable data items (such as events, contact details or geographical locations) capable of automated processing by software, as well as directly readable by end-users.[3][6] Link-based microformats emerged first. These include vote links that express opinions of the linked page, which can be tallied into instant polls by search engines.[7]

As the microformats community grew, CommerceNet, a nonprofit organization that promotes electronic commerce on the Internet, helped sponsor and promote the technology and support the microformats community in various ways.[7] CommerceNet also helped co-found the Microformats.org community site.[7]

Neither CommerceNet nor Microformats.org is a standards body. The microformats community is an open wiki, mailing list, and Internet relay chat (IRC) channel.[7] Most of the existing microformats were created at the Microformats.org wiki and associated mailing list, by a process of gathering examples of web publishing behaviour, then codifying it. Some other microformats (such as rel=nofollow and unAPI) have been proposed, or developed, elsewhere.

[edit] Technical overview

XHTML and HTML standards allow for semantics to be embedded and encoded within the attributes of markup tags. Microformats take advantage of these standards by indicating the presence of metadata using the following attributes:

  • class
  • rel
  • rev (in one case, otherwise deprecated in microformats[8])

For example, in the text "The birds roosted at 52.48,-1.89" is a pair of numbers which may be understood, from their context, to be a set of geographic coordinates. By wrapping them in spans (or other HTML elements) with specific class names (in this case geo, latitude and longitude, all part of the geo microformat specification):

The birds roosted at
   <span class="geo">
     <span class="latitude">52.48</span>,
     <span class="longitude">-1.89</span>
   </span>

Machines can be told exactly what each value represents and can then perform a variety of tasks such as indexing it, looking it up on a map and exporting it to a GPS device.

[edit] Example

In this example, the contact information is presented as follows:

 <div>
   <div>Joe Doe</div>
   <div>The Example Company</div>
   <div>604-555-1234</div>
   <a href="http://example.com/">http://example.com/</a>
 </div>

With hCard microformat markup, that becomes:

 <div class="vcard">
   <div class="fn">Joe Doe</div>
   <div class="org">The Example Company</div>
   <div class="tel">604-555-1234</div>
   <a class="url" href="http://example.com/">http://example.com/</a>
 </div>

Here, the formatted name (fn), organisation (org), telephone number (tel) and web address (url) have been identified using specific class names and the whole thing is wrapped in class="vcard", which indicates that the other classes form an hCard (short for "HTML vCard)") and are not merely coincidentally named. Other, optional, hCard classes also exist. It is now possible for software, such as browser plug-ins, to extract the information, and transfer it to other applications, such as an address book.

In-context examples

For annotated examples of microformats on live pages, see HCard#Live example and Geo (microformat)#Three_classes.

[edit] Specific microformats

Several microformats have been developed to enable semantic markup of particular types of information.

  • hAtom - for marking up Atom feeds from within standard HTML
  • hCalendar - for events
  • hCard - for contact information; includes:

[edit] Microformats under development

Among the many proposed microformats[13], the following are undergoing active development:

  • hAudio - for audio files and references to released recordings
  • hRecipe [14]
  • citation - for citing references
  • currency - for amounts of money
  • figure - for associating captions with images [15]
  • geo extensions - for places on Mars, the Moon, and other such bodies; for altitude; and for collections of waypoints marking routes or boundaries
  • species - For the names of living things.
  • measure - For physical quantities, structured data-values.[16]

[edit] Uses of microformats

Using microformats within HTML code provides additional formatting and semantic data that can be used by applications. These could be applications that collect data about on-line resources, such as web crawlers, or desktop applications such as e-mail clients or scheduling software. They can also be used to facilitate "mash ups" such as exporting all of the geographical locations on a web page into Google Maps, to visualize them spatially.

Several browser extensions, such as Operator for Firefox and Oomph for Internet Explorer, provide the ability to detect microformats within an HTML document and export them into formats compatible with contact management and calendar utilities, such as Microsoft Outlook. Yahoo! Query Language can be used to extract microformats from web pages.[17]

Microsoft expressed a desire to incorporate Microformats into upcoming projects;[18] as have other software companies.

In Wikipedia - and more generally in MediaWiki - microformats are used as part of templates like {{coord}}.

Alex Faaborg summarizes the arguments for putting the responsibility for microformat user interfaces in the web browser rather than making more complicated HTML:[19]

  • Only the web browser knows what applications are accessible to the user and what the user's preferences are
  • It lowers the barrier to entry for web site developers if they only need to do the markup and not handle "appearance" or "action" issues
  • Retains backwards compatibility with web browsers that don't support microformats
  • The web browser presents a single point of entry from the web to the user's computer, which simplifies security issues

[edit] Evaluation of microformats

Various commentators have offered review and discussion on the design principles and practical aspects of microformats. Additionally, microformats have been compared to other approaches that seek to serve the same or similar purpose.[20] From time to time, there is criticism of a single, or all, microformats.[20] Documented efforts to advocate both the spread and use of microformats are known to exist as well.[21][22] Opera Software CTO and CSS creator Håkon Wium Lie said in 2005 "We will also see a bunch of microformats being developed, and that’s how the semantic web will be built, I believe."[23] However, as of August 2008, Toby Inkster, author of the "Swignition" (formerly "Cognition") microformat parsing service pointed out that no new microformat specifications had been published for over three years.[24]

[edit] Design principles

Computer scientist and entrepreneur, Rohit Khare stated that reduce, reuse, and recycle is "shorthand for several design principles" that motivated the development and practices behind microformats.[7]:71-72 These aspects can be summarized as follows:

  • Reduce: favor the simplest solutions and focus attention on specific problems;
  • Reuse: work from experience and favor examples of current practice;
  • Recycle: encourage modularity and the ability to embed, valid XHTML can be reused in blog posts, RSS feeds, and anywhere else you can access the web.[7]

[edit] Accessibility

Because some microformats make use of title attribute of HTML's abbr element to conceal machine-readable data (particularly date-times and geographical coordinates) in the "abbr design pattern", the plain text content of the element is inaccessible to those screen readers that expand abbreviations.[25] In June 2008, the BBC announced that it would be dropping use of microformats using the abbr design pattern because of accessibility concerns.[26]

[edit] Alternative approaches

Microformats are not the only solution for providing "more intelligent data" on the web. Alternative approaches exist and are under development as well. For example, the use of XML markup and standards of the Semantic Web are cited as alternative approaches.[7] Some contrast these with microformats in that they do not necessarily coincide with the design principles of "reduce, reuse, and recycle", at least not to the same extent.[7]

One advocate of microformats, Tantek Çelik, characterized a problem with alternative approaches:

Here's a new language we want you to learn, and now you need to output these additional files on your server. It's a hassle. (Microformats) lower the barrier to entry.[3]

For some applications the use of other approaches may be valid. If one wishes to use microformat-style embedding but the type of data one wishes to embed does not map to an existing microformat, one can use RDFa to embed arbitrary vocabularies into HTML. An example of this would be embedding domain-specific scientific data on the Web like zoological or chemical data, where no microformat for such data exists. Furthermore, standards such as W3C's GRDDL allow microformats to be converted into data compatible with the Semantic Web.[27]

Another advocate of microformats, Ryan King, put the compatibility of microformats with other approaches this way:

Microformats provide an easy way for many people to contribute semantic data to the web. With GRDDL all of that data is made available for RDF Semantic Web tools. Microformats and GRDDL can work together to build a better web.[27]

[edit] See also

[edit] Notes

  1. ^ Microformats may be used in web pages and also any other context that supports HTML and XHTML. This includes RSS.
  2. ^ "Class Names Across All Microformats". Microformats.org. 2007-09-23. http://microformats.org/wiki/existing-classes. Retrieved on 2008-09-06. 
  3. ^ a b c d "What’s the Next Big Thing on the Web? It May Be a Small, Simple Thing -- Microformats". Knowledge@Wharton. Wharton School of the University of Pennsylvania. 2005-07-27. http://knowledge.wharton.upenn.edu/index.cfm?fa=printArticle&ID=1247. 
  4. ^ "Microformats". Mozilla Wiki. Mozilla Foundation. 2007-05-24. http://wiki.mozilla.org/Microformats. Retrieved on 2007-06-03. 
  5. ^ Reimer, Jeremy (2007-05-02). "Microsoft drops hints about Internet Explorer 8". Ars Technica. http://arstechnica.com/news.ars/post/20070502-microsoft-drops-hints-about-internet-explorer-8.html. Retrieved on 2007-05-02. 
  6. ^ In this context, the definition of "End-user" includes a person reading a web page on a computer screen or mobile device, or an assistive technology software program such as a screen reader.
  7. ^ a b c d e f g h Khare, Rohit (January/February 2006). "Microformats: The Next (Small) Thing on the Semantic Web?". IEEE Internet Computing (IEEE Computer Society) 10 (1): 68–75. doi:10.1109/MIC.2006.13. http://csdl2.computer.org/persagen/DLAbsToc.jsp?resourcePath=/dl/mags/ic/&toc=comp/mags/ic/2006/01/w1toc.xml&DOI=10.1109/MIC.2006.13. Retrieved on 2008-09-06. 
  8. ^ ""rel" attribute frequently asked questions". Microformats.org. 2008-08-06. http://microformats.org/wiki/rel-faq. Retrieved on 2008-09-06. 
  9. ^ http://microformats.org/wiki/rel-directory
  10. ^ http://microformats.org/wiki/rel-enclosure
  11. ^ http://microformats.org/wiki/rel-license
  12. ^ http://microformats.org/wiki/rel-tag
  13. ^ "Exploratory Discussions". Microformats.org. 2008-08-15. http://microformats.org/wiki/exploratory-discussions. Retrieved on 2008-09-06. 
  14. ^ http://microformats.org/wiki/recipe-brainstorming#Format-In-Progress
  15. ^ http://microformats.org/wiki/figure
  16. ^ http://microformats.org/wiki/measure
  17. ^ Heilman, Chris (2009-01-19). "Retrieving and displaying data from Wikipedia with YQL". Yahoo Developer Network. Yahoo. http://developer.yahoo.net/blog/archives/2009/01/wikipedia_w_yql.html. Retrieved on 2009-01-19. 
  18. ^ "Bill Gates at Mix06 - "We need microformats"". 2006-03-20. http://microformats.org/blog/2006/03/20/bill-gates-at-mix06-we-need-microformats. Retrieved on 2008-09-06. "We need microformats and to get people to agree on them. It is going to bootstrap exchanging data on the Web… …we need them for things like contact cards, events, directions…" 
  19. ^ http://blog.mozilla.com/faaborg/2007/02/04/microformats-part-4-the-user-interface-of-microformat-detection/
  20. ^ a b "Criticism". Microformats.org. 2007-03-24. http://microformats.org/wiki?title=criticism&oldid=18478. Retrieved on 2007-08-15. 
  21. ^ "Advocacy". Microformats.org. 2008-08-27. http://microformats.org/wiki/advocacy. Retrieved on 2007-08-15. 
  22. ^ "Spread Microformats". Microformats.org. 2008-08-29. http://microformats.org/wiki/spread-microformats. Retrieved on 2007-08-15.  This includes community resources for marketing microformats such as buttons, banners, wallpaper / desktop screens, logo graphics, etc.
  23. ^ Holzschlag, Molly E. (2005-03-31). "Interview with Håkon Wium Lie". Molly.com. http://www.molly.com/2005/03/31/interview-with-hkon-wium-lie/. Retrieved on 2007-11-18. 
  24. ^ Inkster, Toby A. (2008-04-22). "More than three years". Microformats.org. http://microformats.org/discuss/mail/microformats-discuss/2008-August/012402.html. Retrieved on 2008-08-24. 
  25. ^ Craig, James (2007-04-27). "hAccessibility". Web Standards Project. http://www.webstandards.org/2007/04/27/haccessibility/. Retrieved on 2007-08-16. 
  26. ^ Smethurst, Michael (2008-06-23). "Removing Microformats from bbc.co.uk/programmes". BBC. http://www.bbc.co.uk/blogs/radiolabs/2008/06/removing_microformats_from_bbc.shtml. Retrieved on 2008-08-24. 
  27. ^ a b "W3C GRDDL Recommendation Bridges HTML/Microformats and the Semantic Web". XML Coverpages. OASIS. 2007-09-13. http://xml.coverpages.org/ni2007-09-13-a.html. Retrieved on 2007-11-23. 

[edit] References

[edit] Further reading

[edit] External links

Personal tools