Subject: RFC2616 erratum "languagetag"

From: Julian Reschke <[email-masked]>
Date: Sat, 14 Oct 2006 14:13:41 +0200

Hi,

<http://skrb.org/ietf/http_errata.html#languagetag> recommends to update 
RFC2616 to refer to RFC3066. In the meantime, RFC3066 has been obsoleted 
by RFC4646, and the original grammar production defining subtags seems 
to be gone:

    Language-Tag  = langtag
                  / privateuse             ; private use tag
                  / grandfathered          ; grandfathered registrations

    langtag       = (language
                     ["-" script]
                     ["-" region]
                     *("-" variant)
                     *("-" extension)
                     ["-" privateuse])

    language      = (2*3ALPHA [ extlang ]) ; shortest ISO 639 code
                  / 4ALPHA                 ; reserved for future use
                  / 5*8ALPHA               ; registered language subtag

    extlang       = *3("-" 3ALPHA)         ; reserved for future use

    script        = 4ALPHA                 ; ISO 15924 code

    region        = 2ALPHA                 ; ISO 3166 code
                  / 3DIGIT                 ; UN M.49 code

    variant       = 5*8alphanum            ; registered variants
                  / (DIGIT 3alphanum)

    extension     = singleton 1*("-" (2*8alphanum))

    singleton     = %x41-57 / %x59-5A / %x61-77 / %x79-7A / DIGIT
                  ; "a"-"w" / "y"-"z" / "A"-"W" / "Y"-"Z" / "0"-"9"
                  ; Single letters: x/X is reserved for private use

    privateuse    = ("x"/"X") 1*("-" (1*8alphanum))

    grandfathered = 1*3ALPHA 1*2("-" (2*8alphanum))
                    ; grandfathered registration
                    ; Note: i is the only singleton
                    ; that starts a grandfathered tag

    alphanum      = (ALPHA / DIGIT)       ; letters and numbers

(<http://tools.ietf.org/html/rfc4646#page-5>).

So shouldn't RFC2616 (Section 3.10) stop defining these things, and just 
normatively refer to RFC4626 for the definition of "Language-Tag"?

Best regards, Julian

---

From: "Anne van Kesteren" <[email-masked]>
Date: Sat, 14 Oct 2006 15:15:28 +0200

> normatively refer to RFC4626 for the definition of "Language-Tag"?

Wouldn't BCP47 be better?

-- 
Anne van Kesteren
<http://annevankesteren.nl/>
<http://www.opera.com/>

---

From: Julian Reschke <[email-masked]>
Date: Sun, 15 Oct 2006 22:34:36 +0200

Anne van Kesteren schrieb:
> 
> On Sat, 14 Oct 2006 14:13:41 +0200, Julian Reschke 
> <[email-masked]> wrote:
>> So shouldn't RFC2616 (Section 3.10) stop defining these things, and 
>> just normatively refer to RFC4626 for the definition of "Language-Tag"?
> 

For now it's the same thing, so this doesn't really answer the question.

With respect to referring to the BCP# instead of the RFC# -- I don't 
think that's a good idea as long as you want to refer to a specific 
version of a specification...

Best regards, Julian

---

From: "Anne van Kesteren" <[email-masked]>
Date: Sun, 15 Oct 2006 23:52:06 +0200

> For now it's the same thing, so this doesn't really answer the question.

I wasn't really trying to answer the question.

> version of a specification...

But do you want to do that here?

---

From: Yves Lafon <[email-masked]>
Date: Mon, 16 Oct 2006 10:03:45 +0200 (MEST)

On Sun, 15 Oct 2006, Julian Reschke wrote:

> With respect to referring to the BCP# instead of the RFC# -- I don't think 
> that's a good idea as long as you want to refer to a specific version of a 
> specification...

I agree that referring to a specific version is far better. However in the 
reference section adding BCP47 will also help people track further 
revision, but the core text should refer to 4646.

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)

I see in RFC4646 that the language tag syntax is defined using ABNF, 
should that mean that RFC2616's syntax should be "upgraded" to RFC4234 ?

Cheers,

-- 
Yves Lafon - W3C
"Baroula que barouleras, au tiéu toujou t'entourneras."

---

From: Julian Reschke <[email-masked]>
Date: Mon, 16 Oct 2006 10:47:50 +0200

Yves Lafon schrieb:
> I agree that referring to a specific version is far better. However in 
> the reference section adding BCP47 will also help people track further 

Also naming the BCP # or STD # in the reference is of course the right 
thing.

> 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 

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).

> should that mean that RFC2616's syntax should be "upgraded" to RFC4234 ?

I guess so (see also 
<http://lists.w3.org/Archives/Public/ietf-http-wg/2004OctDec/0035.html>).

Best regards, Julian