Re: [netmod] schema mount open issue #1

Lou Berger <lberger@labn.net> Tue, 29 August 2017 12:54 UTC

Return-Path: <lberger@labn.net>
X-Original-To: netmod@ietfa.amsl.com
Delivered-To: netmod@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 2BEB1132320 for <netmod@ietfa.amsl.com>; Tue, 29 Aug 2017 05:54:18 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.7
X-Spam-Level:
X-Spam-Status: No, score=-4.7 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-2.8, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (768-bit key) header.d=labn.net
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 g3fWt701LYfI for <netmod@ietfa.amsl.com>; Tue, 29 Aug 2017 05:54:16 -0700 (PDT)
Received: from gproxy10-pub.mail.unifiedlayer.com (gproxy10-pub.mail.unifiedlayer.com [69.89.20.226]) (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 EF4641200F3 for <netmod@ietf.org>; Tue, 29 Aug 2017 05:54:15 -0700 (PDT)
Received: from cmgw3 (unknown [10.0.90.84]) by gproxy10.mail.unifiedlayer.com (Postfix) with ESMTP id 6A2FA14063F for <netmod@ietf.org>; Tue, 29 Aug 2017 06:54:15 -0600 (MDT)
Received: from box313.bluehost.com ([69.89.31.113]) by cmgw3 with id 30uC1w00R2SSUrH010uFmU; Tue, 29 Aug 2017 06:54:15 -0600
X-Authority-Analysis: v=2.2 cv=F98nTupN c=1 sm=1 tr=0 a=h1BC+oY+fLhyFmnTBx92Jg==:117 a=h1BC+oY+fLhyFmnTBx92Jg==:17 a=IkcTkHD0fZMA:10 a=KeKAF7QvOSUA:10 a=u07AKapRAAAA:8 a=wU2YTnxGAAAA:8 a=48vgC7mUAAAA:8 a=_1n61X6UIw9fpt1jsnwA:9 a=OSdAWL87u_1_Iiba:21 a=UjIHFwsZ_RL7G_IZ:21 a=QEXdDO2ut3YA:10 a=SkebfZ6J2Mmvk2rLHZle:22 a=Yz9wTY_ffGCQnEDHKrcv:22 a=w1C3t2QeGrPiZgrLijVG:22
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=labn.net; s=default; h=Content-Transfer-Encoding:Content-Type:MIME-Version:Subject: References:In-Reply-To:Message-ID:Date:CC:To:From:Sender:Reply-To:Content-ID: Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc :Resent-Message-ID:List-Id:List-Help:List-Unsubscribe:List-Subscribe: List-Post:List-Owner:List-Archive; bh=bjhnnM08C22HswioDfk3fhXrmU6nYfzsotdIAqFWe8M=; b=dRAb8AmlE9xbwhDJjD7dVz8pri LWVgxR7XgtEHbeIq4MEaAqZrwiIeOQWf9pLY6+5uA++K3zH5JaZHUhBg3Z4tSenz57K0gqFPU40Vy ZmOjJFMFSI9xB5AND6RUqb6sj;
Received: from pool-100-15-84-20.washdc.fios.verizon.net ([100.15.84.20]:38695 helo=[11.4.0.6]) by box313.bluehost.com with esmtpsa (TLSv1.2:ECDHE-RSA-AES128-GCM-SHA256:128) (Exim 4.87) (envelope-from <lberger@labn.net>) id 1dmg20-003uyn-5d; Tue, 29 Aug 2017 06:54:12 -0600
From: Lou Berger <lberger@labn.net>
To: Martin Bjorklund <mbj@tail-f.com>
CC: lhotka@nic.cz, netmod@ietf.org
Date: Tue, 29 Aug 2017 08:54:10 -0400
Message-ID: <15e2e0e6950.27d3.9b4188e636579690ba6c69f2c8a0f1fd@labn.net>
In-Reply-To: <20170829.144409.1459812722022735947.mbj@tail-f.com>
References: <81b138c6-9941-3313-979c-61edad7819a7@labn.net> <20170829.093743.762532630259333653.mbj@tail-f.com> <647a5ef0-968a-4eb7-322e-b3862a1252bd@labn.net> <20170829.144409.1459812722022735947.mbj@tail-f.com>
User-Agent: AquaMail/1.10.0-403 (build: 101000001)
MIME-Version: 1.0
Content-Type: text/plain; format="flowed"; charset="UTF-8"
Content-Transfer-Encoding: 8bit
X-AntiAbuse: This header was added to track abuse, please include it with any abuse report
X-AntiAbuse: Primary Hostname - box313.bluehost.com
X-AntiAbuse: Original Domain - ietf.org
X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12]
X-AntiAbuse: Sender Address Domain - labn.net
X-BWhitelist: no
X-Source-IP: 100.15.84.20
X-Exim-ID: 1dmg20-003uyn-5d
X-Source:
X-Source-Args:
X-Source-Dir:
X-Source-Sender: pool-100-15-84-20.washdc.fios.verizon.net ([11.4.0.6]) [100.15.84.20]:38695
X-Source-Auth: lberger@labn.net
X-Email-Count: 4
X-Source-Cap: bGFibm1vYmk7bGFibm1vYmk7Ym94MzEzLmJsdWVob3N0LmNvbQ==
X-Local-Domain: yes
Archived-At: <https://mailarchive.ietf.org/arch/msg/netmod/xx-4c-0LqaxCCE3UiCcN8JUo_Oo>
Subject: Re: [netmod] schema mount open issue #1
X-BeenThere: netmod@ietf.org
X-Mailman-Version: 2.1.22
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: Tue, 29 Aug 2017 12:54:18 -0000

For me usage standpoint it really would be much simpler in the model 
definition and use for the mount point to behave like a container. What are 
your technical objections to this change? Note that the encoding from a 
protocol standpoint would be the same as a container.

Thanks
Lou


On August 29, 2017 8:46:18 AM Martin Bjorklund <mbj@tail-f.com> wrote:

> Lou Berger <lberger@labn.net> wrote:
>> On 08/29/2017 03:37 AM, Martin Bjorklund wrote:
>> > Lou Berger <lberger@labn.net> wrote:
>> >> Lada,
>> >>
>> >>
>> >> On 8/28/2017 10:16 AM, Ladislav Lhotka wrote:
>> >>> Lou Berger píše v Po 28. 08. 2017 v 09:40 -0400:
>> >>>> Lada,
>> >>>>
>> >>>> On 8/28/2017 9:30 AM, Ladislav Lhotka wrote:
>> >>>>>> Can you please take a look at it and see if we have any other 
>> disconnects?
>> >>>>> This is really scary.
>> >>>> I agree!
>> >>>>
>> >>>>> How can we expect poor data modellers to understand the
>> >>>>> concept if we have such fundamental disconnects, after so many hours of
>> >>>>> discussing it?
>> >>>> This highlights why getting the text in (any) document is so important,
>> >>>> and why discussions shouldn't be viewed as being closed until the impact
>> >>>> on the text is agreed to!
>> >>> I think many people still don't make much distinction between schema mount
>> >>> (manipulation of the schema) and data mount. I still believe we need to 
>> clearly
>> >>> separate these two concepts, preferably using two different mechanisms.
>> >>
>> >> Frankly, I'm focused on removing blocking issues on the current WG
>> >> deliverable, i.e., schema mount.
>> >> ...
>> >>>> Lou
>> >>>>
>> >>>> PS is your view aligned with martin or our example?
>> >>> If you mean shifting the XPath context node to the mount point 
>> instance, then
>> >>> yes.
>> >>
>> >> funny, you answered yes to a choice!  I was asking if you think the
>> >> mount point shows up as a node in the data tree, i.e., as shown in the
>> >> example in
>> >> https://tools.ietf.org/html/draft-ietf-rtgwg-ni-model-03#appendix-B.1?
>> >>
>> >> from my perspective and my co-authors in the RTG area using schema
>> >> mount, we've never heard of a (filesystem) mount point that doesn't show
>> >> in the (directory) structure and this is the mental analogue we've been
>> >> assuming. Since there never was an explicit example/discussion or text
>> >> to dissuade us of this
>> >
>> > The current text says:
>> >
>> >   A "container" or "list" node becomes a mount point if the
>> >   "mount-point" extension (defined in the "ietf-yang-schema-mount"
>> >   module) is used in its definition.
>>
>> interesting, read that a few times to (now) get the gist of your intent.
>>
>> >
>> > But of course we should clarify this.
>> >
>>
>>
>>
>> >> , this disconnect was never noticed.  Certainly
>> >> this needs to be explicit in the document (either way). The following
>> >> change could be made to the schema mount draft (at a minimum):
>> >>
>> >> OLD
>> >>           A mount point defines a place in the node hierarchy where
>> >>           other data models may be attached. A server that implements a
>> >> NEW
>> >>           A mount point defines a node in a data tree under which
>> >> instances of
>> >>           other data models may be attached. A server that implements a
>> >
>> > I strongly object to letting the extension define a new data node.
>>
>> > This would be a new type of data node that presumably look a lot like
>> > a container,
>>
>> agreed, just like a mount point looks a lot like a directory in a unix
>> file system.
>>
>> > and you'd have to define all sorts of rules for this new
>> > node (how it is encoded in XML, JSON, CBOR; how it is handled in
>> > edit-config, how it is mapped to RESTCONF resources etc etc).
>>
>> I'm don't see this, the rules would be the same as a container, as in
>> "mount points in data trees are encoded identically as containers".
>>
>> >
>> > If you thought that the extension implicitly creates a node, adding an
>> > explicit container won't do any harm; it will not change the schema
>> > tree from what you thought it was.
>>
>> Well we could make this work, but it feels like every model that uses
>> schema has added complexity to its definition and use to perhaps avoid
>> making some minor tooling changes.  Keep in mind that any use of the
>> mount point extension will required changes in tooling.
>>
>> >
>> > But I think we should also restrict the mount-point extension so that
>> > there cannot be more than one mount-point in a given container.
>> >
>> In this case, I'd go further and say that the only thing in the
>> container (of the module schema) is the mount point and a mount point
>> extension is only valid within a container. (Then the semantics are the
>> same as we expected, just the syntax is different.)
>
> I was thinking about this as well, but I thought that maybe rejecting
> any other data node is a CLR.  Maybe there is a good use case for
> e.g. an action in a mount point.
>
>
> /martin
>