On 4/20/06 9:06 AM, "Chris Messina" <chris.messina at gmail.com> wrote:
> Alright, I've added 'n' next to 'fn' since I broke up my name. Whether
> it's really necessarily (and useful) or just something that the
> previous spec called for is still up for interpretation...
Perhaps I should add this to the FAQ (or add some clarification to the
spec).
http://microformats.org/wiki/hcard
The simple rules:
FN is required in hCard same as vCard.
N is required in hCard same as vCard, and in hCard, you have to explicitly
markup "given-name", "family-name", and all the other componenets of N.
The shortcuts:
There is an "implied N optimization" which allows you to *imply* an N
property if your FN has precisely two words which represent your given-name
and family-name. See the spec for details.
There is an "implied NICKNAME optimization" which allows you to *imply* a
NICKNAME *and* an N property if your FN has precisely *one* word which
represents your nickname (AKA handle, user login, etc.). See the spec for
details.
Thus if you are following the simple rules, you MUST have both FN and N
explicitly markedup in your hCard.
If however you are following one of the shortcuts, and omitting an explicit
N, then any use of the N component class names (e.g. given-name, family-name
etc. has no effect and is ignored).
Thus in Chris Messina's original example:
<a class="url fn" rel="me" href="http://factoryjoe.com/blog">
<span class="given-name">Chris</span>
<span class="family-name">Messina</span></a>
There is no "N" markup, so the given-name and family-name are ignored.
Instead, the N (and given-name, and family-name) are all implied from the
two word FN.
Does that help clarify this?
Tantek