microformats: Difference between revisions

From Microformats Wiki
Jump to navigation Jump to search
m (explicitly noted author/editor. created suggested additions section, moved recent suggestion there. fixed wiki link.)
m (Replace <entry-title> with {{DISPLAYTITLE:}})
 
(16 intermediate revisions by 6 users not shown)
Line 1: Line 1:
<h1> microformats </h1>
{{DISPLAYTITLE: microformats }}
== What are microformats? ==
 
microformats are the simplest way to openly publish [[hCard|contacts]], [[hCalendar|events]], [[hReview|reviews]], [[hRecipe|recipes]], and other structured information on the web.
 
microformats.org maintains the official [[existing-rel-values|registry of HTML rel values]].
 
Check out '''[[microformats2]]''' for current work.


== What are microformats? ==
== the microformats principles ==
{{main|principles}}
* solve a specific problem
* [[start-simple|start simple]]
* [[humans-first|humans first]], machines second
* [[dry]]
* [[reuse]]
* modularity / embeddability
 
== quotes ==
See [[testimonials]] and [[principles#quotes|quotes relating to the principles]].
 
== current microformats ==
See the [[Main_Page#Specifications|main page]] for a list of current microformats specifications, drafts, and discussions.


Author/Editor: '''Tantek Çelik'''
== How microformats started ==
What are microformats started with the following in 2005:


=== microformats are ===
=== microformats are ===
* a way of thinking about data
* a way of thinking about data
* design principles for formats
* design principles for formats
Line 17: Line 37:


=== microformats are not ===
=== microformats are not ===
* a new language
* a new language
* infinitely extensible and open-ended
* infinitely extensible and open-ended
Line 27: Line 46:
* any of the above
* any of the above


== the microformats principles ==
=== more thoughts on how microformats are different ===
* solve a specific problem
* start as simple as possible
** solve simpler problems first
** make evolutionary improvements
* design for humans first, machines second
** be presentable ''and'' parsable
** ''visible data'' is much better for humans than ''invisible metadata''
** adapt to current behaviors and usage patterns, e.g. (X)HTML, blogging
** [http://tantek.com/log/2003/0813t1158.html#handauthoring ease of authoring is important]
* reuse building blocks from widely adopted standards
** [http://tantek.com/presentations/20040928sdforumws/semantic-xhtml.html semantic], [http://tantek.com/presentations/2005/03/elementsofxhtml meaningful (X)HTML]. See [[SemanticXHTMLDesignPrinciples]] for more details.
** existing microformats
*** as a whole, e.g. use [[hcard|hCard]] for representing people
*** in part, reusing particular semantic class names, following [[naming-principles|microformats naming principles]]
** well established schemas from interoperable RFCs
* modularity / embeddability
** design to be reused and embedded inside existing formats and microformats
* enable and encourage decentralized and distributed development, content, services
** explicitly encourage the original "spirit of the Web"
 
* Related Principles we re-use from other design paradigms
** [http://en.wikipedia.org/wiki/Don%C2%B4t_repeat_yourself DRY] (Don't Repeat Yourself)
** [http://en.wikipedia.org/wiki/Principle_of_least_surprise Least Surprise]
** [http://en.wikipedia.org/wiki/Pareto_principle Pareto Principle] (80/20)
** Data Integrity.  One of the common objectives which many of the principles help achieve is data integrity.
*** Visible data = more accurate data. By designing for humans first and making the data presentable (thus viewed and ''verified'' by humans), the data is inevitably more accurate not only to begin with (as errors are easily/quickly noticed by those viewing the pages/sites), but over time as well, in that changes are noticed, and if data becomes out-of-date or obsolete, that's more liklely to be noticed as well.  This is in direct contrast to "side files" and invisible data like that contained in <code>&lt;meta&gt;</code> tags.
*** Not repeating yourself (following DRY) - means there are fewer chances for inconsistency
*** Multi-language integrity.  Perhaps not a principle, but many of those involved with microformats have found that consistently [[using-utf-8|using UTF-8]] helps ensure that the human text content itself is not corrupted, especially when using non-ASCII7 characters.
 
== current microformats ==
 
See the [[Main_Page|main page]] for a list of current microformats specifications, drafts, and discussions.
 
== more thoughts on how microformats are different ==
 
There are plenty of existing formats that are ''nearly'' totally useless/ignored.
There are plenty of existing formats that are ''nearly'' totally useless/ignored.


Line 77: Line 61:
* We're a diverse mix of corporate, independent, hobbyist, enthusiast.
* We're a diverse mix of corporate, independent, hobbyist, enthusiast.
* We don't over-design.  We under-design, deliberately, and then only add things when they are absolutely necessary.
* We don't over-design.  We under-design, deliberately, and then only add things when they are absolutely necessary.
* We adopt very liberal copyright/licensing (CC,GMPG,IETF,W3C) and patent positions (RF,IETF,W3C).
* We adopt very liberal copyright/licensing (<span class="vevent"><span class="summary">public domain - [http://microformats.org/blog/2007/12/29/making-open-standards-as-open-as-possible/ required as of <span class="dtstart">2007-12-29</span> for microformats wiki contributions]</span></span>,[[creative-commons|CC]],[[gmpg|GMPG]],[[ietf|IETF]],[[w3c|W3C]]) and patent positions (<abbr title="royalty free">RF</abbr>,[[ietf|IETF]],[[w3c|W3C]]).
* We ruthlessly self-criticize based on our [http://microformats.org/wiki/microformats#the_microformats_principles principles] in order to keep to the above.
* We ruthlessly self-criticize based on our [[principles]] in order to keep to the above.


Some ask what the purpose of the (intended) standards is.
Some ask what the purpose of the (intended) standards is.


Why do you need purpose? More often than not, premature focus on purpose tends to distort data formats towards a particular application which may not be all that relevant. Hence rather than focus on a-priori purpose, we focus on modeling existing behavior, with the knowledge that additional structure will yield plenty of interesting uses, most of which we will not be able to a-priori predict.
Why do you need purpose? More often than not, premature focus on purpose tends to distort data formats towards a particular application which may not be all that relevant. Hence rather than focus on a-priori purpose, we focus on modelling existing behavior, with the knowledge that additional structure will yield plenty of interesting uses, most of which we will not be able to a-priori predict.


This is obviously a very different approach than traditional data format efforts.
This is obviously a very different approach than traditional data format efforts.


== suggested additions ==
Positive with iteration rather than negative with inaction.


* [[be-strict|Be strict in what you send but generous in what you receive]] - Andy Mabbett (20070326)
Microformats tend to take a positive attitude of developing and using the best techniques we can come up with (and iterating upon them), rather than banning or blocking techniques for reasons of fear or cost and thus resulting in inaction. To scrap something, there must be a better alternative provided which addresses the same problem(s) at least as well, with lower costs.

Latest revision as of 16:29, 18 July 2020

What are microformats?

microformats are the simplest way to openly publish contacts, events, reviews, recipes, and other structured information on the web.

microformats.org maintains the official registry of HTML rel values.

Check out microformats2 for current work.

the microformats principles

Main article: principles

quotes

See testimonials and quotes relating to the principles.

current microformats

See the main page for a list of current microformats specifications, drafts, and discussions.

How microformats started

What are microformats started with the following in 2005:

microformats are

microformats are not

  • a new language
  • infinitely extensible and open-ended
  • an attempt to get everyone to change their behavior and rewrite their tools
  • a whole new approach that throws away what already works today
  • a panacea for all taxonomies, ontologies, and other such abstractions
  • defining the whole world, or even just boiling the ocean
  • controlled by any individual or organization
  • any of the above

more thoughts on how microformats are different

There are plenty of existing formats that are nearly totally useless/ignored.

They're not totally useless though. They're useful in that they illustrate what at least someone thought might be useful, which unfortunately is typically a lone-inventor working a-priori without any domain expertise.

Or there is the other extreme. Lots of corporate inventors working with plenty of experience, over-designing a format for what might be needed some day. In particularly bad cases, the corporate vendors collude to prevent openness and/or adoptability by the open source community. Media standards often suffer from this kind of deliberate "strategic" positioning.

We seek to combat all of those problems with the microformat approach.

  • We're not lone-inventors; we're a community.
  • We don't work a-priori ("from reason alone"); we require documentation of existing examples, previous attempts at formats. See process.
  • When lacking domain expertise, we seek out the domain experts to provide it, and we immerse ourselves in examples and prior art from the domain (see previous point).
  • We do our work in the open with open discussion forums.
  • We're a diverse mix of corporate, independent, hobbyist, enthusiast.
  • We don't over-design. We under-design, deliberately, and then only add things when they are absolutely necessary.
  • We adopt very liberal copyright/licensing (public domain - required as of 2007-12-29 for microformats wiki contributions,CC,GMPG,IETF,W3C) and patent positions (RF,IETF,W3C).
  • We ruthlessly self-criticize based on our principles in order to keep to the above.

Some ask what the purpose of the (intended) standards is.

Why do you need purpose? More often than not, premature focus on purpose tends to distort data formats towards a particular application which may not be all that relevant. Hence rather than focus on a-priori purpose, we focus on modelling existing behavior, with the knowledge that additional structure will yield plenty of interesting uses, most of which we will not be able to a-priori predict.

This is obviously a very different approach than traditional data format efforts.

Positive with iteration rather than negative with inaction.

Microformats tend to take a positive attitude of developing and using the best techniques we can come up with (and iterating upon them), rather than banning or blocking techniques for reasons of fear or cost and thus resulting in inaction. To scrap something, there must be a better alternative provided which addresses the same problem(s) at least as well, with lower costs.