From Microformats Wiki
h2vx /
Revision as of 21:25, 22 December 2009 by Tantek (talk | contribs) (→‎documentation: copy-pasteo)
Jump to navigation Jump to search


H2VX is a production deployment of the X2V hCard and hCalendar conversion transforms.

It converts hCard 1.0 contacts and hCalendar 1.0 events on web pages to .vcf and .ics respectively for use in desktop and other client software applications.


To convert hCards to vCards, go http://h2vx.com/vcf/ and enter the URL to the hCards.

To convert hCalendar to iCalendar, go http://h2vx.com/ics/ and enter the URL to the hCalendar events.


Links to H2VX.com to convert a URL (like http://microformats.org/wiki/events ) can be constructed as follows:

You may omit the leading "http://" from the URL to be converted for a briefer more readable URL:

download vCards from hCards
e.g. http://h2vx.com/vcf/microformats.org/wiki/events
download iCalendar from hCalendar
e.g. http://h2vx.com/ics/microformats.org/wiki/events
subscribe to hCalendar from hCalendar
e.g. webcal://h2vx.com/ics/microformats.org/wiki/events
http://h2vx.com/ics/sub/URL for systems which don't support auto-linking of webcal: URLs, e.g. MediaWiki, Twitter.
e.g. http://h2vx.com/ics/sub/microformats.org/wiki/events

user agent strings

H2VX uses two user agent strings, when retrieving hCards and hCalendars respectively:

  • H2VX contacts proxy (http://h2vx.com/vcf/)
  • H2VX events proxy (http://h2vx.com/ics/)

You may see occurrences of these in your web server logs when users of H2VX convert hCards and hCalendar events on your pages.


H2VX is built and maintained by Tantek with:

  • X2V XSLTs by Brian Suda
  • PHP get-contact.php get-cal.php originally written by Brian, updated/factored by Tantek with various improvements. To Do: open source these.
  • PHP common.php (and Javascript common.js) by Tantek which incorporate CASSISv0 open source from http://cassisproject.com/
  • XHTML1+CSS+JS front-end design/interface by Tantek (view source of h2vx.com in your browser for more).


Have feedback on H2VX? Feel free to add to the top of this list and use ~~~~ to sign your name and date your comment. If this grows too big we can move it to h2vx-feedback

  • As a Web page author I find the H2XV site a bit awkward to use -- it's difficult to find the URLs to use in my Web page. As an end-user it fine to have the H2VX bookmarklets in my toolbar, but as a page author I can't be sure everyone has the bookmarklets or Operator installed. Bob Jonkman 00:56, 10 November 2009 (UTC)
  • "Also, a short 'about' page would be worthwhile IMO, especially for adding to the homepage." - Norm on microformats-discuss.
  • ...


Found a problem with H2VX? Please note it here at the top of this list and use ~~~~ to sign your name and date your comment. If this grows too big we can move it to h2vx-issues

  • The "what are microformats?" style descriptions only appear on mouse-over of the trigger terms (those with class="term"). It does not appear at all when keyboard navigation is used, making it somewhat inaccessible. The problem here is that the trigger elements are the ones that should receive focus, but not being links they are not in the tabbing order so do not, hence the helper text never appears for keyboard users. Norm 10:39, 6 November 2009 (UTC)
    • Quick fix: remove visibility:hidden from .term .info. Andr3
  • <i class="term"> should be made into <em>'s for semantic reasons. ;) Andr3
    • Note that the <i> element is used deliberately for "instance" of a term - this is an Microformats in HTML5 semantic, and is more accurate in this instance than "em"phasis. — Tantek 18:29, 11 November 2009 (UTC)


Resolved issues are moved to this section. If this grows too big we can move it to h2vx-issues-resolved

  • ...
  • 2009-11-11 We were using the Technorati hosted service. Surprised to see it redirected to H2XV, took a minute to realize what was going on. Thanks for picking up the service! Both the hosting provider and the new user agent are blocked by default on our side to prevent scraping. To be more transparent, maybe you could change the UA similar to the old one: from "Technorati contacts proxy (http://technorati.com/contacts/)" to "H2VX contacts proxy (http://h2vx.com/vcf/)" DineMonkey 15:47, 11 November 2009 (UTC)
    • I've updated the user agent strings per your recommendation and documented them above as well. Tantek 18:29, 11 November 2009 (UTC)
      • H2VX contacts proxy (http://h2vx.com/vcf/)
      • H2VX events proxy (http://h2vx.com/ics/)


Once a resolved issue has no further actions (and ideally is verified by the issue reporter), it can be closed and moved to this section. If this grows too big we can move it to h2vx-issues-closed

see also