Dorothea Salo on semantic HTML
Dorothea Salo has posted her thoughts on Semantic HTML as well. Dorothea points out that while pre-defined tags (paragraphs, lists and so forth) are well defined it is easy to run in to problems when you start to define extra semantics via the class attribute. Start with something like <code class="python"> and the chances are that six months down the line your list of custom classes will have spiralled out of control, and as tools and validators will not be checking your class names (for typoes and so forth) you’ll soon be in a whole world of trouble.
Seeing as Dorothea has years of experience as a markup expert, whereas I’ve only been using HTML correctly since last summer, I’ll take her word for it that this is a problem (it certainly makes sense). I’m not a huge fan of additional semantics via the class attribute, but if you want to expand XHTML it can look like the only option. Perhaps this is where the modularisation of XHTML can come in to play? Lachlan Cannon’s Inline XML story on ALA shows how namespaces can be used to embed custom XML information in an otherwise normal XHTML document, and it would be easy to build a simple CMS that could filter out this information before serving it to more simple web clients. Of course, this reintroduces the problem of having to define a custom XML vocabulary so in some ways it puts us back where we started.
Dorothea Salo - 8th January 2003 22:49 - #
Swannie - 9th January 2003 00:18 - #
CMS's are typically only really needed if you have either 1) huge volumes of content or 2) you want to target more than one medium.
If it's issue 1 driving your CMS needs, then I think inline XML is a fine way to go. And also, if you've got issue 1, you're probably not a web novice, and can handle defining an XML vocab.
If it's issue 2 driving your CMS needs, then inline XML is definitely not the way to go. You need a pure content description of some kind, without any binding to HTML, Windows, or what have you.
Yes, that's expensive to do. Performance is not the same as scalability, and the need for a CMS is the need for scalability.
This, as all non-trivial things, is a balancing act.
If you're writing for the web, (like blogging), storing data as XHTML probably isn't a bad way to go, as things naturally fit into the <h*/><p><li> structure very well.
If you're not writing for the web alone, then storing as XHTML probably isn't as smart.
There's no silver bullet.
Jeremy Dunck - 10th January 2003 15:05 - #