Review of draft-philips-langtags-03: ABNF errors
Addison Phillips [wM]
aphillips at webmethods.com
Wed Jun 23 22:42:38 CEST 2004
Thanks for the feedback. Please note that the ABNF in draft-03 validates with the tool, excepting the use of underscore.
I will make the various corrections in draft-04, after I've reviewed the ABNF again.
Addison P. Phillips
Director, Globalization Architecture
webMethods | Delivering Global Business Visibility
Chair, W3C Internationalization (I18N) Working Group
Chair, W3C-I18N-WG, Web Services Task Force
Internationalization is an architecture.
It is not a feature.
> -----Original Message-----
> From: ietf-languages-bounces at alvestrand.no
> [mailto:ietf-languages-bounces at alvestrand.no]On Behalf Of Harald
> Tveit Alvestrand
> Sent: 2004年6月23日 13:08
> To: ietf-languages at iana.org
> Subject: Review of draft-philips-langtags-03: ABNF errors
> I have at last started to seriously review this document, with a view to
> offering my opinion to the IESG for their perusal - I'll recuse on the
> processing itself.
> But - the ABNF is NOT ready for prime time.
> The authors seem to believe that =/ is a continuation symbol (it is not),
> and that there is a space between the number-quantifier and the rule it
> quantifies (there isn't).
> Also, "x" strings are case-insensitive, so they can't be used in ranges -
> hex codes have to be used.
> And underscores aren't allowed in rule names.
> Here's a grammar for the stuff that at least parses correctly:
> langtag = lang *("-" extlang) ["-" script] ["-" region]
> *("-" variant) *("-" extension) *("-" private-use)
> / private-use ; private use tag
> / grandfathered ; grandfathered registrations
> lang = 2*3ALPHA ; shortest ISO 639 code
> / registered-lang
> extlang = 3ALPHA ; reserved for future use
> script = 4ALPHA ; ISO 15924 code
> region = 2ALPHA ; ISO 3166 code
> / 3DIGIT ; UN country number
> variant = 5*15alphanum ; registered or private use
> extension = singleton 1*("-" (2*31alphanum)) ; extension subtag(s)
> private-use = "x" 1*("-" (1*31alphanum)) ; private use subtag(s)
> singleton = ALPHA ; single letters - x has
> spec meaning
> registered-lang = 4*15ALPHA ; registered language subtag
> grandfathered = ALPHA *(alphanum / "-") ; grandfathered registration
> alphanum = (ALPHA / DIGIT) ; letters and numbers
> Ietf-languages mailing list
> Ietf-languages at alvestrand.no
More information about the Ietf-languages