August 2008
When generating webpages from data, there are a host of techniques available to the clueless sysadmin.
XML
, XSD
, XSLT
and XPATH
(well explained at zvon.org and xmlfiles.com) provide a generic way to store data, and transform it to whatever format desired.
fairly well defined
human readable (well, with some effort)
platform-independent
Separating data from presentation possible. (Data in XML, structure in XSD, presentation in XSLT. However, XSLT not completely decoupled from XSD.)
Integrity checking possible.
XSLT has ugly and cumbersome constructs for conditional and loop evaluation.
It has the power of a programming language, but it neither looks like imperative nor logical programming.
It isn't obvious where to steal XSLT for generating web forms and the like. Perhaps has to be written from scratch.
But XML c.s. have a rather steep learning curve, and if you just want to fill in a few values in your HTML pages, template engines
like e.g. django, smarty or cheetah may be a quicker solution.
fairly simple to learn, looks like simplified programming,
templates to generate CRUD webpages for databases readily available,
extensible by writing native-language plugins.
Ususally depends upon particular programming language for processing, and will generate output in same language.
functionality tends to differ between versions,
Integrity checks probably depend on compiler.
Database-as-persistent-storage model with data definition in programming language not model of my choice.