What are microformats?
The current definition on the home page says:
Designed for humans first and machines second, microformats are a set of simple, open data formats built upon existing and widely adopted standards.
originally written by Dan Cederholm with help from Tantek Çelik for the launch of microformats.org on June 20th, 2005.
From The Mailing List
Microformats are simple conventions for embedding semantics in HTML to enable decentralized development.
from someone on the microformats-discuss mailing list. Please link/cite if you know the origin of this.
More Specifically From The Mailing List
More precisely, microformats can be defined as:
simple conventions for embedding semantic markup for a specific problem domain in human-readable (X)HTML/XML documents, Atom/RSS feeds, and "plain" XML that normalize existing content usage patterns using brief, descriptive class names often based on existing interoperable standards to enable decentralized development of resources, tools, and services
from someone(s) on the microformats-discuss mailing list. Please link/cite if you know the origin of this.
(I'm pretty sure Ernie kicked off this particular definition, and I think helped a little, but I don't remember the specifics. -Tantek)
Microformats are simple codes that you can use to identify specific kinds of data, like people or events, in your webpages.
Microformats are the way to publish and share information on the web with higher fidelity.
For example, if a company wanted their contact information to be easily found and shared, they would publish it with hCard. Similarly if an organization is planning a series of events and wants more people to know about them and add them to their calendars, then they would publish their events listing with hCalendar. For advocacy groups, whenever they take a position on some political leader, some piece of legislation etc., if they wanted their evaluations/reviews/ratings of those people/laws to be more easily found and passed around, they would publish such opinions with hReview. For all of these, to make it easier, publishers can use tools and services that support microformats.
The key here is that microformats are simple/easy enough that the any organizations own web authors/designers can easily add them in themselves. Adding microformats is easier than publishing an RSS feed for example. You don't have to be a programmer. Anyone with decent (X)HTML+CSS authoring/writing skills can use microformats. Pretty much anyone who is literate can be taught how to author HTML+CSS, and thus microformats makes use of very widely available skill sets.
From an IRC conversation 2006-06-06 which helped "knowprose" grok microformats. Update 2006-06-07: knowprose's blog post Making Sense of Microformats: Have Data, Will Find It.
microformats are carefully designed (X)HTML class names that extend the semantics of (X)HTML and enable authors to publish higher semantic fidelity content such as people, events, reviews, etc.
From an IRC conversation 2006-07-28 with tcaspers on irc.freenode.net/#wasp.
Microformats are a way of attaching extra meaning to the information published on a web page. This extra semantic richness works alongside the information already presented, and can be used for the benefit of people and computers. This is mostly done through adding special pre-defined names to the class attribute of existing XHTML markup.
from an IRC conversation
Designed for humans first and machines second, microformats are a set of simple, open data formats built upon (X)HTML and CSS.
The current blurb leaves me wondering "But what are they?". I remember this feeling from the first time reading through the microformats wiki. The about page goes on from the opening blurb to state what microformats are, what microformats are not, and the microformats principles.
Of course, I know the answers to all of these things, now. But it took me a while to get there.
This suggestion attempts to concretize the "existing and widely adopted standards". It's a bit shorter and to my eye a bit clearer and more powerful.
From The Wiki
There are unsettling faults with the definitions and explanations given. The writing seems to be a rallying cry for proponents - clever wording, impressive noun-phrases. But it explains nothing to those unfamiliar with microformats. Imagine giving this sort of explanation off-paper: "A Microformat? What do you mean?" one asks. "Well," the other replies, as he jumps onto the nearest table, his voice excited and booming, a crowd gathering around him:
Designed for humans first and machines second, microformats are a set of simple, open data formats built upon existing and widely adopted standards. Instead of throwing away what works today, microformats intend to solve simpler problems first by adapting to current behaviors and usage patterns (e.g. XHTML, blogging). [...]
Ah, I see now. So it's something for people to use. Something simple and intuitive, like a steering wheel. Something open, easily changed by anyone, like a wiki or linux. A data format, like rtf, xml, or pdf. It obeys unspecified standards, but is so much more! It's based on something that already works. It doesn't attempt to solve anything it doesn't need to. It dynamically changes to comply with how I'm behaving at the moment... Yes. Yes! This is what I need! My living text streaming-based DOM machine/user -interface will never be the same, now that I have Microformats! Er... right?
!From Alok Jain
Microformats are conventions for marking up commonly-encountered data (such as links, contact information, and calendar events) in established languages such as HTML. By using standardized layouts, CSS classes, and attribute values, information becomes more accessible and useful to both humans and computers.
I would appreciate if someone would copy this to the mailing list, since I don't wish to sign up, but would like this to be remedied. M 23:52, 23 Aug 2006 (PDT)
microformats are evolving frameworks for how to present commonly used data items. For e.g. hCard microformat provides framework to capture a person's details First, middle, last name,company, contact info etc.
In my view this is doing two things:
- a Bringing some amount of standardization to commonly used data sets, which can lead to several benefits towards data retreival
- a Bringing an implicit meta data structure which again can be used to fetch informaiton at more granular level. SO in above example one could fetch just the company name, even thought there is not meta data around company name