From Microformats Wiki
hcard-issues /
Revision as of 07:26, 22 December 2005 by Atamido (talk | contribs) (Added Outlook 2003 Windows)
Jump to navigation Jump to search

hCard issues

These are externally raised issues about hCard 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. — Tantek

See related hCalendar issues.


  • 2005-06-21 raised by Hixie
    1. Issue H-1: This specification is lacking a user agent conformance section. There's basically nothing that says how hCards 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?
      • A: ACCEPTED RESOLVED. See hCard parsing for how hCards must be parsed. For errors/unexpected content/missing content, please provide specific examples.
  • 2005-06-30 raised by Jack L. Wolfgang II. Please feel free to move these to the FAQs if they are better suited there.
    1. Handling middle names and suffixes: How does one handle middle initials/names in the hCard format and suffixes that are not honorific suffixes (e.g. Jr., Sr., II, III, etc. as opposed to Ph.D., Esq., M.D., etc.)?
      • A: ACCEPTED FAQ. By Brian Suda (2005-11-08 updated by Tantek) hCard is based of the RFC2426 spec. I you want to use a middle initial it can be expanded using the abbr element. <abbr title="Middle Name" class="additional-name">M</abbr>. Honorific Suffixes in the RFC include Jr. Esq. and other inherited suffixes, so i would just use <span class="honorific-suffix">Jr.</span> etc.
    2. Handling different types of addresses: How does one handle the TYPE (e.g. postal, work, etc.) specification for addresses as specified in RFC 2426 Section 3.2.1?
      • A: ACCEPTED FAQ. By Brian Suda (2005-11-08 updated by Tantek) If you want to add a type to certain elements, including address and telephone it may be done in the following manner:
<span class="adr">
<span class="type">work</span>:
<span class="tel">
<span class="type">work</span>:
<span class="value">123.456.7890</span>

the TYPE needs to be a sub-element of the property (adr, tel, etc) NOTE: EMAIL does NOT have many TYPE attributes, only INTERNET and X400

  • 2005-07-22 raised by DanConnolly
    1. ...in my cellphone/sidekick address book, I have a number of entries for companies. I wrote asHCard.xsl to convert the data from RDF to hCard, but I don't know what to do with entries for companies, since FN is mandatory in hCard.
      • A: ACCEPTED FAQ. This should be an FAQ. "How do I write an hCard for a company?" The vCard specification is silent on this point (entries for companies). Thus there are two options as far as the hCard standard is concerned:
        1. Set "fn" and "org" to the same value. E.g. <span class="fn org">W3C</span> (recommended)
        2. Set "org" as usual, and set "fn" explicitly to empty. E.g. <span class="fn"></span><span class="org">W3C</span> or
          • Simply have no "fn", and on the parsing side, if there is no "fn" present, but there is an "org" property, then duplicate the "org" value as "fn"
      • The last two options are effectively the same and are both not explicit and easily confusable with a "missing data" condition. Thus option 1 is preferred. For converting applications (hCard to vCard), they may consider using proprietary extensions to make the distinction explicit in generated vCards, based on either case 1 or 2 above. E.g. Apple's Address Book application supports the property: X-ABShowAs:COMPANY
      • We are looking for descriptions of how other vCard supporting applications treat "company" vCards differently from "person" vCards. Please provide descriptions here:
        • Address Book / MacOSX.3:
          • Export (e.g. drag & drop to desktop, view in text editor)
            • Sets "FN" and "ORG" to the name of the company
            • Sets proprietary X-ABShowAs:COMPANY
          • Import (e.g. edit in text editor, drag & drop from desktop)
            • By setting "FN" and "ORG' to the same name (e.g. Banana Computers Inc.)
            • And removing any proprietary properties (e.g. X-ABShowAs)
            • Address Book user interface showed new vCard as a "company" contact rather an a person
        • Address Book MacOSX.4:
          • same results as above -RyanKing
        • The Danger Hiptop (aka T-Mobile Sidekick) addressbook:
          • Export (e.g. email to a mailing list)
            • Sets "FN" to the empty string and puts the company name in "ORG".
          • Import - could not find a way to import a .vcf, by email, IM, or other means into the Sidekick.
        • Contacts / Outlook 2003 Windows
          • Export (e.g. Highlight contact, File, Save As, vcard)
            • Sets "N" and "ORG to the name of the company
            • Sets "FN" to value in "File as:"
        • Add another vCard app here.
  • 2005-07-23 raised by DanConnolly
    1. Are class names case sensitive or not? hCard 1.0 says "If names in the source schema are case-insensitive, then use an all lowercase equivalent."
      • A: ACCEPTED FAQ. Class names are case sensitive per the HTML4 specification. Hence hCard explicitly specifies the case of class name to use for source schema names that are case-insensitive.
    2. ...but I find example data with class="Given-Name"
      • A: ACCEPTED RESOLVED. That is from an older preliminary version of the hCard spec which used mixed case class names. Such class names are no longer valid hCard. Please note which examples (URLs) are using the older class names and hopefully we can get them fixed.
        • A: By Brian Suda I have fixed all the references in the hCard Brainstorming page to reflect the lower-case style, this is a hold-over from the original design, X2V has been updated.
    3. ..and code that supports it [data with class="Given-Name"].
      • A: ACCEPTED RESOLVED. Any code supporting the older class name(s) is for backward compatibility only, and should be phased out. Any new hCard code SHOULD NOT support such mixed case class names.
        • rfc2629xslt.html uses Street-Address, Family-Name, etc.
        • X2V Version 0.5.1 2005-07-08 supports Family-Name etc.
          • A: By Brian Suda I agree that the upper-case class names can be removed from the code, this was a hold-over and will be trimmed.
    4. The ul/ol stuff for multiple values of a property seems to be in the X2V code and in hCard Brainstorming but not in the hCard 1.0 spec.
      • A. ACCEPTED RESOLVED. This needs to be added to the spec. 2005-11-08 Update: the way multiple values has been updated to work much better and not require ul/ol.
    5. the hCard Profile says country-name but X2V and lots of the data I've seen says country
      • A. ACCEPTED RESOLVED. RFC 2426 clearly says "country name" in both the prose and the grammar, thus "country-name" is the correct class name to use. If X2V uses just "country", it needs to be fixed to use "country-name", and any such examples as well. Please note which examples (URLs) are using the class name "country" and hopefully we can get them fixed.
        • A: By Brian Suda I have fixed all the references in the hCard Brainstorming page to reflect the proper country-name, X2V will support this in the next iteration when i fix several bugs at once.
  • 2005-08-12 raised by Jack L. Wolfgang II. Use of mailto transport functionality for the E-Mail address field.
    1. As stated in the hCard Brainstorming document, mailto is abused by spammers. As a result, many organizations have moved to form-based contacts as opposed to mailto's. According to RFC 2426, Section 3.3.2, "A non-standard value can also be specified." Does this refer to a non-standard e-mail address value or type value?
      • A: ACCEPTED FAQ. Type value.
  • 2005-10-30 raised by Julian Reschke.
    1. Several implementations (Which ones? Please provide links.) seem to assume that any class attribute that contains the substring "vcard" indeed signals the presence of vcard information. Not so: there are examples (What examples? Please provide links.) of where a token in the class attribute indeed only starts with "vcard", in which it should be ignored. Implemenations using XPath (such as XSLT or Greasemonkey scripts) should be advised to do a contains(concat(@class,' '),'vcard ').
      • REJECTED VAGUE. Which implementations? And which examples?

  • 2005-12-08 raised by Kenny Heaton.
    1. The specification gives no way to to declare a telephone extention, as in (800) 234-5678 ext. 101


Please use this format (copy and paste this to the end of the list to add your issues):

  • YYYY-MM-DD raised by YOURNAME.
    1. Issue 1: Here is the first issue I have.
    2. Issue 2: Here is the second issue I have.