hcard-issues
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.
Issues
- 2005-06-21 raised by Hixie
- 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.
- 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?
- 2005-06-30 raised by Jack L. Wolfgang II. Please feel free to move these to the FAQs if they are better suited there.
- 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.
- 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.
- 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:
- 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.)?
<span class="adr"> <span class="type">work</span>: ... </span>
<span class="tel"> <span class="type">work</span>: <span class="value">123.456.7890</span> </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
- ...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:
- Set "fn" and "org" to the same value. E.g.
<span class="fn org">W3C</span>
(recommended) - 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"
- Set "fn" and "org" to the same value. E.g.
- 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
- Export (e.g. drag & drop to desktop, view in text editor)
- 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.
- Export (e.g. email to a mailing list)
- 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:"
- Export (e.g. Highlight contact, File, Save As, vcard)
- Add another vCard app here.
- Address Book / MacOSX.3:
- 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:
- ...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.
- 2005-07-23 raised by DanConnolly
- Are class names case sensitive or not? hcard 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.
- ...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.
- 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.
- ..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.
- A: By Julian Reschke Fixed rfc2629.xslt (2005-10-29)
- 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.
- rfc2629xslt.html uses Street-Address, Family-Name, etc.
- 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.
- 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 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.
- 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.
- 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.
- Are class names case sensitive or not? hcard says "If names in the source schema are case-insensitive, then use an all lowercase equivalent."
- 2005-08-12 raised by Jack L. Wolfgang II. Use of mailto transport functionality for the E-Mail address field.
- 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.
- 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?
- 2005-10-30 raised by Julian Reschke.
- 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?
- (Note: the code
contains(concat(@class,' '),'vcard ')
is broken see parsing-microformats#Parsing_class_values for a correct example --Robert Bachmann)
- 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
- 2005-12-08 raised by Kenny Heaton.
- The specification gives no way to to declare a telephone extention, as in (800) 234-5678 ext. 101
- 2006-01-21 raised by Ben Boyle.
- Have run into issues trying to use definition lists with hCard, specifically around nesting requirements for tel where the DT element takes a class "type" (e.g. Telephone, Facsimile) and the DD element marks the value. It is invalid to place any other elements within a DL that wrap around the DT/DD pairs so there is no available element to assign the class "tel" to. XHTML2 proposes a DI element that will resolve this issue. I am hoping for an interim solution for those that wish to use definition lists, perhaps that "any class that would be placed on the DI parent (in XHTML2) must instead be placed on the first DT element". I realise this will cause headaches for those implementing hCard parsers. I'd also like to note this may affect other (current or future) microformats and relates to the general hassle of definition lists in current (X)HTML recommendations. For your consideration - thanks!
Template
Please use this format (copy and paste this to the end of the list to add your issues):
- YYYY-MM-DD raised by YOURNAME.
- Issue 1: Here is the first issue I have.
- Issue 2: Here is the second issue I have.