Re: Validating in forein language (Modified by olivier Thereaux)

On Tue, 5 Oct 2004, allan smith wrote:

> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//IT"

That's incorrect, it must have //EN not //IT. The two letters _are_ a
language code, but they indicate the language used in the prose of the
Document Type Definition (mainly comments), and this is English.
It has nothing to do with the document's language.

> <html lang="en" xml:lang="it" xmlns="http://www.w3.org/1999/xhtml">

That's valid but incorrect. It gives conflicting information about
language: the first attribute says it's English, and the second one says
it's Italian. This is incorrect even if the document is bilingual (in
which case you should just specify one language here and the other
locally, for the applicable elements). Actually I think there's no
normative definition that says which attribute "wins" in a conflict
situation. According to http://www.w3.org/TR/html/#C_7 the xml:lang
attribute "wins", but that's in the (in)famous Appendix C, which is
specifically described as informative, not normative.

>   <title xml:lang="it">Ferrovia Del Vapore Di Telford - Home
> Page</title>

That's OK, but you don't really need the xml:lang attribute, since
language information is by default inherited from the parent element.
Unfortunately there is no way to indicate that the text "Home Page" is
actually in English. The content model of <title> allows character data
only, no tags, and without tags you cannot assign an attribute to a part
of an element's content.

-- 
Jukka "Yucca" Korpela, http://www.cs.tut.fi/~jkorpela/

Received on Tuesday, 5 October 2004 21:32:40 UTC