I have complained that the HTML5 spec is too blog-centric ever since my beloved dialong tag got cut. (I will never forget it. Never!) But apparently it’s not blog-centric enough to have a comment tag. In HTML5, we’re supposed to markup comments as articles nested within the article they comment on! Ian Hickson, aka @hixie, thinks that comments stand just fine on their own and are not subservient to the content they comment upon in meaning or weight. That’s a very egalitarian view often pushed by people in technocratic online societies where members often do have valid comments that could stand on equal footing with the original article in question.
However, the rest of the Internet is not so enlightened. Other communities online are often not as legitimate as the ones we developers and designers use. Music and teen sites, for instance, have lots of “OMG I LUV YOU!” comments that do not add to the body of human knowledge nor express an opinion worth weighing.
The original often weighs more than its comments, and most comments cannot be interpreted without reference to that which they commented upon or the other comments surrounding it. If someone made a comment that was perfectly understandable without the context of the original article and encompassing discussion, they’d have essentially written a new article worthy of publication, filled with blockquotes, references, and citations. But this comment type makes up perhaps .05% of online discussion threads. It is the place of an editor to decide what is an is not an article, not the machine interpreting markup. The machine can only interpret hierarchy, not worth.
“Words are cheap,” as old folks say, “‘cuz everybody’s got ‘em.” You ever stumble onto a user group thread in a Google search? A single, stand alone comment, no context for what is being commented on, and only a small, hard to follow chain of links to other messages in the thread to go on. Maybe if you grew up using user groups you can navigate this train of thought. But for the majority of Internet users (myself, mother, sister and niece included), this is a fragment of thought, and it’s not very useful.
Then there’s what I call the “messiness” factor. As a front-ender, I have a hate-hate relationship with nested elements–lists specifically. If you’ve styled or parsed lists within lists, you know it is a pain in the arse. And if someone, like a human being, forgets to close a tag, two lists become a one list with a child list. Imagine what happens on a page with many articles. If someone leaves out but one closing tag for one of the articles, suddenly all the articles following it are interpreted as comments! To me this doesn’t fit with HTML5’s flexible, forgiving nature. HTML5 moves away from XHTML’s “all tags must be closed or self-closing!” demands. In HTML5, it’s okay if you don’t close your
<head>, heck you don’t even need a
<head>! This way we maintain forward-compatibility and don’t break the legacy half of the Internet. But you have to include closing tags for articles (although not for head or body tags) lest you run the risk of them being significantly misinterpreted. That’s not foolproof. That’s punishment!
Am I saying we need a comment tag? Not necessarily. But I think interpreting nested articles as comments will only cause trouble down the line. I’m not opposed to a comment tag. I think people would use the heck out of it, and it would give browsers, search engines, and machines in general a very useful hook to better understand data relationships on the page. That’s my rant! What’s your beef?