That it can convert from IDN to Punycode and from Punycode to IDN - that’s what we mean by bi-directional.

I would welcome suggestions for a better phrasing.

Don

On 24/01/2017, at 9:55 AM, Stuart Stuple <stuartst@exchange.microsoft.com> wrote:

What is meant by “bi-directional” in this context? I think you mean “can handle bi-directional domain names”. ASCII characters are inherently Left-to-right and hence never bidirectional.
From: ua-eai-bounces@icann.org [mailto:ua-eai-bounces@icann.org] On Behalf Of Don Hollander
Sent: Monday, January 23, 2017 11:28 AM
To: Mark Svancarek <marksv@microsoft.com>; HEALTH Yao <yaojk@cnnic.cn>; ua-eai@icann.org
Cc: ua-coordination@icann.org
Subject: Re: [UA-EAI] [Ext] RE: [UA-Coordination] Revised UASG013 - Quick Guide to EAI
 
This is what I have now:
 
Punycode is an algorithm that converts a non-ASCII domain string into an ASCII string.  ASCII strings that have gone through the Punycode process can be identified by a prefix of xn--.   The Punycode algorithm is bi-directional.  Seehttps://tools.ietf.org/html/rfc3492[na01.safelinks.protection.outlook.com]
 
 
 
 
From: Mark Svancarek <marksv@microsoft.com>
Date: Tuesday, 24 January 2017 at 8:23 AM
To: HEALTH Yao <yaojk@cnnic.cn>, Don Hollander <don.hollander@icann.org>, "ua-eai@icann.org" <ua-eai@icann.org>
Cc: "ua-coordination@icann.org" <ua-coordination@icann.org>
Subject: [Ext] RE: [UA-EAI] [UA-Coordination] Revised UASG013 - Quick Guide to EAI
 
Good catch.  The ACE prefix indicates to a parser that the following string is the Punycoded transformation of an IDNA-compatible Unicode string, but is not actually a part of that transformation.
 
From: ua-eai-bounces@icann.org [mailto:ua-eai-bounces@icann.org] On Behalf Of Jiankang Yao
Sent: Sunday, January 22, 2017 6:27 PM
To: Don Hollander <don.hollander@icann.org>; ua-eai@icann.org
Cc: ua-coordination@icann.org
Subject: Re: [UA-EAI] [UA-Coordination] Revised UASG013 - Quick Guide to EAI
 
Hello,
 
  The definition
"Punycode is an algorithm that converts an IDN into an ASCII string that starts with xn--. The Punycode
algorithm is bi-directional. " needs some adjustment.
 
 
xn--abcdeddaa
where  "xn--" is a prefix and "abcdeddaa" is  output of the Punycode algorithm. So Punycode output does not include "xn--".
 
 
 
 
======================================following are texts from RFC5890===============================
" the string following "xn--" must be the valid output of the Punycode algorithm
                    and must be convertible into valid U-label form."
 
"An "A-label" is the ASCII-Compatible Encoding (ACE, see
      Section 2.3.2.5[tools.ietf.org][na01.safelinks.protection.outlook.com]) form of an IDNA-valid string.  It must be a
      complete label: IDNA is defined for labels, not for parts of them
      and not for complete domain names.  This means, by definition,
      that every A-label will begin with the IDNA ACE prefix, "xn--"
      (see Section 2.3.2.5[tools.ietf.org][na01.safelinks.protection.outlook.com]), followed by a string that is a valid output
      of the Punycode algorithm [RFC3492[tools.ietf.org][na01.safelinks.protection.outlook.com]] and hence a maximum of 59
      ASCII characters in length. "
 

Jiankang Yao
 
Date: 2017-01-22 17:33
Subject: [UA-Coordination] Revised UASG013 - Quick Guide to EAI
Last month I sent out a formatted Quick Guide to EAI.
 
This resulted in a number of comments from Ajay, Stuart, Mark, Lars & Dennis.
 
These enhancements were mostly focused on the Email Service Provider.
 
I have revised the source document which is attached.
 
And for reference, I’m also including the formatted earlier draft.
 
Could I please get any final comments by the end of this week (25th)?
 
Thanks.
 
Don
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Don Hollander
Universal Acceptance Steering Group
Skype: don_hollander
 
 
 
 

Don Hollander
Universal Acceptance Steering Group
Skype: don_hollander