I agree that servers should serve valid HTML, but disagree that they
should contain validation code. You only need to validate a piece of
HTML once, whereas you typically serve it many more times.
I didn't say the serve should contain the validation code; nor should
it need to validate a document each time it transmits it. What I
mean is that the server should take the responsibility for sending
validated data. How this is implemented is irrelevant. [E.g., a
server could employ an external validating parser when a new document
is "checked in" to its database.]
The question here is about responsibility. The way I see it, (some
popular) current servers are irresponsible and ignore the Internet
dictum of being conservative in what they transmit.