{
  "$type": "site.standard.document",
  "bskyPostRef": {
    "cid": "bafyreiepcox4ttqwcabuqtcp33oehcnt2nzb6iqt6yjdnq3kp734gwjkli",
    "uri": "at://did:plc:wnmeh72t5f4b5hfuopgmzhcl/app.bsky.feed.post/3mmudeyv7bky2"
  },
  "path": "/posts/h-cards/",
  "publishedAt": "2026-05-27T20:19:58.466Z",
  "site": "https://denmchenry.com",
  "textContent": "I tend to fixate on little details and can't move on till I find the answer. The latest cause was trying to understand the meaning of the h-prefix in h-cards and other class names in microformats.\n\nThe documentation has this to say about prefixing conventions:\n\n>   * h-* for root class names (e.g. h-card)\n>   * p-* for plain text properties (e.g. p-name)\n>   * u-* for URL properties (e.g. u-photo)\n>   * dt-* for date/time properties (e.g. dt-bday)\n>   * e-* for embedded markup properties (e.g. e-note)\n>\n\n\nAll of the prefixes made sense to me except for h-. Why h- for root and not r-? I'm sure it's in there somewhere, but I couldn't find an explanation in the documention on the microformats website. So, naturally, I turned to that old reliable source of genuine and generally well-edited material: a book.\n\nA lot has changed between microformats and microformats2, one of the big ones being the introduction of the above prefixes, and if I couldn't figure out where the h- came from, I might find it in the original book on the subject by one of the founders of the spec: Brian Suda. And, sure enough, he explains it very clearly:\n\n> We took the vCard spec (RFC2426) and mapped it 1 to 1 to properties that could be placed into the HTML class attribute. Since this was in HTML, it made sense to call this new format hCard, \"h\" for HTML.\n\nBrian Suda, _Using Microformats_ , p. 19 (O'Reilly, 2006)\n\nSo hCard was the original name, and namely an HTML analogue for (and a direct adaptation of) vCard. H stands for HTML.\n\nAnd in the microformats2 spec, the prefixes are meant to wrangle and make sense of so much that was difficult to remember and parse.\n\nSo h- represents the HTML element that serves as the root of the named data type: h-card is the root element for a card containing contact information, h-entry is the root element for an entry in a blog or the like, _und so weiter_.\n\nAn h-card is essentially a block of HTML containing a business card.\n\nThere's a lot more to dive into, but that clears up one of those little things that tends to block me from making progress.",
  "title": "Understanding h-cards",
  "updatedAt": "2022-06-02T04:05:19.000Z"
}