Re: [yang-doctors] Yangdoctors last call review of draft-ietf-ospf-yang-09

Ladislav Lhotka <lhotka@nic.cz> Tue, 09 January 2018 15:20 UTC

Return-Path: <lhotka@nic.cz>
X-Original-To: yang-doctors@ietfa.amsl.com
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id DE462126C0F; Tue, 9 Jan 2018 07:20:46 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -7.009
X-Spam-Level:
X-Spam-Status: No, score=-7.009 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_HI=-5, T_RP_MATCHES_RCVD=-0.01, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=nic.cz
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 YpKs4BVUxRJj; Tue, 9 Jan 2018 07:20:44 -0800 (PST)
Received: from mail.nic.cz (mail.nic.cz [IPv6:2001:1488:800:400::400]) (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 26F4B1205F0; Tue, 9 Jan 2018 07:20:43 -0800 (PST)
Received: from birdie (cst-prg-24-198.cust.vodafone.cz [46.135.24.198]) by mail.nic.cz (Postfix) with ESMTPSA id 1866C63DCE; Tue, 9 Jan 2018 16:20:41 +0100 (CET)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=nic.cz; s=default; t=1515511241; bh=OU0uMU2VBsjX5vK2wtAuBGuHimdB28PQlgpZkHLMjws=; h=From:To:Date; b=b+RrffikV0hyjfgSPd7iE03rgpN/rhCX+XaU9n4NYtaWsmwtSnxUUnQqvAf0S2VfX DnJ3nEOWWGhPkMmnvfXSAxbVNfLOY2ErQ8rJpsxG9EqhPTHb2Zje5H23OlBcCiuro4 EGv8DFnKMSs7C0qM+hd3Q6NbXFo/DzGRK3Pl7BJ8=
Message-ID: <1515510536.26845.18.camel@nic.cz>
From: Ladislav Lhotka <lhotka@nic.cz>
To: Martin Bjorklund <mbj@tail-f.com>
Cc: acee@cisco.com, yang-doctors@ietf.org, draft-ietf-ospf-yang.all@ietf.org, ietf@ietf.org, ospf@ietf.org
In-Reply-To: <20180109.090648.1082913423972100343.mbj@tail-f.com>
References: <151255960762.30655.17225294251460480729@ietfa.amsl.com> <D6792F3D.E8CD1%acee@cisco.com> <1515484295.18448.9.camel@nic.cz> <20180109.090648.1082913423972100343.mbj@tail-f.com>
Organization: CZ.NIC
Content-Type: text/plain; charset="UTF-8"
Date: Tue, 09 Jan 2018 16:08:56 +0100
Mime-Version: 1.0
X-Mailer: Evolution 3.26.3
Content-Transfer-Encoding: 8bit
X-Virus-Scanned: clamav-milter 0.99.2 at mail
X-Virus-Status: Clean
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/0had1Y72Qj2zsJrf08SIiaZQ3aw>
Subject: Re: [yang-doctors] Yangdoctors last call review of draft-ietf-ospf-yang-09
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Email list of the yang-doctors directorate <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 09 Jan 2018 15:20:47 -0000

On Tue, 2018-01-09 at 09:06 +0100, Martin Bjorklund wrote:
> Hi,
> 
> Ladislav Lhotka <lhotka@nic.cz> wrote:
> > Hi Acee,
> 
> > 
> 
> > please see inline.
> 
> > 
> 
> > On Mon, 2018-01-08 at 19:28 +0000, Acee Lindem (acee) wrote:
> 
> > > Hi Lada,
> 
> > > 
> 
> > > Apologies for the delay. We somewhat got hung up on 4 and 6. See inline.
> 
> > > 
> 
> > > On 12/6/17, 6:26 AM, "Ladislav Lhotka" <lhotka@nic.cz> wrote:
> 
> > > 
> 
> > > > Reviewer: Ladislav Lhotka
> 
> > > > Review result: Ready with Issues
> 
> > 
> 
> > ...
> 
> > 
> 
> > > > 
> 
> > > > 3. Maybe the draft could mention that implementations should supply a
> 
> > > >   default routing domain as a system-controlled resource.
> 
> > > 
> 
> > > Isn’t this more of an RFC8022BIS statement? I guess we could state this as
> 
> > > an assumption.
> 
> > 
> 
> > Probably, but it is not a YANG issue, so I'd leave it to you routing folks
> to
> 
> > decide.
> 
> > 
> 
> > >  
> 
> > > 
> 
> > > > 4. In "when" expressions, the module uses literal strings for
> 
> > > >   identities. This is known to be problematic, the XPath functions
> 
> > > >   derived-from() or derived-from-or-self() should be used instead.
> 
> > > 
> 
> > > Why is this problematic? Is it because the types can be extended?
> 
> > 
> 
> > That's one reason: derived identities should often also satisfy the
> constraint.
> 
> > 
> 
> > But the more serious problem is that things like
> 
> > 
> 
> >     when "../../../../../../../rt:type = 'ospf:ospfv3'"
> 
> > 
> 
> > rely on plain string comparison that depends od the actual prefix used for
> the
> 
> > "rt:type" value. For one, according to RFC 7951 the JSON encoding of this
> value
> 
> > would be "ietf-ospf:ospfv3" so the above expression is always false. 
> 
> 
> This is not correct; the when expression is not evaluated on the JSON
> encoding.  See the last paragraph of section 9.10.3 in RFC 7950:
> 
>    The string value of a node of type "identityref" in a "must" or
>    "when" XPath expression is the referred identity's qualified name
>    with the prefix present.  If the referred identity is defined in an
>    imported module, the prefix in the string value is the prefix defined
>    in the corresponding "import" statement.  Otherwise, the prefix in
>    the string value is the prefix for the current module.

This is weird, to say the least. The leafref instance may have an identity value
that is defined in a module that (has to be implemented by the server but)
needn't be imported in the module that contains the XPath expression. So I don't
know what 'corresponding "import" statement' this paragraph is talking about.

Also, potentially there can be a collision in prefixes and then this also breaks
down.

A moral of the namespace/prefix story in XML was that relying of namespace
prefixes having a particular value is a really bad idea. I know that the cited
paragraph was intended to make such XPath string comparisons more deterministic,
but it is also problematic and should be avoided if possible. 

Lada

> 
> So the equality test of the identityref is correct.
> 
> However, I agree that in most cases 'derived-from-or-self' should be
> used, in order to handle derived identities.
> 
> 
> /martin
-- 
Ladislav Lhotka
Head, CZ.NIC Labs
PGP Key ID: 0xB8F92B08A9F76C67