Re: [precis] Review of current document draft-ietf-precis-framework-20

Patrik Fältström <paf@frobbit.se> Wed, 03 December 2014 05:25 UTC

Return-Path: <paf@frobbit.se>
X-Original-To: precis@ietfa.amsl.com
Delivered-To: precis@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id F21641A008D for <precis@ietfa.amsl.com>; Tue, 2 Dec 2014 21:25:01 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.261
X-Spam-Level:
X-Spam-Status: No, score=-1.261 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HELO_EQ_SE=0.35, MIME_8BIT_HEADER=0.3, SPF_PASS=-0.001, T_RP_MATCHES_RCVD=-0.01] autolearn=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 9ZObLmIOdU69 for <precis@ietfa.amsl.com>; Tue, 2 Dec 2014 21:25:00 -0800 (PST)
Received: from mail.frobbit.se (mail.frobbit.se [IPv6:2a02:80:3ffe::176]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 57C611A0070 for <precis@ietf.org>; Tue, 2 Dec 2014 21:25:00 -0800 (PST)
Received: from dyn-fg122.sth.netnod.se (dyn-fg122.sth.netnod.se [77.72.226.122]) by mail.frobbit.se (Postfix) with ESMTPSA id 7A67B21955; Wed, 3 Dec 2014 06:24:58 +0100 (CET)
Mime-Version: 1.0 (Mac OS X Mail 8.1 \(1993\))
Content-Type: multipart/signed; boundary="Apple-Mail=_9D9CB3A1-9FD5-4E9E-B5E2-08E46386FA09"; protocol="application/pgp-signature"; micalg="pgp-sha1"
X-Pgp-Agent: GPGMail 2.5b3
From: Patrik Fältström <paf@frobbit.se>
In-Reply-To: <547E7DD0.1090306@andyet.net>
Date: Wed, 03 Dec 2014 06:24:57 +0100
Message-Id: <636EC582-BA21-44B5-B202-DDB4E51FD138@frobbit.se>
References: <13AD33F4-1741-472E-8423-1B0302734325@frobbit.se> <547695F3.3030106@andyet.net> <47327B22-0591-43C9-A4E5-89F6222F7E82@frobbit.se> <547E7DD0.1090306@andyet.net>
To: Peter Saint-Andre - &yet <peter@andyet.net>
X-Mailer: Apple Mail (2.1993)
Archived-At: http://mailarchive.ietf.org/arch/msg/precis/awDZLFeMExjq3nBC16EPB9EuqEM
Cc: precis@ietf.org
Subject: Re: [precis] Review of current document draft-ietf-precis-framework-20
X-BeenThere: precis@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: Preparation and Comparison of Internationalized Strings <precis.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/precis>, <mailto:precis-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/precis/>
List-Post: <mailto:precis@ietf.org>
List-Help: <mailto:precis-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/precis>, <mailto:precis-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 03 Dec 2014 05:25:02 -0000

On 3 dec 2014, at 04:04, Peter Saint-Andre - &yet <peter@andyet.net> wrote:
> 
> Hi Patrik,
> 
> On 11/26/14, 11:28 PM, Patrik Fältström wrote:
>> I intend reading the mapping document today, sorry for the delay but
>> $dayjob has been kind of ultra-busy...
>> 
>> Note that most issues I have have to do with clarifications, and that
>> it is not clear what the intent is.
> 
> Yes, I will reply to your big message next.
> 
>> Maybe a few where I urge caution. And they are definitely mapping
>> related.
> 
> Clarifying question: are you talking about mapping in general (which might include width mapping, mapping non-ASCII space characters to ASCII space, case mapping, or in some nomenclatures even Unicode normalization), or only the kind of locale and context dependent mapping that is discussed in draft-ietf-precis-mappings?

I talk about any kind of transformation of a string.

>> Let me phrase it this way:
>> 
>> One of the problems with IDNA2003 was that it included mapping. It
>> was unclear to people whether the client or server did the mapping.
>> In reality the only place where mapping could exist for a stable
>> protocol/implementation was between application/User Interface and
>> where the protocol was really "doing things". So mapping was ripped
>> out of IDNA when IDNA2008 was created.
> 
> In the PRECIS WG we've had quite a bit of discussion about the dividing line between application and protocol, or more precisely between between the user interface (which can more easily handle issues of culture, context, intent, locale, device limitations, etc.) and the actual use of conformant strings in protocol slots.

Not surprising (and yes, I have seen some of this without claiming I did follow it).

> (Unfortunately, much of our most productive discussion has happened in sessions at IETF meetings, not on the list, so it's hard to find pointers.)
> 
>> Precis has decided mapping is still part of the protocol definition,
> 
> Well, draft-ietf-precis-mappings is only an informative reference from draft-ietf-precis-framework and with good reason: we reached the conclusion a few IETF meetings ago that we simply couldn't provide normative recommendations here.

Ok. Which I think is fair and good.

>> and I must understand where more exactly you expect mapping to
>> happen, what happens if that mapping is not done, how to expect to do
>> matching (comparison) between strings in the over all environment
>> where it is possibly unknown whether mapping has been done or not,
>> and specifically how it might impact the architecture in the cases
>> where the mapping is destructive to the string itself (non-reversible
>> mapping).
>> 
>> I do not think it is clear in the framework WHERE mapping is to
>> happen.
> 
> When you say "WHERE", do you mean (1) when in the process of handling an internationalized string or (2) by which entity in a protocol interaction?

Mainly (1) but that implies (2), right.

> I think we have been clear about (1), or at least we've tried to be clear - see for example Section 6 of draft-ietf-precis-framework.

That only specifies in what order the operations take place. It does not say when it happens.

Example:

A send a string X to B. B store the string, which can be a username or password.

Later C send a string Y to B. B is to look up that string among stored strings, to see whether in this case X == Y or not.

Where in the flow A -> B(store) - B(lookup) <- C are the steps in section 6 taking place?

You have some string flowing between A and B(store), some string stored, some string flowing between C and B(lookup) and then some string is looked up. Which ones of these strings passed around have to live up to what requirements?

> I also think that the various profile documents and using protocols have been clear about (2) - see for instance Section 4 of draft-ietf-xmpp-6122bis.
> 
>> Maybe just some ascii art would make things easier to understand?
> 
> ASCII art always helps. :-)

:-D

   Patrik