<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="Generator" content="Microsoft Word 14 (filtered medium)">
<!--[if !mso]><style>v\:* {behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
w\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
</style><![endif]--><style><!--
/* Font Definitions */
@font-face
        {font-family:"Cordia New";
        panose-1:2 11 3 4 2 2 2 2 2 4;}
@font-face
        {font-family:"Cordia New";
        panose-1:2 11 3 4 2 2 2 2 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:Tahoma;
        panose-1:2 11 6 4 3 5 4 4 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:"Times New Roman","serif";}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
span.hoenzb
        {mso-style-name:hoenzb;}
span.EmailStyle18
        {mso-style-type:personal-reply;
        font-family:"Calibri","sans-serif";
        color:#1F497D;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-family:"Calibri","sans-serif";}
@page WordSection1
        {size:612.0pt 792.0pt;
        margin:72.0pt 72.0pt 72.0pt 72.0pt;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="EN-US" link="blue" vlink="purple">
<div class="WordSection1">
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">But in our proposed usage, “zzz” wouldn’t be used in a query request; it would only ever be used to qualify an available resource in the resource collection.
<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">If one could argue that “und” wouldn’t have any meaning or use for qualifying resources, then I suppose you could say there are mutually exclusive contexts
 (qualification of information objects versus query requests) in which “und” could be used in different ways. But clearly there _<i>is</i>_ use of “und” for qualifying information objects—that probably predates ISO 639-2. So, that wouldn’t work in the fully
 general context; but potentially it could work in particular application contexts in which there wasn’t potential for conflict of usage.
<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">In software application localization, it seems pretty unlikely that anyone would have resources hanging around qualified as “und” with the meaning ‘some language
 we haven’t identified’. So, it could perhaps be used for the meaning ‘no language is specified’. But if one has a need to differentiate two distinct variations on that concept, then there might be a problem. We’re thinking that there can be use in distinguishing
 the concept ‘neutral (no information)’ from ‘can match any request with no better matching resource (else)’.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">Peter<o:p></o:p></span></p>
<p class="MsoNormal"><a name="_MailEndCompose"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D"><o:p> </o:p></span></a></p>
<p class="MsoNormal"><b><span style="font-size:10.0pt;font-family:"Tahoma","sans-serif"">From:</span></b><span style="font-size:10.0pt;font-family:"Tahoma","sans-serif""> mark.edward.davis@gmail.com [mailto:mark.edward.davis@gmail.com]
<b>On Behalf Of </b>Mark Davis ?<br>
<b>Sent:</b> June-13-12 10:48 AM<br>
<b>To:</b> Gordon P. Hemsley<br>
<b>Cc:</b> Peter Constable; ietf-languages@iana.org; Doug Ewell<br>
<b>Subject:</b> Re: lang ID for "*" (any language)<o:p></o:p></span></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">* doesn't work, because it isn't a valid language tag.<o:p></o:p></p>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">> <span style="font-size:10.0pt;font-family:"Arial","sans-serif";background:white">The proposal here is for a subtag to encode the "elsewhere" condition: "if there is no more specific language code, use 'zzz'".</span><o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal"><span style="font-family:"Arial","sans-serif"">We use 'und' to signal, in a query, that the language is unspecified and should be filled in. It is not like 'und', in a query, is needed for any other purpose. The addition of 'zzz' would
 just mean that we'd map it to 'und' in all processing, so it would not be a useful addition.</span><o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><span style="font-family:"Arial","sans-serif""><br clear="all">
</span><o:p></o:p></p>
<div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
<div class="MsoNormal" align="center" style="text-align:center">
<hr size="2" width="100%" align="center">
</div>
</div>
</div>
<div>
<p class="MsoNormal"><a href="https://plus.google.com/114199149796022210033" target="_blank">Mark</a><o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal"><i>— Il meglio è l’inimico del bene —</i><o:p></o:p></p>
</div>
<p class="MsoNormal" style="margin-bottom:12.0pt"><br>
<br>
<o:p></o:p></p>
<div>
<p class="MsoNormal">On Wed, Jun 13, 2012 at 8:03 AM, Gordon P. Hemsley <<a href="mailto:gphemsley@gmail.com" target="_blank">gphemsley@gmail.com</a>> wrote:<o:p></o:p></p>
<p class="MsoNormal">FWIW, I think it is important to be able to make the distinction<br>
between "we don't *know* what the language is" ('und' for<br>
"Undetermined") and "we don't *care* what the language is" (the<br>
proposed 'zzz' for "Any").<br>
<br>
In my understanding of the matter, both CLDR and Java (as you've<br>
described them) are using 'und' for the appropriate purpose (though<br>
I'm not sure I necessarily agree with the fallback choice—an<br>
orthogonal issue, in any case).<br>
<br>
As for Google, it seems to me like *querying* for "any language" would<br>
be better off using the asterisk rather than a particular subtag. The<br>
proposal here is for a subtag to encode the "elsewhere" condition: "if<br>
there is no more specific language code, use 'zzz'".<br>
<br>
So I support Peter's proposal. I think the usecase he mentions could<br>
actually be a common one in localized software development.<br>
<br>
Gordon<o:p></o:p></p>
<div>
<div>
<p class="MsoNormal" style="margin-bottom:12.0pt"><br>
On Wed, Jun 13, 2012 at 10:52 AM, Mark Davis ☕ <<a href="mailto:mark@macchiato.com">mark@macchiato.com</a>> wrote:<br>
> We use 'und' in CLDR when doing lookups, for example. The best patch for<br>
> "und-Cyrl" in the absence of other information is "ru-Cyrl-RU".<br>
><br>
> Java also uses 'und' in the BCP47 way, but also as a "replace bad input"<br>
> (like FFFD for Unicode).<br>
><br>
> <a href="http://download.java.net/jdk7/archive/b123/docs/api/java/util/Locale.html" target="_blank">
http://download.java.net/jdk7/archive/b123/docs/api/java/util/Locale.html</a><br>
><br>
> At Google, we used to try to distinguish between these different senses of<br>
> "unknown" vs "any", but found that people too often just mixed them up, so<br>
> we ended up just settling on a single subtag. It just has slightly different<br>
> nuances when used as a query vs used as a result (or content tag). But<br>
> that's the case anyway for locale/language matching.<br>
><br>
> ________________________________<br>
> Mark<br>
><br>
> — Il meglio è l’inimico del bene —<br>
><br>
><br>
><br>
> On Wed, Jun 13, 2012 at 7:27 AM, Peter Constable <<a href="mailto:petercon@microsoft.com">petercon@microsoft.com</a>><br>
> wrote:<br>
>><br>
>> Thanks, Doug, for the reminder of that text, which is interesting.<br>
>><br>
>> Root, which is totally unqualified--I.e., 'neutral'-is different. In a<br>
>> matching mechanism that seeks the best match against a preference list, a<br>
>> neutral resource might be chosen in the absence of any other matching<br>
>> resource. This could be used to qualify a resource as a positive match for<br>
>> any entry in the preference list if there isn't a stronger match for that<br>
>> entry.<br>
>><br>
>> Mark, you mentioned using 'und' for some time. Has that been in private or<br>
>> public contexts? (We're looking at something that would be part of the<br>
>> Windows SDK.) And would you say the use was comparable to "root" (which I<br>
>> think is different)?<br>
>><br>
>> Peter<br>
>><br>
>> Sent from my Windows Phone<br>
>> ________________________________<br>
>> From: Doug Ewell<br>
>> Sent: 6/12/2012 5:15 PM<br>
>> To: <a href="mailto:ietf-languages@iana.org">ietf-languages@iana.org</a><br>
>> Subject: Re: lang ID for "*" (any language)<br>
>><br>
>> I tend to agree with Mark that 'und' is the best choice for this.<br>
>><br>
>> The passage in Section 4.1 seems to start off otherwise:<br>
>><br>
>> "The 'und' (Undetermined) primary language subtag identifies linguistic<br>
>> content whose language is not determined.  This subtag SHOULD NOT be<br>
>> used unless a language tag is required and language information is not<br>
>> available or cannot be determined.  Omitting the language tag (where<br>
>> permitted) is preferred."<br>
>><br>
>> but then goes on to give reasonable use cases:<br>
>><br>
>> "The 'und' subtag might be useful for protocols that require a language<br>
>> tag to be provided or where a primary language subtag is required (such<br>
>> as in "und-Latn").  The 'und' subtag MAY also be useful when matching<br>
>> language tags in certain situations."<br>
>><br>
>> On the list we've often talked about, for example, "und-Cyrl" to<br>
>> indicate text in the Cyrillic script. In a case like this, it might not<br>
>> be that the language cannot be determined, but that it doesn't matter.<br>
>><br>
>> I think CLDR uses 'root' for a purpose similar to this.<br>
>><br>
>> --<br>
>> Doug Ewell | Thornton, Colorado, USA<br>
>> <a href="http://www.ewellic.org" target="_blank">http://www.ewellic.org</a> | @DougEwell ­<br>
>><br>
>> _______________________________________________<br>
>> Ietf-languages mailing list<br>
>> <a href="mailto:Ietf-languages@alvestrand.no">Ietf-languages@alvestrand.no</a><br>
>> <a href="http://www.alvestrand.no/mailman/listinfo/ietf-languages" target="_blank">
http://www.alvestrand.no/mailman/listinfo/ietf-languages</a><br>
>><br>
>><br>
>><br>
>><br>
>> _______________________________________________<br>
>> Ietf-languages mailing list<br>
>> <a href="mailto:Ietf-languages@alvestrand.no">Ietf-languages@alvestrand.no</a><br>
>> <a href="http://www.alvestrand.no/mailman/listinfo/ietf-languages" target="_blank">
http://www.alvestrand.no/mailman/listinfo/ietf-languages</a><br>
>><br>
><br>
><br>
> _______________________________________________<br>
> Ietf-languages mailing list<br>
> <a href="mailto:Ietf-languages@alvestrand.no">Ietf-languages@alvestrand.no</a><br>
> <a href="http://www.alvestrand.no/mailman/listinfo/ietf-languages" target="_blank">
http://www.alvestrand.no/mailman/listinfo/ietf-languages</a><br>
><br>
<br>
<br>
<o:p></o:p></p>
</div>
</div>
<p class="MsoNormal"><span class="hoenzb"><span style="color:#888888">--</span></span><span style="color:#888888"><br>
<span class="hoenzb">Gordon P. Hemsley</span><br>
<span class="hoenzb"><a href="mailto:me@gphemsley.org">me@gphemsley.org</a></span><br>
<span class="hoenzb"><a href="http://gphemsley.org/" target="_blank">http://gphemsley.org/</a> •
<a href="http://gphemsley.org/blog/" target="_blank">http://gphemsley.org/blog/</a></span></span><o:p></o:p></p>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
</div>
</body>
</html>