[Ietf-languages] Suppress-Script, assumptions, and guesses (was: RE: Suggestion to update Urdu Script Designation in the subtag registry)

Doug Ewell <doug@ewellic.org> Fri, 14 August 2020 16:32 UTC

Return-Path: <doug@ewellic.org>
X-Original-To: ietf-languages@ietfa.amsl.com
Delivered-To: ietf-languages@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 579643A1196 for <ietf-languages@ietfa.amsl.com>; Fri, 14 Aug 2020 09:32:10 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.895
X-Spam-Level:
X-Spam-Status: No, score=-1.895 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_NONE=0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 10cslX2ytfDy for <ietf-languages@ietfa.amsl.com>; Fri, 14 Aug 2020 09:32:09 -0700 (PDT)
Received: from p3plsmtpa09-10.prod.phx3.secureserver.net (p3plsmtpa09-10.prod.phx3.secureserver.net [173.201.193.239]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 022783A118F for <ietf-languages@ietf.org>; Fri, 14 Aug 2020 09:32:08 -0700 (PDT)
Received: from DESKTOPLPOB1E4 ([73.229.14.229]) by :SMTPAUTH: with ESMTPSA id 6ccgkblbIAJJp6cchkNSLJ; Fri, 14 Aug 2020 09:32:07 -0700
X-CMAE-Analysis: v=2.3 cv=Sd6JicZu c=1 sm=1 tr=0 a=9XGd8Ajh92evfb2NHZFWmw==:117 a=9XGd8Ajh92evfb2NHZFWmw==:17 a=IkcTkHD0fZMA:10 a=nORFd0-XAAAA:8 a=ppZlDSQZy_Vr36BPkTAA:9 a=7Zwj6sZBwVKJAoWSPKxL6X1jA+E=:19 a=paUiP04pQeAtVUZK:21 a=p7QmSszYEdFCJuOs:21 a=QEXdDO2ut3YA:10 a=AYkXoqVYie-NGRFAsbO8:22
X-SECURESERVER-ACCT: doug@ewellic.org
From: Doug Ewell <doug@ewellic.org>
To: 'Richard Wordingham' <richard.wordingham=40ntlworld.com@dmarc.ietf.org>, ietf-languages@ietf.org
Date: Fri, 14 Aug 2020 10:32:07 -0600
Message-ID: <000201d67258$73cfb910$5b6f2b30$@ewellic.org>
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: quoted-printable
X-Mailer: Microsoft Outlook 16.0
Thread-Index: AdZyWGqVn+rPw4V1ScyuYXYRgzMa4g==
Content-Language: en-us
X-CMAE-Envelope: MS4wfICQzIVJIkzbUg+ZeUQW2IwuWOvHgukHyOG2e3vMGx5IesONG/76Q9J5kWFeh8L55YTyTX46/5wZhLmMfGGeMLV+YINI1VgCrcX28aPnGvjflsIDQ/YQ q2NiHgqEpeOosrPKdGWmqZ4RDHe0sCMvtQgM7ukbbu2LqMsTGzKSGiLS4xg0hzPBFSwOckPUFerTTM2RcN5emijvxvIQ4+oD0guChxRqRYaoyxFJkCNhInvW ndLOwvA69d3c0nhFrMjw0w==
Archived-At: <https://mailarchive.ietf.org/arch/msg/ietf-languages/b1seP96KhN3p_SJudQqBWINznjM>
Subject: [Ietf-languages] Suppress-Script, assumptions, and guesses (was: RE: Suggestion to update Urdu Script Designation in the subtag registry)
X-BeenThere: ietf-languages@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: <ietf-languages.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/ietf-languages>, <mailto:ietf-languages-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/ietf-languages/>
List-Post: <mailto:ietf-languages@ietf.org>
List-Help: <mailto:ietf-languages-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/ietf-languages>, <mailto:ietf-languages-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 14 Aug 2020 16:32:10 -0000

Richard Wordingham wrote:

>> But it does not follow from this that all English text written in the
>> Latin script should be tagged "en-Latn". Most of the time, the
>> assumption is correct and adequate. This is why the word SHOULD is
>> used, instead of MUST.
>
> That seems to answer the issue.  If the language tag is describing
> something that already exists, then if one may need to know the script
> from just the tag, one should not heed suppress-script - which is why
> the word 'SHOULD' is used.

If the content already exists, and one has retrieved it, and the language tag doesn't reveal the script, one can figure out what script it is written in by inspecting the content. This is just like the mechanic inspecting the car to figure out how many wheels it has.

I confess that I don't understand this exercise.

> I was coming to the conclusion that the ambiguity between "en" for
> "en-Latn" and "en" for "English, but I won't tell you the script", was
> resolved by the tags Zxxx, Zyyy and Zzzz.  Then the latter meaning for
> text gets translated to en-Zyyy, and then the abbreviation of en-Latn
> to en is resolved by the suppress-script.

'Zxxx' is a different animal: "Code for unwritten documents" from ISO 15924 is interpreted here to mean that this content is not written. It doesn't necessarily mean that the language of this content is never written.

'Zzzz' is "Code for uncoded script," and that's pretty clearly intended by 15924 to apply to things like Voynich or Utopian that are, well, not coded.

Let me try again with the "undetermined" use case:

If I tag textual content as "en", I am not saying anything about the script. I am leaving it up to you, the recipient of the content, to figure out what the script is. Because it is English, the great likelihood is that the script is Latin. One way to find out would be to inspect the content.

Alternatively, you COULD go to the Registry and look at the Suppress-Script value of 'Latn' to give you a strong hint that the text is in Latin script. But that is not a guarantee; "en" is also a perfectly valid tag for English written in Runic. 

If I tag it as "en-Runr", I am explicitly saying the script is Runic.

If I tag it as "en-Latn", I am explicitly saying the script is Latin. I would hope that I am doing so for a reason, and not just adding a script subtag automatically because I didn't read Section 4.1. Maybe I am anticipating that readers will call into question whether the text is in Latin script, and need to know without looking at the content.

If I tag it as "en-Zyyy", that implies that I, the tagger, don't know what script it is in. It seems unlikely to me that I would know a text is in English but don't know the script. For some historical languages, this is more plausible.

Does this help?

Languages are very often not a precise thing lending themselves to concrete rules. I know some have bemoaned the fact that BCP 47 has so many SHOULDs and so few MUSTs, but there are really very few bright lines when dealing with languages and language usage. Trying to attach guarantees to language tag selection is a Hard Problem. We haven't even solved the problem of people writing in I-Ds and on Stack Overflow that a language tag contains a 2-letter 639 code and a 2-letter 3166 code.

>> In your everyday life, it is not necessary under normal circumstances
>> to point out that your car has four wheels, because the overwhelming
>> majority of cars do.
>
> But this information could be vital for positioning it over an
> inspection pit.

Exactly so. Thank you for proving my point about "under normal circumstances."

>>> Would a rule that the script must be indicated somehow make a
>>> difference, e.g. by making plain "en" or "ur" imply that the script
>>> subtag had been suppressed?
>>
>> A rule that the script must be indicated would be the exact opposite
>> of what we were trying to accomplish in 2005, which is backward
>> compatibility with the huge volume of existing language-tagged data.
>
> I was thinking of a rule applying to that index of mine, not one for
> universal use.

For your personal use, where the probability that English text is in Latin script is much lower than normal, I might suggest using "en-Latn". That way you don't need to consult the Registry to guess the script.

I'm skipping over the remainder, which continues to claim that not using a script subtag for languages overwhelmingly written in a single script creates problematic ambiguity. We have heard very little in the past 15 years that either Suppress-Script or the overall philosophy of "tag content wisely" has greatly compromised the usefulness of BCP 47 tags. Maybe people just aren't telling us.

--
Doug Ewell | Thornton, CO, US | ewellic.org