Re: [netmod] kw review of draft-ietf-netmod-schema-mount-09

Kent Watsen <kwatsen@juniper.net> Fri, 23 March 2018 20:39 UTC

Return-Path: <kwatsen@juniper.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 6FA00126C3D for <netmod@ietfa.amsl.com>; Fri, 23 Mar 2018 13:39:01 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.702
X-Spam-Level:
X-Spam-Status: No, score=-2.702 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_LOW=-0.7, RCVD_IN_MSPIKE_H2=-0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=juniper.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 tD0QXq_b_IPB for <netmod@ietfa.amsl.com>; Fri, 23 Mar 2018 13:38:59 -0700 (PDT)
Received: from mx0a-00273201.pphosted.com (mx0a-00273201.pphosted.com [208.84.65.16]) (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 8A4CA124207 for <netmod@ietf.org>; Fri, 23 Mar 2018 13:38:59 -0700 (PDT)
Received: from pps.filterd (m0108159.ppops.net [127.0.0.1]) by mx0a-00273201.pphosted.com (8.16.0.22/8.16.0.22) with SMTP id w2NKYMbw011982; Fri, 23 Mar 2018 13:38:59 -0700
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=juniper.net; h=from : to : cc : subject : date : message-id : references : in-reply-to : content-type : content-id : content-transfer-encoding : mime-version; s=PPS1017; bh=Fbwco/OLRkd8NJkBWTIzsaheJSdUdNJOSjvVFz4lpkc=; b=K8kJ+yTV/L3Mphv4jL3OhOyAKHtDcGP9zPvz09tBsVqYdQAjuqA7rXiYFxuosX6qXKCm /ObmFROp+2RruX0V+6FkRNcYiBLs4NRqggWl1d4+LRUlt1F1UzFSJdRWOVioLkWYs74C xGaAQMoBQTFSp40seRtf/1RCYp8kZw0vshKyZs1k7do0xZpYaEJV5m2woiLR9YyUeosk a1aPPvXOOnzBw7x+Z6t2F0qJfJMRsG6UHB9WsmNc9M6al38jh914o+i5t8rquSihZN6y nb52cYOVZ+cG9v6iF0N3WQznhfOZAiwhWvcmz8geez9lgvvbgKNqWZC6vucHG3q7licn YQ==
Received: from nam03-dm3-obe.outbound.protection.outlook.com (mail-dm3nam03lp0024.outbound.protection.outlook.com [207.46.163.24]) by mx0a-00273201.pphosted.com with ESMTP id 2gw2st0r94-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Fri, 23 Mar 2018 13:38:59 -0700
Received: from DM5PR05MB3484.namprd05.prod.outlook.com (10.174.240.147) by DM5PR05MB3035.namprd05.prod.outlook.com (10.168.177.19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.609.6; Fri, 23 Mar 2018 20:38:56 +0000
Received: from DM5PR05MB3484.namprd05.prod.outlook.com ([fe80::d13e:bdcf:3798:c34f]) by DM5PR05MB3484.namprd05.prod.outlook.com ([fe80::d13e:bdcf:3798:c34f%2]) with mapi id 15.20.0609.009; Fri, 23 Mar 2018 20:38:56 +0000
From: Kent Watsen <kwatsen@juniper.net>
To: Martin Bjorklund <mbj@tail-f.com>
CC: "netmod@ietf.org" <netmod@ietf.org>
Thread-Topic: [netmod] kw review of draft-ietf-netmod-schema-mount-09
Thread-Index: AQHTwQlM9NByzlrSJEWVUfCPYYYOxKPa7ZCAgAMbPAA=
Date: Fri, 23 Mar 2018 20:38:56 +0000
Message-ID: <6565510F-2433-423D-89BA-6894709D427D@juniper.net>
References: <8AF14BCA-4DEB-4CC0-BED9-B2D03F17E7B9@juniper.net> <20180321.171241.1024483904775728885.mbj@tail-f.com>
In-Reply-To: <20180321.171241.1024483904775728885.mbj@tail-f.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
user-agent: Microsoft-MacOutlook/f.20.0.170309
x-originating-ip: [66.129.241.10]
x-ms-publictraffictype: Email
x-microsoft-exchange-diagnostics: 1; DM5PR05MB3035; 7:w5jodL5JFq6lBUKwH7xFDEEjNAmaKCITa051NxlRhhwuwg8kzhBrusJgSCBPrPEk6UIXhmhtafjai1cnfq1lbX1vjSCtMrxA66+D5aNznAWCNLPrB52u/m5DGnxV1L6EuToqY/e/OAYj0hRYWpQDf6Cy6kmpKHRUbMyuQ3w0qfJbeFa2OPNIompGkrbJlzDG0b357KHB1lGFghbyDfPVmmF5yZ5jVON7AY9tw/M3WL6A68IDoaJ1WRlgSsZvH42n
x-ms-exchange-antispam-srfa-diagnostics: SOS;
x-ms-office365-filtering-ht: Tenant
x-ms-office365-filtering-correlation-id: ee5b3561-44c3-4dd9-f0f2-08d590fe19ab
x-microsoft-antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652020)(48565401081)(5600026)(4604075)(3008032)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060)(7193020); SRVR:DM5PR05MB3035;
x-ms-traffictypediagnostic: DM5PR05MB3035:
x-microsoft-antispam-prvs: <DM5PR05MB303570CEAC548151E864CA56A5A80@DM5PR05MB3035.namprd05.prod.outlook.com>
x-exchange-antispam-report-test: UriScan:(158342451672863);
x-exchange-antispam-report-cfa-test: BCL:0; PCL:0; RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(3231221)(944501327)(52105095)(93006095)(93001095)(3002001)(10201501046)(6055026)(6041310)(20161123564045)(20161123558120)(20161123560045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123562045)(6072148)(201708071742011); SRVR:DM5PR05MB3035; BCL:0; PCL:0; RULEID:; SRVR:DM5PR05MB3035;
x-forefront-prvs: 0620CADDF3
x-forefront-antispam-report: SFV:NSPM; SFS:(10019020)(346002)(39380400002)(366004)(376002)(39860400002)(396003)(189003)(199004)(3660700001)(6506007)(229853002)(102836004)(86362001)(26005)(316002)(186003)(106356001)(2616005)(478600001)(81166006)(66066001)(6436002)(59450400001)(2900100001)(8936002)(6916009)(6486002)(83716003)(68736007)(446003)(81156014)(11346002)(3846002)(76176011)(6512007)(33656002)(97736004)(53936002)(99286004)(5250100002)(4326008)(305945005)(6246003)(5660300001)(8676002)(7736002)(3280700002)(6116002)(82746002)(105586002)(25786009)(2906002)(14454004)(36756003)(58126008); DIR:OUT; SFP:1102; SCL:1; SRVR:DM5PR05MB3035; H:DM5PR05MB3484.namprd05.prod.outlook.com; FPR:; SPF:None; PTR:InfoNoRecords; MX:1; A:1; LANG:en;
received-spf: None (protection.outlook.com: juniper.net does not designate permitted sender hosts)
x-microsoft-antispam-message-info: X42afQwM40EgVwQb50HdKAo30WX0EQCUzCAO3qAt0eH9fID8qM/mHNL5lHvZDiALYMictY580XrdUUgx0BTm+MbcM8AU8whr/w6mRVomhU+l7SkLrivwOCK8A04neD8BIdFquhbZnX+BypWc5ZYVKTBoe8j2U0pwKSsnIV5850Q4fYHQRtGGrCKPfMVsD8TUa7aTad53LENsMzIFQvr1/9FlxjWpdq1UcuYGgqscNHoA2v1VmRY2W4NMd1qoy4qKekFJadQtyXRsyQ7td26idQukbmIu3/qlFHcwVfW0wnzv9sAyLu2+v6jdD/GoJrVjbR/IezfxqIhpekqAfZ8oyA==
spamdiagnosticoutput: 1:99
spamdiagnosticmetadata: NSPM
Content-Type: text/plain; charset="utf-8"
Content-ID: <75931FD8A9B0704082B5DDCAF0DFDD2E@namprd05.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-OriginatorOrg: juniper.net
X-MS-Exchange-CrossTenant-Network-Message-Id: ee5b3561-44c3-4dd9-f0f2-08d590fe19ab
X-MS-Exchange-CrossTenant-originalarrivaltime: 23 Mar 2018 20:38:56.8844 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: bea78b3c-4cdb-4130-854a-1d193232e5f4
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR05MB3035
X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10432:, , definitions=2018-03-23_13:, , signatures=0
X-Proofpoint-Spam-Details: rule=outbound_spam_notspam policy=outbound_spam score=0 priorityscore=1501 malwarescore=0 suspectscore=0 phishscore=0 bulkscore=0 spamscore=0 clxscore=1011 lowpriorityscore=0 mlxscore=0 impostorscore=0 mlxlogscore=999 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1711220000 definitions=main-1803230233
Archived-At: <https://mailarchive.ietf.org/arch/msg/netmod/VNIB0C0nSTAc-U5ERnI-eocah2k>
Subject: Re: [netmod] kw review of draft-ietf-netmod-schema-mount-09
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: Fri, 23 Mar 2018 20:39:01 -0000

[Reducing to just the open threads]


>> 3.1:
>>   a) 2nd paragraph, s/defines a label for/defines the label for/
>
> Is this really correct?   If we say "the label", it seems that we
> first have to say that such a label exists; otherwise, which label
> does "the label" refer to?

I think so, in that there can only be one, whereas "a label" 
sounds less definitive.  That said, I imagine this being 
something RFC Editor might catch.


>> 3.2, 1st paragraph:
>>  a) 1st sentence, s/parent schema/data model supported by the server/?
>
> "parent schema" is a term defined in this document, so I think it is
> appropriate to use it here.

I saw it, but I thought this sentence regarded the data model (a 
collection of schema), more so than the parent schema.


>>  b) 2nd sentence, s#yangmnt:schema-mounts#/yangmnt:schema-mounts#?
>
> changed to "/schema-mounts".   We ususally don't use the prefixes in
> text when we talk about the new module, unless there's a risk of
> confusion.

okay


>>  c) 2nd sentence, are mounts as stable as yang library?  It seems that
>>     if a new LNE were added, that would add a new mount point w/o 
>>     changing yang library...
>
> Well, adding a new LNE doesn't add a new mount point.
>
> But I think we should remove this sentence; it was appropriate when 
> we had the "schema" list, which is now removed.

okay


>>  d) perhaps discuss the implications of it being as stable?  E.g.,
>>     clients only need to check /yangmnt:schema-mounts when yang
>>     library's checksum changes?
>
> See above, sentence removed.

okay


> 3.2, 2nd paragraph, can you add a reference to the section in 
>      rtgwg-lne-model that has the exception, or some text about
>      the nature of the exception defined in that document?

did you miss this comment before?


>> 3.2, last paragraph: is "in the operational state"
>
> I don't understand this comment.

Undoubtedly, as I didn't complete it!  ;)

Trying again, is "in the operational state" needed in this sentence?
The sentence seems to read better without it.  If it is needed, then
can we say it another way or somehow expand on it so it's clear?



>> 3.3: an example would be helpful
>> 5: end of 2nd paragraph, an example would be nice
>
> I will look at this and see if we can add examples.

okay



>>  b) in the "mount-point" node's description statement, would it be
>>     helpful to add that multiple instances of the mount-point may exist
>>     when the extension statement is used in a 'list' or 'grouping' stmt?
>>     - this to help with the last paragraph in the description stmts for
>>       both the inline and shared-schema nodes?
>
> I don't understand what you suggest should be made more clear.  Can
> you propose some text?

Both the inline and shared-schema nodes have this text:

   Different instances of the mount point may have
   different schemas mounted.";

In particular, I'm looking at "different instances of the mount point"
and wondering under what conditions there might be different instances
of a mount point.  My suggestion is to add to the description for 
/schema-mounts/mount-point something like:

  Different instances of the mount point may occur when the "mount-point"
  extension statement is used under a 'list' or a 'grouping'.




>>  c) why is "shared-schema" a presence container?
>
> B/c its existence mean that the moint point has a shared schema; it is
> same in all instances of the mount point.  Also, the leaf-list in the
> container is optional, so we need the presence to be able to create
> the container w/o any children.

I didn't realize that the leaf-list was optional, even though I saw
that there isn't a 'min-elements' statement.  Somehow, I thought that 
having a parent reference was what distinguishes it.  The text does
state that there can be zero parent references in the 2nd-to-last 
paragraph in Section 4 but, when reading the YANG, the description 
statements for "inline" and "shared-schema" nodes are identical 
except for the bit regarding parent references, which confused me.



>>  d) for parent-reference, would it be helpful to note that the reference
>>     MAY be to nodes that themselves were brought in via a parent ref, for
>>     the nested schema mount case?
>
> Maybe, if it can be expressed in a non-confusing way... I'm not sure
> my first attept fulfils that:
>
>             Note that in the case 'ietf-yang-schema-mount' is
>             itself mounted, a 'parent-reference' in the mounted
>             module may refer to nodes that were brought into the
>             accessible tree through a 'parent-reference' in the
>             parent schema.";

works for me, and an example illustrating this would be great.  I
proposed this before as well.


>> A. shouldn't there be an example parent schema module showing the
>>    "mount-point" extension statement defining the "root" label?
>
> The example has:
>
>       "mount-point": [
>         {
>           "module": "ietf-logical-network-element",
>           "label": "root",
>
> This means that the "root" label is defined in the module
> "ietf-logical-network-element".

Yes, but it's not obvious, and it is a bit odd in that one might
think that this draft would be written before rtgwg-lne-model.
This section should explain that the mount point defined in that
other draft. 


Kent  // contributor