I completely agree with Paul. I was a bit too quick to say "every atom element should allow xml:lang" because I wasn't aware of the fact that there are quite a few elements (rather than attributes) with completely formalized content only (such as ISO 8601 dates,...).
Of course. I was a bit quick too. All elements with content that might vary in language, should however, have an optional 'xml:lang' attribute. All elements referring to external content that may vary in language should have an optional 'hreflang' attribute.
The only thing that bugs me about this, is that 'xml:lang' is in the XML namespace, while 'hreflang' isn't. I think that both language definitions should reside in the same namespace. Would it be evil to have 'lang' in the Atom namespace? It would imho look and feel a lot more delicate and natural.
In many cases, such as title/summary,... it would also be very helpful to be able to mark up language changes inside an element, with something like <html:span xml:lang='...'>.
That resides in another namespace, so I would assume that follows the rules of HTML, and would thus not be specified in Atom. Examples might be given, though.
-- Anne van Kesteren <http://annevankesteren.nl/>