Re: [Lager] AD review of draft-ietf-lager-specification-10

Barry Leiba <barryleiba@computer.org> Mon, 14 March 2016 17:52 UTC

Return-Path: <barryleiba@gmail.com>
X-Original-To: lager@ietfa.amsl.com
Delivered-To: lager@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 29FF812D6A7; Mon, 14 Mar 2016 10:52:23 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.35
X-Spam-Level:
X-Spam-Status: No, score=-2.35 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, FREEMAIL_FORGED_FROMDOMAIN=0.249, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com
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 v7k0r-QinHHw; Mon, 14 Mar 2016 10:52:21 -0700 (PDT)
Received: from mail-yw0-x229.google.com (mail-yw0-x229.google.com [IPv6:2607:f8b0:4002:c05::229]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 78D9512DC4D; Mon, 14 Mar 2016 10:52:18 -0700 (PDT)
Received: by mail-yw0-x229.google.com with SMTP id h129so177424872ywb.1; Mon, 14 Mar 2016 10:52:18 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:date:message-id:subject :from:to:cc; bh=+YtunaSMgB8sx0qjiuUM3+MRh6GVNU8ACc/FxB1xtac=; b=yoz6dOQofx/ztMjn0tZgCPA2XyHXRjgUC+9Jj74xw4y8QHLzE6gVVsgsHmhROntzTK OZ3835g1l2a9Lo5ZaQ6CYTcLtEenOnbra+/ZFDc9zm/w8l1rYg4EIvKbz7NG8LRiXjdm OccuvFwFP2a7Q14rvnxEq5UhwV4QR4KoQKOXu/vk/mJNEpcV79Y4lOeCoK3TNaPHVjoN ONwpCyaZ/yu6JAa0ZR/q5JJI7zAvbh7M7D/TvzdlCKf3xWOnJpUPKQEXsHR/XZ0n65CV lY/gDmgGTfluNYNZtqv6LmeQkZniyg5DC7B9WMUIOWYD8V4r914IYGCROQAMyIwIdFaf esiQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:sender:in-reply-to:references:date :message-id:subject:from:to:cc; bh=+YtunaSMgB8sx0qjiuUM3+MRh6GVNU8ACc/FxB1xtac=; b=Sd5VMfdwWQSsVlgH1r8+iNnqiYJPKUyZpgx8r9WiHRv5LdDeeaKiyPGmrT5gISAhfS 3arKAB5A6T3P44q5CS9oBuvP6NwwXV0wQuaoJHZ8ZII8IixnkB44O1HLfX0tJsw9q7OK qh1De462q8KdZ2C20n5VFW48LnIsg0xxz21kepzCVxphK276Jw3F7iI6ig7zOjd1GQgc uOob1Woik9kZHk6UuH9sokQYAd2wclZEyz1FwKpj1DtF+B5240kBwPZiU0y7B2PWu+zQ fUvPtDsRbrQ/J7CAiYpBtX2nyZjQi17Sy3MfOuizIatdS9Mhgi0F0/pvK+2FdTOWUWPN GxAA==
X-Gm-Message-State: AD7BkJITSRRzDZwd38L8rp3Gf4w4sGDkBtQw1fSjqt4jRbhq3qa2CgW638eP/uTQIuBiha9VFIyHvohIQvBvaQ==
MIME-Version: 1.0
X-Received: by 10.129.48.77 with SMTP id w74mr14343228yww.147.1457977937607; Mon, 14 Mar 2016 10:52:17 -0700 (PDT)
Sender: barryleiba@gmail.com
Received: by 10.83.78.193 with HTTP; Mon, 14 Mar 2016 10:52:17 -0700 (PDT)
In-Reply-To: <56E6253A.9040605@ix.netcom.com>
References: <CALaySJJP0deDOxCs8YSPr72pfyRUsbZBVE9XO=_4d2AvEhVEtQ@mail.gmail.com> <56E6253A.9040605@ix.netcom.com>
Date: Mon, 14 Mar 2016 17:52:17 +0000
X-Google-Sender-Auth: oyty_-AaQZdGsP20dxshWU4hD5U
Message-ID: <CALaySJ+ULx1=dHTaeyheCaf25TQ=evR3tD3AW_chavDk7V4gQQ@mail.gmail.com>
From: Barry Leiba <barryleiba@computer.org>
To: "Asmus Freytag (t)" <asmus-inc@ix.netcom.com>
Content-Type: text/plain; charset="UTF-8"
Archived-At: <http://mailarchive.ietf.org/arch/msg/lager/RqL53WXFfCTHg4sAeWnscqL-NvY>
Cc: draft-ietf-lager-specification@ietf.org, lager@ietf.org
Subject: Re: [Lager] AD review of draft-ietf-lager-specification-10
X-BeenThere: lager@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
List-Id: Label Generation Rules <lager.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/lager>, <mailto:lager-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/lager/>
List-Post: <mailto:lager@ietf.org>
List-Help: <mailto:lager-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/lager>, <mailto:lager-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 14 Mar 2016 17:52:23 -0000

Hi, Asmus, and thanks for the quick response.  I'm only leaving things
below that I think need my further response.  Summary: we're good
here.

>> Am I the only one who doesn't understand the distinction between
>> "difference" and "symmetric difference"?  I had assumed that
>> "difference" contained all those in one or the other, but not both...
>> but that seems to be what "symmetric difference" is (you say it's
>> xor).  Please explain (to me and in the document).
>
> I have no opinion on whether you are the only one, but the term
> "symmetric-difference" defines what you think of as "difference", while the
> latter term means simply "subtract all the elements of one of the sets from
> their union" (normally you'd expect to see "from the other set", but that
> leaves unspecified how to subtract something that's not in a set to begin
> with).

Ah, I see... my confusion was in forgetting that the order of the
elements is significant, so that it's well defined.  You can probably
leave it as it is, though I'll suggest an update anyway:

OLD
   Classes may be combined using operators for set complement, union,
   intersection, difference and symmetric difference (exclusive-or).
NEW
   Classes may be combined using operators for set complement, union,
   intersection, difference (elements of the first class that are not in the
  second) and symmetric difference (elements in either class, but not
   both).
END

>> -- Section 6.3.9 --
>> I'm confused here, so maybe you can help me understand:
>> It seems to me that in this example, the ranges are defined in terms
>> of the "mixed-digits" rule, and that the rule is defined in terms of
>> the ranges.  How does such a self-referential thing work?
>
> My guess is that you are thinking the "when" attribute "defines" a range in
> some absolute way.

Yes, I was.

> That is not the case. A when attribute relates to whether a label containing
> a code point from the range will be invalid.
...
> The presence of the when attribute does not affect the association of tags
> to code points, which is part of the declaration.

OK, understood.
Your other comments about moving some text around sound right, but
you've answered my question here, and I think we're fine.

>> -- Section 8.5 --
>>
>>    Because of symmetry and transitivity, all variant mappings form
>>    disjoint sets in which each of them is a variant of all other
>>    members.
>>
>> I can't sort this one out.  "Each of them" appears to refer to each
>> set, and I don't know how a set can be a variant of a member.  But if
>> I instead assume that "each of them" is meant to refer to "all variant
>> mappings", then I don't understand what the sets have to do with
>> anything.  I'm also not following how the disjoint sets are formed in
>> the first place.  Can you explain/clarify?
>
> Good catch. Intended was:
>
> "Because of symmetry and transitivity, all variant mappings form disjoint
> sets. In each of these
> sets, the source and target of each mapping are also variants of the sources
> and targets of all the other mappings. "
>
> The use of "and" is deliberate, otherwise you could get a chain, instead of
> an n (n-1) set of crosswise and reciprocal mappings.
>
> By using "source" and "target" I also avoid having to use "code point or
> sequence".
>
> If I make that change, would it fix your problem, or do we need to touch
> more of the discussion in that section?

Yes, I think your suggested change works.

>> -- Section 4.2 --
>>
>> A minor question: Why are you making the order significant?  Why is
>> that important?
>
> This is perhaps not (entirely) editorial.
>
> There is one strong order dependency in the Schema, which is that <action>
> elements are evaluated in order.
> There are several weak order dependencies in the schema that are necessary
> to prevent recursive definitions.
> Named rules and classes must be defined before being referenced via by-ref,
> but within that constraint they can be reordered.
>
> There are additional order dependencies that simplify validation (logical
> validation, not schema validation).
...
> Allowing a more "random" ordering of elements would have been possible, but
> there seems to be no use case for it. Conversely, I'm convinced that there's
> a cost in usability. LGR files that stick to a somewhat conventional order
> can also be processed by general tools, for example, to view differences,
> and not just by special-purpose software.

Thanks for the explanation, and I'm quite convinced.  No change here.

Barry