I would submit that neither SQL nor XML are really the best data model for CMS metadata. If you are limited to these two, I would go with XML and rely on the capabilities of a decent XML database that allows you to treat the XML interchangeably as either deep or shallow and provides a decent query interface, i.e. not "in-memory".I agree, but I'd like to hear of such a database. SQL is good for storing some kinds of information. XML is good for storing other kinds. I've never had a huge problem with mixing these things.
I often hear that databases are 'bad' because a change to the taxonomy requires much work re-writing SQL queries, whilst in XML, a change merely requires updating a schema. I can't say agree. All data processing makes assumptions about the data. It matters little whether you are re-writing your SQL phrasebook or the XSLT sheets, either way you are re-writing.
My final thought is that much information doesn't fit into either XML or relational systems, simply because it does not fit into a rigid taxonomy. People tend to forget this when building CMS systems. XML may make it easier for computer programs to talk to each other, but that doesn't necessarily make it easier for humans to talk to each other, which is the ultimate goal of CMS systems...
--
Jonathan Peterson
Technical Manager, Unified Ltd, +44 (0)20 7383 6092
[EMAIL PROTECTED]
--
http://cms-list.org/
more signal, less noise.