- From: Julian Reschke <julian.reschke@gmx.de>
- Date: Sun, 25 Nov 2007 18:23:44 +0100
- To: Yves Lafon <ylafon@w3.org>
- CC: Anne van Kesteren <annevk@opera.com>, HTTP Working Group <ietf-http-wg@w3.org>
(see also <http://www.w3.org/Protocols/HTTP/1.1/rfc2616bis/issues/#i13>)
Julian Reschke wrote:
> ...
>> Regarding replacing the syntax by just a link to RFC4646 will break a
>> nice feature of rfc2616, the fact that the syntax is contained in the
>> spec, with no need to get something else. It means also that we should
>> change/upgrade the definition of language-range (RFC2616#14.4)
>
> The problem is that RFC4646 has made that much harder, because now two
> lines wouldn't be sufficient anymore (unless we deviate from RFC4646's
> ABNF).
...and, as a matter of fact, the RFC2616 grammar already relies on rules
imported from the URI spec.
> ...
I have looked at this again, and made experimental changes in
<http://www.w3.org/Protocols/HTTP/1.1/rfc2616bis/draft-lafon-rfc2616bis-latest.html#rfc.issue.languagetag>.
The old text was:
3.10. Language Tags
A language tag identifies a natural language spoken, written, or
otherwise conveyed by human beings for communication of information
to other human beings. Computer languages are explicitly excluded.
HTTP uses language tags within the Accept-Language and Content-
Language fields.
The syntax and registry of HTTP language tags is the same as that
defined by [RFC1766]. In summary, a language tag is composed of 1 or
more parts: A primary language tag and a possibly empty series of
subtags:
language-tag = primary-tag *( "-" subtag )
primary-tag = 1*8ALPHA
subtag = 1*8ALPHA
White space is not allowed within the tag and all tags are case-
insensitive. The name space of language tags is administered by the
IANA. Example tags include:
en, en-US, en-cockney, i-cherokee, x-pig-latin
where any two-letter primary-tag is an ISO-639 language abbreviation
and any two-letter initial subtag is an ISO-3166 country code. (The
last three tags above are not registered tags; all but the last are
examples of tags which could be registered in future.)
The current edits say:
3.10. Language Tags
A language tag identifies a natural language spoken, written, or
otherwise conveyed by human beings for communication of information
to other human beings. Computer languages are explicitly excluded.
HTTP uses language tags within the Accept-Language and Content-
Language fields.
The syntax and registry of HTTP language tags is defined by
[RFC4646]:
Language-Tag = <defined in [RFC4646], Section 2.1>
White space is not allowed within the tag and all tags are case-
insensitive. The name space of language tags is administered by the
IANA. Example tags include:
en, en-US, en-cockney, i-cherokee, x-pig-latin
where any two-letter primary-tag is an ISO-639 language abbreviation
and any two-letter initial subtag is an ISO-3166 country code. (The
last three tags above are not registered tags; all but the last are
examples of tags which could be registered in future.)
So essentially I have removed the 2nd paragraph, replacing it with a
pointer to RFC4646, and changed the BNF to just import the
"Language-Tag" rule from there).
I'm not so sure about the remainder of the subsection? Should we keep
the explanations and examples? If we do, are they correct as per RFC4646?
BR, Julian
Received on Sunday, 25 November 2007 17:24:24 UTC