On the applications of Postel’s Law

Saturday, 16 Apr 2005

Postel’s Law is be conservative in what you do, be liberal in what you accept from others. It is a great principle, one I agree with and believe in. It was also written about symmetric senders/receivers: TCP implementations. When applied to web content, there is a fundamental asymmetry between end points, which weakens the law significantly. You need not be able to accept HTML in order to generate it, and you need not be able to generate HTML in order to accept it.

Thus, few of those who generate it are conservative, burdening those who accept it to be absurdly liberal. The asymmetry further means that as a content producer, I cannot know how to be conservative in what I send when all consumers attempt to be liberal. I need to be aware of at least one conservative receiver (such as a validator, in the best case); will all generator implementors always be?

Postel’s Law has no exceptions, but it does have a tightly confined context to limit its applicability.