<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>http://microformats.org/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Ragdoll</id>
	<title>Microformats Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="http://microformats.org/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Ragdoll"/>
	<link rel="alternate" type="text/html" href="http://microformats.org/wiki/Special:Contributions/Ragdoll"/>
	<updated>2026-04-27T03:14:20Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.38.4</generator>
	<entry>
		<id>http://microformats.org/wiki/index.php?title=firefox-extensions&amp;diff=28304</id>
		<title>firefox-extensions</title>
		<link rel="alternate" type="text/html" href="http://microformats.org/wiki/index.php?title=firefox-extensions&amp;diff=28304"/>
		<updated>2008-08-13T14:16:36Z</updated>

		<summary type="html">&lt;p&gt;Ragdoll: /* Generic */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;h1&amp;gt;Firefox Extensions&amp;lt;/h1&amp;gt;&lt;br /&gt;
{{TOC-right}}&lt;br /&gt;
&lt;br /&gt;
A list of extensions for the [http://www.mozilla.com/ FireFox web browser], which detect or extract microformats. &lt;br /&gt;
&lt;br /&gt;
See [[user-interface]] for ways in which extensions could or do handle microformats.&lt;br /&gt;
&lt;br /&gt;
==Current==&lt;br /&gt;
&lt;br /&gt;
===BlueOrganiser===&lt;br /&gt;
* [http://www.adaptiveblue.com/ BlueOrganiser] BlueOrganizer Indigo Edition, released in Feb 2008 features support for hCard, hCal, adr, rel and locality. hReview is not supported yet. The support is implemented via contextual tips and menus, helping the users to lookup maps, movies, restaurants, people's profiles and more. [http://www.adaptiveblue.com/releases.html BlueOrganizer Features Page] contains description and interactive examples.&lt;br /&gt;
&lt;br /&gt;
===Operator===&lt;br /&gt;
&lt;br /&gt;
[https://addons.mozilla.org/firefox/4106/ Operator] has rapidly found favour with microformat developers (not least for its functions as a validator) and end-users. It provides an architecture for microformat parsing which is likely to be incorporated into the core of future versions of Firefox.&lt;br /&gt;
&lt;br /&gt;
Latest release: 0.9&lt;br /&gt;
&lt;br /&gt;
See also:&lt;br /&gt;
*[http://labs.mozilla.com/2006/12/introducing-operator Mozilla Labs' Operator announcement]&lt;br /&gt;
*[http://www.kaply.com/weblog/ Operator author's blog]&lt;br /&gt;
*[http://www.kaply.com/weblog/operator-user-scripts/ Customise Operator with 'user scripts'] (needed to add hReview support)&lt;br /&gt;
&lt;br /&gt;
===Tails===&lt;br /&gt;
*[http://blog.codeeg.com/tails-firefox-extension-03/ Tails]&lt;br /&gt;
**[http://code.google.com/p/tails-firefox-extension/ Tails on Google Code]&lt;br /&gt;
&lt;br /&gt;
===Tails Export===&lt;br /&gt;
*[https://addons.mozilla.org/firefox/2240/ Tails Export]&lt;br /&gt;
&lt;br /&gt;
===Web Cards===&lt;br /&gt;
*[http://www.whymicroformats.com/webcards/index.html Web Cards]&lt;br /&gt;
&lt;br /&gt;
==Generic==&lt;br /&gt;
While these extensions include no microformat-specific tools, the can be of use to microformat publishers.&lt;br /&gt;
&lt;br /&gt;
=== Glossary of Terms ===&lt;br /&gt;
Gez Lemon's [http://juicystudio.com/article/glossary-terms-extension.php Glossary of Terms] displays values from &amp;lt;code&amp;gt;ABBR&amp;lt;/code&amp;gt; (and &amp;lt;code&amp;gt;ACRONYM&amp;lt;/code&amp;gt;) elements, by listing them at the foot of the page. This extension does not work with Firefox 3, as it does not provide secure updates.&lt;br /&gt;
&lt;br /&gt;
===Web Developer===&lt;br /&gt;
The [http://chrispederick.com/work/webdeveloper/ Web Developer extension] has several features which greatly aid microformat publishers, not least the ability to display &amp;lt;code&amp;gt;class&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;ID&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;object&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;abbr&amp;lt;/code&amp;gt; values in-line.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===LinkAlert===&lt;br /&gt;
*[http://conlan89.googlepages.com/linkalert LinkAlert]&lt;br /&gt;
**Will consider adding rel in a future update.&lt;br /&gt;
&lt;br /&gt;
===ReminderFox===&lt;br /&gt;
*[http://reminderfox.mozdev.org/ ReminderFox] &lt;br /&gt;
**Have hCalendar support on the [http://reminderfox.mozdev.org/userrequests.html ReminderFox &amp;quot;to do&amp;quot; list].&lt;br /&gt;
&lt;br /&gt;
===Firefox developments===&lt;br /&gt;
&lt;br /&gt;
Mozilla are &amp;quot;brainstorming&amp;quot; developments for Firefox 3.0 and beyond, and have [http://wiki.mozilla.org/Firefox/Feature_Brainstorming:Microformat_Handling a page on microformat handling]. See also [http://wiki.mozilla.org/Firefox3/Firefox_Requirements Firefox 3 Requirements].&lt;br /&gt;
&lt;br /&gt;
== Netscape Navigator ==&lt;br /&gt;
* Version 9.0+ supports [[Firefox extensions]], e.g.&lt;br /&gt;
** [http://notizblog.org/2007/10/21/operator-unter-navigator-90/ Operator unter Navigator 9.0]&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
*[[bookmarklets]]&lt;br /&gt;
*[[greasemonkey]] - a powerful tool for customizing Firefox.&lt;br /&gt;
*[[operator-phone-tests]] - a page listing tests of Operator's &amp;quot;Send to Bluetooth device&amp;quot; options with results&lt;br /&gt;
*[https://addons.mozilla.org/search.php?app=firefox&amp;amp;q=RSS RSS extensions] - for viewing hAtom feeds via third-party converters&lt;/div&gt;</summary>
		<author><name>Ragdoll</name></author>
	</entry>
	<entry>
		<id>http://microformats.org/wiki/index.php?title=User:Ragdoll&amp;diff=15366</id>
		<title>User:Ragdoll</title>
		<link rel="alternate" type="text/html" href="http://microformats.org/wiki/index.php?title=User:Ragdoll&amp;diff=15366"/>
		<updated>2006-06-14T20:33:03Z</updated>

		<summary type="html">&lt;p&gt;Ragdoll: added pertinent links&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Visit my blog [http://www.deadringerart.com Dead Ringer Art]&amp;amp;mdash;The Art &amp;amp;amp; Design of the Brothers McDowell.&lt;br /&gt;
&lt;br /&gt;
Hire me via [http://www.stophittingyourself.com Ugly Girl at stophittingyourself.com]. I do the web stuff.&lt;/div&gt;</summary>
		<author><name>Ragdoll</name></author>
	</entry>
	<entry>
		<id>http://microformats.org/wiki/index.php?title=hcalendar-issues&amp;diff=5815</id>
		<title>hcalendar-issues</title>
		<link rel="alternate" type="text/html" href="http://microformats.org/wiki/index.php?title=hcalendar-issues&amp;diff=5815"/>
		<updated>2006-03-07T18:05:14Z</updated>

		<summary type="html">&lt;p&gt;Ragdoll: Please add a Property List&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= hCalendar Issues =&lt;br /&gt;
&lt;br /&gt;
These are externally raised issues about [[hcalendar|hCalendar]] with broadly varying degrees of merit.  Thus some issues are REJECTED for a number of obvious reasons (but still documented here in case they are re-raised), and others contain longer discussions.  Some issues may be ACCEPTED and perhaps cause changes or improved explanations in the spec.  Submitted issues may (and probably will) be edited and rewritten for better terseness, clarity, calmness, rationality, and as neutral a point of view as possible. Write your issues well. — [http://tantek.com/log/ Tantek]&lt;br /&gt;
&lt;br /&gt;
See related [[hcard-issues]].&lt;br /&gt;
&lt;br /&gt;
== Issues ==&lt;br /&gt;
&lt;br /&gt;
Please use this format:&lt;br /&gt;
* YYYY-MM-DD raised by AUTHORNAME&lt;br /&gt;
*# ''Issue 1: Here is the first issue I have.''&lt;br /&gt;
*# ''Issue 2: Here is the second issue I have.''&lt;br /&gt;
&lt;br /&gt;
And add new issues to the top of the list:&lt;br /&gt;
&lt;br /&gt;
* 2006-03-07 raised by [[User:Ragdoll|Justin McDowell]]&lt;br /&gt;
*# ''Issue 1: I'd love to see a Property List, similar to what is seen in the hCard spec, that lists all the available properties and sub-properties in a nice, compact list. This saves a lot of time and is really useful for quickly and easily getting aquainted with the possibilities of vCalendar.''&lt;br /&gt;
&lt;br /&gt;
* 2006-02-17 raised by [[User:Mark Mansour|Mark Mansour]] - notes are summarized [[hcalendar-irc-meetup-20060225|here]]&lt;br /&gt;
*# Should vcalendar be a class?  Section 4.4 of RFC2445 says: &amp;quot;The Calendaring and Scheduling Core Object is a collection of calendaring and scheduling information. Typically, this information will consist of a single iCalendar object. However, multiple iCalendar objects can be sequentially grouped together.&amp;quot;  Also the vcalendar class would allow properties on the calendar itself such as METHOD and CALSCALE (I don't think VERSION and PRODID are particularly relevant).&lt;br /&gt;
*#* ACCEPTED SPECUPDATE/FAQ.  Is this a case of fixing something that isn't broken?  Note that &amp;quot;iCalendar object&amp;quot; != &amp;quot;vcalendar&amp;quot;.  This is a bit confusing so read RFC 2445 carefully in that regard.  In addition, the [[hcalendar|hCalendar]] spec should say *precisely* how to generate VCALENDAR properties in their absence.&lt;br /&gt;
*# How are axis and headers going to be handled?&lt;br /&gt;
*#* ACCEPTED.  This is documented in [[hcalendar-brainstorming]] but MUST be moved to [[hcalendar|hCalendar]] proper as the editors and implementers have all agreed on it (months ago). Add this as a [[to-do]] for Tantek.&lt;br /&gt;
*# There has been talk that table axis and headers should be used to capture calendar information in a more compact format, but no example are available.  Does anyone have examples or should we try to invent some?&lt;br /&gt;
*#* REJECTED. Please RTFM.  Searching the [[hcalendar|hCalendar]] spec for *either* &amp;quot;axis&amp;quot; or &amp;quot;headers&amp;quot; would have found the following example in the wild:  [http://we05.com/ Web Essentials 05] has marked up their [http://we05.com/program.cfm program schedule table with hCalendar], using the 'axis' and 'headers' attributes.&lt;br /&gt;
*# Should embeded components be allowed?  [[RyanKing]] has already noted that vJournal overlaps blog-posts (although not yet accepted), but should the components to-do, free/busy, timezone, alarms be allowed?  They all considered as just as relevant by the ical spec as events are (my interpretation).&lt;br /&gt;
*#* ACCEPTED SPECUPDATE/FAQ. Another [[to-do]] for Tantek.  Explicitly specify which additional iCalendar objects (in addition to VEVENT) are permitted in hCalendar.  Current additional candidates: VTODO (many examples of this info on the web), VFREEBUSY (already at least one site publishing this info), VALARM (maybe, seems harmless enough, but without a compelling real world use case we should probably omit it).  Currently dropping: VTIMEZONE (terrible construct), VJOURNAL (obsoleted by [[hatom|hAtom]]).&lt;br /&gt;
*# Validation of the hCalendar tests.  The hCalendar tests have been available for a while now, but only Brian Suda and I have made contributions to their content.  Does anyone else have thoughts and should we try to make these the beginning of 'official' hCalendar tests?&lt;br /&gt;
*#* ACCEPT PARTIAL.  We probably need an hCalendar ''validator'' before we can declare any set of tests to be official.&lt;br /&gt;
*# The use of fragments is unclear.  Fragment interpretation seems to be agent dependant.  Fragments usually denote a heading or marker, like a goto statement for HTML.  Unfortunately it may jump in the middle of elements (rather to the beginning of an element).  How should this be handled.  i.e. &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;a name=&amp;quot;myfrag&amp;quot;&amp;gt;heading&amp;lt;/a&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;vevent&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;div class=&amp;quot;description&amp;quot;&amp;gt;A nice event&amp;lt;/div&amp;gt;&lt;br /&gt;
  &amp;lt;abbr class=&amp;quot;dtstart&amp;quot; title=&amp;quot;2005-10-05&amp;quot;&amp;gt;October 5&amp;lt;/abbr&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
*#* ACCEPTED. We should clarify to converters how to interpret a fragement id.  The interpretations are all consistent.  It points to the element that is to be converted.  If that element is empty then so is the conversion.  There is no issue here other than a need for more documentation.&lt;br /&gt;
* 2006-02-01 raised by [[RyanKing]]&lt;br /&gt;
*# ''Issue 1: Given that now, or soon will have hAtom, should we disallow vJournal, so that we don't have 2 blog-post formats?''&lt;br /&gt;
*#* ACCEPTED.  Yes, we should expliclty DROP &amp;quot;vjournal&amp;quot; from [[hcalendar|hCalendar]].&lt;br /&gt;
* 2006-01-04 raised by [[User:CGranade|CGranade]]&lt;br /&gt;
*# ''Interactions with strong namespacing. So far, it seems that hCalendar cannot be embedded into non-XHTML schemas that are also strongly namespaced (e.g.: RDF, Atom) without a resultant validation error, as the &amp;lt;code&amp;gt;class&amp;lt;/code&amp;gt; attribute is ''not'' portable across schemas.''&lt;br /&gt;
*#* REJECTED.  The class attribute is used on XHTML elements, which are XML, which can be embedded in any other XML.  The issue as raised doesn't make sense.&lt;br /&gt;
*# ''All examples in XHTML. XHTML should not be the only host to microformats, and thus it should not be the only example host language. Rather, examples in Atom, RSS, RDF, etc. should also be provided.''&lt;br /&gt;
*#* ACCEPTED.  This is definitely something to be added to *-examples pages for each microformat.&lt;br /&gt;
* 2005-10-14 raised by [[User:MarkoMrdjenovic|MarkoMrdjenovic]]&lt;br /&gt;
*# ''UID has to be present in iCal events if they want to be used in Microsoft Outlook. [Suggestion:] it should probably be added to the vevent tag as html attribute id. There is also the problem of converters - x2v has UID commented out. [http://www.ietf.org/rfc/rfc2445.txt RFC] recommends use of addr format for uids which is problematic in html id (does not validate). [[User:HenriBergius|HenriBergius]] pointed out some calendaring software crashes when @ is in the UID, so some other form of identification should be used - along the lines of dtstart-dtend-hash(title,summary)-sample-org''&lt;br /&gt;
*#* ACCEPTED-PARTIAL.  Yes, it appears RFC2445 requires UID.  However, typical mentions of events by web authors do not provide anything equivalent to a UID, nor should we require authors to do so.  Thus we must come up with an algorithm for implied UID, similar to some of the other properties.  We REJECT the use of the html 'id' attributre as a substitute for UID as they are of different scopes and thus such a translation will likely be problematic.  As part of this algorithm, we MUST disallow &amp;quot;@&amp;quot; signs since the issue points out that such UIDs crash some calendaring software.&lt;br /&gt;
*# ''DTSTAMP also has to be present in iCal event for Microsoft Outlook. I think DTSTAMP should be user visible information so implementation with class=&amp;quot;dtstamp&amp;quot; is fine. x2v already supports it so it should just be added to the standard and examples. The converters might also think of a way to force (create) dtstamp if it's not present.''&lt;br /&gt;
*#* ACCEPTED.  We should come up with a way to encourage/synthesize/imply DTSTAMP property values.&lt;br /&gt;
*# ''Here is an example from Midgard CMS (which will be easy to change according to bergie on irc):''&lt;br /&gt;
*#* For more discussion of this, please see [http://microformats.org/wiki/hcalendar-brainstorming#UID_handling hCalendar brainstorming: UID handling]&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
  &amp;lt;li class=&amp;quot;vevent&amp;quot; id=&amp;quot;2678c3f94af4a49f9ccbb69b92a82aba-midgardGuid&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;abbr class=&amp;quot;dtstart&amp;quot; title=&amp;quot;2005-10-20T14:34:45Z&amp;quot;&amp;gt;Torstai 20. Lokakuu 17:34&amp;lt;/abbr&amp;gt; -&lt;br /&gt;
    &amp;lt;abbr class=&amp;quot;dtend&amp;quot; title=&amp;quot;2005-10-20T15:33:56Z&amp;quot;&amp;gt;18:33&amp;lt;/abbr&amp;gt;&lt;br /&gt;
    &amp;lt;a class=&amp;quot;url&amp;quot; href=&amp;quot;/bergie/another-calendar/82457028ba83407451edd8aaeaa40622.html&amp;quot;&amp;gt;&lt;br /&gt;
        &amp;lt;span class=&amp;quot;summary&amp;quot;&amp;gt;From the other cal&amp;lt;/span&amp;gt;&lt;br /&gt;
    &amp;lt;/a&amp;gt;&lt;br /&gt;
    &amp;lt;abbr class=&amp;quot;dtstamp&amp;quot; title=&amp;quot;2005-10-14T12:16:45Z&amp;quot;&amp;gt;Torstai 14. Lokakuu 12:16&amp;lt;/abbr&amp;gt;&lt;br /&gt;
  &amp;lt;/li&amp;gt;&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
* 2005-09-29 raised by RyanKing&lt;br /&gt;
*# ''How does one use ATTENDEE?''&lt;br /&gt;
*#* ACCEPTED.  Another [[to-do]] for Tantek - document how to use ATTENDEE with [[hcard|hCard]].&lt;br /&gt;
* 2005-07-27 raised by Paolo Massa&lt;br /&gt;
*# ''I tried to add a hcalendar event in my blog but it rendered orribly. The problem was I already have a 'class=&amp;quot;summary' in my normal HTML (it is the title of the posts) and my CSS displays it bigger and bold. In this way the summary of the event was as big as the titles of the posts, destroying readability. The problem is Overloading of class attributes, it might be the case that a blogger already use, for example, class=&amp;quot;summary&amp;quot; for different purposes. What can be a solution? Providing in every microformat wiki page a CSS file that users can download and insert in their blog as additional CSS. This CSS file will &amp;quot;shield&amp;quot; attribute &amp;quot;inside&amp;quot; microformats from being interpreted as &amp;quot;normal&amp;quot; attributes. For example for the hCalendar microformats the relative CSS could be something like:&lt;br /&gt;
&lt;br /&gt;
.vevent .summary {&lt;br /&gt;
&lt;br /&gt;
//remove all the previously set properties, for example:&lt;br /&gt;
&lt;br /&gt;
text-decoration: none;&lt;br /&gt;
&lt;br /&gt;
font-size: 100%;&lt;br /&gt;
&lt;br /&gt;
...&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
Since the hCalendar microformat is the following,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span class=&amp;quot;vevent&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;a class=&amp;quot;url&amp;quot; href=&amp;quot;http://www.web2con.com/&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span class=&amp;quot;summary&amp;quot;&amp;gt;Web 2.0 Conference&amp;lt;/span&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
...&lt;br /&gt;
&lt;br /&gt;
I hope to have been clear but I'm not so sure ;-)''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* 2005-07-21 raised by Neil Jensen &lt;br /&gt;
*# ''should we create a vfreebusy class for HTML representations of freebusy data? Discussion [http://microformats.org/wiki/hcalendar-brainstorming#Free.2FBusy_information on hCalendar brainstorming].  Additional background: [http://www.ifreebusy.com/cyclical/blog/calendar/3.html here].''&lt;br /&gt;
&lt;br /&gt;
* 2005-07-11 raised by Kragen&lt;br /&gt;
*# ''The specification of class=&amp;quot;url&amp;quot; as &amp;amp;lt;a href=&amp;quot;...&amp;quot;&amp;gt; should be a &amp;quot;should&amp;quot;, not a &amp;quot;must&amp;quot;.  Other ways of referencing the event URL, such as &amp;amp;lt;iframe src=&amp;quot;...&amp;quot;&amp;gt; and &amp;amp;lt;embed src=&amp;quot;...&amp;quot;&amp;gt;, shoul be mentioned.  At present X2V doesn't appear to handle them.  This came up in a discussion about [[xfolk|xFolk]].''&lt;br /&gt;
*#* REJECTED. Lack of use case.  We should not add additional &amp;quot;ways of referencing the event URL&amp;quot; unless you can show a concrete real world example on the Web which requires it.&lt;br /&gt;
&lt;br /&gt;
* 2005-06-21 raised by Hixie&lt;br /&gt;
*# ''Issue H-1: This specification is lacking a user agent conformance section. There's basically nothing that says how hCalendars must be parsed, how to handle errors, and so forth. Is it defined in terms of the DOM? Is it defined in terms of a serialisation? How do you handle unexpected content or missing content?&lt;br /&gt;
*#* ACCEPTED. Another [[to-do]] for Tantek, write-up [[hcalendar-parsing]] that documents precisely how user agents are to parse [[hcalendar|hCalendar]] markup.&lt;br /&gt;
* 2005-02-22 raised by Matt Raymond [http://listserver.dreamhost.com/pipermail/whatwg-whatwg.org/2005-February/003124.html on the whatwg list]:&lt;br /&gt;
*# ''There is no copyright statement and no patent statement.''&lt;br /&gt;
*#* ACCEPTED. I have updated [[hcalendar]] (and [[hcard]], and all other MicroFormats) with a standard copyright statement and patent statement.&lt;br /&gt;
&lt;br /&gt;
* 2005-02-18 raised by Matt Raymond [http://listserver.dreamhost.com/pipermail/whatwg-whatwg.org/2005-February/003116.html on the whatwg list]:&lt;br /&gt;
*# ''There is no way for some reading the markup to tell if a class name is the name of an attribute or simply the name of a class used for styling.''&lt;br /&gt;
*#* REJECTED (strawman, poor assumption).  There is no need to differentiate in the general case.  In the specific case, a vocabulary is defined within a context.&lt;br /&gt;
*# ''As a result of the above, user agents would not be able to reliably allow users to access extension properties such as &amp;quot;x-mozilla-alarm-default-length&amp;quot; (which is an actual extension used in Sunbird).''&lt;br /&gt;
*#* REJECTED (out of scope).  Extension properties are outside the current scope of hCalendar.&lt;br /&gt;
*# ''The use of &amp;lt;abbr&amp;gt; for dates is incorrect. &amp;quot;August 5th, 2004&amp;quot; is not the abbreviation of 2004-09-05. In fact, the opposite is closer to the truth.''&lt;br /&gt;
*#* REJECTED (false statement).  This is simply a false statement.  See this article for an explanation of this use of &amp;lt;abbr&amp;gt;: [http://tantek.com/log/2005/01.html#d26t0100 Human vs. ISO8601 dates problem solved]&lt;br /&gt;
*# ''You have to create a complex set of rules for all possible uses of legacy markup within &amp;lt;span class=&amp;quot;vcalendar&amp;quot;&amp;gt; which can easily be implemented incorrectly.''&lt;br /&gt;
*#* REJECTED (false statements, strawman). There is no legacy markup. There is no need to create rules for all possible uses of legacy markup.  There is no need to create a complex set of rules.&lt;br /&gt;
*# ''There are styling and tooltip issues that are unresolved.''&lt;br /&gt;
*#* REJECTED (empty statements).  See the [[hcalendar-faq|hCalendar FAQ]] for answers to specific styling and tooltip questions.  Otherwise, please raise specific issues here with clear valid examples.&lt;br /&gt;
*# ''hCalendar/hCard is more complicated for webmasters to read and understand and more complicated for developers to implement.''&lt;br /&gt;
*#* REJECTED (empty statements, invalid comparator).  Please state specific examples which show the perceived complexity.  The comparison &amp;quot;more complicated&amp;quot; requires two items, no second item was provided.&lt;br /&gt;
*#  ''I dislike the entire system of using class names as markup.  Class names should be reserved for user-defined semantics.''&lt;br /&gt;
*#* ACCEPT-PARTIAL.  When specific elements are available, they should be used instead of class names, but even then class names work well to &amp;quot;subclass&amp;quot; specific elements.  This is thoroughly discussed in the essay [http://tantek.com/log/2002/12.html#L20021216 A Touch of Class].  And yes, class names can and should be used for user-defined semantics. [[hcalendar|hCalendar]] is one such user, and it is reasonable for users to use each others class names.&lt;br /&gt;
*#* ''Would it be more in the spirit of HTML to define these classes in a [http://www.w3.org/TR/html401/struct/global.html#h-7.4.4.3 metadata profile], so that &amp;quot;User agents may... perform some activity based on known conventions for that profile&amp;quot;?  Should this be a part of [[microformats]] specifications in general?  (If not, why not?)''&lt;br /&gt;
*#** ACCEPTED.  Yes, all [[microformats]] that introduce new classnames SHOULD include an [http://gmpg.org/xmdp/ XMDP] profile (which itself is a microformat for defining HTML metadata profiles) that defines those classnames.&lt;br /&gt;
*#*** ''Ok, but in order to refer to a profile, it needs a URI. Tantek writes in [http://microformats.org/discuss/mail/microformats-discuss/2005-July/000407.html a message of Jul 21] &amp;quot;This is precisely the reason that GMPG was founded and created, to provide permanent URLs/homes for microformat profiles.&amp;quot; How does one cause GMPG to issue a profile URL?''&lt;br /&gt;
*#**** ACCEPTED. This is on Tantek's [[to-do]] list, to both provide profiles and URLs (probably at gmpg.org) for those profiles for hCalendar etc.&lt;/div&gt;</summary>
		<author><name>Ragdoll</name></author>
	</entry>
	<entry>
		<id>http://microformats.org/wiki/index.php?title=hcard&amp;diff=4976</id>
		<title>hcard</title>
		<link rel="alternate" type="text/html" href="http://microformats.org/wiki/index.php?title=hcard&amp;diff=4976"/>
		<updated>2006-02-10T17:24:51Z</updated>

		<summary type="html">&lt;p&gt;Ragdoll: /* New Examples */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= hCard =&lt;br /&gt;
&lt;br /&gt;
hCard is a simple, open, distributed contact information format for people, companies, and organizations, which is suitable for embedding in (X)HTML, Atom, RSS, and arbitrary XML. hCard is a 1:1 representation of the vCard standard ([http://www.ietf.org/rfc/rfc2426.txt RFC2426]) in XHTML, one of several open [[microformats|microformat]] standards.&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
== Draft Specification ==&lt;br /&gt;
&lt;br /&gt;
=== Editor ===&lt;br /&gt;
[http://tantek.com/ Tantek Çelik], [http://technorati.com Technorati, Inc.]&lt;br /&gt;
&lt;br /&gt;
=== Authors ===&lt;br /&gt;
* [http://tantek.com/ Tantek Çelik], [http://technorati.com Technorati, Inc]&lt;br /&gt;
* [http://suda.co.uk/ Brian Suda]&lt;br /&gt;
&lt;br /&gt;
=== Copyright ===&lt;br /&gt;
{{MicroFormatCopyrightStatement2004}}&lt;br /&gt;
&lt;br /&gt;
=== Patents ===&lt;br /&gt;
{{MicroFormatPatentStatement}}&lt;br /&gt;
&lt;br /&gt;
=== Inspiration and Acknowledgments ===&lt;br /&gt;
Thanks to: my good friend [http://vadim.com/ Vadim] who introduced me to vCard ''many'' years ago, and if I'd only paid more attention then, perhaps I could have helped a lot of people avoid wasting a lot of time reinventing various standards wheels.&lt;br /&gt;
&lt;br /&gt;
== Introduction ==&lt;br /&gt;
The vCard standard ([http://www.ietf.org/rfc/rfc2426.txt RFC2426]), has been broadly interoperably implemented (e.g. Apple's &amp;quot;Address Book&amp;quot; application built into MacOSX).&lt;br /&gt;
&lt;br /&gt;
In addition, many bloggers identify themselves by name and discuss their friends and family.  With just a tad bit of structure, bloggers can discuss people in their blog(s) in such a way that spiders and other aggregators can retrieve this information, automatically convert them to vCards, and use them in any vCard application or service.&lt;br /&gt;
&lt;br /&gt;
This specification introduces the '''hCard''' format, which is a 1:1 representation of the aforementioned vCard standard, in semantic XHTML.  Bloggers can both embed vCards directly in their web pages, and style them with CSS to make them appear as desired.  In addition, hCard enables applications to retrieve information about such vCards directly from web pages without having to reference a separate file.&lt;br /&gt;
&lt;br /&gt;
Use the [http://microformats.org/code/hcard/creator hCard creator], copy the HTML code it generates to your blog or website to publish your contact info.&lt;br /&gt;
&lt;br /&gt;
== Semantic XHTML Design Principles ==&lt;br /&gt;
{{semantic-xhtml-design-principles}}&lt;br /&gt;
&lt;br /&gt;
== Format ==&lt;br /&gt;
=== In General ===&lt;br /&gt;
The vCard standard ([http://www.ietf.org/rfc/rfc2426.txt RFC2426]) forms the basis of hCard.&lt;br /&gt;
&lt;br /&gt;
The basic format of hCard is to use vCard object/property names in lower-case for class names, and to map the nesting of vCard objects directly into nested XHTML elements.&lt;br /&gt;
&lt;br /&gt;
=== More Semantic Equivalents ===&lt;br /&gt;
However, for some properties there is a more semantic equivalent, and therefore they get special treatment, e.g.:&lt;br /&gt;
* &amp;lt;code&amp;gt;URL&amp;lt;/code&amp;gt; in vCard becomes  &amp;lt;code&amp;gt;&amp;lt;a class=&amp;quot;url&amp;quot; href=&amp;quot;...&amp;quot;&amp;gt;...&amp;lt;/a&amp;gt;&amp;lt;/code&amp;gt; inside the element with &amp;lt;code&amp;gt;class=&amp;quot;vcard&amp;quot;&amp;lt;/code&amp;gt; in hCard.&lt;br /&gt;
* Similarly, &amp;lt;code&amp;gt;EMAIL&amp;lt;/code&amp;gt; in vCard becomes &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;&amp;lt;a class=&amp;quot;email&amp;quot; href=&amp;quot;mailto:...&amp;quot;&amp;gt;...&amp;lt;/a&amp;gt;&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;PHOTO&amp;lt;/code&amp;gt; in vCard becomes &amp;lt;code&amp;gt;&amp;lt;img class=&amp;quot;photo&amp;quot; src=&amp;quot;...&amp;quot; alt=&amp;quot;Photo of ...&amp;quot; /&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Singular vs. Multivalued Properties ===&lt;br /&gt;
&lt;br /&gt;
For properties which are singular (e.g. &amp;quot;N&amp;quot; and &amp;quot;FN&amp;quot;), the first descendant element with that class should take effect, any others being ignored.&lt;br /&gt;
&lt;br /&gt;
For properties which can be plural (e.g. &amp;quot;TEL&amp;quot;), each class instance should create a instance of that property.&lt;br /&gt;
&lt;br /&gt;
==== Plural Properties Singularized ====&lt;br /&gt;
&lt;br /&gt;
Since plural property names become their singular equivalents, even if the original plural property permitted only a single value with multiple components, those multiple components are represented each with their own singularly named property and the the property is effectively multivalued and subject to the above treatment of multivalued properties.&lt;br /&gt;
&lt;br /&gt;
=== Human vs. Machine readable ===&lt;br /&gt;
&lt;br /&gt;
If an &amp;lt;code&amp;gt;&amp;amp;lt;abbr&amp;gt;&amp;lt;/code&amp;gt; element is used for a property, then the '&amp;lt;code&amp;gt;title&amp;lt;/code&amp;gt;' attribute of the &amp;lt;code&amp;gt;&amp;amp;lt;abbr&amp;gt;&amp;lt;/code&amp;gt; element is the value of the property, instead of the contents of the element, which instead provide a human presentable version of the value.  &lt;br /&gt;
&lt;br /&gt;
Similarly, if an &amp;lt;code&amp;gt;&amp;amp;lt;img&amp;gt;&amp;lt;/code&amp;gt; element is used for one or more properties, it must be treated as follows:&lt;br /&gt;
# For the &amp;quot;PHOTO&amp;quot; property and any other property that takes a URL as its value, the &amp;lt;code&amp;gt;src=&amp;quot;...&amp;quot;&amp;lt;/code&amp;gt; attribute provides the property value.&lt;br /&gt;
# For other properties, the &amp;lt;code&amp;gt;&amp;amp;lt;img&amp;gt;&amp;lt;/code&amp;gt; element's '&amp;lt;code&amp;gt;alt&amp;lt;/code&amp;gt;' attribute is the value of the property.&lt;br /&gt;
&lt;br /&gt;
=== Value excerpting ===&lt;br /&gt;
&lt;br /&gt;
Sometimes only part of an element which is the equivalent for a property should be used for the value of the property.  This typically occurs when a property has a subtype, like TEL.  For this purpose, the special class name &amp;quot;&amp;lt;code&amp;gt;value&amp;lt;/code&amp;gt;&amp;quot; is introduced to excerpt out the subset of the element that is  the value of the property.  E.g. here is an hCard fragment for marking up a home phone number:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
&amp;lt;span class=&amp;quot;tel&amp;quot;&amp;gt;&lt;br /&gt;
 &amp;lt;span class=&amp;quot;type&amp;quot;&amp;gt;home&amp;lt;/span&amp;gt;:&lt;br /&gt;
 &amp;lt;span class=&amp;quot;value&amp;quot;&amp;gt;+1.415.555.1212&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This hCard fragment could be displayed as:&lt;br /&gt;
&lt;br /&gt;
 home: +1.415.555.1212&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Property Exceptions ===&lt;br /&gt;
&lt;br /&gt;
vCard has several properties which either do not make sense on, or are already implied within the context of a web page.  This section explains what to (not) do with them.&lt;br /&gt;
&lt;br /&gt;
# '''NAME''', '''PROFILE''', '''SOURCE''', '''PRODID''', '''VERSION''' properties as defined in Sections 2.1.2, 2.1.3, 2.1.4, 3.6.3, 3.6.9 of RFC 2426.  Content publishers MUST NOT use these properties in their hCards, and as such, hCard consumers/parsers MUST IGNORE these properties if they are found within an hCard.  Instead. hCard to vCard converters SHOULD use the title of the page where the hCard is found (e.g. the &amp;lt;code&amp;gt;&amp;lt;title&amp;gt;&amp;lt;/code&amp;gt; element in (X)HTML documents) to construct the NAME property, MAY output a PROFILE value of &amp;quot;&amp;lt;code&amp;gt;VCARD&amp;lt;/code&amp;gt;&amp;quot; per RFC 2426, SHOULD use the URL of the page where the hCard is found to construct the SOURCE property (e.g. perhaps as a parameter to a URL/service that converts hCards to vCards), for an output vCard stream (e.g. a .vcf file). Only services/applications that output actual vCards should write the PRODID property, with the product identifier for said service/application.   Similarly only such services/applications should write the VERSION property, with the value &amp;quot;3.0&amp;quot; (without quotes) per RFC2426 Section 3.6.9.&lt;br /&gt;
&lt;br /&gt;
=== Implied &amp;quot;N&amp;quot; Optimization ===&lt;br /&gt;
&lt;br /&gt;
Although vCard requires that the &amp;quot;N&amp;quot; property be present, the authors of the vCard specification (RFC 2426) themselves do not include &amp;quot;N&amp;quot; properties in their vCards near the end of the spec (p.38).  This apparent contradiction can be resolved by simply allowing the &amp;quot;FN&amp;quot; property to imply &amp;quot;N&amp;quot; property values in typical cases provided in the spec.  We do so explicitly in hCard.&lt;br /&gt;
&lt;br /&gt;
If the value of the &amp;quot;FN&amp;quot; property is exactly two words (separated by whitespace.), and there is no explicit &amp;quot;N&amp;quot; property, then the &amp;quot;N&amp;quot; property is inferred from the &amp;quot;FN&amp;quot; property.  For &amp;quot;FN&amp;quot;s with either one word or three or more, then the author MUST explicitly markup the &amp;quot;N&amp;quot;, except for the organization contact info case, [http://microformats.org/wiki/hcard#Organization_Contact_Info see below] for that.&lt;br /&gt;
&lt;br /&gt;
# The content of &amp;quot;FN&amp;quot; is broken into two &amp;quot;words&amp;quot; separated by whitespace.&lt;br /&gt;
# The ''first'' word of the &amp;quot;FN&amp;quot; is interpreted as the &amp;quot;Given Name&amp;quot; for the &amp;quot;N&amp;quot; property.&lt;br /&gt;
# The ''second/last'' word of the &amp;quot;FN&amp;quot; is interpreted as the &amp;quot;Family Name&amp;quot; for the &amp;quot;N&amp;quot; property.&lt;br /&gt;
# Exception: If the first word ends in a &amp;quot;,&amp;quot; comma OR if the second word is a single character (optionally followed by a period &amp;quot;.&amp;quot;), then the first word (minus the comma at the end if any) is interpreted as the &amp;quot;Family Name&amp;quot; and the second word is interpreted as the &amp;quot;Given Name&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
This allows simplification in the typical case of people stating their firstname space lastname, or lastname comma firstname, or lastname comma firstinitial, or lastname space firstinitial.&lt;br /&gt;
&lt;br /&gt;
==== Organization Contact Info ====&lt;br /&gt;
&lt;br /&gt;
Contact info for a company or organization is a special case of the implied &amp;quot;N&amp;quot; optimization.&lt;br /&gt;
 &lt;br /&gt;
If the &amp;quot;FN&amp;quot; and &amp;quot;ORG&amp;quot; properties have the exact same value (typically because they are set on the same element, e.g. class=&amp;quot;fn org&amp;quot;), then the hCard represents contact information for a company or organization and should be treated as such.  In this case the author MUST also NOT set the &amp;quot;N&amp;quot; property, or set it (and any sub-properties) explicitly to the empty string &amp;quot;&amp;quot;.  Thus parsers should handle the missing &amp;quot;N&amp;quot; property in this case by implying empty values for all the &amp;quot;N&amp;quot; sub-properties.&lt;br /&gt;
&lt;br /&gt;
=== Implied &amp;quot;organization-name&amp;quot; Optimization ===&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;ORG&amp;quot; property has two subproperties, organization-name and organization-unit. Very often authors only publish the organization-name.  Thus if an &amp;quot;ORG&amp;quot; property has no &amp;quot;organization-name&amp;quot; inside it, then its entire contents MUST be treated as the &amp;quot;organization-name&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
=== Root Class Name ===&lt;br /&gt;
&lt;br /&gt;
The root class name for an hCard is &amp;quot;vcard&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
=== Property List ===&lt;br /&gt;
&lt;br /&gt;
This is the list of properties (and subproperties, in parantheses, like this) in hCard, taken from vCard:&lt;br /&gt;
&lt;br /&gt;
* fn, n (family-name, given-name, additional-name, honorific-prefix, honorific-suffix), nickname, sort-string&lt;br /&gt;
* url, email (type, value), tel (type, value)&lt;br /&gt;
* adr (post-office-box, extended-address, street-address, locality, region, postal-code, country-name, type, value), label&lt;br /&gt;
* geo (latitude, longitude), tz&lt;br /&gt;
* photo, logo, sound, bday&lt;br /&gt;
* title, role, org (organization-name, organization-unit)&lt;br /&gt;
* category, note&lt;br /&gt;
* class, key, mailer, uid, rev&lt;br /&gt;
==== type subproperty values ====&lt;br /&gt;
&lt;br /&gt;
The 'type' subproperty in particular takes different values depending on which property it is a subproperty of.  These 'type' subproperty values are case-INSENSITIVE, meaning &amp;quot;Home&amp;quot; is the same as &amp;quot;home&amp;quot;, as well as multivalued, e.g. a tel can be home and preferred:&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
&amp;lt;span class=&amp;quot;tel&amp;quot;&amp;gt;&amp;lt;span class=&amp;quot;type&amp;quot;&amp;gt;Home&amp;lt;/span&amp;gt; (&amp;lt;span class=&amp;quot;type&amp;quot;&amp;gt;pref&amp;lt;/span&amp;gt;erred):&lt;br /&gt;
 &amp;lt;span class=&amp;quot;value&amp;quot;&amp;gt;+1.415.555.1212&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The following lists are ''informative''. See RFC2426 sections 3.2.1 ADR, 3.3.1 TEL, and 3.3.2 EMAIL respectively for normative type values.  They are repeated here for convenience. Default type subproperty value(s) is(are) first in each list and indicated in ALL CAPS.  types may be multivalued.&lt;br /&gt;
&lt;br /&gt;
* adr type: INTL, POSTAL, PARCEL, WORK, dom, home, pref&lt;br /&gt;
* tel type: VOICE, home, msg, work, pref, fax, cell, video, pager, bbs, modem, car, isdn, pcs&lt;br /&gt;
* email type: INTERNET, x400, pref, &amp;quot;other IANA registered address types&amp;quot;&lt;br /&gt;
&lt;br /&gt;
=== XMDP Profile ===&lt;br /&gt;
&lt;br /&gt;
See [[hcard-profile]] for the [http://gmpg.org/xmdp XMDP] profile of hCard which contains the above complete list of properties, with references to their RFC 2426 definitions.&lt;br /&gt;
&lt;br /&gt;
=== Parsing Details ===&lt;br /&gt;
&lt;br /&gt;
See [[hcard-parsing|hCard parsing]].&lt;br /&gt;
&lt;br /&gt;
== Examples ==&lt;br /&gt;
&lt;br /&gt;
This section is informative.&lt;br /&gt;
&lt;br /&gt;
=== Sample vCard ===&lt;br /&gt;
&lt;br /&gt;
Here is a sample vCard:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
BEGIN:VCARD&lt;br /&gt;
VERSION:3.0&lt;br /&gt;
N:Çelik;Tantek&lt;br /&gt;
FN:Tantek Çelik&lt;br /&gt;
URL:http://tantek.com&lt;br /&gt;
ORG:Technorati&lt;br /&gt;
END:VCARD&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
and an equivalent in hCard with various elements optimized appropriately.  See [[hcard-example1-steps| hCard Example 1]] for the derivation. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;vcard&amp;quot;&amp;gt;&lt;br /&gt;
 &amp;lt;a class=&amp;quot;url fn&amp;quot; href=&amp;quot;http://tantek.com/&amp;quot;&amp;gt;Tantek Çelik&amp;lt;/a&amp;gt;&lt;br /&gt;
 &amp;lt;div class=&amp;quot;org&amp;quot;&amp;gt;Technorati&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This hCard might be displayed as:&lt;br /&gt;
&lt;br /&gt;
[http://tantek.com/ Tantek Çelik]&amp;lt;br /&amp;gt;&lt;br /&gt;
Technorati&lt;br /&gt;
&lt;br /&gt;
Note: The version information is unnecessary in hCard markup directly since the version will be defined by the profile of hCard that is used/referred to in the 'profile' attribute of the &amp;lt;head&amp;gt; element.&lt;br /&gt;
&lt;br /&gt;
=== More Examples ===&lt;br /&gt;
&lt;br /&gt;
See [[hcard-examples]] for more examples, including all examples from vCard RFC 2426 converted into hCard.&lt;br /&gt;
&lt;br /&gt;
== Examples in the wild ==&lt;br /&gt;
This section is '''informative'''.&lt;br /&gt;
&lt;br /&gt;
The following sites have published hCards, and thus are a great place to start for anyone looking for examples &amp;quot;in the wild&amp;quot; to try parsing, indexing, organizing etc.  If you have an hCard on your own page, feel free to add it to the top of this list.  Once the list grows too big, we'll make a separate wiki page.&lt;br /&gt;
&lt;br /&gt;
=== New Examples ===&lt;br /&gt;
Please add new examples to this section.&lt;br /&gt;
&lt;br /&gt;
* The [http://www.arborday.org/ National Arbor Day Foundation] has started using hCards for their [http://arborday.org/programs/conferences/communityforestry/index.cfm upcoming] [http://arborday.org/programs/conferences/hazardtrees-treeplanting/ conferences].&lt;br /&gt;
* [http://www.multipack.co.uk The Multipack] has numerous hCards, especially on the [http://www.multipack.co.uk/members/ members page], as well as the next meeting information.&lt;br /&gt;
* [http://deadringrancor.livejournal.com/ Justin McDowell] used an hCard when [http://deadringrancor.livejournal.com/221332.html referring to a person in his blog post]&lt;br /&gt;
* [http://davecardwell.co.uk/cv/ Dave Cardwell] has included his hCard in his Curriculum Vitae.&lt;br /&gt;
* [http://blog.usweb.com/ Shaun Shull] has written a great post on [http://blog.usweb.com/archives/how-microformats-affect-search-engine-optimization-seo How Microformats Affect SEO], and has included his [[hcard|hCard]] as one of the examples.&lt;br /&gt;
* [http://www.thefutureoftheweb.com/ Jesse Skinner] has written a simple [http://www.thefutureoftheweb.com/blog/2006/1/hcard tutorial with examples]&lt;br /&gt;
* [http://www.w3.org/2005/12/allgroupoverview.html 2006 W3C Technical Plenary Week] has marked up the venue, contacts, and program committee members all with hCard.&lt;br /&gt;
* [http://www.avf-nexus.co.uk AVF-Nexus] have a hCard on their [http://www.avf-nexus.co.uk/contact/ contact page] - (by [http://creation.uk.com Creation&amp;quot;])&lt;br /&gt;
* [http://www.thefantasticos.com/andrew/ Andrew White] posted [http://www.thefantasticos.com/andrew/index.php/my-hcard/ his hCard] and [http://www.thefantasticos.com/andrew/index.php/62/microformats-the-should-have-been-obvious-web-dev-tool/ blogged about it].&lt;br /&gt;
* [http://www.2sheds.ru Oleg &amp;quot;2sheds&amp;quot; Kourapov] in his [http://www.2sheds.ru/blog/ blog] ([http://suda.co.uk/projects/X2V/get-vcard.php?uri=http://www.2sheds.ru/blog X2V]) has turned personal profile into hCard ([http://suda.co.uk/projects/X2V/get-vcard.php?uri=http://www.2sheds.ru/blog/hcard.html X2V]) and his blogroll - into combination XFN/hCards ([http://suda.co.uk/projects/X2V/get-vcard.php?uri=http://www.2sheds.ru/blog/friends.html X2V])&lt;br /&gt;
* [http://www.approveddesign.co.uk Approved Design Consultancy] have a hCard on their [http://www.approveddesign.co.uk/about/contact/ contact page] as well as on their [http://www.approveddesign.co.uk/about/people/ people section] - (by [http://creation.uk.com Creation&amp;quot;])&lt;br /&gt;
* [http://weblog.200ok.com.au/ Ben Buchanan] and [http://www.griffith.edu.au/cgi-bin/phone_search.pl?string=colin+morris&amp;amp;format=search Colin Morris] have [http://weblog.200ok.com.au/2006/01/griffith-phonebook-adds-hcard-and.html implemented hCards and vCards] for the [http://www.griffith.edu.au Griffith University] [http://www.griffith.edu.au/find/content_phonebook.html online phone book]. Eg. [http://www.griffith.edu.au/cgi-bin/phone_search.pl?string=ben+buchanan&amp;amp;format=search Ben's vCard] and [http://www.griffith.edu.au/cgi-bin/phone_search.pl?string=colin+morris&amp;amp;format=search Colin's vCard]&lt;br /&gt;
* WWF-Australia [http://wwf.org.au/about/contactdetails/ contact details page]&lt;br /&gt;
&lt;br /&gt;
=== Examples ===&lt;br /&gt;
* [http://thoughtport.blogspot.com/ Aiden Kenny] hasn't published his hCard yet, but he has [http://thoughtport.blogspot.com/2005/07/elemental-particles-of-web.html published his hCard icon]: http://photos1.blogger.com/blogger/4224/444/320/AK-Hcard-icon.gif&lt;br /&gt;
* [http://thedredge.org Andy Hume] uses the hcard format to mark-up the names and URLs of commentors on his blog. &lt;br /&gt;
* [http://www.bidclix.com/ BidClix]'s [http://www.bidclix.com/AboutContact.html Contact BidClix] page has it's ''contact info'' marked up with an hCard.&lt;br /&gt;
* [http://suda.co.uk/ Brian Suda] has managed to embed a photo in [http://suda.co.uk/contact/ his hCard] through the [http://www.ietf.org/rfc/rfc2397.txt data uri scheme] by converting the image to BASE64 code. View the Source to see how this is accomplished. [http://suda.co.uk/projects/X2V/get-vcard.php?uri=http%3A//suda.co.uk/contact/ The X2V link] will extract the image and encode it for a vCard which will be displayed in some address book applications.&lt;br /&gt;
* [http://cinematreasures.org Cinema Treasures] uses hCard to markup venue information for 10,000+ movie theaters.&lt;br /&gt;
* [http://www.w3.org/People/Connolly/events/ Dan Connolly's index of events and talks] has hCards for many of the people he has met at those events.&lt;br /&gt;
* [http://doncrowley.blogspot.com/ Don Crowley] has published [http://www.crowley.nl/hcard.html his hCard] as well as a nifty hCard button: http://www.crowley.nl/images/hcard.png&lt;br /&gt;
* [http://loadaveragezero.com/hnav/contact.php Douglas W. Clifton] added all types of contact information&lt;br /&gt;
* [http://evdb.com EVDB], the Events and Venues Database, publishes all venue detail pages with embedded hCards.&lt;br /&gt;
* [http://www.iowamilitaryveteransband.com/members/ Iowa Military Veterans Band Contacts] - 95 hCards [http://weblog.randomchaos.com/archive/2005/10/24/Microformats/ marked up by Scott Reynen]&lt;br /&gt;
* [http://JackWolfgang.blogspot.com Jack L. Wolfgang II] has [http://jack.randomata.com/resume/ converted the addresses in his resume to hCards].&lt;br /&gt;
* [http://www.efas.fupl.asso.fr/efas/_Mathieu-Drouet_.html Mathieu Drouet] and [http://www.efas.fupl.asso.fr/efas/_Annie-Leger_.html Annie Leger] both have hCards&lt;br /&gt;
* [http://www.ndunn.com Neil Dunn] has published his rather [http://www.ndunn.com/2005/10/7/hCard good looking hCard]&lt;br /&gt;
* [http://www.oliverbrown.me.uk/ Oliver Brown] has published his hCard.&lt;br /&gt;
* [http://www.paradigmproductions.org/contact/ Paradigm Productions] published a vcard as a ul (marked up by [http://www.linkingarts.com/ Peter Jacobson])&lt;br /&gt;
* [http://www.splintered.co.uk/ Patrick H. Lauke] has marked up [http://www.splintered.co.uk/about/ his contact info with hCard].&lt;br /&gt;
* [http://blah Paul Schreiber has published his hCard on [http://paulschreiber.com/about/?contact his about page].&lt;br /&gt;
* [http://paulschreiber.com/blog/ Paul Schreiber]'s [http://concerts.shrub.ca/ Sunnyvale House Concerts] site publishes hCards for upcoming artists, as well as an hCard for the page itself.  In addition the [http://concerts.shrub.ca/shows Past Shows] page contains hCards for all past artists.&lt;br /&gt;
* [http://www.paulmichaelsmith.com/blog/hcard.htm Paul Smith] has created an hCard page which is Human Readable, and a link to X2V passing the same hCard page to generate a vCard.&lt;br /&gt;
* [http://www.windley.com/archives/2005/07/hcards_trying_o.shtml Phil Windley has published] [http://phil.windley.org/hcard.html his hCard].&lt;br /&gt;
* [http://www.go-curiosity.com/about.htm Piercarlo Slavazza] has published an hCard.&lt;br /&gt;
* [http://zooibaai.nl/ Rob Mientjes] has published his hCard on [http://zooibaai.nl/about/ his about page].&lt;br /&gt;
* [http://rbach.priv.at/Contact Robert Bachmann] has published his hCard and [http://rbach.priv.at/Images/hcard a button].&lt;br /&gt;
* [http://blah Scott Reynen has published his hCard on [http://www.randomchaos.com/document.php?source=scott_reynen his profile page].&lt;br /&gt;
* [http://www.stackframe.com/ StackFrame, LLC] has published [http://www.stackframe.com/people/ employee] and [http://www.stackframe.com/contact/ general] contact information as hCards.&lt;br /&gt;
* [http://www.wolfsreign.com Steven Ametjan] has published his hCard on [http://www.wolfsreign.com/about/ his about page].&lt;br /&gt;
* [http://tantek.com/microformats/2005/syndicate/speakers-list.html Syndicate - Speaker List] as a set of hCards&lt;br /&gt;
* [http://tagcamp.org/index.cgi?ContactList TagCamp contact list]&lt;br /&gt;
* [http://tantek.com/log Tantek's Thoughts] includes an inline author hCard at the bottom of the page.&lt;br /&gt;
* [http://technorati.com/ Technorati]'s [http://www.technorati.com/about/ About page] lists their '''Media Contact'''&lt;br /&gt;
* [http://www.deadringerart.com/ The Brothers McDowell] have hCards at their Contact page.&lt;br /&gt;
* [http://twinsparc.com/ Twinsparc] put an hCard in the header and footer of all their pages.&lt;br /&gt;
* [http://tantek.com/microformats/2005/web2/speakers.html Web 2.0 Conference speakers page marked up with hCard]&lt;br /&gt;
* [http://we05.com/ Web Essentials 05] marked up all their [http://we05.com/presenters.cfm presenters with hCard].&lt;br /&gt;
&lt;br /&gt;
=== Examples with some problems ===&lt;br /&gt;
* [http://gbraad.nl/ Gerard Braad] has published an example on his [http://gbraad.nl/site/?p=profile profile] page that is almost consistent with his original [http://gbraad.nl/files/gbraad.vcf vCard] file. Also progress is made for transforming his [http://files.gbraad.nl/foaf.rdf FoaF] file to a hCard encoded representation. (also done for my spouse:[http://spouse.gbraad.nl/site/?p=profile Yong Yuan])&lt;br /&gt;
** (2005-09-27) PASSED, PASSED&lt;br /&gt;
** WARNINGS&lt;br /&gt;
*** uses 'n given-name' and 'n family-name' instead of nesting the given- and family- names inside the 'n'&lt;br /&gt;
*** has one 'tel' value with a bunch of values stuffed in&lt;br /&gt;
*** probably more problems --[[User:RyanKing|RyanKing]] 17:19, 5 Jan 2006 (PST)&lt;br /&gt;
* [http://www.kerihenare.com/ Keri Henare] has marked up his [http://www.kerihenare.com/contact/ contact info page] with hCard.&lt;br /&gt;
** (2005-09-27) PASSED&lt;br /&gt;
** (2005-11-01) hCard completely rewritten&lt;br /&gt;
** WARNING - type subproperty in classname&lt;br /&gt;
* [http://kinrowan.net/ Cori Schlegel] [http://kinrowan.net/blog/wp/archives/2005/07/08/a-problem-with-the-structured-blogging-plug-in-for-wordpress/ discusses how he has updated] [http://kinrowan.net/blog/contact his contact page with hCard]&lt;br /&gt;
** INVALID - using 'prefix' instead of 'honorific-prefix' and type's in classnames (in both adr and tel) and has two photo's (the second could be 'logo') --[[User:RyanKing|RyanKing]] 15:15, 5 Jan 2006 (PST)&lt;br /&gt;
* The good ship [http://styrheim.com/test/leonid.html Leonid Miloslavskiy] spotted in the North Atlantic&lt;br /&gt;
** INVALID  --[[User:RyanKing|RyanKing]] 00:50, 27 Oct 2005 (PDT)&lt;br /&gt;
*** class=&amp;quot;family&amp;quot; should probably be family-name&lt;br /&gt;
*** the &amp;quot;n&amp;quot; property is missing and the &amp;quot;n&amp;quot; optimization can't be applied&lt;br /&gt;
*** the first geo propery is empty, the second one is invalid (ie, it doesn't contain lat/long)&lt;br /&gt;
* [http://landsbank.fo/#hCard Landsbanki Føroya]&lt;br /&gt;
** INVALID - using embedded rdf/xml invalidly&lt;br /&gt;
* [http://chrischerry.name/blog/contact/ Chris Cherry's contact page with his hCard]&lt;br /&gt;
** WARNING - uses class=&amp;quot;cell&amp;quot; instead of &amp;amp;lt;span class=&amp;quot;type&amp;quot;&amp;amp;gt;cell&amp;amp;lt;/span&amp;amp;gt;&lt;br /&gt;
* [http://www.bath.ac.uk/contact/ University of Bath] Person Finder results are encoded with hCards so you can easily create a vCard from any result. &lt;br /&gt;
** ERROR - attempt to use Implied-N optimization where that's not possible. --[[User:RyanKing|RyanKing]] 14:29, 5 Jan 2006 (PST)&lt;br /&gt;
** Error appears for external users only. Won't be fixed any time soon. -- [[User:PhilWilson|PhilWilson]] 00:03, 28 Jan 2006 (GMT)&lt;br /&gt;
* [http://richi.co.uk/blog/2005/12/structured-blogging.html Richi Jennings] has put up his attempt&lt;br /&gt;
** INVALID, missing FN --[[User:RyanKing|RyanKing]] 12:47, 5 Jan 2006 (PST)&lt;br /&gt;
* [http://www.shiftingpixel.com/about/ shifting pixel photoblog] has published an hCard.&lt;br /&gt;
** &amp;quot;organization_name&amp;quot; should be &amp;quot;organization-name&amp;quot; (s/_/-/), otherwise good --[[User:RyanKing|RyanKing]] 14:01, 5 Jan 2006 (PST)&lt;br /&gt;
&lt;br /&gt;
== Implementations ==&lt;br /&gt;
This section is '''informative'''.&lt;br /&gt;
&lt;br /&gt;
The following implementations have been developed which either generate or parse hCards. If you have an hCard implementation, feel free to add it to the top of this list. Once the list grows too big, we'll make a separate wiki page.&lt;br /&gt;
&lt;br /&gt;
* [http://blog.codeeg.com/tails-firefox-extension/ Tails is a Firefox Extension] that will display the presence and details of microformats ([[hcard|hCard]], [[hcalendar|hCalendar]], [[hreview|hReview]], [[xfolk|xFolk]]) on a webpage.&lt;br /&gt;
* [http://www.stripytshirt.co.uk/features/firefox/smartzilla Smartzilla is a Firefox Extension] that finds hCards on web pages and lets you add them to your addressbook.&lt;br /&gt;
* [http://placenamehere.com/TXP/pnh_mf/ pnh_mf] is a plugin for [http://textpattern.com/ Textpattern] that supports embedding hCard and other microformats in templates and blog posts. Written by [http://placenamehere.com/ Chris Casciano].&lt;br /&gt;
* There is [http://flickr.com/photos/factoryjoe/68755089/ evidence of built-in hCard support in the Konqueror browser].  Specifically, Konqueror 3.5, in KDE 3.5 (kubuntu Breezy w/ update).&lt;br /&gt;
* There is [http://tagcamp.org/index.cgi?ContactList evidence of a kwiki plugin for hCards].  Update: the [http://svn.kwiki.org/cwest/Kwiki-hCard/ hCard kwiki plugin svn repository].  See the [http://microwiki.caseywest.com/index.cgi?hCard documentation of the hCard kwiki plugin].&lt;br /&gt;
* [http://suda.co.uk/projects/X2V/ X2V] is a bookmarklet that parses hCard and produces a .vcf (vCard) stream.  Note: needs to be updated as the spec is refined&lt;br /&gt;
* [http://www.stripytshirt.co.uk Duncan Walker] has built [http://www.stripytshirt.co.uk/features/firefox/smartzilla a Firefox extension] that gets hCard data from a webpage, uses Brian Suda's XSL (locally) to transform it to vcard format and opens the resulting .vcf file.&lt;br /&gt;
* [http://george.hotelling.net/90percent/ George] has written a [http://george.hotelling.net/90percent/geekery/greasemonkey_and_microformats.php Greasemonkey user script] that detects hCards and allows users to easily add them to their address book application.  Relies on the X2V web service to do the conversion.&lt;br /&gt;
* [http://blogmatrix.blogmatrix.com/ David Janes] has written a [[Greasemonkey]] [http://www.blogmatrix.com/include/microformat-find.user.js script] that finds many microformat elements, including hCards, and [http://blog.davidjanes.com/mtarchives/2005_08.html#003376 provides a popup menu of actions]. The hCard to vCard conversion is done internally within the script. ''This does not work with FireFox 1.5+/GreaseMonkey 0.6.4+.''&lt;br /&gt;
* [http://diveintomark.org/ Mark Pilgrim] has also written an [http://diveintomark.org/projects/greasemonkey/hcard/ hCard parser Greasemonkey user script].  It is self-contained and does not rely on the X2V web service.&lt;br /&gt;
* [http://www.oliverbrown.me.uk/2005/09/03/a-working-microformats-extension-to-simplexml/ Oliver Brown] has written an &amp;quot;extension&amp;quot; to [http://www.php.net/simplexml SimpleXML] that gives simple access to hCard information in PHP 5.&lt;br /&gt;
* [http://thedredge.org/ Andrew D. Hume] has built a system (Wordpress plugin?) for [http://thedredge.org/2005/06/using-hcards-in-your-blog/ using hcards in your blog] to represent people leaving comments on blog posts.&lt;br /&gt;
* The [http://tantek.com/microformats/hcard-creator.html hCard creator] is a very simple, yet illustrative, open source user interface / form / script which creates an hCard in real-time as you type in a set of contact information. &lt;br /&gt;
* [http://greenbytes.de/tech/webdav/rfc2629.xslt rfc2629.xslt] now attempts to generate hCard information ([http://ietf.org/rfc/rfc2629 RFC2629] is an XML format for authoring RFCs and Internet Drafts, see [http://greenbytes.de/tech/webdav/rfc2629xslt/rfc2629xslt.html example document])&lt;br /&gt;
* [http://tantek.com/microformats/buddylist2hcards.html iChat buddy list to hCards] - Open source AppleScript to automatically convert one's buddy list in the MacOSX iChat AIM client into a valid XHTML 1.0 Strict list of hCards. &lt;br /&gt;
* [http://dev.w3.org/cvsweb/2001/palmagent/ palmagent] is a collection of palmpilot and sidekick tools. It includes X2V derivatives xhtml2hcard.xsl and toICal.xsl plus some [http://dev.w3.org/cvsweb/2001/palmagent/hcardTest.html hcardTest] materials&lt;br /&gt;
* [http://www.openpsa.org/ OpenPsa 2.x] CRM application uses hCard for all person listings. The widget is [http://www.midgard-project.org/midcom-permalink-922834501b71daad856f35ec593c7a6d reusable across Midgard CMS]&lt;br /&gt;
* [http://www.metonymie.com Emiliano Martínez Luque] has written an experimental [http://www.metonymie.com/hCard_extract/app.html hCard finder and structured search application] that finds hCards within a given set of URLs and returns the ones that match the specified search criteria.&lt;br /&gt;
&lt;br /&gt;
== Additional Applications ==&lt;br /&gt;
This section is '''informative'''.&lt;br /&gt;
&lt;br /&gt;
There are numerous potential additional uses and applications for hCards on the Web.  The following are merely a few thoughts and possibilities that folks have come up with:&lt;br /&gt;
&lt;br /&gt;
* As an open standard/format for [http://www.gravatar.com/ Gravatars].&lt;br /&gt;
* Marking up individual authors of blog posts on a group blog&lt;br /&gt;
* Marking up people's names and URLs in a blogroll&lt;br /&gt;
* Any reference to people in blog posts (e.g. when citing them, or referencing them, or describing them, by name).&lt;br /&gt;
* ...&lt;br /&gt;
&lt;br /&gt;
== References ==&lt;br /&gt;
=== Normative References ===&lt;br /&gt;
* [http://www.w3.org/TR/2002/REC-xhtml1-20020801/ XHTML 1.0 SE]&lt;br /&gt;
* [http://www.ietf.org/rfc/rfc2426.txt vCard RFC2426]&lt;br /&gt;
&lt;br /&gt;
=== Informative References ===&lt;br /&gt;
* [http://www.w3.org/2002/12/cal/rfc2426 HTML reformatted version of RFC2426]&lt;br /&gt;
* [http://w3.org/TR/REC-CSS1 CSS1]&lt;br /&gt;
* [http://tantek.com/log/2004/09.html#hcard hCard term introduced and defined on the Web, 20040930]&lt;br /&gt;
* [http://wiki.oreillynet.com/foocamp04/index.cgi?SimpleSemanticFormats FOO Camp 2004 Simple Semantic Formats presentation, 20040910]&lt;br /&gt;
* Contributed from http://developers.technorati.com/wiki/hCard.&lt;br /&gt;
* [http://www.w3.org/TR/xhtml11 XHTML 1.1]&lt;br /&gt;
&lt;br /&gt;
==== Specifications That Use hCard ====&lt;br /&gt;
* [[adr]]&lt;br /&gt;
* [[geo]]&lt;br /&gt;
* [[hcalendar|hCalendar]]&lt;br /&gt;
* [[hreview|hReview]]&lt;br /&gt;
&lt;br /&gt;
==== Similar Work ====&lt;br /&gt;
* [http://www.intertwingly.net/wiki/pie/PaceBetterPersonElement Atom PaceBetterPersonElement]&lt;br /&gt;
* [http://www.jabber.org/jeps/jep-0054.html JEP-0054: vcard-temp]&lt;br /&gt;
&lt;br /&gt;
== Related Pages ==&lt;br /&gt;
* [[hcard-profile|hCard profile]] - The XMDP profile for hCard&lt;br /&gt;
&lt;br /&gt;
This specification is a work in progress. As additional aspects are discussed, understood, and written, they will be added. These thoughts, issues, and questions are kept in separate pages.&lt;br /&gt;
&lt;br /&gt;
* [[hcard-brainstorming|hCard Brainstorming]] - where we are keeping our brainstorms and other explorations relating to hCard&lt;br /&gt;
* [[hcard-tests|hCard tests]] - a wiki page with actual embedded hCards to try parsing.&lt;br /&gt;
* [[hcard-faq|hCard FAQ]] - If you have any questions about hCard, check here, and if you don't find answers, add your questions!&lt;br /&gt;
* [[hcard-issues|hCard issues]] - Please add any issues with the specification to the issues page.&lt;br /&gt;
&lt;br /&gt;
== Further Reading ==&lt;br /&gt;
* [http://www.digital-web.com/articles/microformats_primer/ Digital Web Magazine: Microformats Primer] by Garrett Dimon has a good intro to hCard&lt;br /&gt;
* [http://24ways.org/advent/practical-microformats-with-hcard Practical Microformats with hCard] by Drew McLellan&lt;br /&gt;
* [http://thedredge.org/ Andrew D. Hume] has written a blog post on [http://usabletype.com/articles/2005/usable-microformats/ usable microformats] which discusses hCard&lt;br /&gt;
* [http://www.thefutureoftheweb.com/blog/2006/1/hcard Jesse Skinner's introduction to hCard]&lt;br /&gt;
* [http://blog.usweb.com/ Shaun Shull's] great post on [http://blog.usweb.com/archives/how-microformats-affect-search-engine-optimization-seo How Microformats Affect SEO], including his [[hcard|hCard]] as an example.&lt;br /&gt;
* See also [http://www.technorati.com/cosmos/referer.html blogs discussing this page] and the [http://technorati.com/tags/hcard hCard tag]&lt;/div&gt;</summary>
		<author><name>Ragdoll</name></author>
	</entry>
	<entry>
		<id>http://microformats.org/wiki/index.php?title=hcard&amp;diff=4896</id>
		<title>hcard</title>
		<link rel="alternate" type="text/html" href="http://microformats.org/wiki/index.php?title=hcard&amp;diff=4896"/>
		<updated>2006-02-10T17:24:19Z</updated>

		<summary type="html">&lt;p&gt;Ragdoll: /* Examples */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= hCard =&lt;br /&gt;
&lt;br /&gt;
hCard is a simple, open, distributed contact information format for people, companies, and organizations, which is suitable for embedding in (X)HTML, Atom, RSS, and arbitrary XML. hCard is a 1:1 representation of the vCard standard ([http://www.ietf.org/rfc/rfc2426.txt RFC2426]) in XHTML, one of several open [[microformats|microformat]] standards.&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
== Draft Specification ==&lt;br /&gt;
&lt;br /&gt;
=== Editor ===&lt;br /&gt;
[http://tantek.com/ Tantek Çelik], [http://technorati.com Technorati, Inc.]&lt;br /&gt;
&lt;br /&gt;
=== Authors ===&lt;br /&gt;
* [http://tantek.com/ Tantek Çelik], [http://technorati.com Technorati, Inc]&lt;br /&gt;
* [http://suda.co.uk/ Brian Suda]&lt;br /&gt;
&lt;br /&gt;
=== Copyright ===&lt;br /&gt;
{{MicroFormatCopyrightStatement2004}}&lt;br /&gt;
&lt;br /&gt;
=== Patents ===&lt;br /&gt;
{{MicroFormatPatentStatement}}&lt;br /&gt;
&lt;br /&gt;
=== Inspiration and Acknowledgments ===&lt;br /&gt;
Thanks to: my good friend [http://vadim.com/ Vadim] who introduced me to vCard ''many'' years ago, and if I'd only paid more attention then, perhaps I could have helped a lot of people avoid wasting a lot of time reinventing various standards wheels.&lt;br /&gt;
&lt;br /&gt;
== Introduction ==&lt;br /&gt;
The vCard standard ([http://www.ietf.org/rfc/rfc2426.txt RFC2426]), has been broadly interoperably implemented (e.g. Apple's &amp;quot;Address Book&amp;quot; application built into MacOSX).&lt;br /&gt;
&lt;br /&gt;
In addition, many bloggers identify themselves by name and discuss their friends and family.  With just a tad bit of structure, bloggers can discuss people in their blog(s) in such a way that spiders and other aggregators can retrieve this information, automatically convert them to vCards, and use them in any vCard application or service.&lt;br /&gt;
&lt;br /&gt;
This specification introduces the '''hCard''' format, which is a 1:1 representation of the aforementioned vCard standard, in semantic XHTML.  Bloggers can both embed vCards directly in their web pages, and style them with CSS to make them appear as desired.  In addition, hCard enables applications to retrieve information about such vCards directly from web pages without having to reference a separate file.&lt;br /&gt;
&lt;br /&gt;
Use the [http://microformats.org/code/hcard/creator hCard creator], copy the HTML code it generates to your blog or website to publish your contact info.&lt;br /&gt;
&lt;br /&gt;
== Semantic XHTML Design Principles ==&lt;br /&gt;
{{semantic-xhtml-design-principles}}&lt;br /&gt;
&lt;br /&gt;
== Format ==&lt;br /&gt;
=== In General ===&lt;br /&gt;
The vCard standard ([http://www.ietf.org/rfc/rfc2426.txt RFC2426]) forms the basis of hCard.&lt;br /&gt;
&lt;br /&gt;
The basic format of hCard is to use vCard object/property names in lower-case for class names, and to map the nesting of vCard objects directly into nested XHTML elements.&lt;br /&gt;
&lt;br /&gt;
=== More Semantic Equivalents ===&lt;br /&gt;
However, for some properties there is a more semantic equivalent, and therefore they get special treatment, e.g.:&lt;br /&gt;
* &amp;lt;code&amp;gt;URL&amp;lt;/code&amp;gt; in vCard becomes  &amp;lt;code&amp;gt;&amp;lt;a class=&amp;quot;url&amp;quot; href=&amp;quot;...&amp;quot;&amp;gt;...&amp;lt;/a&amp;gt;&amp;lt;/code&amp;gt; inside the element with &amp;lt;code&amp;gt;class=&amp;quot;vcard&amp;quot;&amp;lt;/code&amp;gt; in hCard.&lt;br /&gt;
* Similarly, &amp;lt;code&amp;gt;EMAIL&amp;lt;/code&amp;gt; in vCard becomes &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;&amp;lt;a class=&amp;quot;email&amp;quot; href=&amp;quot;mailto:...&amp;quot;&amp;gt;...&amp;lt;/a&amp;gt;&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;PHOTO&amp;lt;/code&amp;gt; in vCard becomes &amp;lt;code&amp;gt;&amp;lt;img class=&amp;quot;photo&amp;quot; src=&amp;quot;...&amp;quot; alt=&amp;quot;Photo of ...&amp;quot; /&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Singular vs. Multivalued Properties ===&lt;br /&gt;
&lt;br /&gt;
For properties which are singular (e.g. &amp;quot;N&amp;quot; and &amp;quot;FN&amp;quot;), the first descendant element with that class should take effect, any others being ignored.&lt;br /&gt;
&lt;br /&gt;
For properties which can be plural (e.g. &amp;quot;TEL&amp;quot;), each class instance should create a instance of that property.&lt;br /&gt;
&lt;br /&gt;
==== Plural Properties Singularized ====&lt;br /&gt;
&lt;br /&gt;
Since plural property names become their singular equivalents, even if the original plural property permitted only a single value with multiple components, those multiple components are represented each with their own singularly named property and the the property is effectively multivalued and subject to the above treatment of multivalued properties.&lt;br /&gt;
&lt;br /&gt;
=== Human vs. Machine readable ===&lt;br /&gt;
&lt;br /&gt;
If an &amp;lt;code&amp;gt;&amp;amp;lt;abbr&amp;gt;&amp;lt;/code&amp;gt; element is used for a property, then the '&amp;lt;code&amp;gt;title&amp;lt;/code&amp;gt;' attribute of the &amp;lt;code&amp;gt;&amp;amp;lt;abbr&amp;gt;&amp;lt;/code&amp;gt; element is the value of the property, instead of the contents of the element, which instead provide a human presentable version of the value.  &lt;br /&gt;
&lt;br /&gt;
Similarly, if an &amp;lt;code&amp;gt;&amp;amp;lt;img&amp;gt;&amp;lt;/code&amp;gt; element is used for one or more properties, it must be treated as follows:&lt;br /&gt;
# For the &amp;quot;PHOTO&amp;quot; property and any other property that takes a URL as its value, the &amp;lt;code&amp;gt;src=&amp;quot;...&amp;quot;&amp;lt;/code&amp;gt; attribute provides the property value.&lt;br /&gt;
# For other properties, the &amp;lt;code&amp;gt;&amp;amp;lt;img&amp;gt;&amp;lt;/code&amp;gt; element's '&amp;lt;code&amp;gt;alt&amp;lt;/code&amp;gt;' attribute is the value of the property.&lt;br /&gt;
&lt;br /&gt;
=== Value excerpting ===&lt;br /&gt;
&lt;br /&gt;
Sometimes only part of an element which is the equivalent for a property should be used for the value of the property.  This typically occurs when a property has a subtype, like TEL.  For this purpose, the special class name &amp;quot;&amp;lt;code&amp;gt;value&amp;lt;/code&amp;gt;&amp;quot; is introduced to excerpt out the subset of the element that is  the value of the property.  E.g. here is an hCard fragment for marking up a home phone number:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
&amp;lt;span class=&amp;quot;tel&amp;quot;&amp;gt;&lt;br /&gt;
 &amp;lt;span class=&amp;quot;type&amp;quot;&amp;gt;home&amp;lt;/span&amp;gt;:&lt;br /&gt;
 &amp;lt;span class=&amp;quot;value&amp;quot;&amp;gt;+1.415.555.1212&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This hCard fragment could be displayed as:&lt;br /&gt;
&lt;br /&gt;
 home: +1.415.555.1212&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Property Exceptions ===&lt;br /&gt;
&lt;br /&gt;
vCard has several properties which either do not make sense on, or are already implied within the context of a web page.  This section explains what to (not) do with them.&lt;br /&gt;
&lt;br /&gt;
# '''NAME''', '''PROFILE''', '''SOURCE''', '''PRODID''', '''VERSION''' properties as defined in Sections 2.1.2, 2.1.3, 2.1.4, 3.6.3, 3.6.9 of RFC 2426.  Content publishers MUST NOT use these properties in their hCards, and as such, hCard consumers/parsers MUST IGNORE these properties if they are found within an hCard.  Instead. hCard to vCard converters SHOULD use the title of the page where the hCard is found (e.g. the &amp;lt;code&amp;gt;&amp;lt;title&amp;gt;&amp;lt;/code&amp;gt; element in (X)HTML documents) to construct the NAME property, MAY output a PROFILE value of &amp;quot;&amp;lt;code&amp;gt;VCARD&amp;lt;/code&amp;gt;&amp;quot; per RFC 2426, SHOULD use the URL of the page where the hCard is found to construct the SOURCE property (e.g. perhaps as a parameter to a URL/service that converts hCards to vCards), for an output vCard stream (e.g. a .vcf file). Only services/applications that output actual vCards should write the PRODID property, with the product identifier for said service/application.   Similarly only such services/applications should write the VERSION property, with the value &amp;quot;3.0&amp;quot; (without quotes) per RFC2426 Section 3.6.9.&lt;br /&gt;
&lt;br /&gt;
=== Implied &amp;quot;N&amp;quot; Optimization ===&lt;br /&gt;
&lt;br /&gt;
Although vCard requires that the &amp;quot;N&amp;quot; property be present, the authors of the vCard specification (RFC 2426) themselves do not include &amp;quot;N&amp;quot; properties in their vCards near the end of the spec (p.38).  This apparent contradiction can be resolved by simply allowing the &amp;quot;FN&amp;quot; property to imply &amp;quot;N&amp;quot; property values in typical cases provided in the spec.  We do so explicitly in hCard.&lt;br /&gt;
&lt;br /&gt;
If the value of the &amp;quot;FN&amp;quot; property is exactly two words (separated by whitespace.), and there is no explicit &amp;quot;N&amp;quot; property, then the &amp;quot;N&amp;quot; property is inferred from the &amp;quot;FN&amp;quot; property.  For &amp;quot;FN&amp;quot;s with either one word or three or more, then the author MUST explicitly markup the &amp;quot;N&amp;quot;, except for the organization contact info case, [http://microformats.org/wiki/hcard#Organization_Contact_Info see below] for that.&lt;br /&gt;
&lt;br /&gt;
# The content of &amp;quot;FN&amp;quot; is broken into two &amp;quot;words&amp;quot; separated by whitespace.&lt;br /&gt;
# The ''first'' word of the &amp;quot;FN&amp;quot; is interpreted as the &amp;quot;Given Name&amp;quot; for the &amp;quot;N&amp;quot; property.&lt;br /&gt;
# The ''second/last'' word of the &amp;quot;FN&amp;quot; is interpreted as the &amp;quot;Family Name&amp;quot; for the &amp;quot;N&amp;quot; property.&lt;br /&gt;
# Exception: If the first word ends in a &amp;quot;,&amp;quot; comma OR if the second word is a single character (optionally followed by a period &amp;quot;.&amp;quot;), then the first word (minus the comma at the end if any) is interpreted as the &amp;quot;Family Name&amp;quot; and the second word is interpreted as the &amp;quot;Given Name&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
This allows simplification in the typical case of people stating their firstname space lastname, or lastname comma firstname, or lastname comma firstinitial, or lastname space firstinitial.&lt;br /&gt;
&lt;br /&gt;
==== Organization Contact Info ====&lt;br /&gt;
&lt;br /&gt;
Contact info for a company or organization is a special case of the implied &amp;quot;N&amp;quot; optimization.&lt;br /&gt;
 &lt;br /&gt;
If the &amp;quot;FN&amp;quot; and &amp;quot;ORG&amp;quot; properties have the exact same value (typically because they are set on the same element, e.g. class=&amp;quot;fn org&amp;quot;), then the hCard represents contact information for a company or organization and should be treated as such.  In this case the author MUST also NOT set the &amp;quot;N&amp;quot; property, or set it (and any sub-properties) explicitly to the empty string &amp;quot;&amp;quot;.  Thus parsers should handle the missing &amp;quot;N&amp;quot; property in this case by implying empty values for all the &amp;quot;N&amp;quot; sub-properties.&lt;br /&gt;
&lt;br /&gt;
=== Implied &amp;quot;organization-name&amp;quot; Optimization ===&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;ORG&amp;quot; property has two subproperties, organization-name and organization-unit. Very often authors only publish the organization-name.  Thus if an &amp;quot;ORG&amp;quot; property has no &amp;quot;organization-name&amp;quot; inside it, then its entire contents MUST be treated as the &amp;quot;organization-name&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
=== Root Class Name ===&lt;br /&gt;
&lt;br /&gt;
The root class name for an hCard is &amp;quot;vcard&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
=== Property List ===&lt;br /&gt;
&lt;br /&gt;
This is the list of properties (and subproperties, in parantheses, like this) in hCard, taken from vCard:&lt;br /&gt;
&lt;br /&gt;
* fn, n (family-name, given-name, additional-name, honorific-prefix, honorific-suffix), nickname, sort-string&lt;br /&gt;
* url, email (type, value), tel (type, value)&lt;br /&gt;
* adr (post-office-box, extended-address, street-address, locality, region, postal-code, country-name, type, value), label&lt;br /&gt;
* geo (latitude, longitude), tz&lt;br /&gt;
* photo, logo, sound, bday&lt;br /&gt;
* title, role, org (organization-name, organization-unit)&lt;br /&gt;
* category, note&lt;br /&gt;
* class, key, mailer, uid, rev&lt;br /&gt;
==== type subproperty values ====&lt;br /&gt;
&lt;br /&gt;
The 'type' subproperty in particular takes different values depending on which property it is a subproperty of.  These 'type' subproperty values are case-INSENSITIVE, meaning &amp;quot;Home&amp;quot; is the same as &amp;quot;home&amp;quot;, as well as multivalued, e.g. a tel can be home and preferred:&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
&amp;lt;span class=&amp;quot;tel&amp;quot;&amp;gt;&amp;lt;span class=&amp;quot;type&amp;quot;&amp;gt;Home&amp;lt;/span&amp;gt; (&amp;lt;span class=&amp;quot;type&amp;quot;&amp;gt;pref&amp;lt;/span&amp;gt;erred):&lt;br /&gt;
 &amp;lt;span class=&amp;quot;value&amp;quot;&amp;gt;+1.415.555.1212&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The following lists are ''informative''. See RFC2426 sections 3.2.1 ADR, 3.3.1 TEL, and 3.3.2 EMAIL respectively for normative type values.  They are repeated here for convenience. Default type subproperty value(s) is(are) first in each list and indicated in ALL CAPS.  types may be multivalued.&lt;br /&gt;
&lt;br /&gt;
* adr type: INTL, POSTAL, PARCEL, WORK, dom, home, pref&lt;br /&gt;
* tel type: VOICE, home, msg, work, pref, fax, cell, video, pager, bbs, modem, car, isdn, pcs&lt;br /&gt;
* email type: INTERNET, x400, pref, &amp;quot;other IANA registered address types&amp;quot;&lt;br /&gt;
&lt;br /&gt;
=== XMDP Profile ===&lt;br /&gt;
&lt;br /&gt;
See [[hcard-profile]] for the [http://gmpg.org/xmdp XMDP] profile of hCard which contains the above complete list of properties, with references to their RFC 2426 definitions.&lt;br /&gt;
&lt;br /&gt;
=== Parsing Details ===&lt;br /&gt;
&lt;br /&gt;
See [[hcard-parsing|hCard parsing]].&lt;br /&gt;
&lt;br /&gt;
== Examples ==&lt;br /&gt;
&lt;br /&gt;
This section is informative.&lt;br /&gt;
&lt;br /&gt;
=== Sample vCard ===&lt;br /&gt;
&lt;br /&gt;
Here is a sample vCard:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
BEGIN:VCARD&lt;br /&gt;
VERSION:3.0&lt;br /&gt;
N:Çelik;Tantek&lt;br /&gt;
FN:Tantek Çelik&lt;br /&gt;
URL:http://tantek.com&lt;br /&gt;
ORG:Technorati&lt;br /&gt;
END:VCARD&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
and an equivalent in hCard with various elements optimized appropriately.  See [[hcard-example1-steps| hCard Example 1]] for the derivation. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;vcard&amp;quot;&amp;gt;&lt;br /&gt;
 &amp;lt;a class=&amp;quot;url fn&amp;quot; href=&amp;quot;http://tantek.com/&amp;quot;&amp;gt;Tantek Çelik&amp;lt;/a&amp;gt;&lt;br /&gt;
 &amp;lt;div class=&amp;quot;org&amp;quot;&amp;gt;Technorati&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This hCard might be displayed as:&lt;br /&gt;
&lt;br /&gt;
[http://tantek.com/ Tantek Çelik]&amp;lt;br /&amp;gt;&lt;br /&gt;
Technorati&lt;br /&gt;
&lt;br /&gt;
Note: The version information is unnecessary in hCard markup directly since the version will be defined by the profile of hCard that is used/referred to in the 'profile' attribute of the &amp;lt;head&amp;gt; element.&lt;br /&gt;
&lt;br /&gt;
=== More Examples ===&lt;br /&gt;
&lt;br /&gt;
See [[hcard-examples]] for more examples, including all examples from vCard RFC 2426 converted into hCard.&lt;br /&gt;
&lt;br /&gt;
== Examples in the wild ==&lt;br /&gt;
This section is '''informative'''.&lt;br /&gt;
&lt;br /&gt;
The following sites have published hCards, and thus are a great place to start for anyone looking for examples &amp;quot;in the wild&amp;quot; to try parsing, indexing, organizing etc.  If you have an hCard on your own page, feel free to add it to the top of this list.  Once the list grows too big, we'll make a separate wiki page.&lt;br /&gt;
&lt;br /&gt;
=== New Examples ===&lt;br /&gt;
Please add new examples to this section.&lt;br /&gt;
&lt;br /&gt;
* [http://www.multipack.co.uk The Multipack] has numerous hCards, especially on the [http://www.multipack.co.uk/members/ members page], as well as the next meeting information.&lt;br /&gt;
* [http://deadringrancor.livejournal.com/ Justin McDowell] used an hCard when [http://deadringrancor.livejournal.com/221332.html referring to a person in his blog post]&lt;br /&gt;
* [http://davecardwell.co.uk/cv/ Dave Cardwell] has included his hCard in his Curriculum Vitae.&lt;br /&gt;
* [http://blog.usweb.com/ Shaun Shull] has written a great post on [http://blog.usweb.com/archives/how-microformats-affect-search-engine-optimization-seo How Microformats Affect SEO], and has included his [[hcard|hCard]] as one of the examples.&lt;br /&gt;
* [http://www.thefutureoftheweb.com/ Jesse Skinner] has written a simple [http://www.thefutureoftheweb.com/blog/2006/1/hcard tutorial with examples]&lt;br /&gt;
* [http://www.w3.org/2005/12/allgroupoverview.html 2006 W3C Technical Plenary Week] has marked up the venue, contacts, and program committee members all with hCard.&lt;br /&gt;
* [http://www.avf-nexus.co.uk AVF-Nexus] have a hCard on their [http://www.avf-nexus.co.uk/contact/ contact page] - (by [http://creation.uk.com Creation&amp;quot;])&lt;br /&gt;
* [http://www.thefantasticos.com/andrew/ Andrew White] posted [http://www.thefantasticos.com/andrew/index.php/my-hcard/ his hCard] and [http://www.thefantasticos.com/andrew/index.php/62/microformats-the-should-have-been-obvious-web-dev-tool/ blogged about it].&lt;br /&gt;
* [http://www.2sheds.ru Oleg &amp;quot;2sheds&amp;quot; Kourapov] in his [http://www.2sheds.ru/blog/ blog] ([http://suda.co.uk/projects/X2V/get-vcard.php?uri=http://www.2sheds.ru/blog X2V]) has turned personal profile into hCard ([http://suda.co.uk/projects/X2V/get-vcard.php?uri=http://www.2sheds.ru/blog/hcard.html X2V]) and his blogroll - into combination XFN/hCards ([http://suda.co.uk/projects/X2V/get-vcard.php?uri=http://www.2sheds.ru/blog/friends.html X2V])&lt;br /&gt;
* [http://www.approveddesign.co.uk Approved Design Consultancy] have a hCard on their [http://www.approveddesign.co.uk/about/contact/ contact page] as well as on their [http://www.approveddesign.co.uk/about/people/ people section] - (by [http://creation.uk.com Creation&amp;quot;])&lt;br /&gt;
* [http://weblog.200ok.com.au/ Ben Buchanan] and [http://www.griffith.edu.au/cgi-bin/phone_search.pl?string=colin+morris&amp;amp;format=search Colin Morris] have [http://weblog.200ok.com.au/2006/01/griffith-phonebook-adds-hcard-and.html implemented hCards and vCards] for the [http://www.griffith.edu.au Griffith University] [http://www.griffith.edu.au/find/content_phonebook.html online phone book]. Eg. [http://www.griffith.edu.au/cgi-bin/phone_search.pl?string=ben+buchanan&amp;amp;format=search Ben's vCard] and [http://www.griffith.edu.au/cgi-bin/phone_search.pl?string=colin+morris&amp;amp;format=search Colin's vCard]&lt;br /&gt;
* WWF-Australia [http://wwf.org.au/about/contactdetails/ contact details page]&lt;br /&gt;
&lt;br /&gt;
=== Examples ===&lt;br /&gt;
* [http://thoughtport.blogspot.com/ Aiden Kenny] hasn't published his hCard yet, but he has [http://thoughtport.blogspot.com/2005/07/elemental-particles-of-web.html published his hCard icon]: http://photos1.blogger.com/blogger/4224/444/320/AK-Hcard-icon.gif&lt;br /&gt;
* [http://thedredge.org Andy Hume] uses the hcard format to mark-up the names and URLs of commentors on his blog. &lt;br /&gt;
* [http://www.bidclix.com/ BidClix]'s [http://www.bidclix.com/AboutContact.html Contact BidClix] page has it's ''contact info'' marked up with an hCard.&lt;br /&gt;
* [http://suda.co.uk/ Brian Suda] has managed to embed a photo in [http://suda.co.uk/contact/ his hCard] through the [http://www.ietf.org/rfc/rfc2397.txt data uri scheme] by converting the image to BASE64 code. View the Source to see how this is accomplished. [http://suda.co.uk/projects/X2V/get-vcard.php?uri=http%3A//suda.co.uk/contact/ The X2V link] will extract the image and encode it for a vCard which will be displayed in some address book applications.&lt;br /&gt;
* [http://cinematreasures.org Cinema Treasures] uses hCard to markup venue information for 10,000+ movie theaters.&lt;br /&gt;
* [http://www.w3.org/People/Connolly/events/ Dan Connolly's index of events and talks] has hCards for many of the people he has met at those events.&lt;br /&gt;
* [http://doncrowley.blogspot.com/ Don Crowley] has published [http://www.crowley.nl/hcard.html his hCard] as well as a nifty hCard button: http://www.crowley.nl/images/hcard.png&lt;br /&gt;
* [http://loadaveragezero.com/hnav/contact.php Douglas W. Clifton] added all types of contact information&lt;br /&gt;
* [http://evdb.com EVDB], the Events and Venues Database, publishes all venue detail pages with embedded hCards.&lt;br /&gt;
* [http://www.iowamilitaryveteransband.com/members/ Iowa Military Veterans Band Contacts] - 95 hCards [http://weblog.randomchaos.com/archive/2005/10/24/Microformats/ marked up by Scott Reynen]&lt;br /&gt;
* [http://JackWolfgang.blogspot.com Jack L. Wolfgang II] has [http://jack.randomata.com/resume/ converted the addresses in his resume to hCards].&lt;br /&gt;
* [http://www.efas.fupl.asso.fr/efas/_Mathieu-Drouet_.html Mathieu Drouet] and [http://www.efas.fupl.asso.fr/efas/_Annie-Leger_.html Annie Leger] both have hCards&lt;br /&gt;
* [http://www.ndunn.com Neil Dunn] has published his rather [http://www.ndunn.com/2005/10/7/hCard good looking hCard]&lt;br /&gt;
* [http://www.oliverbrown.me.uk/ Oliver Brown] has published his hCard.&lt;br /&gt;
* [http://www.paradigmproductions.org/contact/ Paradigm Productions] published a vcard as a ul (marked up by [http://www.linkingarts.com/ Peter Jacobson])&lt;br /&gt;
* [http://www.splintered.co.uk/ Patrick H. Lauke] has marked up [http://www.splintered.co.uk/about/ his contact info with hCard].&lt;br /&gt;
* [http://blah Paul Schreiber has published his hCard on [http://paulschreiber.com/about/?contact his about page].&lt;br /&gt;
* [http://paulschreiber.com/blog/ Paul Schreiber]'s [http://concerts.shrub.ca/ Sunnyvale House Concerts] site publishes hCards for upcoming artists, as well as an hCard for the page itself.  In addition the [http://concerts.shrub.ca/shows Past Shows] page contains hCards for all past artists.&lt;br /&gt;
* [http://www.paulmichaelsmith.com/blog/hcard.htm Paul Smith] has created an hCard page which is Human Readable, and a link to X2V passing the same hCard page to generate a vCard.&lt;br /&gt;
* [http://www.windley.com/archives/2005/07/hcards_trying_o.shtml Phil Windley has published] [http://phil.windley.org/hcard.html his hCard].&lt;br /&gt;
* [http://www.go-curiosity.com/about.htm Piercarlo Slavazza] has published an hCard.&lt;br /&gt;
* [http://zooibaai.nl/ Rob Mientjes] has published his hCard on [http://zooibaai.nl/about/ his about page].&lt;br /&gt;
* [http://rbach.priv.at/Contact Robert Bachmann] has published his hCard and [http://rbach.priv.at/Images/hcard a button].&lt;br /&gt;
* [http://blah Scott Reynen has published his hCard on [http://www.randomchaos.com/document.php?source=scott_reynen his profile page].&lt;br /&gt;
* [http://www.stackframe.com/ StackFrame, LLC] has published [http://www.stackframe.com/people/ employee] and [http://www.stackframe.com/contact/ general] contact information as hCards.&lt;br /&gt;
* [http://www.wolfsreign.com Steven Ametjan] has published his hCard on [http://www.wolfsreign.com/about/ his about page].&lt;br /&gt;
* [http://tantek.com/microformats/2005/syndicate/speakers-list.html Syndicate - Speaker List] as a set of hCards&lt;br /&gt;
* [http://tagcamp.org/index.cgi?ContactList TagCamp contact list]&lt;br /&gt;
* [http://tantek.com/log Tantek's Thoughts] includes an inline author hCard at the bottom of the page.&lt;br /&gt;
* [http://technorati.com/ Technorati]'s [http://www.technorati.com/about/ About page] lists their '''Media Contact'''&lt;br /&gt;
* [http://www.deadringerart.com/ The Brothers McDowell] have hCards at their Contact page.&lt;br /&gt;
* [http://twinsparc.com/ Twinsparc] put an hCard in the header and footer of all their pages.&lt;br /&gt;
* [http://tantek.com/microformats/2005/web2/speakers.html Web 2.0 Conference speakers page marked up with hCard]&lt;br /&gt;
* [http://we05.com/ Web Essentials 05] marked up all their [http://we05.com/presenters.cfm presenters with hCard].&lt;br /&gt;
&lt;br /&gt;
=== Examples with some problems ===&lt;br /&gt;
* [http://gbraad.nl/ Gerard Braad] has published an example on his [http://gbraad.nl/site/?p=profile profile] page that is almost consistent with his original [http://gbraad.nl/files/gbraad.vcf vCard] file. Also progress is made for transforming his [http://files.gbraad.nl/foaf.rdf FoaF] file to a hCard encoded representation. (also done for my spouse:[http://spouse.gbraad.nl/site/?p=profile Yong Yuan])&lt;br /&gt;
** (2005-09-27) PASSED, PASSED&lt;br /&gt;
** WARNINGS&lt;br /&gt;
*** uses 'n given-name' and 'n family-name' instead of nesting the given- and family- names inside the 'n'&lt;br /&gt;
*** has one 'tel' value with a bunch of values stuffed in&lt;br /&gt;
*** probably more problems --[[User:RyanKing|RyanKing]] 17:19, 5 Jan 2006 (PST)&lt;br /&gt;
* [http://www.kerihenare.com/ Keri Henare] has marked up his [http://www.kerihenare.com/contact/ contact info page] with hCard.&lt;br /&gt;
** (2005-09-27) PASSED&lt;br /&gt;
** (2005-11-01) hCard completely rewritten&lt;br /&gt;
** WARNING - type subproperty in classname&lt;br /&gt;
* [http://kinrowan.net/ Cori Schlegel] [http://kinrowan.net/blog/wp/archives/2005/07/08/a-problem-with-the-structured-blogging-plug-in-for-wordpress/ discusses how he has updated] [http://kinrowan.net/blog/contact his contact page with hCard]&lt;br /&gt;
** INVALID - using 'prefix' instead of 'honorific-prefix' and type's in classnames (in both adr and tel) and has two photo's (the second could be 'logo') --[[User:RyanKing|RyanKing]] 15:15, 5 Jan 2006 (PST)&lt;br /&gt;
* The good ship [http://styrheim.com/test/leonid.html Leonid Miloslavskiy] spotted in the North Atlantic&lt;br /&gt;
** INVALID  --[[User:RyanKing|RyanKing]] 00:50, 27 Oct 2005 (PDT)&lt;br /&gt;
*** class=&amp;quot;family&amp;quot; should probably be family-name&lt;br /&gt;
*** the &amp;quot;n&amp;quot; property is missing and the &amp;quot;n&amp;quot; optimization can't be applied&lt;br /&gt;
*** the first geo propery is empty, the second one is invalid (ie, it doesn't contain lat/long)&lt;br /&gt;
* [http://landsbank.fo/#hCard Landsbanki Føroya]&lt;br /&gt;
** INVALID - using embedded rdf/xml invalidly&lt;br /&gt;
* [http://chrischerry.name/blog/contact/ Chris Cherry's contact page with his hCard]&lt;br /&gt;
** WARNING - uses class=&amp;quot;cell&amp;quot; instead of &amp;amp;lt;span class=&amp;quot;type&amp;quot;&amp;amp;gt;cell&amp;amp;lt;/span&amp;amp;gt;&lt;br /&gt;
* [http://www.bath.ac.uk/contact/ University of Bath] Person Finder results are encoded with hCards so you can easily create a vCard from any result. &lt;br /&gt;
** ERROR - attempt to use Implied-N optimization where that's not possible. --[[User:RyanKing|RyanKing]] 14:29, 5 Jan 2006 (PST)&lt;br /&gt;
** Error appears for external users only. Won't be fixed any time soon. -- [[User:PhilWilson|PhilWilson]] 00:03, 28 Jan 2006 (GMT)&lt;br /&gt;
* [http://richi.co.uk/blog/2005/12/structured-blogging.html Richi Jennings] has put up his attempt&lt;br /&gt;
** INVALID, missing FN --[[User:RyanKing|RyanKing]] 12:47, 5 Jan 2006 (PST)&lt;br /&gt;
* [http://www.shiftingpixel.com/about/ shifting pixel photoblog] has published an hCard.&lt;br /&gt;
** &amp;quot;organization_name&amp;quot; should be &amp;quot;organization-name&amp;quot; (s/_/-/), otherwise good --[[User:RyanKing|RyanKing]] 14:01, 5 Jan 2006 (PST)&lt;br /&gt;
&lt;br /&gt;
== Implementations ==&lt;br /&gt;
This section is '''informative'''.&lt;br /&gt;
&lt;br /&gt;
The following implementations have been developed which either generate or parse hCards. If you have an hCard implementation, feel free to add it to the top of this list. Once the list grows too big, we'll make a separate wiki page.&lt;br /&gt;
&lt;br /&gt;
* [http://blog.codeeg.com/tails-firefox-extension/ Tails is a Firefox Extension] that will display the presence and details of microformats ([[hcard|hCard]], [[hcalendar|hCalendar]], [[hreview|hReview]], [[xfolk|xFolk]]) on a webpage.&lt;br /&gt;
* [http://www.stripytshirt.co.uk/features/firefox/smartzilla Smartzilla is a Firefox Extension] that finds hCards on web pages and lets you add them to your addressbook.&lt;br /&gt;
* [http://placenamehere.com/TXP/pnh_mf/ pnh_mf] is a plugin for [http://textpattern.com/ Textpattern] that supports embedding hCard and other microformats in templates and blog posts. Written by [http://placenamehere.com/ Chris Casciano].&lt;br /&gt;
* There is [http://flickr.com/photos/factoryjoe/68755089/ evidence of built-in hCard support in the Konqueror browser].  Specifically, Konqueror 3.5, in KDE 3.5 (kubuntu Breezy w/ update).&lt;br /&gt;
* There is [http://tagcamp.org/index.cgi?ContactList evidence of a kwiki plugin for hCards].  Update: the [http://svn.kwiki.org/cwest/Kwiki-hCard/ hCard kwiki plugin svn repository].  See the [http://microwiki.caseywest.com/index.cgi?hCard documentation of the hCard kwiki plugin].&lt;br /&gt;
* [http://suda.co.uk/projects/X2V/ X2V] is a bookmarklet that parses hCard and produces a .vcf (vCard) stream.  Note: needs to be updated as the spec is refined&lt;br /&gt;
* [http://www.stripytshirt.co.uk Duncan Walker] has built [http://www.stripytshirt.co.uk/features/firefox/smartzilla a Firefox extension] that gets hCard data from a webpage, uses Brian Suda's XSL (locally) to transform it to vcard format and opens the resulting .vcf file.&lt;br /&gt;
* [http://george.hotelling.net/90percent/ George] has written a [http://george.hotelling.net/90percent/geekery/greasemonkey_and_microformats.php Greasemonkey user script] that detects hCards and allows users to easily add them to their address book application.  Relies on the X2V web service to do the conversion.&lt;br /&gt;
* [http://blogmatrix.blogmatrix.com/ David Janes] has written a [[Greasemonkey]] [http://www.blogmatrix.com/include/microformat-find.user.js script] that finds many microformat elements, including hCards, and [http://blog.davidjanes.com/mtarchives/2005_08.html#003376 provides a popup menu of actions]. The hCard to vCard conversion is done internally within the script. ''This does not work with FireFox 1.5+/GreaseMonkey 0.6.4+.''&lt;br /&gt;
* [http://diveintomark.org/ Mark Pilgrim] has also written an [http://diveintomark.org/projects/greasemonkey/hcard/ hCard parser Greasemonkey user script].  It is self-contained and does not rely on the X2V web service.&lt;br /&gt;
* [http://www.oliverbrown.me.uk/2005/09/03/a-working-microformats-extension-to-simplexml/ Oliver Brown] has written an &amp;quot;extension&amp;quot; to [http://www.php.net/simplexml SimpleXML] that gives simple access to hCard information in PHP 5.&lt;br /&gt;
* [http://thedredge.org/ Andrew D. Hume] has built a system (Wordpress plugin?) for [http://thedredge.org/2005/06/using-hcards-in-your-blog/ using hcards in your blog] to represent people leaving comments on blog posts.&lt;br /&gt;
* The [http://tantek.com/microformats/hcard-creator.html hCard creator] is a very simple, yet illustrative, open source user interface / form / script which creates an hCard in real-time as you type in a set of contact information. &lt;br /&gt;
* [http://greenbytes.de/tech/webdav/rfc2629.xslt rfc2629.xslt] now attempts to generate hCard information ([http://ietf.org/rfc/rfc2629 RFC2629] is an XML format for authoring RFCs and Internet Drafts, see [http://greenbytes.de/tech/webdav/rfc2629xslt/rfc2629xslt.html example document])&lt;br /&gt;
* [http://tantek.com/microformats/buddylist2hcards.html iChat buddy list to hCards] - Open source AppleScript to automatically convert one's buddy list in the MacOSX iChat AIM client into a valid XHTML 1.0 Strict list of hCards. &lt;br /&gt;
* [http://dev.w3.org/cvsweb/2001/palmagent/ palmagent] is a collection of palmpilot and sidekick tools. It includes X2V derivatives xhtml2hcard.xsl and toICal.xsl plus some [http://dev.w3.org/cvsweb/2001/palmagent/hcardTest.html hcardTest] materials&lt;br /&gt;
* [http://www.openpsa.org/ OpenPsa 2.x] CRM application uses hCard for all person listings. The widget is [http://www.midgard-project.org/midcom-permalink-922834501b71daad856f35ec593c7a6d reusable across Midgard CMS]&lt;br /&gt;
* [http://www.metonymie.com Emiliano Martínez Luque] has written an experimental [http://www.metonymie.com/hCard_extract/app.html hCard finder and structured search application] that finds hCards within a given set of URLs and returns the ones that match the specified search criteria.&lt;br /&gt;
&lt;br /&gt;
== Additional Applications ==&lt;br /&gt;
This section is '''informative'''.&lt;br /&gt;
&lt;br /&gt;
There are numerous potential additional uses and applications for hCards on the Web.  The following are merely a few thoughts and possibilities that folks have come up with:&lt;br /&gt;
&lt;br /&gt;
* As an open standard/format for [http://www.gravatar.com/ Gravatars].&lt;br /&gt;
* Marking up individual authors of blog posts on a group blog&lt;br /&gt;
* Marking up people's names and URLs in a blogroll&lt;br /&gt;
* Any reference to people in blog posts (e.g. when citing them, or referencing them, or describing them, by name).&lt;br /&gt;
* ...&lt;br /&gt;
&lt;br /&gt;
== References ==&lt;br /&gt;
=== Normative References ===&lt;br /&gt;
* [http://www.w3.org/TR/2002/REC-xhtml1-20020801/ XHTML 1.0 SE]&lt;br /&gt;
* [http://www.ietf.org/rfc/rfc2426.txt vCard RFC2426]&lt;br /&gt;
&lt;br /&gt;
=== Informative References ===&lt;br /&gt;
* [http://www.w3.org/2002/12/cal/rfc2426 HTML reformatted version of RFC2426]&lt;br /&gt;
* [http://w3.org/TR/REC-CSS1 CSS1]&lt;br /&gt;
* [http://tantek.com/log/2004/09.html#hcard hCard term introduced and defined on the Web, 20040930]&lt;br /&gt;
* [http://wiki.oreillynet.com/foocamp04/index.cgi?SimpleSemanticFormats FOO Camp 2004 Simple Semantic Formats presentation, 20040910]&lt;br /&gt;
* Contributed from http://developers.technorati.com/wiki/hCard.&lt;br /&gt;
* [http://www.w3.org/TR/xhtml11 XHTML 1.1]&lt;br /&gt;
&lt;br /&gt;
==== Specifications That Use hCard ====&lt;br /&gt;
* [[adr]]&lt;br /&gt;
* [[geo]]&lt;br /&gt;
* [[hcalendar|hCalendar]]&lt;br /&gt;
* [[hreview|hReview]]&lt;br /&gt;
&lt;br /&gt;
==== Similar Work ====&lt;br /&gt;
* [http://www.intertwingly.net/wiki/pie/PaceBetterPersonElement Atom PaceBetterPersonElement]&lt;br /&gt;
* [http://www.jabber.org/jeps/jep-0054.html JEP-0054: vcard-temp]&lt;br /&gt;
&lt;br /&gt;
== Related Pages ==&lt;br /&gt;
* [[hcard-profile|hCard profile]] - The XMDP profile for hCard&lt;br /&gt;
&lt;br /&gt;
This specification is a work in progress. As additional aspects are discussed, understood, and written, they will be added. These thoughts, issues, and questions are kept in separate pages.&lt;br /&gt;
&lt;br /&gt;
* [[hcard-brainstorming|hCard Brainstorming]] - where we are keeping our brainstorms and other explorations relating to hCard&lt;br /&gt;
* [[hcard-tests|hCard tests]] - a wiki page with actual embedded hCards to try parsing.&lt;br /&gt;
* [[hcard-faq|hCard FAQ]] - If you have any questions about hCard, check here, and if you don't find answers, add your questions!&lt;br /&gt;
* [[hcard-issues|hCard issues]] - Please add any issues with the specification to the issues page.&lt;br /&gt;
&lt;br /&gt;
== Further Reading ==&lt;br /&gt;
* [http://www.digital-web.com/articles/microformats_primer/ Digital Web Magazine: Microformats Primer] by Garrett Dimon has a good intro to hCard&lt;br /&gt;
* [http://24ways.org/advent/practical-microformats-with-hcard Practical Microformats with hCard] by Drew McLellan&lt;br /&gt;
* [http://thedredge.org/ Andrew D. Hume] has written a blog post on [http://usabletype.com/articles/2005/usable-microformats/ usable microformats] which discusses hCard&lt;br /&gt;
* [http://www.thefutureoftheweb.com/blog/2006/1/hcard Jesse Skinner's introduction to hCard]&lt;br /&gt;
* [http://blog.usweb.com/ Shaun Shull's] great post on [http://blog.usweb.com/archives/how-microformats-affect-search-engine-optimization-seo How Microformats Affect SEO], including his [[hcard|hCard]] as an example.&lt;br /&gt;
* See also [http://www.technorati.com/cosmos/referer.html blogs discussing this page] and the [http://technorati.com/tags/hcard hCard tag]&lt;/div&gt;</summary>
		<author><name>Ragdoll</name></author>
	</entry>
	<entry>
		<id>http://microformats.org/wiki/index.php?title=hcard&amp;diff=4895</id>
		<title>hcard</title>
		<link rel="alternate" type="text/html" href="http://microformats.org/wiki/index.php?title=hcard&amp;diff=4895"/>
		<updated>2006-02-10T17:23:53Z</updated>

		<summary type="html">&lt;p&gt;Ragdoll: /* Examples */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= hCard =&lt;br /&gt;
&lt;br /&gt;
hCard is a simple, open, distributed contact information format for people, companies, and organizations, which is suitable for embedding in (X)HTML, Atom, RSS, and arbitrary XML. hCard is a 1:1 representation of the vCard standard ([http://www.ietf.org/rfc/rfc2426.txt RFC2426]) in XHTML, one of several open [[microformats|microformat]] standards.&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
== Draft Specification ==&lt;br /&gt;
&lt;br /&gt;
=== Editor ===&lt;br /&gt;
[http://tantek.com/ Tantek Çelik], [http://technorati.com Technorati, Inc.]&lt;br /&gt;
&lt;br /&gt;
=== Authors ===&lt;br /&gt;
* [http://tantek.com/ Tantek Çelik], [http://technorati.com Technorati, Inc]&lt;br /&gt;
* [http://suda.co.uk/ Brian Suda]&lt;br /&gt;
&lt;br /&gt;
=== Copyright ===&lt;br /&gt;
{{MicroFormatCopyrightStatement2004}}&lt;br /&gt;
&lt;br /&gt;
=== Patents ===&lt;br /&gt;
{{MicroFormatPatentStatement}}&lt;br /&gt;
&lt;br /&gt;
=== Inspiration and Acknowledgments ===&lt;br /&gt;
Thanks to: my good friend [http://vadim.com/ Vadim] who introduced me to vCard ''many'' years ago, and if I'd only paid more attention then, perhaps I could have helped a lot of people avoid wasting a lot of time reinventing various standards wheels.&lt;br /&gt;
&lt;br /&gt;
== Introduction ==&lt;br /&gt;
The vCard standard ([http://www.ietf.org/rfc/rfc2426.txt RFC2426]), has been broadly interoperably implemented (e.g. Apple's &amp;quot;Address Book&amp;quot; application built into MacOSX).&lt;br /&gt;
&lt;br /&gt;
In addition, many bloggers identify themselves by name and discuss their friends and family.  With just a tad bit of structure, bloggers can discuss people in their blog(s) in such a way that spiders and other aggregators can retrieve this information, automatically convert them to vCards, and use them in any vCard application or service.&lt;br /&gt;
&lt;br /&gt;
This specification introduces the '''hCard''' format, which is a 1:1 representation of the aforementioned vCard standard, in semantic XHTML.  Bloggers can both embed vCards directly in their web pages, and style them with CSS to make them appear as desired.  In addition, hCard enables applications to retrieve information about such vCards directly from web pages without having to reference a separate file.&lt;br /&gt;
&lt;br /&gt;
Use the [http://microformats.org/code/hcard/creator hCard creator], copy the HTML code it generates to your blog or website to publish your contact info.&lt;br /&gt;
&lt;br /&gt;
== Semantic XHTML Design Principles ==&lt;br /&gt;
{{semantic-xhtml-design-principles}}&lt;br /&gt;
&lt;br /&gt;
== Format ==&lt;br /&gt;
=== In General ===&lt;br /&gt;
The vCard standard ([http://www.ietf.org/rfc/rfc2426.txt RFC2426]) forms the basis of hCard.&lt;br /&gt;
&lt;br /&gt;
The basic format of hCard is to use vCard object/property names in lower-case for class names, and to map the nesting of vCard objects directly into nested XHTML elements.&lt;br /&gt;
&lt;br /&gt;
=== More Semantic Equivalents ===&lt;br /&gt;
However, for some properties there is a more semantic equivalent, and therefore they get special treatment, e.g.:&lt;br /&gt;
* &amp;lt;code&amp;gt;URL&amp;lt;/code&amp;gt; in vCard becomes  &amp;lt;code&amp;gt;&amp;lt;a class=&amp;quot;url&amp;quot; href=&amp;quot;...&amp;quot;&amp;gt;...&amp;lt;/a&amp;gt;&amp;lt;/code&amp;gt; inside the element with &amp;lt;code&amp;gt;class=&amp;quot;vcard&amp;quot;&amp;lt;/code&amp;gt; in hCard.&lt;br /&gt;
* Similarly, &amp;lt;code&amp;gt;EMAIL&amp;lt;/code&amp;gt; in vCard becomes &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;&amp;lt;a class=&amp;quot;email&amp;quot; href=&amp;quot;mailto:...&amp;quot;&amp;gt;...&amp;lt;/a&amp;gt;&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;PHOTO&amp;lt;/code&amp;gt; in vCard becomes &amp;lt;code&amp;gt;&amp;lt;img class=&amp;quot;photo&amp;quot; src=&amp;quot;...&amp;quot; alt=&amp;quot;Photo of ...&amp;quot; /&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Singular vs. Multivalued Properties ===&lt;br /&gt;
&lt;br /&gt;
For properties which are singular (e.g. &amp;quot;N&amp;quot; and &amp;quot;FN&amp;quot;), the first descendant element with that class should take effect, any others being ignored.&lt;br /&gt;
&lt;br /&gt;
For properties which can be plural (e.g. &amp;quot;TEL&amp;quot;), each class instance should create a instance of that property.&lt;br /&gt;
&lt;br /&gt;
==== Plural Properties Singularized ====&lt;br /&gt;
&lt;br /&gt;
Since plural property names become their singular equivalents, even if the original plural property permitted only a single value with multiple components, those multiple components are represented each with their own singularly named property and the the property is effectively multivalued and subject to the above treatment of multivalued properties.&lt;br /&gt;
&lt;br /&gt;
=== Human vs. Machine readable ===&lt;br /&gt;
&lt;br /&gt;
If an &amp;lt;code&amp;gt;&amp;amp;lt;abbr&amp;gt;&amp;lt;/code&amp;gt; element is used for a property, then the '&amp;lt;code&amp;gt;title&amp;lt;/code&amp;gt;' attribute of the &amp;lt;code&amp;gt;&amp;amp;lt;abbr&amp;gt;&amp;lt;/code&amp;gt; element is the value of the property, instead of the contents of the element, which instead provide a human presentable version of the value.  &lt;br /&gt;
&lt;br /&gt;
Similarly, if an &amp;lt;code&amp;gt;&amp;amp;lt;img&amp;gt;&amp;lt;/code&amp;gt; element is used for one or more properties, it must be treated as follows:&lt;br /&gt;
# For the &amp;quot;PHOTO&amp;quot; property and any other property that takes a URL as its value, the &amp;lt;code&amp;gt;src=&amp;quot;...&amp;quot;&amp;lt;/code&amp;gt; attribute provides the property value.&lt;br /&gt;
# For other properties, the &amp;lt;code&amp;gt;&amp;amp;lt;img&amp;gt;&amp;lt;/code&amp;gt; element's '&amp;lt;code&amp;gt;alt&amp;lt;/code&amp;gt;' attribute is the value of the property.&lt;br /&gt;
&lt;br /&gt;
=== Value excerpting ===&lt;br /&gt;
&lt;br /&gt;
Sometimes only part of an element which is the equivalent for a property should be used for the value of the property.  This typically occurs when a property has a subtype, like TEL.  For this purpose, the special class name &amp;quot;&amp;lt;code&amp;gt;value&amp;lt;/code&amp;gt;&amp;quot; is introduced to excerpt out the subset of the element that is  the value of the property.  E.g. here is an hCard fragment for marking up a home phone number:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
&amp;lt;span class=&amp;quot;tel&amp;quot;&amp;gt;&lt;br /&gt;
 &amp;lt;span class=&amp;quot;type&amp;quot;&amp;gt;home&amp;lt;/span&amp;gt;:&lt;br /&gt;
 &amp;lt;span class=&amp;quot;value&amp;quot;&amp;gt;+1.415.555.1212&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This hCard fragment could be displayed as:&lt;br /&gt;
&lt;br /&gt;
 home: +1.415.555.1212&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Property Exceptions ===&lt;br /&gt;
&lt;br /&gt;
vCard has several properties which either do not make sense on, or are already implied within the context of a web page.  This section explains what to (not) do with them.&lt;br /&gt;
&lt;br /&gt;
# '''NAME''', '''PROFILE''', '''SOURCE''', '''PRODID''', '''VERSION''' properties as defined in Sections 2.1.2, 2.1.3, 2.1.4, 3.6.3, 3.6.9 of RFC 2426.  Content publishers MUST NOT use these properties in their hCards, and as such, hCard consumers/parsers MUST IGNORE these properties if they are found within an hCard.  Instead. hCard to vCard converters SHOULD use the title of the page where the hCard is found (e.g. the &amp;lt;code&amp;gt;&amp;lt;title&amp;gt;&amp;lt;/code&amp;gt; element in (X)HTML documents) to construct the NAME property, MAY output a PROFILE value of &amp;quot;&amp;lt;code&amp;gt;VCARD&amp;lt;/code&amp;gt;&amp;quot; per RFC 2426, SHOULD use the URL of the page where the hCard is found to construct the SOURCE property (e.g. perhaps as a parameter to a URL/service that converts hCards to vCards), for an output vCard stream (e.g. a .vcf file). Only services/applications that output actual vCards should write the PRODID property, with the product identifier for said service/application.   Similarly only such services/applications should write the VERSION property, with the value &amp;quot;3.0&amp;quot; (without quotes) per RFC2426 Section 3.6.9.&lt;br /&gt;
&lt;br /&gt;
=== Implied &amp;quot;N&amp;quot; Optimization ===&lt;br /&gt;
&lt;br /&gt;
Although vCard requires that the &amp;quot;N&amp;quot; property be present, the authors of the vCard specification (RFC 2426) themselves do not include &amp;quot;N&amp;quot; properties in their vCards near the end of the spec (p.38).  This apparent contradiction can be resolved by simply allowing the &amp;quot;FN&amp;quot; property to imply &amp;quot;N&amp;quot; property values in typical cases provided in the spec.  We do so explicitly in hCard.&lt;br /&gt;
&lt;br /&gt;
If the value of the &amp;quot;FN&amp;quot; property is exactly two words (separated by whitespace.), and there is no explicit &amp;quot;N&amp;quot; property, then the &amp;quot;N&amp;quot; property is inferred from the &amp;quot;FN&amp;quot; property.  For &amp;quot;FN&amp;quot;s with either one word or three or more, then the author MUST explicitly markup the &amp;quot;N&amp;quot;, except for the organization contact info case, [http://microformats.org/wiki/hcard#Organization_Contact_Info see below] for that.&lt;br /&gt;
&lt;br /&gt;
# The content of &amp;quot;FN&amp;quot; is broken into two &amp;quot;words&amp;quot; separated by whitespace.&lt;br /&gt;
# The ''first'' word of the &amp;quot;FN&amp;quot; is interpreted as the &amp;quot;Given Name&amp;quot; for the &amp;quot;N&amp;quot; property.&lt;br /&gt;
# The ''second/last'' word of the &amp;quot;FN&amp;quot; is interpreted as the &amp;quot;Family Name&amp;quot; for the &amp;quot;N&amp;quot; property.&lt;br /&gt;
# Exception: If the first word ends in a &amp;quot;,&amp;quot; comma OR if the second word is a single character (optionally followed by a period &amp;quot;.&amp;quot;), then the first word (minus the comma at the end if any) is interpreted as the &amp;quot;Family Name&amp;quot; and the second word is interpreted as the &amp;quot;Given Name&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
This allows simplification in the typical case of people stating their firstname space lastname, or lastname comma firstname, or lastname comma firstinitial, or lastname space firstinitial.&lt;br /&gt;
&lt;br /&gt;
==== Organization Contact Info ====&lt;br /&gt;
&lt;br /&gt;
Contact info for a company or organization is a special case of the implied &amp;quot;N&amp;quot; optimization.&lt;br /&gt;
 &lt;br /&gt;
If the &amp;quot;FN&amp;quot; and &amp;quot;ORG&amp;quot; properties have the exact same value (typically because they are set on the same element, e.g. class=&amp;quot;fn org&amp;quot;), then the hCard represents contact information for a company or organization and should be treated as such.  In this case the author MUST also NOT set the &amp;quot;N&amp;quot; property, or set it (and any sub-properties) explicitly to the empty string &amp;quot;&amp;quot;.  Thus parsers should handle the missing &amp;quot;N&amp;quot; property in this case by implying empty values for all the &amp;quot;N&amp;quot; sub-properties.&lt;br /&gt;
&lt;br /&gt;
=== Implied &amp;quot;organization-name&amp;quot; Optimization ===&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;ORG&amp;quot; property has two subproperties, organization-name and organization-unit. Very often authors only publish the organization-name.  Thus if an &amp;quot;ORG&amp;quot; property has no &amp;quot;organization-name&amp;quot; inside it, then its entire contents MUST be treated as the &amp;quot;organization-name&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
=== Root Class Name ===&lt;br /&gt;
&lt;br /&gt;
The root class name for an hCard is &amp;quot;vcard&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
=== Property List ===&lt;br /&gt;
&lt;br /&gt;
This is the list of properties (and subproperties, in parantheses, like this) in hCard, taken from vCard:&lt;br /&gt;
&lt;br /&gt;
* fn, n (family-name, given-name, additional-name, honorific-prefix, honorific-suffix), nickname, sort-string&lt;br /&gt;
* url, email (type, value), tel (type, value)&lt;br /&gt;
* adr (post-office-box, extended-address, street-address, locality, region, postal-code, country-name, type, value), label&lt;br /&gt;
* geo (latitude, longitude), tz&lt;br /&gt;
* photo, logo, sound, bday&lt;br /&gt;
* title, role, org (organization-name, organization-unit)&lt;br /&gt;
* category, note&lt;br /&gt;
* class, key, mailer, uid, rev&lt;br /&gt;
==== type subproperty values ====&lt;br /&gt;
&lt;br /&gt;
The 'type' subproperty in particular takes different values depending on which property it is a subproperty of.  These 'type' subproperty values are case-INSENSITIVE, meaning &amp;quot;Home&amp;quot; is the same as &amp;quot;home&amp;quot;, as well as multivalued, e.g. a tel can be home and preferred:&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
&amp;lt;span class=&amp;quot;tel&amp;quot;&amp;gt;&amp;lt;span class=&amp;quot;type&amp;quot;&amp;gt;Home&amp;lt;/span&amp;gt; (&amp;lt;span class=&amp;quot;type&amp;quot;&amp;gt;pref&amp;lt;/span&amp;gt;erred):&lt;br /&gt;
 &amp;lt;span class=&amp;quot;value&amp;quot;&amp;gt;+1.415.555.1212&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The following lists are ''informative''. See RFC2426 sections 3.2.1 ADR, 3.3.1 TEL, and 3.3.2 EMAIL respectively for normative type values.  They are repeated here for convenience. Default type subproperty value(s) is(are) first in each list and indicated in ALL CAPS.  types may be multivalued.&lt;br /&gt;
&lt;br /&gt;
* adr type: INTL, POSTAL, PARCEL, WORK, dom, home, pref&lt;br /&gt;
* tel type: VOICE, home, msg, work, pref, fax, cell, video, pager, bbs, modem, car, isdn, pcs&lt;br /&gt;
* email type: INTERNET, x400, pref, &amp;quot;other IANA registered address types&amp;quot;&lt;br /&gt;
&lt;br /&gt;
=== XMDP Profile ===&lt;br /&gt;
&lt;br /&gt;
See [[hcard-profile]] for the [http://gmpg.org/xmdp XMDP] profile of hCard which contains the above complete list of properties, with references to their RFC 2426 definitions.&lt;br /&gt;
&lt;br /&gt;
=== Parsing Details ===&lt;br /&gt;
&lt;br /&gt;
See [[hcard-parsing|hCard parsing]].&lt;br /&gt;
&lt;br /&gt;
== Examples ==&lt;br /&gt;
&lt;br /&gt;
This section is informative.&lt;br /&gt;
&lt;br /&gt;
=== Sample vCard ===&lt;br /&gt;
&lt;br /&gt;
Here is a sample vCard:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
BEGIN:VCARD&lt;br /&gt;
VERSION:3.0&lt;br /&gt;
N:Çelik;Tantek&lt;br /&gt;
FN:Tantek Çelik&lt;br /&gt;
URL:http://tantek.com&lt;br /&gt;
ORG:Technorati&lt;br /&gt;
END:VCARD&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
and an equivalent in hCard with various elements optimized appropriately.  See [[hcard-example1-steps| hCard Example 1]] for the derivation. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;vcard&amp;quot;&amp;gt;&lt;br /&gt;
 &amp;lt;a class=&amp;quot;url fn&amp;quot; href=&amp;quot;http://tantek.com/&amp;quot;&amp;gt;Tantek Çelik&amp;lt;/a&amp;gt;&lt;br /&gt;
 &amp;lt;div class=&amp;quot;org&amp;quot;&amp;gt;Technorati&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This hCard might be displayed as:&lt;br /&gt;
&lt;br /&gt;
[http://tantek.com/ Tantek Çelik]&amp;lt;br /&amp;gt;&lt;br /&gt;
Technorati&lt;br /&gt;
&lt;br /&gt;
Note: The version information is unnecessary in hCard markup directly since the version will be defined by the profile of hCard that is used/referred to in the 'profile' attribute of the &amp;lt;head&amp;gt; element.&lt;br /&gt;
&lt;br /&gt;
=== More Examples ===&lt;br /&gt;
&lt;br /&gt;
See [[hcard-examples]] for more examples, including all examples from vCard RFC 2426 converted into hCard.&lt;br /&gt;
&lt;br /&gt;
== Examples in the wild ==&lt;br /&gt;
This section is '''informative'''.&lt;br /&gt;
&lt;br /&gt;
The following sites have published hCards, and thus are a great place to start for anyone looking for examples &amp;quot;in the wild&amp;quot; to try parsing, indexing, organizing etc.  If you have an hCard on your own page, feel free to add it to the top of this list.  Once the list grows too big, we'll make a separate wiki page.&lt;br /&gt;
&lt;br /&gt;
=== New Examples ===&lt;br /&gt;
Please add new examples to this section.&lt;br /&gt;
&lt;br /&gt;
* [http://www.multipack.co.uk The Multipack] has numerous hCards, especially on the [http://www.multipack.co.uk/members/ members page], as well as the next meeting information.&lt;br /&gt;
* [http://deadringrancor.livejournal.com/ Justin McDowell] used an hCard when [http://deadringrancor.livejournal.com/221332.html referring to a person in his blog post]&lt;br /&gt;
* [http://davecardwell.co.uk/cv/ Dave Cardwell] has included his hCard in his Curriculum Vitae.&lt;br /&gt;
* [http://blog.usweb.com/ Shaun Shull] has written a great post on [http://blog.usweb.com/archives/how-microformats-affect-search-engine-optimization-seo How Microformats Affect SEO], and has included his [[hcard|hCard]] as one of the examples.&lt;br /&gt;
* [http://www.thefutureoftheweb.com/ Jesse Skinner] has written a simple [http://www.thefutureoftheweb.com/blog/2006/1/hcard tutorial with examples]&lt;br /&gt;
* [http://www.w3.org/2005/12/allgroupoverview.html 2006 W3C Technical Plenary Week] has marked up the venue, contacts, and program committee members all with hCard.&lt;br /&gt;
* [http://www.avf-nexus.co.uk AVF-Nexus] have a hCard on their [http://www.avf-nexus.co.uk/contact/ contact page] - (by [http://creation.uk.com Creation&amp;quot;])&lt;br /&gt;
* [http://www.thefantasticos.com/andrew/ Andrew White] posted [http://www.thefantasticos.com/andrew/index.php/my-hcard/ his hCard] and [http://www.thefantasticos.com/andrew/index.php/62/microformats-the-should-have-been-obvious-web-dev-tool/ blogged about it].&lt;br /&gt;
* [http://www.2sheds.ru Oleg &amp;quot;2sheds&amp;quot; Kourapov] in his [http://www.2sheds.ru/blog/ blog] ([http://suda.co.uk/projects/X2V/get-vcard.php?uri=http://www.2sheds.ru/blog X2V]) has turned personal profile into hCard ([http://suda.co.uk/projects/X2V/get-vcard.php?uri=http://www.2sheds.ru/blog/hcard.html X2V]) and his blogroll - into combination XFN/hCards ([http://suda.co.uk/projects/X2V/get-vcard.php?uri=http://www.2sheds.ru/blog/friends.html X2V])&lt;br /&gt;
* [http://www.approveddesign.co.uk Approved Design Consultancy] have a hCard on their [http://www.approveddesign.co.uk/about/contact/ contact page] as well as on their [http://www.approveddesign.co.uk/about/people/ people section] - (by [http://creation.uk.com Creation&amp;quot;])&lt;br /&gt;
* [http://weblog.200ok.com.au/ Ben Buchanan] and [http://www.griffith.edu.au/cgi-bin/phone_search.pl?string=colin+morris&amp;amp;format=search Colin Morris] have [http://weblog.200ok.com.au/2006/01/griffith-phonebook-adds-hcard-and.html implemented hCards and vCards] for the [http://www.griffith.edu.au Griffith University] [http://www.griffith.edu.au/find/content_phonebook.html online phone book]. Eg. [http://www.griffith.edu.au/cgi-bin/phone_search.pl?string=ben+buchanan&amp;amp;format=search Ben's vCard] and [http://www.griffith.edu.au/cgi-bin/phone_search.pl?string=colin+morris&amp;amp;format=search Colin's vCard]&lt;br /&gt;
* WWF-Australia [http://wwf.org.au/about/contactdetails/ contact details page]&lt;br /&gt;
&lt;br /&gt;
=== Examples ===&lt;br /&gt;
* The [http://www.arborday.org/ National Arbor Day Foundation] has started using hCards for their [http://arborday.org/programs/conferences/communityforestry/index.cfm upcoming] [http://arborday.org/programs/conferences/hazardtrees-treeplanting/ conferences].&lt;br /&gt;
* [http://thoughtport.blogspot.com/ Aiden Kenny] hasn't published his hCard yet, but he has [http://thoughtport.blogspot.com/2005/07/elemental-particles-of-web.html published his hCard icon]: http://photos1.blogger.com/blogger/4224/444/320/AK-Hcard-icon.gif&lt;br /&gt;
* [http://thedredge.org Andy Hume] uses the hcard format to mark-up the names and URLs of commentors on his blog. &lt;br /&gt;
* [http://www.bidclix.com/ BidClix]'s [http://www.bidclix.com/AboutContact.html Contact BidClix] page has it's ''contact info'' marked up with an hCard.&lt;br /&gt;
* [http://suda.co.uk/ Brian Suda] has managed to embed a photo in [http://suda.co.uk/contact/ his hCard] through the [http://www.ietf.org/rfc/rfc2397.txt data uri scheme] by converting the image to BASE64 code. View the Source to see how this is accomplished. [http://suda.co.uk/projects/X2V/get-vcard.php?uri=http%3A//suda.co.uk/contact/ The X2V link] will extract the image and encode it for a vCard which will be displayed in some address book applications.&lt;br /&gt;
* [http://cinematreasures.org Cinema Treasures] uses hCard to markup venue information for 10,000+ movie theaters.&lt;br /&gt;
* [http://www.w3.org/People/Connolly/events/ Dan Connolly's index of events and talks] has hCards for many of the people he has met at those events.&lt;br /&gt;
* [http://doncrowley.blogspot.com/ Don Crowley] has published [http://www.crowley.nl/hcard.html his hCard] as well as a nifty hCard button: http://www.crowley.nl/images/hcard.png&lt;br /&gt;
* [http://loadaveragezero.com/hnav/contact.php Douglas W. Clifton] added all types of contact information&lt;br /&gt;
* [http://evdb.com EVDB], the Events and Venues Database, publishes all venue detail pages with embedded hCards.&lt;br /&gt;
* [http://www.iowamilitaryveteransband.com/members/ Iowa Military Veterans Band Contacts] - 95 hCards [http://weblog.randomchaos.com/archive/2005/10/24/Microformats/ marked up by Scott Reynen]&lt;br /&gt;
* [http://JackWolfgang.blogspot.com Jack L. Wolfgang II] has [http://jack.randomata.com/resume/ converted the addresses in his resume to hCards].&lt;br /&gt;
* [http://www.efas.fupl.asso.fr/efas/_Mathieu-Drouet_.html Mathieu Drouet] and [http://www.efas.fupl.asso.fr/efas/_Annie-Leger_.html Annie Leger] both have hCards&lt;br /&gt;
* [http://www.ndunn.com Neil Dunn] has published his rather [http://www.ndunn.com/2005/10/7/hCard good looking hCard]&lt;br /&gt;
* [http://www.oliverbrown.me.uk/ Oliver Brown] has published his hCard.&lt;br /&gt;
* [http://www.paradigmproductions.org/contact/ Paradigm Productions] published a vcard as a ul (marked up by [http://www.linkingarts.com/ Peter Jacobson])&lt;br /&gt;
* [http://www.splintered.co.uk/ Patrick H. Lauke] has marked up [http://www.splintered.co.uk/about/ his contact info with hCard].&lt;br /&gt;
* [http://blah Paul Schreiber has published his hCard on [http://paulschreiber.com/about/?contact his about page].&lt;br /&gt;
* [http://paulschreiber.com/blog/ Paul Schreiber]'s [http://concerts.shrub.ca/ Sunnyvale House Concerts] site publishes hCards for upcoming artists, as well as an hCard for the page itself.  In addition the [http://concerts.shrub.ca/shows Past Shows] page contains hCards for all past artists.&lt;br /&gt;
* [http://www.paulmichaelsmith.com/blog/hcard.htm Paul Smith] has created an hCard page which is Human Readable, and a link to X2V passing the same hCard page to generate a vCard.&lt;br /&gt;
* [http://www.windley.com/archives/2005/07/hcards_trying_o.shtml Phil Windley has published] [http://phil.windley.org/hcard.html his hCard].&lt;br /&gt;
* [http://www.go-curiosity.com/about.htm Piercarlo Slavazza] has published an hCard.&lt;br /&gt;
* [http://zooibaai.nl/ Rob Mientjes] has published his hCard on [http://zooibaai.nl/about/ his about page].&lt;br /&gt;
* [http://rbach.priv.at/Contact Robert Bachmann] has published his hCard and [http://rbach.priv.at/Images/hcard a button].&lt;br /&gt;
* [http://blah Scott Reynen has published his hCard on [http://www.randomchaos.com/document.php?source=scott_reynen his profile page].&lt;br /&gt;
* [http://www.stackframe.com/ StackFrame, LLC] has published [http://www.stackframe.com/people/ employee] and [http://www.stackframe.com/contact/ general] contact information as hCards.&lt;br /&gt;
* [http://www.wolfsreign.com Steven Ametjan] has published his hCard on [http://www.wolfsreign.com/about/ his about page].&lt;br /&gt;
* [http://tantek.com/microformats/2005/syndicate/speakers-list.html Syndicate - Speaker List] as a set of hCards&lt;br /&gt;
* [http://tagcamp.org/index.cgi?ContactList TagCamp contact list]&lt;br /&gt;
* [http://tantek.com/log Tantek's Thoughts] includes an inline author hCard at the bottom of the page.&lt;br /&gt;
* [http://technorati.com/ Technorati]'s [http://www.technorati.com/about/ About page] lists their '''Media Contact'''&lt;br /&gt;
* [http://www.deadringerart.com/ The Brothers McDowell] have hCards at their Contact page.&lt;br /&gt;
* [http://twinsparc.com/ Twinsparc] put an hCard in the header and footer of all their pages.&lt;br /&gt;
* [http://tantek.com/microformats/2005/web2/speakers.html Web 2.0 Conference speakers page marked up with hCard]&lt;br /&gt;
* [http://we05.com/ Web Essentials 05] marked up all their [http://we05.com/presenters.cfm presenters with hCard].&lt;br /&gt;
&lt;br /&gt;
=== Examples with some problems ===&lt;br /&gt;
* [http://gbraad.nl/ Gerard Braad] has published an example on his [http://gbraad.nl/site/?p=profile profile] page that is almost consistent with his original [http://gbraad.nl/files/gbraad.vcf vCard] file. Also progress is made for transforming his [http://files.gbraad.nl/foaf.rdf FoaF] file to a hCard encoded representation. (also done for my spouse:[http://spouse.gbraad.nl/site/?p=profile Yong Yuan])&lt;br /&gt;
** (2005-09-27) PASSED, PASSED&lt;br /&gt;
** WARNINGS&lt;br /&gt;
*** uses 'n given-name' and 'n family-name' instead of nesting the given- and family- names inside the 'n'&lt;br /&gt;
*** has one 'tel' value with a bunch of values stuffed in&lt;br /&gt;
*** probably more problems --[[User:RyanKing|RyanKing]] 17:19, 5 Jan 2006 (PST)&lt;br /&gt;
* [http://www.kerihenare.com/ Keri Henare] has marked up his [http://www.kerihenare.com/contact/ contact info page] with hCard.&lt;br /&gt;
** (2005-09-27) PASSED&lt;br /&gt;
** (2005-11-01) hCard completely rewritten&lt;br /&gt;
** WARNING - type subproperty in classname&lt;br /&gt;
* [http://kinrowan.net/ Cori Schlegel] [http://kinrowan.net/blog/wp/archives/2005/07/08/a-problem-with-the-structured-blogging-plug-in-for-wordpress/ discusses how he has updated] [http://kinrowan.net/blog/contact his contact page with hCard]&lt;br /&gt;
** INVALID - using 'prefix' instead of 'honorific-prefix' and type's in classnames (in both adr and tel) and has two photo's (the second could be 'logo') --[[User:RyanKing|RyanKing]] 15:15, 5 Jan 2006 (PST)&lt;br /&gt;
* The good ship [http://styrheim.com/test/leonid.html Leonid Miloslavskiy] spotted in the North Atlantic&lt;br /&gt;
** INVALID  --[[User:RyanKing|RyanKing]] 00:50, 27 Oct 2005 (PDT)&lt;br /&gt;
*** class=&amp;quot;family&amp;quot; should probably be family-name&lt;br /&gt;
*** the &amp;quot;n&amp;quot; property is missing and the &amp;quot;n&amp;quot; optimization can't be applied&lt;br /&gt;
*** the first geo propery is empty, the second one is invalid (ie, it doesn't contain lat/long)&lt;br /&gt;
* [http://landsbank.fo/#hCard Landsbanki Føroya]&lt;br /&gt;
** INVALID - using embedded rdf/xml invalidly&lt;br /&gt;
* [http://chrischerry.name/blog/contact/ Chris Cherry's contact page with his hCard]&lt;br /&gt;
** WARNING - uses class=&amp;quot;cell&amp;quot; instead of &amp;amp;lt;span class=&amp;quot;type&amp;quot;&amp;amp;gt;cell&amp;amp;lt;/span&amp;amp;gt;&lt;br /&gt;
* [http://www.bath.ac.uk/contact/ University of Bath] Person Finder results are encoded with hCards so you can easily create a vCard from any result. &lt;br /&gt;
** ERROR - attempt to use Implied-N optimization where that's not possible. --[[User:RyanKing|RyanKing]] 14:29, 5 Jan 2006 (PST)&lt;br /&gt;
** Error appears for external users only. Won't be fixed any time soon. -- [[User:PhilWilson|PhilWilson]] 00:03, 28 Jan 2006 (GMT)&lt;br /&gt;
* [http://richi.co.uk/blog/2005/12/structured-blogging.html Richi Jennings] has put up his attempt&lt;br /&gt;
** INVALID, missing FN --[[User:RyanKing|RyanKing]] 12:47, 5 Jan 2006 (PST)&lt;br /&gt;
* [http://www.shiftingpixel.com/about/ shifting pixel photoblog] has published an hCard.&lt;br /&gt;
** &amp;quot;organization_name&amp;quot; should be &amp;quot;organization-name&amp;quot; (s/_/-/), otherwise good --[[User:RyanKing|RyanKing]] 14:01, 5 Jan 2006 (PST)&lt;br /&gt;
&lt;br /&gt;
== Implementations ==&lt;br /&gt;
This section is '''informative'''.&lt;br /&gt;
&lt;br /&gt;
The following implementations have been developed which either generate or parse hCards. If you have an hCard implementation, feel free to add it to the top of this list. Once the list grows too big, we'll make a separate wiki page.&lt;br /&gt;
&lt;br /&gt;
* [http://blog.codeeg.com/tails-firefox-extension/ Tails is a Firefox Extension] that will display the presence and details of microformats ([[hcard|hCard]], [[hcalendar|hCalendar]], [[hreview|hReview]], [[xfolk|xFolk]]) on a webpage.&lt;br /&gt;
* [http://www.stripytshirt.co.uk/features/firefox/smartzilla Smartzilla is a Firefox Extension] that finds hCards on web pages and lets you add them to your addressbook.&lt;br /&gt;
* [http://placenamehere.com/TXP/pnh_mf/ pnh_mf] is a plugin for [http://textpattern.com/ Textpattern] that supports embedding hCard and other microformats in templates and blog posts. Written by [http://placenamehere.com/ Chris Casciano].&lt;br /&gt;
* There is [http://flickr.com/photos/factoryjoe/68755089/ evidence of built-in hCard support in the Konqueror browser].  Specifically, Konqueror 3.5, in KDE 3.5 (kubuntu Breezy w/ update).&lt;br /&gt;
* There is [http://tagcamp.org/index.cgi?ContactList evidence of a kwiki plugin for hCards].  Update: the [http://svn.kwiki.org/cwest/Kwiki-hCard/ hCard kwiki plugin svn repository].  See the [http://microwiki.caseywest.com/index.cgi?hCard documentation of the hCard kwiki plugin].&lt;br /&gt;
* [http://suda.co.uk/projects/X2V/ X2V] is a bookmarklet that parses hCard and produces a .vcf (vCard) stream.  Note: needs to be updated as the spec is refined&lt;br /&gt;
* [http://www.stripytshirt.co.uk Duncan Walker] has built [http://www.stripytshirt.co.uk/features/firefox/smartzilla a Firefox extension] that gets hCard data from a webpage, uses Brian Suda's XSL (locally) to transform it to vcard format and opens the resulting .vcf file.&lt;br /&gt;
* [http://george.hotelling.net/90percent/ George] has written a [http://george.hotelling.net/90percent/geekery/greasemonkey_and_microformats.php Greasemonkey user script] that detects hCards and allows users to easily add them to their address book application.  Relies on the X2V web service to do the conversion.&lt;br /&gt;
* [http://blogmatrix.blogmatrix.com/ David Janes] has written a [[Greasemonkey]] [http://www.blogmatrix.com/include/microformat-find.user.js script] that finds many microformat elements, including hCards, and [http://blog.davidjanes.com/mtarchives/2005_08.html#003376 provides a popup menu of actions]. The hCard to vCard conversion is done internally within the script. ''This does not work with FireFox 1.5+/GreaseMonkey 0.6.4+.''&lt;br /&gt;
* [http://diveintomark.org/ Mark Pilgrim] has also written an [http://diveintomark.org/projects/greasemonkey/hcard/ hCard parser Greasemonkey user script].  It is self-contained and does not rely on the X2V web service.&lt;br /&gt;
* [http://www.oliverbrown.me.uk/2005/09/03/a-working-microformats-extension-to-simplexml/ Oliver Brown] has written an &amp;quot;extension&amp;quot; to [http://www.php.net/simplexml SimpleXML] that gives simple access to hCard information in PHP 5.&lt;br /&gt;
* [http://thedredge.org/ Andrew D. Hume] has built a system (Wordpress plugin?) for [http://thedredge.org/2005/06/using-hcards-in-your-blog/ using hcards in your blog] to represent people leaving comments on blog posts.&lt;br /&gt;
* The [http://tantek.com/microformats/hcard-creator.html hCard creator] is a very simple, yet illustrative, open source user interface / form / script which creates an hCard in real-time as you type in a set of contact information. &lt;br /&gt;
* [http://greenbytes.de/tech/webdav/rfc2629.xslt rfc2629.xslt] now attempts to generate hCard information ([http://ietf.org/rfc/rfc2629 RFC2629] is an XML format for authoring RFCs and Internet Drafts, see [http://greenbytes.de/tech/webdav/rfc2629xslt/rfc2629xslt.html example document])&lt;br /&gt;
* [http://tantek.com/microformats/buddylist2hcards.html iChat buddy list to hCards] - Open source AppleScript to automatically convert one's buddy list in the MacOSX iChat AIM client into a valid XHTML 1.0 Strict list of hCards. &lt;br /&gt;
* [http://dev.w3.org/cvsweb/2001/palmagent/ palmagent] is a collection of palmpilot and sidekick tools. It includes X2V derivatives xhtml2hcard.xsl and toICal.xsl plus some [http://dev.w3.org/cvsweb/2001/palmagent/hcardTest.html hcardTest] materials&lt;br /&gt;
* [http://www.openpsa.org/ OpenPsa 2.x] CRM application uses hCard for all person listings. The widget is [http://www.midgard-project.org/midcom-permalink-922834501b71daad856f35ec593c7a6d reusable across Midgard CMS]&lt;br /&gt;
* [http://www.metonymie.com Emiliano Martínez Luque] has written an experimental [http://www.metonymie.com/hCard_extract/app.html hCard finder and structured search application] that finds hCards within a given set of URLs and returns the ones that match the specified search criteria.&lt;br /&gt;
&lt;br /&gt;
== Additional Applications ==&lt;br /&gt;
This section is '''informative'''.&lt;br /&gt;
&lt;br /&gt;
There are numerous potential additional uses and applications for hCards on the Web.  The following are merely a few thoughts and possibilities that folks have come up with:&lt;br /&gt;
&lt;br /&gt;
* As an open standard/format for [http://www.gravatar.com/ Gravatars].&lt;br /&gt;
* Marking up individual authors of blog posts on a group blog&lt;br /&gt;
* Marking up people's names and URLs in a blogroll&lt;br /&gt;
* Any reference to people in blog posts (e.g. when citing them, or referencing them, or describing them, by name).&lt;br /&gt;
* ...&lt;br /&gt;
&lt;br /&gt;
== References ==&lt;br /&gt;
=== Normative References ===&lt;br /&gt;
* [http://www.w3.org/TR/2002/REC-xhtml1-20020801/ XHTML 1.0 SE]&lt;br /&gt;
* [http://www.ietf.org/rfc/rfc2426.txt vCard RFC2426]&lt;br /&gt;
&lt;br /&gt;
=== Informative References ===&lt;br /&gt;
* [http://www.w3.org/2002/12/cal/rfc2426 HTML reformatted version of RFC2426]&lt;br /&gt;
* [http://w3.org/TR/REC-CSS1 CSS1]&lt;br /&gt;
* [http://tantek.com/log/2004/09.html#hcard hCard term introduced and defined on the Web, 20040930]&lt;br /&gt;
* [http://wiki.oreillynet.com/foocamp04/index.cgi?SimpleSemanticFormats FOO Camp 2004 Simple Semantic Formats presentation, 20040910]&lt;br /&gt;
* Contributed from http://developers.technorati.com/wiki/hCard.&lt;br /&gt;
* [http://www.w3.org/TR/xhtml11 XHTML 1.1]&lt;br /&gt;
&lt;br /&gt;
==== Specifications That Use hCard ====&lt;br /&gt;
* [[adr]]&lt;br /&gt;
* [[geo]]&lt;br /&gt;
* [[hcalendar|hCalendar]]&lt;br /&gt;
* [[hreview|hReview]]&lt;br /&gt;
&lt;br /&gt;
==== Similar Work ====&lt;br /&gt;
* [http://www.intertwingly.net/wiki/pie/PaceBetterPersonElement Atom PaceBetterPersonElement]&lt;br /&gt;
* [http://www.jabber.org/jeps/jep-0054.html JEP-0054: vcard-temp]&lt;br /&gt;
&lt;br /&gt;
== Related Pages ==&lt;br /&gt;
* [[hcard-profile|hCard profile]] - The XMDP profile for hCard&lt;br /&gt;
&lt;br /&gt;
This specification is a work in progress. As additional aspects are discussed, understood, and written, they will be added. These thoughts, issues, and questions are kept in separate pages.&lt;br /&gt;
&lt;br /&gt;
* [[hcard-brainstorming|hCard Brainstorming]] - where we are keeping our brainstorms and other explorations relating to hCard&lt;br /&gt;
* [[hcard-tests|hCard tests]] - a wiki page with actual embedded hCards to try parsing.&lt;br /&gt;
* [[hcard-faq|hCard FAQ]] - If you have any questions about hCard, check here, and if you don't find answers, add your questions!&lt;br /&gt;
* [[hcard-issues|hCard issues]] - Please add any issues with the specification to the issues page.&lt;br /&gt;
&lt;br /&gt;
== Further Reading ==&lt;br /&gt;
* [http://www.digital-web.com/articles/microformats_primer/ Digital Web Magazine: Microformats Primer] by Garrett Dimon has a good intro to hCard&lt;br /&gt;
* [http://24ways.org/advent/practical-microformats-with-hcard Practical Microformats with hCard] by Drew McLellan&lt;br /&gt;
* [http://thedredge.org/ Andrew D. Hume] has written a blog post on [http://usabletype.com/articles/2005/usable-microformats/ usable microformats] which discusses hCard&lt;br /&gt;
* [http://www.thefutureoftheweb.com/blog/2006/1/hcard Jesse Skinner's introduction to hCard]&lt;br /&gt;
* [http://blog.usweb.com/ Shaun Shull's] great post on [http://blog.usweb.com/archives/how-microformats-affect-search-engine-optimization-seo How Microformats Affect SEO], including his [[hcard|hCard]] as an example.&lt;br /&gt;
* See also [http://www.technorati.com/cosmos/referer.html blogs discussing this page] and the [http://technorati.com/tags/hcard hCard tag]&lt;/div&gt;</summary>
		<author><name>Ragdoll</name></author>
	</entry>
	<entry>
		<id>http://microformats.org/wiki/index.php?title=hcalendar&amp;diff=5149</id>
		<title>hcalendar</title>
		<link rel="alternate" type="text/html" href="http://microformats.org/wiki/index.php?title=hcalendar&amp;diff=5149"/>
		<updated>2006-02-10T17:18:48Z</updated>

		<summary type="html">&lt;p&gt;Ragdoll: /* New Examples */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= hCalendar =&lt;br /&gt;
&lt;br /&gt;
hCalendar is a simple open, distributed calendaring and events format, based on the  iCalendar standard ([http://www.ietf.org/rfc/rfc2445.txt RFC2445]), suitable for embedding in (X)HTML, Atom, RSS, and arbitrary XML. hCalendar is one of several open [[microformats|microformat]] standards.&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
== Draft Specification ==&lt;br /&gt;
&lt;br /&gt;
=== Editor ===&lt;br /&gt;
[http://tantek.com/ Tantek Çelik] ([http://technorati.com Technorati, Inc])&lt;br /&gt;
&lt;br /&gt;
=== Authors ===&lt;br /&gt;
* [http://tantek.com/ Tantek Çelik], [http://technorati.com Technorati, Inc]&lt;br /&gt;
* [http://suda.co.uk/ Brian Suda]&lt;br /&gt;
&lt;br /&gt;
=== Copyright ===&lt;br /&gt;
{{MicroFormatCopyrightStatement2004}}&lt;br /&gt;
&lt;br /&gt;
=== Patents ===&lt;br /&gt;
{{MicroFormatPatentStatement}}&lt;br /&gt;
&lt;br /&gt;
=== Inspiration and Acknowledgments ===&lt;br /&gt;
Thanks to:&lt;br /&gt;
* Adam Bosworth for leading the [http://wiki.oreillynet.com/foocamp04/index.cgi?HTMLForCalendars FOO Camp 2004 HTML For Calendars presentation] which brought together a critical mass of interested parties.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Introduction ==&lt;br /&gt;
The iCalendar standard ([http://www.ietf.org/rfc/rfc2445.txt RFC2445]), has been broadly interoperably implemented (e.g. Apple's &amp;amp;quot;iCal&amp;amp;quot; application built into MacOSX).&lt;br /&gt;
&lt;br /&gt;
In addition, bloggers often discuss events on their blogs -- upcoming events, writeups of past events, etc.  With just a tad bit of structure, bloggers can discuss events in their blog(s) in such a way that spiders and other aggregators can retrieve such events, automatically convert them to iCalendar, and use them in any iCalendar application or service.&lt;br /&gt;
&lt;br /&gt;
This specification introduces the '''hCalendar''' format, which is a 1:1 representation of the aforementioned iCalendar standard, in semantic XHTML.  Bloggers can both embed hCalendar events directly in their web pages, and style them with CSS to make them appear as desired.  In addition, hCalendar enables applications to retrieve information about such events directly from web pages without having to reference a separate file.&lt;br /&gt;
&lt;br /&gt;
== Semantic XHTML Design Principles ==&lt;br /&gt;
&lt;br /&gt;
{{semantic-xhtml-design-principles}}&lt;br /&gt;
&lt;br /&gt;
== Format ==&lt;br /&gt;
&lt;br /&gt;
=== In General ===&lt;br /&gt;
&lt;br /&gt;
The iCalendar standard ([http://www.ietf.org/rfc/rfc2445.txt RFC2445]) forms the basis of hCalendar.&lt;br /&gt;
&lt;br /&gt;
Note: the editor and authors of this specification are tracking the [http://lists.osafoundation.org/pipermail/ietf-calsify/ &amp;amp;quot;iCal-Basic&amp;amp;quot; effort] and intend to base the core hCalendar profile on iCal-Basic. See references for a link to the current draft.&lt;br /&gt;
&lt;br /&gt;
The basic format of hCalendar is to use iCalendar object/property names in lower-case for class names, and to map the nesting of iCalendar objects directly into nested XHTML.&lt;br /&gt;
&lt;br /&gt;
=== More Semantic Equivalents ===&lt;br /&gt;
&lt;br /&gt;
However, for some properties there is a more semantic equivalent, and therefore they get special treatment, e.g.:&lt;br /&gt;
* &amp;lt;code&amp;gt;URL&amp;lt;/code&amp;gt; in iCalendar becomes  &amp;lt;code&amp;gt;&amp;lt;a class=&amp;amp;quot;url&amp;amp;quot; href=&amp;amp;quot;...&amp;amp;quot;&amp;gt;...&amp;lt;/a&amp;gt;&amp;lt;/code&amp;gt; inside the element with &amp;lt;code&amp;gt;class=&amp;amp;quot;vevent&amp;amp;quot;&amp;lt;/code&amp;gt; in hCalendar.&lt;br /&gt;
* &amp;lt;code&amp;gt;ATTENDEE&amp;lt;/code&amp;gt; in iCalendar may in hCalendar be represented by an [[hcard]].&lt;br /&gt;
&lt;br /&gt;
=== Singular vs. Plural Properties ===&lt;br /&gt;
&lt;br /&gt;
For properties which are singular (e.g. &amp;amp;quot;N&amp;amp;quot; and &amp;amp;quot;FN&amp;amp;quot; from vCard), the first descendant element with that class should take effect, any others being ignored.&lt;br /&gt;
&lt;br /&gt;
For properties which can be plural (e.g. &amp;amp;quot;TEL&amp;amp;quot; from vCard), each class instance should create a instance of that property.  Plural properties with subtypes (e.g. TEL with WORK, HOME, CELL from vCard) can be optimized to share a common element for the property itself, with each instance of subtype being an appropriately classed descendant of the property element. &lt;br /&gt;
&lt;br /&gt;
=== Human vs. Machine readable ===&lt;br /&gt;
If an &amp;lt;code&amp;gt;&amp;amp;lt;abbr&amp;amp;gt;&amp;lt;/code&amp;gt; element is used for a property, then the '&amp;lt;code&amp;gt;title&amp;lt;/code&amp;gt;' attribute of the &amp;lt;code&amp;gt;&amp;amp;lt;abbr&amp;amp;gt;&amp;lt;/code&amp;gt; element is the value of the property, instead of the contents of the element,  which instead provide a human presentable version of the value.  This specification recommends that such &amp;lt;code&amp;gt;&amp;amp;lt;abbr&amp;amp;gt;&amp;lt;/code&amp;gt; elements be used for the following iCalendar properties:&lt;br /&gt;
* DTSTART, DTEND, DURATION, RDATE, RRULE&lt;br /&gt;
&lt;br /&gt;
== Example ==&lt;br /&gt;
&lt;br /&gt;
Here is a sample event in an iCalendar:&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
BEGIN:VCALENDAR&lt;br /&gt;
PRODID:-//XYZproduct//EN&lt;br /&gt;
VERSION:2.0&lt;br /&gt;
BEGIN:VEVENT&lt;br /&gt;
URL:http://www.web2con.com/&lt;br /&gt;
DTSTART:20051005&lt;br /&gt;
DTEND:20051008&lt;br /&gt;
SUMMARY:Web 2.0 Conference&lt;br /&gt;
LOCATION:Argent Hotel\, San Francisco\, CA&lt;br /&gt;
END:VEVENT&lt;br /&gt;
END:VCALENDAR&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
and an equivalent event in hCalendar format with various elements optimized appropriately.  See [[hcalendar-example1-steps]] for the derivation.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
&amp;lt;span class=&amp;amp;quot;vevent&amp;amp;quot;&amp;gt;&lt;br /&gt;
 &amp;lt;a class=&amp;amp;quot;url&amp;amp;quot; href=&amp;amp;quot;http://www.web2con.com/&amp;amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;span class=&amp;amp;quot;summary&amp;amp;quot;&amp;gt;Web 2.0 Conference&amp;lt;/span&amp;gt;: &lt;br /&gt;
  &amp;lt;abbr class=&amp;amp;quot;dtstart&amp;amp;quot; title=&amp;amp;quot;2005-10-05&amp;amp;quot;&amp;gt;October 5&amp;lt;/abbr&amp;gt;-&lt;br /&gt;
  &amp;lt;abbr class=&amp;amp;quot;dtend&amp;amp;quot; title=&amp;amp;quot;2005-10-08&amp;amp;quot;&amp;gt;7&amp;lt;/abbr&amp;gt;,&lt;br /&gt;
 at the &amp;lt;span class=&amp;amp;quot;location&amp;amp;quot;&amp;gt;Argent Hotel, San Francisco, CA&amp;lt;/span&amp;gt;&lt;br /&gt;
 &amp;lt;/a&amp;gt;&lt;br /&gt;
&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
which could be displayed as:&lt;br /&gt;
&lt;br /&gt;
[http://www.web2con.com/ Web 2.0 Conference: October 5-7, at the Argent Hotel, San Francisco, CA]&lt;br /&gt;
&lt;br /&gt;
Note 1: The product information is not necessary since hCalendar is an interchange format.  When transforming hCalendar back into iCalendar, the transforming engine should add its own product ID.&lt;br /&gt;
&lt;br /&gt;
Note 2: A surrounding &amp;lt;span class=&amp;amp;quot;vcalendar&amp;amp;quot;&amp;gt; element is optional, and is left out as such.  It is optional since the context of a vcalendar is implied when a vevent is encountered.  The implied context/scope is that of the document.  Authors may explicitly use elements with class=&amp;amp;quot;vcalendar&amp;amp;quot; to wrap sets of vevents that all belong to the same calendar, e.g. when publishing multiple calendars on the same page.&lt;br /&gt;
&lt;br /&gt;
Note 3: The version information is unnecessary in hCalendar markup directly since the version will be defined by the profile of hCalendar that is used/referred to in the 'profile' attribute of the &amp;lt;head&amp;gt; element.&lt;br /&gt;
&lt;br /&gt;
Note 4: ISO8601 dates (required by iCalendar) are not very human friendly.  In addition, the year is often understood implicitly by humans from the context.  Thus &amp;lt;code&amp;gt;&amp;amp;lt;abbr&amp;amp;gt;&amp;lt;/code&amp;gt; elements are used to simultaneously provide a human friendly date and/or time in the visible contents of the element, while placing the respective machine parsable comprehensive ISO8601 datetime in the 'title' attribute.&lt;br /&gt;
The notation YYYY-MM-DD should be used for better readability.&lt;br /&gt;
&lt;br /&gt;
Note 5: The difference between the DTEND ISO8601 date (2005-10-08) and the human readable date (7) is NOT a mistake.  [http://lists.osafoundation.org/pipermail/ietf-calsify/2005-September/000769.html DTEND is exclusive], meaning, that the event ends just before the DTEND. Thus for events which start on one day and end on another day, the DTEND date must be specified as the day after the day that a human would say is the last day of the event.&lt;br /&gt;
&lt;br /&gt;
See [[hcalendar-examples]] for more hCalendar examples&lt;br /&gt;
&lt;br /&gt;
== Examples in the wild ==&lt;br /&gt;
This section is '''informative'''.&lt;br /&gt;
&lt;br /&gt;
The following sites have implemented hCalendar, and thus are a great place to start for anyone looking for examples &amp;amp;quot;in the wild&amp;amp;quot; to try parsing, indexing, organizing etc.  If events on your pages are marked up with hCalendar, feel free to add it to the top of this list.  Once the list grows too big, we'll make a separate wiki page.&lt;br /&gt;
&lt;br /&gt;
=== New Examples ===&lt;br /&gt;
Please add new examples to this section.&lt;br /&gt;
* The National Arbor Day Foundation has started using hCalendars for their [http://arborday.org/programs/conferences/communityforestry/index.cfm upcoming] [http://arborday.org/programs/conferences/hazardtrees-treeplanting/ conferences].&lt;br /&gt;
* [http://www.multipack.co.uk The Multipack] features a vevent for the next meeting information.&lt;br /&gt;
* [http://www.stateofflux.com/ State of Flux street art site] has started adding events in hCalendar format&lt;br /&gt;
* The [http://barcamp.org/#BarCamps BarCamp home page lists upcoming BarCamps marked up with hCalenar] and even has a &amp;quot;Subscribe...&amp;quot; link.&lt;br /&gt;
* [http://www.w3.org/2005/12/allgroupoverview.html 2006 W3C Technical Plenary Week] has marked up the schedule and events for the week with hCalendar.&lt;br /&gt;
* [http://www.code4lib.org/2006/schedule code4lib Conference 2006 Schedule] is marked up with hCalendar as [http://www.code4lib.org/node/65 announced on their blog].&lt;br /&gt;
* [http://grouper.ieee.org/groups/754 IEEE 754 Working Group] - trying hCalendar for upcoming meetings.&lt;br /&gt;
* [http://www.pehuen.org/node/494  Elecciones 2005 Chile] - the first spanish language hCalendar event found in the wild.&lt;br /&gt;
* [http://www.codewitch.org/it/2005/11/17/no-creative-commons-no-party/ Giocolando » No Creative Commons? No Party!] is marked up with hCalendar&lt;br /&gt;
* [http://www.cmprofessionals.org/events/calendar.html CM Pros Events Calendar] by Bob Doyle&lt;br /&gt;
* [http://www.midgard-project.org/community/events/ Midgard CMS Event calendar] - as [http://bergie.iki.fi/blog/new-event-calendar-for-midcom.html blogged by Henri Bergius] &lt;br /&gt;
* [http://www.iowamilitaryveteransband.com/schedule/ Iowa Military Veterans Band Schedule] - hCalendar markup [http://weblog.randomchaos.com/archive/2005/10/24/Microformats/ added by Scott Reynen]&lt;br /&gt;
* [http://www.funfairgames.net/weblog/posts/00000011.html Upcoming events on Jason A.R. Moody Amusements Weblog] posted by Jason Moody on 15 Oct 2005. [http://www.funfairgames.net/weblog/index.html His weblog] in general has hCalendar events posted inside the blog posts.&lt;br /&gt;
* [http://tantek.com/microformats/2005/syndicate/tracks-sessions-schedule.html Syndicate - Tracks &amp;amp;amp; Sessions]&lt;br /&gt;
* [http://tantek.com/microformats/2005/web2/program.html Web 2.0 Conference schedule page marked up with hCalendar]&lt;br /&gt;
* [http://www.thisiscmon.com/ C'MON] is a rock band from Canada, and their [http://www.thisiscmon.com/shows/ tour dates] have been marked up by [http://www.d2digitalmedia.com/ Ray Dickman] with hCalendar.&lt;br /&gt;
* [http://ifreebusy.com/ ifreebusy.com] will display freebusy information using hCalendar. See this [http://ifreebusy.com/neiljensen/freebusy/ example].&lt;br /&gt;
* [http://we05.com/ Web Essentials 05] has marked up their [http://we05.com/program.cfm program schedule table with hCalendar], using the 'axis' and 'headers' attributes.&lt;br /&gt;
* [http://www.asdvbonaparte.nl/ ASDV Bonaparte] is a Dutch debating society. Their events calendar has been marked up with the hCalendar conventions.&lt;br /&gt;
* [http://chocnvodka.blogware.com/blog Suw Charman] has marked up [http://suw.org.uk/archives/category/events/ her events] with hCalendar.&lt;br /&gt;
* [http://www.blogbusinesssummit.com/ Blog Business Summit] has published their [http://www.blogbusinesssummit.com/details.htm event details] marked up with hCalendar.&lt;br /&gt;
* [http://evdb.com EVDB], the Events and Venues database, publishes all events with hCalendar and venues with [[hcard|hCard]].  Took them only 15 minutes to implement both!&lt;br /&gt;
* [http://upcoming.org Upcoming.org] publishes all events and lists of events with hCalendar.  Took them only an hour to add hCalendar support to the site.&lt;br /&gt;
* The [http://laughingsquid.com/squidlist/calendar/ Laughing Squid Calendar] events, [http://laughingsquid.com/squidlist/calendar/9949/2005/5/9 e.g. this party], now supports hCalendar.&lt;br /&gt;
* [http://paulschreiber.com/ Paul] Schreiber's [http://concerts.shrub.ca/ Sunnyvale House Concerts] site publishes hCalendar event information for upcoming concerts.  In addition the [http://concerts.shrub.ca/shows Past Shows] page contains hCalendar events for all past concerts.&lt;br /&gt;
* [http://paulschreiber.com/ Paul] Schreiber's [http://iceoasis.shrub.ca/ unofficial schedule site] publishes hCalendar information for upcoming hockey games at [http://www.iceoasis.com/ Ice Oasis]&lt;br /&gt;
* [http://www.complexspiral.com/ Complex Spiral Consulting], both in the &amp;amp;quot;Events&amp;amp;quot; box on left side, and the separate [http://www.complexspiral.com/events/ Events page]. &lt;br /&gt;
* [http://tantek.com/log Tantek's Thoughts], specifically the &amp;amp;quot;Events&amp;amp;quot; roll in the right-most column.&lt;br /&gt;
* [http://suda.co.uk/projects/holidays/ Lesser Known Holidays], a list of holidays on [http://suda.co.uk suda.co.uk] that can be imported via iCal and hCal so you can compare actual transformation versus intended.&lt;br /&gt;
* [http://norman.walsh.name/2005/itinerary/ Norm Walsh's travel schedule] use hCalendar as well as GRDDL.&lt;br /&gt;
* [http://www.policyawareweb.org/2005/ftf2/paw-mtg Policy Aware Web (PAW) Project Meeting] uses hCalendar to record date-related decisions, and uses a vtodo microformat to record action items.&lt;br /&gt;
* The [http://www.kiez-ev.de/ Kiez] is a small cinema and has published its [http://www.kiez-ev.de/programm.htm program] marked up with hCalendar.&lt;br /&gt;
* The [http://lufgi4.informatik.rwth-aachen.de Laboratory for Dependable Distributed Systems] publishes it's [http://lufgi4.informatik.rwth-aachen.de/cfps list of notable CfPs on dependability and security] with hCalendar-todo elements.&lt;br /&gt;
* The [http://laughingsquid.com/laughing-squid-10th-anniversary-party/ Laughing Squid 10th Anniversary Party] has an hcalendar page.&lt;br /&gt;
* SPRACI has hcalendar versions of its nightlife/clubbing/gigs/festivals listings for many cities worldwide - eg: [http://www.spraci.com/listhcalendar.php?parea=sydney&amp;amp;category=all Events in Sydney] (check the [http://www.spraci.com/api/ API] pages in the faq section of [http://www.spraci.com/ SPRACI] for more info about the area/city keywords and category tags to use to get data for your city/categories&lt;br /&gt;
* WWF-Australia events calendars: [http://wwf.org.au/act/events/ What's on], [http://wwf.org.au/act/volunteer/ Volunteer]&lt;br /&gt;
&lt;br /&gt;
=== Examples with some problems ===&lt;br /&gt;
* [http://www.webanalyticsassociation.org/en/calendarevents/search.asp  Web Analytics Association] - hCalendar microformat is in place on all Tendenci sites on the calendar events search page and consolidated list page.&lt;br /&gt;
** WARNINGS&lt;br /&gt;
*** has only dates where there should be datetime's&lt;br /&gt;
*** has abbr's with no title&lt;br /&gt;
*** should probably markup the description --[[User:RyanKing|RyanKing]] 16:04, 6 Jan 2006 (PST)&lt;br /&gt;
* [http://www.bokle.de/ s'Bokle] is a German music pub. Their events calendar has been marked up with hCalendar.&lt;br /&gt;
** improper use of rrule --[[User:RyanKing|RyanKing]] 16:04, 6 Jan 2006 (PST)&lt;br /&gt;
&lt;br /&gt;
== Implementations ==&lt;br /&gt;
This section is '''informative'''.&lt;br /&gt;
&lt;br /&gt;
The following implementations have been developed which either generate or parse hCalendars. If you have an hCalendar implementation, feel free to add it to the top of this list.  Once the list grows too big, we'll make a separate wiki page.&lt;br /&gt;
&lt;br /&gt;
=== Generation ===&lt;br /&gt;
* [http://placenamehere.com/TXP/pnh_mf/ pnh_mf] is a plugin for [http://textpattern.com/ Textpattern] that supports embedding hCalendar and other microformats in templates and blog posts. Written by [http://placenamehere.com/ Chris Casciano].&lt;br /&gt;
* [http://www.midgard-project.org/documentation/net-nemein-calendar/ Midgard CMS - net.nemein.calendar] - as [http://bergie.iki.fi/blog/new-event-calendar-for-midcom.html blogged by Henri Bergius] &lt;br /&gt;
* [http://www.decafbad.com/blog/2005/06/08/greasemonkey_magic magic_hcalendar Greasemonkey user script by Les Orchard] - allows easy form entry of an event into any textarea, e.g. into a blog post text area.&lt;br /&gt;
* [http://microformats.org/code/hcalendar/creator microformats.org hCalendar creator]&lt;br /&gt;
* [http://hybernaut.com/upcoming-hcal Drupal Upcoming.org syndication module emits hCalendar]&lt;br /&gt;
* [http://theryanking.com/ Ryan King] has an [http://theryanking.com/microformats/hcalendar-creator.html hCalendar creator].&lt;br /&gt;
&lt;br /&gt;
=== Conversion and consumption ===&lt;br /&gt;
* [http://lifelint.net/ Life Lint Parser] parses hCalendar and produces .ics, .rdf and debugging information and attempts to be more fully compliant to the iCal standard than previous implementations.  It can be used in the same manner as X2V.&lt;br /&gt;
* [http://blog.codeeg.com/tails-firefox-extension/ Tails is a Firefox Extension] that will display the presence of microformats ([[hcard|hCard]], [[hcalendar|hCalendar]], [[hreview|hReview]], [[xfolk|xFolk]]) on a webpage.&lt;br /&gt;
* In [http://www.xfytec.com/community/ xfy Community], there are some hCalendar implementations. &amp;quot;hCalendar via RSS&amp;quot; parses an RSS feed, retrieves XHTML documents linked from that feed, and syndicates hCalendars into a calendar view.&lt;br /&gt;
* [http://virtuelvis.com/archives/2005/11/learn-to-love-microformats simple hCalendar parser] by [http://virtuelvis.com/ Arve Bersvendsen]&lt;br /&gt;
* [http://george.hotelling.net/90percent/ George] has built a [http://george.hotelling.net/90percent/geekery/greasemonkey_and_microformats.php Greasemonkey user script that detects hCalendar events and allows users to easily add them to their calendar application(s)].&lt;br /&gt;
* [http://blogmatrix.blogmatrix.com/ David Janes] has produced a [[Greasemonkey]] [http://www.blogmatrix.com/include/microformat-find.user.js script] that finds many microformat elements, including hCalendar events, and [http://blog.davidjanes.com/mtarchives/2005_08.html#003379 provides a popup menu of actions]. The hCalendar to vCalendar conversion is done internally within the script. ''This does not work with FireFox 1.5+/GreaseMonkey 0.6.4+.''&lt;br /&gt;
* [http://suda.co.uk/projects/X2V/ X2V] parses hCalendar and produces a .ics (iCalendar) stream.  Note: needs to be updated to track changes in the specification as they occur.&lt;br /&gt;
* [http://dev.w3.org/cvsweb/2001/palmagent/ palmagent] by [[User:DanC]] includes  toICal.xsl and test materials; it works much like xhtml2vcal.xsl in X2V. See also: [http://www.w3.org/2002/12/cal/ RDF Calendar workspace] with icalendar test materials.&lt;br /&gt;
* [http://web.mit.edu/glasser/www/JSCalendar/ JSCalendar] parses hCalendar and produces a displayable HTML table/CSS-based calendar.&lt;br /&gt;
&lt;br /&gt;
Investigation:&lt;br /&gt;
* [http://wiki.mozilla.org/Calendar_Talk:Lightning#hCalendar_publish_and_subscribe_support Mozilla Calendar / Lightning / Sunbird hCalendar support discussion]&lt;br /&gt;
&lt;br /&gt;
=== Potential implementations ===&lt;br /&gt;
&lt;br /&gt;
These are open source projects that could be potentially enhanced to support hCalendar.&lt;br /&gt;
&lt;br /&gt;
* [http://www.k5n.us/webcalendar.php?topic=About WebCalendar]&lt;br /&gt;
* [http://phpicalendar.net/documentation/index.php?title=Main_Page PHP iCalendar]&lt;br /&gt;
&lt;br /&gt;
== References ==&lt;br /&gt;
=== Normative References ===&lt;br /&gt;
* [http://www.w3.org/TR/2002/REC-xhtml1-20020801/ XHTML 1.0 SE]&lt;br /&gt;
* [[hcard|hCard]]&lt;br /&gt;
* [http://www.ietf.org/rfc/rfc2445.txt iCalendar RFC2445]&lt;br /&gt;
&lt;br /&gt;
=== Informative References ===&lt;br /&gt;
* [http://w3.org/TR/REC-CSS1 CSS1]&lt;br /&gt;
* [http://tantek.com/log/2004/09.html#hcalendar hCalendar term introduced and defined on the Web, 20040930]&lt;br /&gt;
* [http://wiki.oreillynet.com/foocamp04/index.cgi?HTMLForCalendars FOO Camp 2004 HTML For Calendars presentation, 20040911]&lt;br /&gt;
* [http://wiki.oreillynet.com/foocamp04/index.cgi?SimpleSemanticFormats FOO Camp 2004 Simple Semantic Formats presentation, 20040910]&lt;br /&gt;
* [http://www.ietf.org/internet-drafts/draft-royer-ical-basic-02.txt iCal-Basic draft 02]&lt;br /&gt;
* Contributed from http://developers.technorati.com/wiki/hCalendar&lt;br /&gt;
* [http://www.w3.org/TR/xhtml11 XHTML 1.1]&lt;br /&gt;
&lt;br /&gt;
==== Related ====&lt;br /&gt;
* [[icalendar-implementations|iCalendar implementations]]&lt;br /&gt;
* [http://lists.osafoundation.org/pipermail/ietf-calsify/ IETF-calsify archives]&lt;br /&gt;
* [http://www.livejournal.com/users/jwz/444651.html jwz - Hula] (required reading)&lt;br /&gt;
* [http://www.jwz.org/doc/groupware.html Groupware Bad by Jamie Zawinski] crystalizes the reason for hCalendar ('''emphasis''' added):&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&amp;amp;quot;Right now people can do that by publishing .ics files, but  it's not trivial to do so, and it's work on the part of other people  to look at them. '''If it's not HTML hanging off our friend's home page  that can be viewed in any browser on a public terminal in a library,  the bar to entry is too high and it's useless.'''&amp;amp;quot;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* [http://muddybranch.thejkgroup.com/ Jason Klemow's blog]&lt;br /&gt;
* [http://www.softwarestudio.org/iCal/2445Issues.html RFC2445 Issues List]&lt;br /&gt;
* [http://ietf.webdav.org/calsify/ CALSIFY WG Links And Resources]&lt;br /&gt;
&lt;br /&gt;
=== Similar Work ===&lt;br /&gt;
* [[XOXO]]&lt;br /&gt;
&lt;br /&gt;
== Discussions ==&lt;br /&gt;
&lt;br /&gt;
This specification is a work in progress.  As additional aspects are discussed, understood, and written, they will be added.  There is a separate document where we are keeping our brainstorms and other explorations relating to hCalendar:&lt;br /&gt;
&lt;br /&gt;
* [[hcalendar-brainstorming]]&lt;br /&gt;
&lt;br /&gt;
* See also [http://www.technorati.com/cosmos/referer.html blogs discussing this page].&lt;br /&gt;
** [http://weblog.infoworld.com/udell/2006/01/11.html#a1368 Moving forward with microformats] by [http://weblog.infoworld.com/udell Jon Udell] provides an hCalendar example and some discussion.&lt;br /&gt;
&lt;br /&gt;
=== Q&amp;amp;A ===&lt;br /&gt;
* If you have any questions about hCalendar, check the [[hcalendar-faq]], and if you don't find answers, add your questions!&lt;br /&gt;
&lt;br /&gt;
=== Issues ===&lt;br /&gt;
* Please add any issues with the specification to the separate [[hcalendar-issues]] document.&lt;/div&gt;</summary>
		<author><name>Ragdoll</name></author>
	</entry>
	<entry>
		<id>http://microformats.org/wiki/index.php?title=process&amp;diff=3666</id>
		<title>process</title>
		<link rel="alternate" type="text/html" href="http://microformats.org/wiki/index.php?title=process&amp;diff=3666"/>
		<updated>2005-12-29T17:18:37Z</updated>

		<summary type="html">&lt;p&gt;Ragdoll: /* Iterate */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=So you wanna develop a new microformat?=&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
==Why?==&lt;br /&gt;
There must be a problem to be solved. No problem, no microformat. &lt;br /&gt;
&lt;br /&gt;
Once you've found your 'problem,' ask yourself: 'is there a simpler problem here?' If so, let's solve that problem first. We want to deal with the simplest problems first and only then build up to more complex problems.&lt;br /&gt;
&lt;br /&gt;
Also, search around on the web. Chances are that someone else has encountered the same problem as you. If you still believe that you have an unsolved problem, post something to the [http://microformats.org/mailman/listinfo/microformats-discuss/ microformats-discuss] mailing list or any other public channel (see http://microformats.org/discuss/) We want to involve all interested parties in the discussion.  Start the discussion '''BEFORE''' you start creating any pages on the wiki.  We're not using the wiki as a general &amp;quot;scratch pad&amp;quot;.  If you can't summarize the problem you are trying to solve in a short email, and feel like you need a long document, you're probably trying to solve too big of a problem - see previous paragraph.&lt;br /&gt;
&lt;br /&gt;
==Document Current Behavior==&lt;br /&gt;
Document current human behavior. Remember, we're [http://ifindkarma.typepad.com/relax/2004/12/microformats.html paving the cowpaths]- before you do that you have to ''find'' the cowpaths. Your [[examples]] should be a collection of real world sites and pages which are publishing the kind of data you wish to structure with a microformat.  From those pages and sites, you should extract markup examples and the schemas implied therein, and provide analysis.&lt;br /&gt;
&lt;br /&gt;
This collection of examples should be public, preferably on a wiki because there's no way you can do it by yourself (no matter how many of you there are).  The [[reviews-formats]] page is a good example of research done before the creation of a microformat. Before developing [[hreview]], the collaborators went out, documented current practices around reviews on web sites, and provided some analysis of the schemas implied therein.&lt;br /&gt;
&lt;br /&gt;
It's quite possible during this step that you'll find someone else who has dealt with the problem you're addressing.  Perhaps even solved it.  Do your best to open a dialog with others who have encountered the same problem. We don't want to build walls between competing communities - we want people to work together to develop a good solution which will cover the majority of cases.&lt;br /&gt;
&lt;br /&gt;
==Propose a Microformat==&lt;br /&gt;
Actually, '''DON'T!!!''' &lt;br /&gt;
&lt;br /&gt;
There are other things to try before developing a microformat. First, ask yourself these questions:&lt;br /&gt;
&lt;br /&gt;
# Is there a standard element in XHTML that would work?&lt;br /&gt;
# Is there a compound of XHTML elements that would work?&lt;br /&gt;
# Ok, if the answer to the above two is 'no,' we can talk about a microformat. &lt;br /&gt;
&lt;br /&gt;
For more details on semantic XHTML, examples of using XHTML elements, and constructing XHTML compounds, see [http://tantek.com/presentations/2005/03/elementsofxhtml/ The Elements of Meaningful XHTML].&lt;br /&gt;
&lt;br /&gt;
First you should observe [[microformats#the_microformats_principles|the microformats principles]]&lt;br /&gt;
&lt;br /&gt;
After you understand the principes, ask yourself: &amp;quot;are there any well established, interoperably implemented standards we can look at which address this problem?&amp;quot; For example, hCard and hCalendar were built on top of the IETF standards for vCard and iCal, respectively, both of which are widely interoperably implemented. The developers of those standards had already spent many years in standards committees arguing about and developing the schemas.  Better to leverage all the hard work that others have done before you, than to go off as a solo cowboy inventor, and waste time repeating all their mistakes.  It's also much easier to start from a well established schema, and map into into XHTML than to develop a new schema.&lt;br /&gt;
&lt;br /&gt;
Remember, microformats should be designed for humans first and machines second. Here are few questions that may help you decide if you really need a microformat for the problem you are trying to solve:&lt;br /&gt;
&lt;br /&gt;
# If I looked at this microformat in a browser that didn't support CSS or had CSS turned off, would it still be human readable?&lt;br /&gt;
# Are this format's elements stylable with CSS?&lt;br /&gt;
    &lt;br /&gt;
If the proposed format doesn't pass these two things, it's not likely to gain much acceptance. Remember: ''humans first, machines second''.&lt;br /&gt;
&lt;br /&gt;
== Iterate ==&lt;br /&gt;
After proposing a microformat, you'll likely get a lot of feedback from others interested in microformats. The proposal needs to be iterated and adapted. Microformat development should be collaborative and communtiy based.&lt;br /&gt;
&lt;br /&gt;
Here's an ASCII-art flow diagram:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
DIAGRAM:&lt;br /&gt;
problem statement----&amp;gt;research/discussion----&amp;gt;proposal/draft----&amp;gt;standard&lt;br /&gt;
^________________V   ^___________________V   ^______________V&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note that each stage involves iteration. That iteration consists of discussion and feedback and may result in major changes. Do not be afraid to make major changes and please don't get too attached to any particular solutions.&lt;br /&gt;
&lt;br /&gt;
=== Pages to consider creating ===&lt;br /&gt;
&lt;br /&gt;
A pattern has emerged from successful microformat development efforts of several specific kinds of wiki pages being created, in a particular order (though not always).&lt;br /&gt;
&lt;br /&gt;
After a specific problem area (*) has been determined (principle 1), consider creating and filling out the following pages for it.  If your'e unable to come up with material for the pages, then you should probably reconsider whether or not the problem is worth (or ready for) solving.&lt;br /&gt;
&lt;br /&gt;
# *-examples.  Find examples on today's web of the the type of content you think needs a microformat.  Document them with URLs.  Document the implicit schemas that the content examples imply.  This is the action that helps follow principle 3, design for humans first, machines second ... adapt to current behaviors and usage patterns.&lt;br /&gt;
# *-formats.  Find widely adopted interoperable current data formats and standards that attempt to or have attempted to solve the problem previously.  Document their explicit schemas.  This is necessary prerequisite for following through with principle 4, reuse building blocks from widely adopted standards.&lt;br /&gt;
# *-brainstorming.  Use the current real-world web examples and their implicit schemas to determine an 80/20 as-simple-as-possible (principle 2) generic schema to represent their data.  Yes, this means you will explicitly ''omit'' some features of some use cases, or perhaps entire use cases which are more edge-cases than representative of larger, aggregate/macro behaviors.  See which existing microformats can be reused as building blocks (principle 5, modularity).  Use those existing data formats and schemas as a [[existing-classes|source of names]] for the fields (principle 4).  Consider how would you embed this microformat in other formats (also principle 5, embeddability).  With an 80/20 schema, and a source of field names, write up one or more straw proposals for a microformat.  Make sure the straw proposals encourage the decentralized distribution of data (principle 6).  At this point, you may want to also consider a naming section, where various names for the microformat can be considered.&lt;br /&gt;
#  **. When it seems like there is some amount of consensus around one of the straw proposals for a microformat(**), write it up as a separate wiki page as a draft specification.&lt;br /&gt;
#  **-faq.  There will likely be common questions about the new microformat which can/should be answered in an FAQ page.&lt;br /&gt;
#  **-issues.  Folks may also raise issues about the microformat which aren't immediately addressable.  An issues document helps serves to capture these issues, who raised them, and when, so that folks working on the microformat can be sure to go through and thoroughly answer them.&lt;br /&gt;
#  **-implementations.  Eventually there may be too many implementations of a microformat to document them in an informative section at the end of the specification, thus the list deserves its own page.&lt;br /&gt;
&lt;br /&gt;
=== Moving from Stage to Stage ===&lt;br /&gt;
&lt;br /&gt;
These stages of development are mirrored on the main page where microformats are divided into &amp;quot;Exploratory Discussions&amp;quot;, &amp;quot;Drafts&amp;quot;, and &amp;quot;Specifications&amp;quot;.  How do microformats move from one stage to the other?  To help answer this question, it's probably useful to write up a set of desiderata for each stage.&lt;br /&gt;
&lt;br /&gt;
==== Exploratory Discussions ====&lt;br /&gt;
&lt;br /&gt;
You need a problem, and you need to attempt to state it.  You should do it on this wiki using current items under exploratory discussion as a guide.  Then send a note to the microformats-discuss list to get the attention of others who are interested in microformats.  This is probably a good chance to pull in people from outside the current microformats community who may also be experiencing the same issue.  &lt;br /&gt;
&lt;br /&gt;
Feedback will probably range the gamut.  Others may challenge your problem statement, the need for a microformat, concur, or add.  All constructive feedback is good.&lt;br /&gt;
&lt;br /&gt;
As a result of feedback, you may decide to abort your microformat idea or substantially modify it.  One thing you want to be sure to do at this stage is to avoid [[reinvented-wheels|reinventing the wheel]].  Are there elemental microformats you can reuse as building blocks?  Doing this will save you effort and help you get implemented later because implementers will have less work to do.&lt;br /&gt;
&lt;br /&gt;
However, do not be cowed from moving forward just because some people object.  If you can find a group of people you respect who feel your idea has merit and, perhaps most importantly, are willing to continue working with you on getting it in shape, proceed.&lt;br /&gt;
&lt;br /&gt;
==== Drafts ====&lt;br /&gt;
&lt;br /&gt;
Here, you need to write what is essentially a specification, but with the idea that it could change a lot.  Again, this needs to go in the wiki, and you should send a note to microformats-discuss to alert people that something new has happened.  Don't hesitate to continue trying to pull in feedback from relevant resources outside the community.  Drafts need to include at least the following:&lt;br /&gt;
&lt;br /&gt;
* Statements regarding the fact that you will not patent and are adopting appropriate copyright as illustrated by current drafts.&lt;br /&gt;
* An XMDP stating attribute values.  You may want to place this on a separate wiki page and link to it.  In that case use the naming convention *-profile, e.g. [[hcard-profile]].&lt;br /&gt;
* Examples from current practice that show how the microformat would be used.  Keep an eye out for how the microformat is actually improving things.  If it's not, that might be an indication that you either need to abandon or change a lot.&lt;br /&gt;
* References that back up your design decisions for the microformat.  To the extent possible, you do not want to invent things from whole cloth.&lt;br /&gt;
* A list of implementations (if any).&lt;br /&gt;
* An issues section for people to feed back to you with detailed objections.&lt;br /&gt;
&lt;br /&gt;
==== Specifications ====&lt;br /&gt;
&lt;br /&gt;
You will usually need at least one iteration to get past the draft stage.  By the time something becomes a specification, it should be stable so that developers can pick it up and write to it.  This in turn implies that there are at least a couple of implementations.&lt;br /&gt;
&lt;br /&gt;
Before moving to the specifications section, drop a note to microformats-discuss and wait a day or two for major objections.  If none are forthcoming, move the microformat to the specifications area.  This move will wake up any sleeping editors, and they may raise an objection and move you back to draft.  If you have followed the process, now is the time to pin them down.  At this juncture, any remaining issues should be easy to resolve.&lt;/div&gt;</summary>
		<author><name>Ragdoll</name></author>
	</entry>
	<entry>
		<id>http://microformats.org/wiki/index.php?title=hcard&amp;diff=3925</id>
		<title>hcard</title>
		<link rel="alternate" type="text/html" href="http://microformats.org/wiki/index.php?title=hcard&amp;diff=3925"/>
		<updated>2005-12-29T17:13:48Z</updated>

		<summary type="html">&lt;p&gt;Ragdoll: /* Examples in the wild */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= hCard =&lt;br /&gt;
&lt;br /&gt;
hCard is a simple, open, distributed contact information format for people, companies, and organizations, which is suitable for embedding in (X)HTML, Atom, RSS, and arbitrary XML. hCard is a 1:1 representation of the vCard standard ([http://www.ietf.org/rfc/rfc2426.txt RFC2426]) in XHTML, one of several open [[microformats|microformat]] standards.&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
== Draft Specification ==&lt;br /&gt;
&lt;br /&gt;
=== Editor ===&lt;br /&gt;
[http://tantek.com/ Tantek Çelik], [http://technorati.com Technorati, Inc.]&lt;br /&gt;
&lt;br /&gt;
=== Authors ===&lt;br /&gt;
* [http://tantek.com/ Tantek Çelik], [http://technorati.com Technorati, Inc]&lt;br /&gt;
* [http://suda.co.uk/ Brian Suda]&lt;br /&gt;
&lt;br /&gt;
=== Copyright ===&lt;br /&gt;
{{MicroFormatCopyrightStatement2004}}&lt;br /&gt;
&lt;br /&gt;
=== Patents ===&lt;br /&gt;
{{MicroFormatPatentStatement}}&lt;br /&gt;
&lt;br /&gt;
=== Inspiration and Acknowledgments ===&lt;br /&gt;
Thanks to: my good friend [http://vadim.com/ Vadim] who introduced me to vCard ''many'' years ago, and if I'd only paid more attention then, perhaps I could have helped a lot of people avoid wasting a lot of time reinventing various standards wheels.&lt;br /&gt;
&lt;br /&gt;
== Introduction ==&lt;br /&gt;
The vCard standard ([http://www.ietf.org/rfc/rfc2426.txt RFC2426]), has been broadly interoperably implemented (e.g. Apple's &amp;quot;Address Book&amp;quot; application built into MacOSX).&lt;br /&gt;
&lt;br /&gt;
In addition, many bloggers identify themselves by name and discuss their friends and family.  With just a tad bit of structure, bloggers can discuss people in their blog(s) in such a way that spiders and other aggregators can retrieve this information, automatically convert them to vCards, and use them in any vCard application or service.&lt;br /&gt;
&lt;br /&gt;
This specification introduces the '''hCard''' format, which is a 1:1 representation of the aforementioned vCard standard, in semantic XHTML.  Bloggers can both embed vCards directly in their web pages, and style them with CSS to make them appear as desired.  In addition, hCard enables applications to retrieve information about such vCards directly from web pages without having to reference a separate file.&lt;br /&gt;
&lt;br /&gt;
Use the [http://microformats.org/code/hcard/creator hCard creator], copy the HTML code it generates to your blog or website to publish your contact info.&lt;br /&gt;
&lt;br /&gt;
== Semantic XHTML Design Principles ==&lt;br /&gt;
{{semantic-xhtml-design-principles}}&lt;br /&gt;
&lt;br /&gt;
== Format ==&lt;br /&gt;
=== In General ===&lt;br /&gt;
The vCard standard ([http://www.ietf.org/rfc/rfc2426.txt RFC2426]) forms the basis of hCard.&lt;br /&gt;
&lt;br /&gt;
The basic format of hCard is to use vCard object/property names in lower-case for class names, and to map the nesting of vCard objects directly into nested XHTML elements.&lt;br /&gt;
&lt;br /&gt;
=== More Semantic Equivalents ===&lt;br /&gt;
However, for some properties there is a more semantic equivalent, and therefore they get special treatment, e.g.:&lt;br /&gt;
* &amp;lt;code&amp;gt;URL&amp;lt;/code&amp;gt; in vCard becomes  &amp;lt;code&amp;gt;&amp;lt;a class=&amp;quot;url&amp;quot; href=&amp;quot;...&amp;quot;&amp;gt;...&amp;lt;/a&amp;gt;&amp;lt;/code&amp;gt; inside the element with &amp;lt;code&amp;gt;class=&amp;quot;vcard&amp;quot;&amp;lt;/code&amp;gt; in hCard.&lt;br /&gt;
* Similarly, &amp;lt;code&amp;gt;EMAIL&amp;lt;/code&amp;gt; in vCard becomes &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;&amp;lt;a class=&amp;quot;email&amp;quot; href=&amp;quot;mailto:...&amp;quot;&amp;gt;...&amp;lt;/a&amp;gt;&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;PHOTO&amp;lt;/code&amp;gt; in vCard becomes &amp;lt;code&amp;gt;&amp;lt;img class=&amp;quot;photo&amp;quot; src=&amp;quot;...&amp;quot; alt=&amp;quot;Photo of ...&amp;quot; /&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Singular vs. Multivalued Properties ===&lt;br /&gt;
&lt;br /&gt;
For properties which are singular (e.g. &amp;quot;N&amp;quot; and &amp;quot;FN&amp;quot;), the first descendant element with that class should take effect, any others being ignored.&lt;br /&gt;
&lt;br /&gt;
For properties which can be plural (e.g. &amp;quot;TEL&amp;quot;), each class instance should create a instance of that property.&lt;br /&gt;
&lt;br /&gt;
==== Plural Properties Singularized ====&lt;br /&gt;
&lt;br /&gt;
Since plural property names become their singular equivalents, even if the original plural property permitted only a single value with multiple components, those multiple components are represented each with their own singularly named property and the the property is effectively multivalued and subject to the above treatment of multivalued properties.&lt;br /&gt;
&lt;br /&gt;
=== Human vs. Machine readable ===&lt;br /&gt;
&lt;br /&gt;
If an &amp;lt;code&amp;gt;&amp;amp;lt;abbr&amp;gt;&amp;lt;/code&amp;gt; element is used for a property, then the '&amp;lt;code&amp;gt;title&amp;lt;/code&amp;gt;' attribute of the &amp;lt;code&amp;gt;&amp;amp;lt;abbr&amp;gt;&amp;lt;/code&amp;gt; element is the value of the property, instead of the contents of the element, which instead provide a human presentable version of the value.  &lt;br /&gt;
&lt;br /&gt;
Similarly, if an &amp;lt;code&amp;gt;&amp;amp;lt;img&amp;gt;&amp;lt;/code&amp;gt; element is used for one or more properties, it must be treated as follows:&lt;br /&gt;
# For the &amp;quot;PHOTO&amp;quot; property and any other property that takes a URL as its value, the &amp;lt;code&amp;gt;src=&amp;quot;...&amp;quot;&amp;lt;/code&amp;gt; attribute provides the property value.&lt;br /&gt;
# For other properties, the &amp;lt;code&amp;gt;&amp;amp;lt;img&amp;gt;&amp;lt;/code&amp;gt; element's '&amp;lt;code&amp;gt;alt&amp;lt;/code&amp;gt;' attribute is the value of the property.&lt;br /&gt;
&lt;br /&gt;
=== Value excerpting ===&lt;br /&gt;
&lt;br /&gt;
Sometimes only part of an element which is the equivalent for a property should be used for the value of the property.  This typically occurs when a property has a subtype, like TEL.  For this purpose, the special class name &amp;quot;&amp;lt;code&amp;gt;value&amp;lt;/code&amp;gt;&amp;quot; is introduced to excerpt out the subset of the element that is  the value of the property.  E.g. here is an hCard fragment for marking up a home phone number:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
&amp;lt;span class=&amp;quot;tel&amp;quot;&amp;gt;&lt;br /&gt;
 &amp;lt;span class=&amp;quot;type&amp;quot;&amp;gt;home&amp;lt;/span&amp;gt;:&lt;br /&gt;
 &amp;lt;span class=&amp;quot;value&amp;quot;&amp;gt;+1.415.555.1212&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This hCard fragment could be displayed as:&lt;br /&gt;
&lt;br /&gt;
 home: +1.415.555.1212&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Property Exceptions ===&lt;br /&gt;
&lt;br /&gt;
vCard has several properties which either do not make sense on, or are already implied within the context of a web page.  This section explains what to (not) do with them.&lt;br /&gt;
&lt;br /&gt;
# '''NAME''', '''PROFILE''', '''SOURCE''', '''PRODID''', '''VERSION''' properties as defined in Sections 2.1.2, 2.1.3, 2.1.4, 3.6.3, 3.6.9 of RFC 2426.  Content publishers MUST NOT use these properties in their hCards, and as such, hCard consumers/parsers MUST IGNORE these properties if they are found within an hCard.  Instead. hCard to vCard converters SHOULD use the title of the page where the hCard is found (e.g. the &amp;lt;code&amp;gt;&amp;lt;title&amp;gt;&amp;lt;/code&amp;gt; element in (X)HTML documents) to construct the NAME property, MAY output a PROFILE value of &amp;quot;&amp;lt;code&amp;gt;VCARD&amp;lt;/code&amp;gt;&amp;quot; per RFC 2426, SHOULD use the URL of the page where the hCard is found to construct the SOURCE property (e.g. perhaps as a parameter to a URL/service that converts hCards to vCards), for an output vCard stream (e.g. a .vcf file). Only services/applications that output actual vCards should write the PRODID property, with the product identifier for said service/application.   Similarly only such services/applications should write the VERSION property, with the value &amp;quot;3.0&amp;quot; (without quotes) per RFC2426 Section 3.6.9.&lt;br /&gt;
&lt;br /&gt;
=== Implied &amp;quot;N&amp;quot; Optimization ===&lt;br /&gt;
&lt;br /&gt;
Although vCard requires that the &amp;quot;N&amp;quot; property be present, the authors of the vCard specification (RFC 2426) themselves do not include &amp;quot;N&amp;quot; properties in their vCards near the end of the spec (p.38).  This apparent contradiction can be resolved by simply allowing the &amp;quot;FN&amp;quot; property to imply &amp;quot;N&amp;quot; property values in typical cases provided in the spec.  We do so explicitly in hCard.&lt;br /&gt;
&lt;br /&gt;
If the value of the &amp;quot;FN&amp;quot; property is exactly two words (separated by whitespace.), and there is no explicit &amp;quot;N&amp;quot; property, then the &amp;quot;N&amp;quot; property is inferred from the &amp;quot;FN&amp;quot; property.  For &amp;quot;FN&amp;quot;s with either one word or three or more, then the author MUST explicitly markup the &amp;quot;N&amp;quot;, except for the organization contact info case, [http://microformats.org/wiki/hcard#Organization_Contact_Info see below] for that.&lt;br /&gt;
&lt;br /&gt;
# The content of &amp;quot;FN&amp;quot; is broken into two &amp;quot;words&amp;quot; separated by whitespace.&lt;br /&gt;
# The ''first'' word of the &amp;quot;FN&amp;quot; is interpreted as the &amp;quot;Given Name&amp;quot; for the &amp;quot;N&amp;quot; property.&lt;br /&gt;
# The ''second/last'' word of the &amp;quot;FN&amp;quot; is interpreted as the &amp;quot;Family Name&amp;quot; for the &amp;quot;N&amp;quot; property.&lt;br /&gt;
# Exception: If the first word ends in a &amp;quot;,&amp;quot; comma OR if the second word is a single character (optionally followed by a period &amp;quot;.&amp;quot;), then the first word (minus the comma at the end if any) is interpreted as the &amp;quot;Family Name&amp;quot; and the second word is interpreted as the &amp;quot;Given Name&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
This allows simplification in the typical case of people stating their firstname space lastname, or lastname comma firstname, or lastname comma firstinitial, or lastname space firstinitial.&lt;br /&gt;
&lt;br /&gt;
==== Organization Contact Info ====&lt;br /&gt;
&lt;br /&gt;
Contact info for a company or organization is a special case of the implied &amp;quot;N&amp;quot; optimization.&lt;br /&gt;
 &lt;br /&gt;
If the &amp;quot;FN&amp;quot; and &amp;quot;ORG&amp;quot; properties have the exact same value (typically because they are set on the same element, e.g. class=&amp;quot;fn org&amp;quot;), then the hCard represents contact information for a company or organization and should be treated as such.  In this case the author MUST also NOT set the &amp;quot;N&amp;quot; property, or set it (and any sub-properties) explicitly to the empty string &amp;quot;&amp;quot;.  Thus parsers should handle the missing &amp;quot;N&amp;quot; property in this case by implying empty values for all the &amp;quot;N&amp;quot; sub-properties.&lt;br /&gt;
&lt;br /&gt;
=== Implied &amp;quot;organization-name&amp;quot; Optimization ===&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;ORG&amp;quot; property has two subproperties, organization-name and organization-unit. Very often authors only publish the organization-name.  Thus if an &amp;quot;ORG&amp;quot; property has no &amp;quot;organization-name&amp;quot; inside it, then its entire contents MUST be treated as the &amp;quot;organization-name&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
=== Root Class Name ===&lt;br /&gt;
&lt;br /&gt;
The root class name for an hCard is &amp;quot;vcard&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
=== Property List ===&lt;br /&gt;
&lt;br /&gt;
This is the list of properties (and subproperties, in parantheses, like this) in hCard, taken from vCard:&lt;br /&gt;
&lt;br /&gt;
* fn, n (family-name, given-name, additional-name, honorific-prefix, honorific-suffix), nickname, sort-string&lt;br /&gt;
* url, email (type, value), tel (type, value)&lt;br /&gt;
* adr (post-office-box, extended-address, street-address, locality, region, postal-code, country-name, type, value), label&lt;br /&gt;
* geo (latitude, longitude), tz&lt;br /&gt;
* photo, logo, sound, bday&lt;br /&gt;
* title, role, org (organization-name, organization-unit)&lt;br /&gt;
* category, note&lt;br /&gt;
* class, key, mailer, uid, rev&lt;br /&gt;
==== type subproperty values ====&lt;br /&gt;
&lt;br /&gt;
The 'type' subproperty in particular takes different values depending on which property it is a subproperty of.  These 'type' subproperty values are case-INSENSITIVE, meaning &amp;quot;Home&amp;quot; is the same as &amp;quot;home&amp;quot;, as well as multivalued, e.g. a tel can be home and preferred:&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
&amp;lt;span class=&amp;quot;tel&amp;quot;&amp;gt;&amp;lt;span class=&amp;quot;type&amp;quot;&amp;gt;Home&amp;lt;/span&amp;gt; (&amp;lt;span class=&amp;quot;type&amp;quot;&amp;gt;pref&amp;lt;/span&amp;gt;erred):&lt;br /&gt;
 &amp;lt;span class=&amp;quot;value&amp;quot;&amp;gt;+1.415.555.1212&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The following lists are ''informative''. See RFC2426 sections 3.2.1 ADR, 3.3.1 TEL, and 3.3.2 EMAIL respectively for normative type values.  They are repeated here for convenience. Default type subproperty value(s) is(are) first in each list and indicated in ALL CAPS.  types may be multivalued.&lt;br /&gt;
&lt;br /&gt;
* adr type: INTL, POSTAL, PARCEL, WORK, dom, home, pref&lt;br /&gt;
* tel type: VOICE, home, msg, work, pref, fax, cell, video, pager, bbs, modem, car, isdn, pcs&lt;br /&gt;
* email type: INTERNET, x400, pref, &amp;quot;other IANA registered address types&amp;quot;&lt;br /&gt;
&lt;br /&gt;
=== XMDP Profile ===&lt;br /&gt;
&lt;br /&gt;
See [[hcard-profile]] for the [http://gmpg.org/xmdp XMDP] profile of hCard which contains the above complete list of properties, with references to their RFC 2426 definitions.&lt;br /&gt;
&lt;br /&gt;
=== Parsing Details ===&lt;br /&gt;
&lt;br /&gt;
See [[hcard-parsing|hCard parsing]].&lt;br /&gt;
&lt;br /&gt;
== Examples ==&lt;br /&gt;
&lt;br /&gt;
This section is informative.&lt;br /&gt;
&lt;br /&gt;
=== Sample vCard ===&lt;br /&gt;
&lt;br /&gt;
Here is a sample vCard:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
BEGIN:VCARD&lt;br /&gt;
VERSION:3.0&lt;br /&gt;
N:Çelik;Tantek&lt;br /&gt;
FN:Tantek Çelik&lt;br /&gt;
URL:http://tantek.com&lt;br /&gt;
ORG:Technorati&lt;br /&gt;
END:VCARD&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
and an equivalent in hCard with various elements optimized appropriately.  See [[hcard-example1-steps| hCard Example 1]] for the derivation. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;vcard&amp;quot;&amp;gt;&lt;br /&gt;
 &amp;lt;a class=&amp;quot;url fn&amp;quot; href=&amp;quot;http://tantek.com/&amp;quot;&amp;gt;Tantek Çelik&amp;lt;/a&amp;gt;&lt;br /&gt;
 &amp;lt;div class=&amp;quot;org&amp;quot;&amp;gt;Technorati&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This hCard might be displayed as:&lt;br /&gt;
&lt;br /&gt;
[http://tantek.com/ Tantek Çelik]&amp;lt;br /&amp;gt;&lt;br /&gt;
Technorati&lt;br /&gt;
&lt;br /&gt;
Note: The version information is unnecessary in hCard markup directly since the version will be defined by the profile of hCard that is used/referred to in the 'profile' attribute of the &amp;lt;head&amp;gt; element.&lt;br /&gt;
&lt;br /&gt;
=== More Examples ===&lt;br /&gt;
&lt;br /&gt;
See [[hcard-examples]] for more examples, including all examples from vCard RFC 2426 converted into hCard.&lt;br /&gt;
&lt;br /&gt;
== Examples in the wild ==&lt;br /&gt;
This section is '''informative'''.&lt;br /&gt;
&lt;br /&gt;
The following sites have published hCards, and thus are a great place to start for anyone looking for examples &amp;quot;in the wild&amp;quot; to try parsing, indexing, organizing etc.  If you have an hCard on your own page, feel free to add it to the top of this list.  Once the list grows too big, we'll make a separate wiki page.&lt;br /&gt;
&lt;br /&gt;
* [http://www.deadringerart.com/ The Brothers McDowell] have hCards at their Contact page.&lt;br /&gt;
* [http://www.go-curiosity.com/about.htm Piercarlo Slavazza] has published an hCard.&lt;br /&gt;
* [http://richi.co.uk/blog/2005/12/structured-blogging.html Richi Jennings] has put up his attempt&lt;br /&gt;
* [http://www.shiftingpixel.com/about/ shifting pixel photoblog] has published an hCard.&lt;br /&gt;
* [http://www.paradigmproductions.org/contact/ Paradigm Productions] published a vcard as a ul (marked up by [http://www.linkingarts.com/ Peter Jacobson])&lt;br /&gt;
* [http://www.bath.ac.uk/contact/ University of Bath] Person Finder results are encoded with hCards so you can easily create a vCard from any result. &lt;br /&gt;
* [http://chrischerry.name/blog/contact/ Chris Cherry's contact page with his hCard]&lt;br /&gt;
* [http://tagcamp.org/index.cgi?ContactList TagCamp contact list]&lt;br /&gt;
* [http://landsbank.fo/#hCard Landsbanki Føroya]&lt;br /&gt;
* [http://www.iowamilitaryveteransband.com/members/ Iowa Military Veterans Band Contacts] - 95 hCards [http://weblog.randomchaos.com/archive/2005/10/24/Microformats/ marked up by Scott Reynen]&lt;br /&gt;
* [http://rbach.priv.at/Contact Robert Bachmann] has published his hCard and [http://rbach.priv.at/Images/hcard a button].&lt;br /&gt;
* The good ship [http://styrheim.com/test/leonid.html Leonid Miloslavskiy] spotted in the North Atlantic&lt;br /&gt;
** INVALID  --[[User:RyanKing|RyanKing]] 00:50, 27 Oct 2005 (PDT)&lt;br /&gt;
*** class=&amp;quot;family&amp;quot; should probably be family-name&lt;br /&gt;
*** the &amp;quot;n&amp;quot; property is missing and the &amp;quot;n&amp;quot; optimization can't be applied&lt;br /&gt;
*** the first geo propery is empty, the second one is invalid (ie, it doesn't contain lat/long)&lt;br /&gt;
&lt;br /&gt;
* [http://tantek.com/microformats/2005/web2/speakers.html Web 2.0 Conference speakers page marked up with hCard]&lt;br /&gt;
&lt;br /&gt;
* [http://www.ndunn.com Neil Dunn] has published his rather [http://www.ndunn.com/2005/10/7/hCard good looking hCard]&lt;br /&gt;
&lt;br /&gt;
* [http://we05.com/ Web Essentials 05] marked up all their [http://we05.com/presenters.cfm presenters with hCard].&lt;br /&gt;
* [http://twinsparc.com/ Twinsparc] put an hCard in the header and footer of all their pages.&lt;br /&gt;
** (2005-09-27) No FN and no ORG properties&lt;br /&gt;
** (2005-10-07) Fixed&lt;br /&gt;
&lt;br /&gt;
* [http://www.oliverbrown.me.uk/ Oliver Brown] has published his hCard.&lt;br /&gt;
** (2005-09-27) PASSED&lt;br /&gt;
&lt;br /&gt;
* [http://suda.co.uk/ Brian Suda] has managed to embed a photo in [http://suda.co.uk/contact/ his hCard] through the [http://www.ietf.org/rfc/rfc2397.txt data uri scheme] by converting the image to BASE64 code. View the Source to see how this is accomplished. [http://suda.co.uk/projects/X2V/get-vcard.php?uri=http%3A//suda.co.uk/contact/ The X2V link] will extract the image and encode it for a vCard which will be displayed in some address book applications.&lt;br /&gt;
&lt;br /&gt;
* [http://www.efas.fupl.asso.fr/efas/_Mathieu-Drouet_.html Mathieu Drouet] and [http://www.efas.fupl.asso.fr/efas/_Annie-Leger_.html Annie Leger] both have hCards&lt;br /&gt;
** (2005-09-27) PASSED, PASSED&lt;br /&gt;
&lt;br /&gt;
* [http://www.paulmichaelsmith.com/blog/hcard.htm Paul Smith] has created an hCard page which is Human Readable, and a link to X2V passing the same hCard page to generate a vCard.&lt;br /&gt;
** (2005-09-27) PASSED&lt;br /&gt;
&lt;br /&gt;
* [http://loadaveragezero.com/hnav/contact.php Douglas W. Clifton] added all types of contact information&lt;br /&gt;
** (2005-09-27) PASSED&lt;br /&gt;
&lt;br /&gt;
* [http://kinrowan.net/ Cori Schlegel] [http://kinrowan.net/blog/wp/archives/2005/07/08/a-problem-with-the-structured-blogging-plug-in-for-wordpress/ discusses how he has updated] [http://kinrowan.net/blog/contact his contact page with hCard]&lt;br /&gt;
* [http://thoughtport.blogspot.com/ Aiden Kenny] hasn't published his hCard yet, but he has [http://thoughtport.blogspot.com/2005/07/elemental-particles-of-web.html published his hCard icon]: http://photos1.blogger.com/blogger/4224/444/320/AK-Hcard-icon.gif&lt;br /&gt;
* [http://JackWolfgang.blogspot.com Jack L. Wolfgang II] has [http://jack.randomata.com/resume/ converted the addresses in his resume to hCards].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.kerihenare.com/ Keri Henare] has marked up his [http://www.kerihenare.com/contact/ contact info page] with hCard.&lt;br /&gt;
** (2005-09-27) PASSED&lt;br /&gt;
** (2005-11-01) hCard completely rewritten&lt;br /&gt;
&lt;br /&gt;
* [http://www.windley.com/archives/2005/07/hcards_trying_o.shtml Phil Windley has published] [http://phil.windley.org/hcard.html his hCard].&lt;br /&gt;
** (2005-09-27) PASSED&lt;br /&gt;
&lt;br /&gt;
* Cori Schlegel has published a full hCard on his [http://kinrowan.net/contact contact page] and an abbreviated version (linked to the full version) in the sidebar of his [http://kinrowan.net blog].&lt;br /&gt;
* [http://cinematreasures.org Cinema Treasures] uses hCard to markup venue information for 10,000+ movie theaters.&lt;br /&gt;
* [http://thedredge.org Andy Hume] uses the hcard format to mark-up the names and URLs of commentors on his blog. &lt;br /&gt;
* [http://www.wolfsreign.com Steven Ametjan] has published his hCard on [http://www.wolfsreign.com/about/ his about page].&lt;br /&gt;
** (2005-09-27) PASSED&lt;br /&gt;
&lt;br /&gt;
* [http://evdb.com EVDB], the Events and Venues Database, publishes all venue detail pages with embedded hCards.&lt;br /&gt;
* [http://paulschreiber.com/blog/ Paul Schreiber]'s [http://concerts.shrub.ca/ Sunnyvale House Concerts] site publishes hCards for upcoming artists, as well as an hCard for the page itself.  In addition the [http://concerts.shrub.ca/shows Past Shows] page contains hCards for all past artists.&lt;br /&gt;
** (2005-09-27) PASSED&lt;br /&gt;
&lt;br /&gt;
* [http://zooibaai.nl/ Rob Mientjes] has published his hCard on [http://zooibaai.nl/about/ his about page].&lt;br /&gt;
** (2005-09-27) PASSED&lt;br /&gt;
&lt;br /&gt;
* [http://gbraad.nl/ Gerard Braad] has published an example on his [http://gbraad.nl/site/?p=profile profile] page that is almost consistent with his original [http://gbraad.nl/files/gbraad.vcf vCard] file. Also progress is made for transforming his [http://files.gbraad.nl/foaf.rdf FoaF] file to a hCard encoded representation. (also done for my spouse:[http://spouse.gbraad.nl/site/?p=profile Yong Yuan])&lt;br /&gt;
** (2005-09-27) PASSED, PASSED&lt;br /&gt;
&lt;br /&gt;
* [http://doncrowley.blogspot.com/ Don Crowley] has published [http://www.crowley.nl/hcard.html his hCard] as well as a nifty hCard button: http://www.crowley.nl/images/hcard.png&lt;br /&gt;
** (2005-09-27) PASSED&lt;br /&gt;
&lt;br /&gt;
* [http://technorati.com/ Technorati]'s [http://www.technorati.com/about/ About page] lists their '''Media Contact'''&lt;br /&gt;
** (2005-09-27) PASSED&lt;br /&gt;
&lt;br /&gt;
* [http://tantek.com/log Tantek's Thoughts] includes an inline author hCard at the bottom of the page.&lt;br /&gt;
&lt;br /&gt;
* Paul Schreiber has published his hCard on [http://paulschreiber.com/about/?contact his about page].&lt;br /&gt;
* Scott Reynen has published his hCard on [http://www.randomchaos.com/document.php?source=scott_reynen his profile page].&lt;br /&gt;
* [http://www.w3.org/People/Connolly/events/ Dan Connolly's index of events and talks] has hCards for many of the people he has met at those events.&lt;br /&gt;
&lt;br /&gt;
* [http://www.bidclix.com/ BidClix]'s [http://www.bidclix.com/AboutContact.html Contact BidClix] page has it's ''contact info'' marked up with an hCard.&lt;br /&gt;
&lt;br /&gt;
== Implementations ==&lt;br /&gt;
This section is '''informative'''.&lt;br /&gt;
&lt;br /&gt;
The following implementations have been developed which either generate or parse hCards. If you have an hCard implementation, feel free to add it to the top of this list. Once the list grows too big, we'll make a separate wiki page.&lt;br /&gt;
&lt;br /&gt;
* There is [http://flickr.com/photos/factoryjoe/68755089/ evidence of built-in hCard support in the Konqueror browser].  Specifically, Konqueror 3.5, in KDE 3.5 (kubuntu Breezy w/ update).&lt;br /&gt;
* There is [http://tagcamp.org/index.cgi?ContactList evidence of a kwiki plugin for hCards].  Update: the [http://svn.kwiki.org/cwest/Kwiki-hCard/ hCard kwiki plugin svn repository].  See the [http://microwiki.caseywest.com/index.cgi?hCard documentation of the hCard kwiki plugin].&lt;br /&gt;
* [http://suda.co.uk/projects/X2V/ X2V] is a bookmarklet that parses hCard and produces a .vcf (vCard) stream.  Note: needs to be updated as the spec is refined&lt;br /&gt;
* [http://www.stripytshirt.co.uk Duncan Walker] has built [http://www.stripytshirt.co.uk/features/firefox/smartzilla a Firefox extension] that gets hCard data from a webpage, uses Brian Suda's XSL (locally) to transform it to vcard format and opens the resulting .vcf file.&lt;br /&gt;
* [http://george.hotelling.net/90percent/ George] has written a [http://george.hotelling.net/90percent/geekery/greasemonkey_and_microformats.php Greasemonkey user script] that detects hCards and allows users to easily add them to their address book application.  Relies on the X2V web service to do the conversion.&lt;br /&gt;
* [http://blogmatrix.blogmatrix.com/ David Janes] has written a [[Greasemonkey]] [http://www.blogmatrix.com/include/microformat-find.user.js script] that finds many microformat elements, including hCards, and [http://blog.davidjanes.com/mtarchives/2005_08.html#003376 provides a popup menu of actions]. The hCard to vCard conversion is done internally within the script. ''This does not work with FireFox 1.5+/GreaseMonkey 0.6.4+.''&lt;br /&gt;
* [http://diveintomark.org/ Mark Pilgrim] has also written an [http://diveintomark.org/projects/greasemonkey/hcard/ hCard parser Greasemonkey user script].  It is self-contained and does not rely on the X2V web service.&lt;br /&gt;
* [http://www.oliverbrown.me.uk/2005/09/03/a-working-microformats-extension-to-simplexml/ Oliver Brown] has written an &amp;quot;extension&amp;quot; to [http://www.php.net/simplexml SimpleXML] that gives simple access to hCard information in PHP 5.&lt;br /&gt;
* [http://thedredge.org/ Andrew D. Hume] has built a system (Wordpress plugin?) for [http://thedredge.org/2005/06/using-hcards-in-your-blog/ using hcards in your blog] to represent people leaving comments on blog posts.&lt;br /&gt;
* The [http://tantek.com/microformats/hcard-creator.html hCard creator] is a very simple, yet illustrative, open source user interface / form / script which creates an hCard in real-time as you type in a set of contact information. &lt;br /&gt;
* [http://greenbytes.de/tech/webdav/rfc2629.xslt rfc2629.xslt] now attempts to generate hCard information ([http://ietf.org/rfc/rfc2629 RFC2629] is an XML format for authoring RFCs and Internet Drafts, see [http://greenbytes.de/tech/webdav/rfc2629xslt/rfc2629xslt.html example document])&lt;br /&gt;
* [http://tantek.com/microformats/buddylist2hcards.html iChat buddy list to hCards] - Open source AppleScript to automatically convert one's buddy list in the MacOSX iChat AIM client into a valid XHTML 1.0 Strict list of hCards. &lt;br /&gt;
* [http://dev.w3.org/cvsweb/2001/palmagent/ palmagent] is a collection of palmpilot and sidekick tools. It includes X2V derivatives xhtml2hcard.xsl and toICal.xsl plus some [http://dev.w3.org/cvsweb/2001/palmagent/hcardTest.html hcardTest] materials&lt;br /&gt;
* [http://www.openpsa.org/ OpenPsa 2.x] CRM application uses hCard for all person listings. The widget is [http://www.midgard-project.org/midcom-permalink-922834501b71daad856f35ec593c7a6d reusable across Midgard CMS]&lt;br /&gt;
&lt;br /&gt;
== Additional Applications ==&lt;br /&gt;
This section is '''informative'''.&lt;br /&gt;
&lt;br /&gt;
There are numerous potential additional uses and applications for hCards on the Web.  The following are merely a few thoughts and possibilities that folks have come up with:&lt;br /&gt;
&lt;br /&gt;
* As an open standard/format for [http://www.gravatar.com/ Gravatars].&lt;br /&gt;
* Marking up individual authors of blog posts on a group blog&lt;br /&gt;
* Marking up people's names and URLs in a blogroll&lt;br /&gt;
* Any reference to people in blog posts (e.g. when citing them, or referencing them, or describing them, by name).&lt;br /&gt;
* ...&lt;br /&gt;
&lt;br /&gt;
== References ==&lt;br /&gt;
=== Normative References ===&lt;br /&gt;
* [http://www.w3.org/TR/2002/REC-xhtml1-20020801/ XHTML 1.0 SE]&lt;br /&gt;
* [http://www.ietf.org/rfc/rfc2426.txt vCard RFC2426]&lt;br /&gt;
&lt;br /&gt;
=== Informative References ===&lt;br /&gt;
* [http://www.w3.org/2002/12/cal/rfc2426 HTML reformatted version of RFC2426]&lt;br /&gt;
* [http://w3.org/TR/REC-CSS1 CSS1]&lt;br /&gt;
* [http://tantek.com/log/2004/09.html#hcard hCard term introduced and defined on the Web, 20040930]&lt;br /&gt;
* [http://wiki.oreillynet.com/foocamp04/index.cgi?SimpleSemanticFormats FOO Camp 2004 Simple Semantic Formats presentation, 20040910]&lt;br /&gt;
* Contributed from http://developers.technorati.com/wiki/hCard.&lt;br /&gt;
* [http://www.w3.org/TR/xhtml11 XHTML 1.1]&lt;br /&gt;
&lt;br /&gt;
==== Specifications That Use hCard ====&lt;br /&gt;
* [[adr]]&lt;br /&gt;
* [[geo]]&lt;br /&gt;
* [[hcalendar|hCalendar]]&lt;br /&gt;
* [[hreview|hReview]]&lt;br /&gt;
&lt;br /&gt;
==== Similar Work ====&lt;br /&gt;
* [http://www.intertwingly.net/wiki/pie/PaceBetterPersonElement Atom PaceBetterPersonElement]&lt;br /&gt;
* [http://www.jabber.org/jeps/jep-0054.html JEP-0054: vcard-temp]&lt;br /&gt;
&lt;br /&gt;
== Related Pages And Further Reading ==&lt;br /&gt;
* [[hcard-profile|hCard profile]] - The XMDP profile for hCard&lt;br /&gt;
&lt;br /&gt;
This specification is a work in progress. As additional aspects are discussed, understood, and written, they will be added. These thoughts, issues, and questions are kept in separate pages.&lt;br /&gt;
&lt;br /&gt;
* [[hcard-brainstorming|hCard Brainstorming]] - where we are keeping our brainstorms and other explorations relating to hCard&lt;br /&gt;
* [[hcard-tests|hCard tests]] - a wiki page with actual embedded hCards to try parsing.&lt;br /&gt;
* [[hcard-faq|hCard FAQ]] - If you have any questions about hCard, check here, and if you don't find answers, add your questions!&lt;br /&gt;
* [[hcard-issues|hCard issues]] - Please add any issues with the specification to the issues page.&lt;br /&gt;
* See also [http://www.technorati.com/cosmos/referer.html blogs discussing this page].&lt;/div&gt;</summary>
		<author><name>Ragdoll</name></author>
	</entry>
</feed>