Re: [Tzdist] AD review of draft-ietf-tzdist-service-07 - Section 5

Cyrus Daboo <cyrus@daboo.name> Fri, 08 May 2015 20:14 UTC

Return-Path: <cyrus@daboo.name>
X-Original-To: tzdist@ietfa.amsl.com
Delivered-To: tzdist@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id AB00E1B300E; Fri, 8 May 2015 13:14:40 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.912
X-Spam-Level:
X-Spam-Status: No, score=-1.912 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, T_RP_MATCHES_RCVD=-0.01] autolearn=ham
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 a5O-D77riQVM; Fri, 8 May 2015 13:14:39 -0700 (PDT)
Received: from daboo.name (daboo.name [173.13.55.49]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 808661B2FF3; Fri, 8 May 2015 13:14:39 -0700 (PDT)
Received: from localhost (localhost [127.0.0.1]) by daboo.name (Postfix) with ESMTP id CFB0C1358485; Fri, 8 May 2015 16:14:38 -0400 (EDT)
X-Virus-Scanned: amavisd-new at example.com
Received: from daboo.name ([127.0.0.1]) by localhost (daboo.name [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id xu9PQRniOmVi; Fri, 8 May 2015 16:14:38 -0400 (EDT)
Received: from [17.45.162.184] (unknown [17.45.162.184]) by daboo.name (Postfix) with ESMTPSA id 63CC31358479; Fri, 8 May 2015 16:14:37 -0400 (EDT)
Date: Fri, 08 May 2015 16:14:33 -0400
From: Cyrus Daboo <cyrus@daboo.name>
To: Barry Leiba <barryleiba@computer.org>
Message-ID: <081B624DAEC147B580381246@cyrus.local>
In-Reply-To: <CALaySJLxk0L16MtFrzvzSCxxtn-d0MtGynYFpvzeuixJKtBzCw@mail.gmail.com>
References: <CALaySJKUcgkMNsFPk0X6ur-Fw0LrB0-miQvAKYJD2rMCEFpBSQ@mail.gmail.com> <ECDA0C50DFAC7B14DABF9E5D@cyrus.local> <CALaySJLxk0L16MtFrzvzSCxxtn-d0MtGynYFpvzeuixJKtBzCw@mail.gmail.com>
X-Mailer: Mulberry/4.1.0b1 (Mac OS X)
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"; format="flowed"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline; size="1935"
Archived-At: <http://mailarchive.ietf.org/arch/msg/tzdist/ptgs2HOUiff_1z5Uv0cw7aE17bY>
Cc: tzdist@ietf.org, draft-ietf-tzdist-service@ietf.org
Subject: Re: [Tzdist] AD review of draft-ietf-tzdist-service-07 - Section 5
X-BeenThere: tzdist@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: <tzdist.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/tzdist>, <mailto:tzdist-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/tzdist/>
List-Post: <mailto:tzdist@ietf.org>
List-Help: <mailto:tzdist-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/tzdist>, <mailto:tzdist-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 08 May 2015 20:14:40 -0000

Hi Barry,

--On May 8, 2015 at 8:50:05 PM +0100 Barry Leiba <barryleiba@computer.org> 
wrote:

> Thanks, Cyrus.  Almost all set here.
>
>>> -- Section 5.5 --
>>> The explanation of pattern matching with "*" does not explain what
>>> happens if you put the wildcard character in the middle of the string.
>>> If I use "x*z", is that an error (with
>>> urn:ietf:params:tzdist:error:invalid-pattern
>>> )?  If so, you should say that explicitly.  If not, what does it do?
>>
>>
>> I'll add a statement that "*" MUST only appear at the start or end of the
>> string, and use anywhere else MUST result in an error.
>
> That works.  I'd prefer it be worded as "MUST NOT appear in the middle
> of the string", because I find the "MUST only" construct to be
> confusing use of 2119 language.  But I'm not going to die on that
> hill.

Actually I did a little re-organization of the bullets and text in that 
section, so I now have one bullet covering this:

      Escaping \ and *:  To match 0x2A ("*") and 0x5C ("\") characters
         in a time zone identifier, those characters have to be
         "escaped" in the pattern by prepending a single 0x5C
         ("\")character. e.g., a pattern "\*Test\\Time\*Zone\*" is used
         for an exact match against the time zone identifier
         "*Test\Time*Zone*".  An unescaped "*" character MUST NOT appear
         in the middle of the string and MUST result in an error.  An
         unescaped "\" character MUST NOT appear anywhere in the string
         and MUST result in an error.

If you want a more formal expression of the pattern, we could use ABNF:

pattern = startpattern / endpattern / substrpattern / exactpattern

startpattern  = "*" exactpattern
endpattern    = exactpattern "*"
substrpattern = "*" exactpattern "*"
exactpattern  = *(WSP / %x21-29 / %x2B-5B / %x5D-7E / 0x80-FF / "\\" / "\*")
    ; Any character except CONTROL, with escaping of "\", "*"


-- 
Cyrus Daboo