Re: [netmod] Y34

Ladislav Lhotka <lhotka@nic.cz> Mon, 20 July 2015 13:08 UTC

Return-Path: <lhotka@nic.cz>
X-Original-To: netmod@ietfa.amsl.com
Delivered-To: netmod@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 48BCC1A8778 for <netmod@ietfa.amsl.com>; Mon, 20 Jul 2015 06:08:22 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -5.661
X-Spam-Level:
X-Spam-Status: No, score=-5.661 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HELO_EQ_CZ=0.445, HOST_EQ_CZ=0.904, RCVD_IN_DNSWL_HI=-5, 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 Ocdu0x4QzqIP for <netmod@ietfa.amsl.com>; Mon, 20 Jul 2015 06:08:20 -0700 (PDT)
Received: from mail.nic.cz (mail.nic.cz [217.31.204.67]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id C1DE41A8704 for <netmod@ietf.org>; Mon, 20 Jul 2015 06:08:19 -0700 (PDT)
Received: from [IPv6:2001:df8:ffff:13:3999:35fe:238f:9582] (unknown [IPv6:2001:df8:ffff:13:3999:35fe:238f:9582]) by mail.nic.cz (Postfix) with ESMTPSA id 79D8018161D; Mon, 20 Jul 2015 15:08:18 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=nic.cz; s=default; t=1437397698; bh=eyVvqXQzDB2spL2e3unQ+wUIbGyJPp0Mbnuam/yelug=; h=From:Date:To; b=b+4mk/jcrZw7zpU4lU7w7N8VBuV+w6X7E3EFt6lwqPi5D8mUzbFRiHZZSZAHNE7Co AW02OqCK1tA/2qat4qpnWFlB5J025Tr8dRNIs0Sp04WsYbSse5quZ6gdNR6GqddLbM 1m94OUhNqu3FGDZFTUrFME5tE3cuDPYYt5G6u/pE=
Content-Type: text/plain; charset="utf-8"
Mime-Version: 1.0 (Mac OS X Mail 8.2 \(2102\))
From: Ladislav Lhotka <lhotka@nic.cz>
In-Reply-To: <CABCOCHSqbZfKRqGjT1rsphRnw0tYdR3uT=mFvTvJYXMwL3N2uw@mail.gmail.com>
Date: Mon, 20 Jul 2015 15:08:18 +0200
Content-Transfer-Encoding: quoted-printable
Message-Id: <5497CE3E-19A7-4AAC-AE32-AFC9BC2451F1@nic.cz>
References: <m2d1zn0zhm.fsf@dhcp-hotel-wired-13-fe.meeting.ietf.org> <D0153452-D5F5-4E3C-B3D7-7003ACC405EA@nic.cz> <CABCOCHSqbZfKRqGjT1rsphRnw0tYdR3uT=mFvTvJYXMwL3N2uw@mail.gmail.com>
To: Andy Bierman <andy@yumaworks.com>
X-Mailer: Apple Mail (2.2102)
X-Virus-Scanned: clamav-milter 0.98.7 at mail
X-Virus-Status: Clean
Archived-At: <http://mailarchive.ietf.org/arch/msg/netmod/NPXV1d4KyU8ZlqCEzQwEPsBUuVU>
Cc: "netmod@ietf.org" <netmod@ietf.org>
Subject: Re: [netmod] Y34
X-BeenThere: netmod@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: NETMOD WG list <netmod.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/netmod>, <mailto:netmod-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/netmod/>
List-Post: <mailto:netmod@ietf.org>
List-Help: <mailto:netmod-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/netmod>, <mailto:netmod-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 20 Jul 2015 13:08:22 -0000

> On 20 Jul 2015, at 14:55, Andy Bierman <andy@yumaworks.com> wrote:
> 
> Hi,
> 
> Can you explain why we need 2 broken anyxmls?
> (The original and a synonym?)  The whole point of
> anydata is that it does not have XML cruft in it.

Yes, I understand this was your main priority. For implementors using off-the-shelf XML parsers and tools the XML cruft is not an issue at all.

Anyway, I believe there are use cases for arbitrary XML/JSON/CBOR/… with no (YANG) schema available. My only complaint to “anyxml” has always been that it is a misnomer for encodings other than XML.

> 
> I also don't get the value of a single top-level node called 'device'
> that every YANG model on the planet is supposed to augment.
> Can you explain why a protocol operation to retrieve the
> document root (/) is not sufficient for the top-level node?

I don’t intend to defend their model, the more serious problem IMO is that a model for a single device/function may be needed in another device that hosts many virtualised devices/functions of the former type. We don’t have a good solution for this rather typical situation.

Lada

> 
> Andy
> 
> 
> 
> On Mon, Jul 20, 2015 at 5:48 AM, Ladislav Lhotka <lhotka@nic.cz> wrote:
> 
> > On 20 Jul 2015, at 14:45, Ladislav Lhotka <lhotka@nic.cz> wrote:
> >
> > Hi,
> >
> > after listening to the presentation of
> > draft-rtgyangdt-rtgwg-device-model-00 at RTGWG session, I am wondering
> > whether the solution chosen for Y34 is really useful.
> >
> > The draft states they want to reuse ietf-interfaces but their tree in
> > fact is
> >
> >   +--rw device
> >          +--rw info
> >          |  +--rw device-type?   enumeration
> >          +--rw hardware
> >          +--rw interfaces
> >          |  +--rw interface* [name]
> >          |     ...
> >          +--rw qos
> >
> > So the "interfaces" container is no more a top-level node. There are
> > three possible options:
> >
> > 1. Change the ietf-interfaces module.
> > 2. Replicate its contents in another module.
> > 3. Extend YANG so that a *specific* schema tree can be grafted at a
> >   given data node.
> >
> > IMO #1 & #2 are really bad. I thought Y34-04 was essentially #3 but it
> > seems it is not so because it doesn't specify a concrete data model
> > that's allowed at a given location.
> >
> > On the other hand, the only real contribution of "anydata" over "anyxml"
> > is that is doesn't permit mixed content in XML, which is IMO not much.
> >
> > I know Y34 was already closed but I think it is more important to do
> > things right before YANG 1.1 becomes an RFC.
> >
> > What I want to propose is this:
> >
> > - Rename "anydata" as a synonym to "anyxml", and deprecate "anyxml" (but
> >  keep it for backward compatibility).
> 
> s/Rename/Introduce/
> 
> >
> > - Introduce a new statement and data node type, e.g. "root", that will
> >  extend the schema tree starting from that data node with a precisely
> >  specified data model. The specification can be same or similar as
> >  in yang-library.
> >
> > I believe there are other use cases in the existing modules. For
> > example, the ietf-routing module could simply define the data model for
> > a single routing instance (i.e. without "routing-instance" list at the
> > top), and it can be then used without changes on simple devices, and
> > more complex router implementations can graft it as a subtree under
> > "routing-instance", "networking-instance" or whatever.
> >
> > Lada
> >
> > --
> > Ladislav Lhotka, CZ.NIC Labs
> > PGP Key ID: E74E8C0C
> >
> > _______________________________________________
> > netmod mailing list
> > netmod@ietf.org
> > https://www.ietf.org/mailman/listinfo/netmod
> 
> --
> Ladislav Lhotka, CZ.NIC Labs
> PGP Key ID: E74E8C0C
> 
> 
> 
> 
> _______________________________________________
> netmod mailing list
> netmod@ietf.org
> https://www.ietf.org/mailman/listinfo/netmod
> 

--
Ladislav Lhotka, CZ.NIC Labs
PGP Key ID: E74E8C0C