XML doesn't validate itself either. It requires the use of
external software to validate it. So, if you're
concerned about the integrity of your database and you
receive CSV data, you could just as easily write external
software to validate that as well.
(If you reply with something along the lines of "But it's
easier to write a DTD and feed it through a generic
validator than it is to roll your own CSV validator", please
provide concrete evidence to back this up. Based on the few
examples I've seen, DTDs seem to be a programming language
unto themselves, no less complex (and far more verbose) than
the level of perl code that would be required for this
task.)