Re: [Netconf] YANG Doctor question: empty mandatory choice?
Kent Watsen <kwatsen@juniper.net> Mon, 30 July 2018 21:14 UTC
Return-Path: <kwatsen@juniper.net>
X-Original-To: netconf@ietfa.amsl.com
Delivered-To: netconf@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id D7640130EE9 for <netconf@ietfa.amsl.com>; Mon, 30 Jul 2018 14:14:21 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.7
X-Spam-Level:
X-Spam-Status: No, score=-2.7 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, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=unavailable 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 t3zgAKEZtrSN for <netconf@ietfa.amsl.com>; Mon, 30 Jul 2018 14:14:18 -0700 (PDT)
Received: from mx0b-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 9816D130E89 for <netconf@ietf.org>; Mon, 30 Jul 2018 14:14:18 -0700 (PDT)
Received: from pps.filterd (m0108157.ppops.net [127.0.0.1]) by mx0a-00273201.pphosted.com (8.16.0.22/8.16.0.22) with SMTP id w6ULE2Yv004152; Mon, 30 Jul 2018 14:14:18 -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=R6x2vJzfRtIM1yMj4N9u5iqqA8NiD0iVjbAoMIIYzyw=; b=EaPy8Iw9FONbAliV5/le+3PezcY72IeQ86bbb3xxxMuklOs1n8LaYvJ2PB7fKq7ahwKh y74UHV5nqZjhMdhR/w+JLIJH1SGV8+ApArtVOwK/A9lZvsR7y9qcfAfOsOWmQmeTPyqF VVXUV+B/A9yDKNl/8enLeKBn917zSGSwut34U2argryBHEHzT4SORJJ2NREPmKQfrK1z pBMKXtWgaoRMTn6QQQlQa0jjwB9uDI+B9F9Ng7XajtmsDNmci7bVY1iba13iLWq94p81 xAJJ2YvIKOhiW6sgAj7TOdYRRLkGOIyrgE4K0EDBHJc0HuLuTCGXDYaKiRejU9/iVSJr qA==
Received: from nam02-bl2-obe.outbound.protection.outlook.com (mail-bl2nam02lp0082.outbound.protection.outlook.com [207.46.163.82]) by mx0a-00273201.pphosted.com with ESMTP id 2kj6jg0hyq-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-SHA384 bits=256 verify=NOT); Mon, 30 Jul 2018 14:14:18 -0700
Received: from BYAPR05MB4230.namprd05.prod.outlook.com (52.135.200.153) by BYAPR05MB4501.namprd05.prod.outlook.com (52.135.203.33) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1017.10; Mon, 30 Jul 2018 21:14:14 +0000
Received: from BYAPR05MB4230.namprd05.prod.outlook.com ([fe80::84c5:999c:9159:d416]) by BYAPR05MB4230.namprd05.prod.outlook.com ([fe80::84c5:999c:9159:d416%2]) with mapi id 15.20.1017.010; Mon, 30 Jul 2018 21:14:14 +0000
From: Kent Watsen <kwatsen@juniper.net>
To: Martin Bjorklund <mbj@tail-f.com>
CC: "evoit=40cisco.com@dmarc.ietf.org" <evoit=40cisco.com@dmarc.ietf.org>, "netconf@ietf.org" <netconf@ietf.org>
Thread-Topic: [Netconf] YANG Doctor question: empty mandatory choice?
Thread-Index: AQHUKEYUmUSBX283/kCJ9HawSKyfbKSoAO2A
Date: Mon, 30 Jul 2018 21:14:14 +0000
Message-ID: <2A8DE17C-72E8-44C6-8B73-E32CD31549CB@juniper.net>
References: <44B0A74E-CCF0-4E9B-846A-1F46E90AEB5E@juniper.net>
In-Reply-To: <44B0A74E-CCF0-4E9B-846A-1F46E90AEB5E@juniper.net>
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.12]
x-ms-publictraffictype: Email
x-microsoft-exchange-diagnostics: 1; BYAPR05MB4501; 6:jO4nCsN95vDZKQh0GsF8PbNICCFntrKlZQCiMZwz3bqaj7wTvqfEOEFZNxoV3Xfs1n0dI30ibwujUOl20FEZM9q+NRLaNwzn168tKN4zTCA6kjXweVuja5dz7h7d3d1hFHMjHYzw4CcvsF+BbdccJz9K0RvwZ/bQ/GvNX71Y1A1GVE8DcxaxkPH4sOS40+ZvBsoeY/XAOzUU3I8PRyS0KJWKeN6/nD1WueUoMg0XeX1v69mAmN9UWo1EII0xxJljvRUjxsxjmdHoVk4pxEvtY9yFBEbMhO5Tfs0Wbaj8DkstGJkVrO4wP1sWe7Z4v6cUzl2x+jCmZ0NoQ+Kw03kodzrObYydkoI/Ury+fc25CpLrQ7v0TINaGqOZ0V6n3Q/daaJx2oTaO6xhCd8oGFmo/eZAMCrywbcfVMHWNhU9EaDilKQdjsr4IbTkESLSI8f4tp3XJtfkNWgx1EpilkGvRg==; 5:ALJbJsRk4uqzOqVj6BJEwOdgVSG/kZwt4xWmxdwFl05x3bvegfJrjxOz316LFnJKX/eQGkhnzXmcO3Q9qlCUs751f90zngF/x1Us8ZVCQylcy7epNb8j431UPMXTx44wNuHNNFcnvKjZa/nJ0BibU1kOJY+IwDXhl/FEYhzUxzI=; 7:V3KRqWskTWY5clRvPPQNFjv8sRw2n+xTd/Yb2rGOggLNxVje9d/N7zy53NZeVMMPK5QFxIAUG6jYv1Y7Jvh2/LgyQXctiIm+SZfAVyvLzGmFLER92RfLOQccj44GMEXCeUy8EPGvdt0lfs4Y920ieJt+JXRQtZ/j/kHE5YpBFvXtZgVz1wPx8bHYs5ZyDBdE1X3TJPK5Xw7TL/0fXBOFXjJmCvw0mpz+pq58lVZmzCedzPBbXj4SBwefV0TfSk1U
x-ms-exchange-antispam-srfa-diagnostics: SOS;
x-ms-office365-filtering-correlation-id: 4c9d871d-6c6e-486d-f4f0-08d5f6616760
x-ms-office365-filtering-ht: Tenant
x-microsoft-antispam: BCL:0; PCL:0; RULEID:(7020095)(4652040)(8989117)(5600074)(711020)(4618075)(4534165)(4627221)(201703031133081)(201702281549075)(8990107)(2017052603328)(7153060)(7193020); SRVR:BYAPR05MB4501;
x-ms-traffictypediagnostic: BYAPR05MB4501:
x-microsoft-antispam-prvs: <BYAPR05MB4501264F37AD56AEC439AEDAA52F0@BYAPR05MB4501.namprd05.prod.outlook.com>
x-exchange-antispam-report-test: UriScan:(158342451672863)(10436049006162);
x-ms-exchange-senderadcheck: 1
x-exchange-antispam-report-cfa-test: BCL:0; PCL:0; RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(10201501046)(93006095)(93001095)(3231311)(944501410)(52105095)(3002001)(6055026)(149027)(150027)(6041310)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123558120)(20161123564045)(20161123560045)(20161123562045)(6072148)(201708071742011)(7699016); SRVR:BYAPR05MB4501; BCL:0; PCL:0; RULEID:; SRVR:BYAPR05MB4501;
x-forefront-prvs: 0749DC2CE6
x-forefront-antispam-report: SFV:NSPM; SFS:(10019020)(396003)(346002)(39860400002)(376002)(136003)(366004)(189003)(199004)(51444003)(106356001)(68736007)(99286004)(97736004)(81166006)(81156014)(2900100001)(476003)(14454004)(11346002)(5660300001)(7736002)(966005)(446003)(486006)(8936002)(6506007)(6916009)(76176011)(478600001)(54906003)(256004)(66066001)(305945005)(8676002)(6116002)(25786009)(229853002)(3846002)(58126008)(83716003)(316002)(6306002)(5250100002)(33656002)(36756003)(82746002)(575784001)(86362001)(14444005)(4326008)(102836004)(6486002)(105586002)(26005)(2616005)(6512007)(186003)(2906002)(53936002)(6436002)(6246003); DIR:OUT; SFP:1102; SCL:1; SRVR:BYAPR05MB4501; H:BYAPR05MB4230.namprd05.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A:1;
received-spf: None (protection.outlook.com: juniper.net does not designate permitted sender hosts)
x-microsoft-antispam-message-info: /p6TUl0z/teuC/36leFaGSCsywoufd+IgiI2nHMSCqUqA8kku2T1UuMj2OUPu2l1+rPGyYKpqB2dCfQW3qrPjUR8ukfzPG+ha/gtnRsdnHtF5PNh4isqsG8StyCXHtzi7IW+RQ/W+TtEdeiIC5AZg58MRA6FlaYGAZOVii8/NEhCf2mc5NyzoToyAYez0v2Zs1vg3I3+5DwLjGyONa9FTQLAGPL37N1AjBJacsibCGiJNCI/iHJm4EuiA3IdphpfBESw4SO9jbFt9BsynDgdYR+OgbVu3GEwsC/gSypqoJ/McICkCh+wbLxEWqx6yMDWQjzt0J6gw+IbwTYg7ennieHums3OKnUYfrAWz89rBh4=
spamdiagnosticoutput: 1:99
spamdiagnosticmetadata: NSPM
Content-Type: text/plain; charset="utf-8"
Content-ID: <8E0A55507A82514DA4FF68DDF08E19EB@namprd05.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-OriginatorOrg: juniper.net
X-MS-Exchange-CrossTenant-Network-Message-Id: 4c9d871d-6c6e-486d-f4f0-08d5f6616760
X-MS-Exchange-CrossTenant-originalarrivaltime: 30 Jul 2018 21:14:14.7890 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: bea78b3c-4cdb-4130-854a-1d193232e5f4
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR05MB4501
X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:, , definitions=2018-07-30_09:, , 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=1015 lowpriorityscore=0 mlxscore=0 impostorscore=0 mlxlogscore=999 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1806210000 definitions=main-1807300223
Archived-At: <https://mailarchive.ietf.org/arch/msg/netconf/P_wtUkcGqJ9igjpw6ff-_UaqkY8>
Subject: Re: [Netconf] YANG Doctor question: empty mandatory choice?
X-BeenThere: netconf@ietf.org
X-Mailman-Version: 2.1.27
Precedence: list
List-Id: Network Configuration WG mailing list <netconf.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/netconf>, <mailto:netconf-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/netconf/>
List-Post: <mailto:netconf@ietf.org>
List-Help: <mailto:netconf-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/netconf>, <mailto:netconf-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 30 Jul 2018 21:14:22 -0000
Regarding my " the [not mandatory?] 'encoding' leaves comment, I see now that the "encoding" leaf has the following "when" statement: when 'not(../transport) or derived-from(../transport, "sn:configurable-encoding")'; But this doesn't negate the need for the leaf to be mandatory, for those transports deriving from sn:configurable-encoding. Additionally, I note that the "encoding" leaf is an identityref to base type "encoding", from which two identities are derived *in the SN draft* for (encode-xml and encode-json). That these identities are defined in the SN document surprises me, I would've thought that each notif draft would define its own derived "encoding" identity types, if needed. Sure, RESTCONF is special, and other notif drafts can still define their own, but I'd rather see this done for all transports, including RESTCONF. Of course, these points are only relevant if we keep the "encoding" leaf... Kent // contributor ===== original message ===== [removing yang-doctors list, and updating subject line accordingly] >> > Why do all receivers of a subscription have to use the same transport? >> >> This was something that Martin and Eric worked out before we did the first >> Last Call. Eric doesn't seem to know the particular reason, other than >> Martin seems to think it’s easier. > > No; I personally also prefer a design where each receiver has its own > transport + encoding. +1 > The original model had a common "encoding" for > all receivers, and then a receiver-specific transport - I think this > is even worse, Agreed. > and suggested to have transport + encoding defined > together preferrably receiver-specifc or else common for all > receivers. > > If the WG now believes that the transport + encoding should be done > per receiver, this should be fairly easy to change. I also prefer per receiver, and I think that doing so will simplify the model, as neither the mandatory "transport" nor the [not mandatory?] "encoding" leaves have to be specified. In particular, my thoughts are that the "notif" model should provide for the encoding selection, if needed (it's not needed for NETCONF, or COAP I imagine). In the case of RESTCONF, we could update the ietf-restconf-client and ietf-restconf-server models to include an "encodings" leaf-list, to configure the RESTCONF server which encodings it should support. We likely need to do something similar to configure which HTTP versions should be supported. Now, in a general RC server, the server could support both but, if the restconf-notif draft has its own list of restconf-servers (i.e., it uses the "restconf-server-grouping" itself, see my July 19 email for a YANG example), then a constraint could be added limiting the number "supported" to just one. Thus, when the RC server reboots, and connects to the receiver and *automatically* (no client RPC) starts pushing notifications, it can know what encoding to use. I'm still unsure if its legal for an RC server to automatically push notifications without a client-initiated RPC of any sort, and I'm also uncertain if supporting *configured* subscriptions for NC or RC is needed (see my message July 20 email). So, some of this may work itself out as we progress. I know that we're not defining the *configured* notif drafts in this first effort, the we are publishing the SN draft with a configuration model, my only concern now is configuration model presented in the SN draft. Kent // contributor _______________________________________________ Netconf mailing list Netconf@ietf.org https://urldefense.proofpoint.com/v2/url?u=https-3A__www.ietf.org_mailman_listinfo_netconf&d=DwIGaQ&c=HAkYuh63rsuhr6Scbfh0UjBXeMK-ndb3voDTXcWzoCI&r=9zkP0xnJUvZGJ9EPoOH7Yhqn2gsBYaGTvjISlaJdcZo&m=bqquEUx-vl7noz7TkXXktSCMP5kLDcq4vNfdjGgi6R8&s=iTOeSctIdaKeqG28BJIl9yub8ktRUTUPRjRqjIXlgHY&e=
- Re: [Netconf] [yang-doctors] YANG Doctor question… Andy Bierman
- Re: [Netconf] YANG Doctor question: empty mandato… Kent Watsen
- Re: [Netconf] YANG Doctor question: empty mandato… Andy Bierman
- Re: [Netconf] [yang-doctors] YANG Doctor question… Robert Wilton
- Re: [Netconf] [yang-doctors] YANG Doctor question… Andy Bierman
- Re: [Netconf] YANG Doctor question: empty mandato… Eric Voit (evoit)
- Re: [Netconf] [yang-doctors] YANG Doctor question… Robert Wilton
- Re: [Netconf] [yang-doctors] YANG Doctor question… Eric Voit (evoit)
- Re: [Netconf] [yang-doctors] YANG Doctor question… Andy Bierman
- [Netconf] YANG Doctor question: empty mandatory c… Eric Voit (evoit)
- Re: [Netconf] [yang-doctors] YANG Doctor question… Juergen Schoenwaelder
- Re: [Netconf] [yang-doctors] YANG Doctor question… Kent Watsen
- Re: [Netconf] [yang-doctors] YANG Doctor question… Eric Voit (evoit)
- Re: [Netconf] [yang-doctors] YANG Doctor question… Juergen Schoenwaelder
- Re: [Netconf] [yang-doctors] YANG Doctor question… Juergen Schoenwaelder
- Re: [Netconf] [yang-doctors] YANG Doctor question… Robert Wilton
- Re: [Netconf] [yang-doctors] YANG Doctor question… Robert Wilton
- Re: [Netconf] [yang-doctors] YANG Doctor question… Eric Voit (evoit)
- Re: [Netconf] [yang-doctors] YANG Doctor question… Juergen Schoenwaelder
- Re: [Netconf] [yang-doctors] YANG Doctor question… Eric Voit (evoit)
- Re: [Netconf] [yang-doctors] YANG Doctor question… Juergen Schoenwaelder
- Re: [Netconf] [yang-doctors] YANG Doctor question… Eric Voit (evoit)
- Re: [Netconf] [yang-doctors] YANG Doctor question… Eric Voit (evoit)
- Re: [Netconf] [yang-doctors] YANG Doctor question… Andy Bierman
- Re: [Netconf] [yang-doctors] YANG Doctor question… Kent Watsen
- Re: [Netconf] [yang-doctors] YANG Doctor question… Andy Bierman
- Re: [Netconf] [yang-doctors] YANG Doctor question… Eric Voit (evoit)
- Re: [Netconf] [yang-doctors] YANG Doctor question… Martin Bjorklund
- Re: [Netconf] [yang-doctors] YANG Doctor question… Martin Bjorklund
- Re: [Netconf] [yang-doctors] YANG Doctor question… Martin Bjorklund
- Re: [Netconf] [yang-doctors] YANG Doctor question… Eric Voit (evoit)
- Re: [Netconf] [yang-doctors] YANG Doctor question… Kent Watsen
- Re: [Netconf] [yang-doctors] YANG Doctor question… Martin Bjorklund
- Re: [Netconf] [yang-doctors] YANG Doctor question… Martin Bjorklund
- Re: [Netconf] YANG Doctor question: empty mandato… Kent Watsen
- Re: [Netconf] YANG Doctor question: empty mandato… Kent Watsen
- Re: [Netconf] YANG Doctor question: empty mandato… Martin Bjorklund
- Re: [Netconf] [yang-doctors] YANG Doctor question… Juergen Schoenwaelder
- Re: [Netconf] YANG Doctor question: empty mandato… Juergen Schoenwaelder
- Re: [Netconf] YANG Doctor question: empty mandato… Alexander Clemm
- Re: [Netconf] [yang-doctors] YANG Doctor question… Martin Bjorklund
- Re: [Netconf] [yang-doctors] YANG Doctor question… Eric Voit (evoit)
- Re: [Netconf] [yang-doctors] YANG Doctor question… Andy Bierman
- Re: [Netconf] [yang-doctors] YANG Doctor question… Kent Watsen
- Re: [Netconf] [yang-doctors] YANG Doctor question… Andy Bierman
- Re: [Netconf] [yang-doctors] YANG Doctor question… Robert Wilton
- Re: [Netconf] [yang-doctors] YANG Doctor question… Eric Voit (evoit)
- Re: [Netconf] YANG Doctor question: empty mandato… Kent Watsen
- Re: [Netconf] YANG Doctor question: empty mandato… Andy Bierman
- Re: [Netconf] YANG Doctor question: empty mandato… Einar Nilsen-Nygaard (einarnn)
- Re: [Netconf] YANG Doctor question: empty mandato… Einar Nilsen-Nygaard (einarnn)
- Re: [Netconf] YANG Doctor question: empty mandato… Henk Birkholz
- Re: [Netconf] YANG Doctor question: empty mandato… Andy Bierman
- Re: [Netconf] YANG Doctor question: empty mandato… Andy Bierman
- Re: [Netconf] YANG Doctor question: empty mandato… Kent Watsen
- Re: [Netconf] YANG Doctor question: empty mandato… Eric Voit (evoit)
- Re: [Netconf] [yang-doctors] YANG Doctor question… Martin Bjorklund
- Re: [Netconf] YANG Doctor question: empty mandato… Martin Bjorklund
- Re: [Netconf] [yang-doctors] YANG Doctor question… Kent Watsen
- Re: [Netconf] [yang-doctors] YANG Doctor question… Martin Bjorklund
- Re: [Netconf] [yang-doctors] YANG Doctor question… tom petch
- Re: [Netconf] [yang-doctors] YANG Doctor question… Kent Watsen
- Re: [Netconf] [yang-doctors] YANG Doctor question… Kent Watsen
- Re: [Netconf] [yang-doctors] YANG Doctor question… Eric Voit (evoit)
- Re: [Netconf] [yang-doctors] YANG Doctor question… Martin Bjorklund
- Re: [Netconf] [yang-doctors] YANG Doctor question… Kent Watsen
- Re: [Netconf] [yang-doctors] YANG Doctor question… Eric Voit (evoit)
- Re: [Netconf] [yang-doctors] YANG Doctor question… Martin Bjorklund