Re: [netmod] xpath for must statements

"Acee Lindem (acee)" <acee@cisco.com> Wed, 08 August 2018 11:28 UTC

Return-Path: <acee@cisco.com>
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 ECA21128C65 for <netmod@ietfa.amsl.com>; Wed, 8 Aug 2018 04:28:22 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -14.511
X-Spam-Level:
X-Spam-Status: No, score=-14.511 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, SPF_PASS=-0.001, T_DKIMWL_WL_HIGH=-0.01, USER_IN_DEF_DKIM_WL=-7.5] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=cisco.com
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 SjQt88oveIMb for <netmod@ietfa.amsl.com>; Wed, 8 Aug 2018 04:28:21 -0700 (PDT)
Received: from rcdn-iport-8.cisco.com (rcdn-iport-8.cisco.com [173.37.86.79]) (using TLSv1.2 with cipher DHE-RSA-SEED-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 31400128B14 for <netmod@ietf.org>; Wed, 8 Aug 2018 04:28:21 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=@cisco.com; l=1266; q=dns/txt; s=iport; t=1533727701; x=1534937301; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-id:content-transfer-encoding: mime-version; bh=rmUFcEhtHJBszK9g1hFvyLFrLVr4TkccRggbFq/F2a4=; b=QsBVMHPXZULhk3SERvLiBiWWUaBIaOvOAK176EDv7LcMzviOUgJ7nIZ/ qIgu8yUdC18eglUffCkXm1VoHARpeYyleJr7xFs/1iqc7oZ4QQvPyGskr gjeMIlIDuznn7fY+Kc/NBuzWJQgCBfF8kXRKML2Pmnff2zQZh6gwwXm49 A=;
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: A0BjAQCC0mpb/5JdJa1cGgEBAQEBAgEBAQEIAQEBAYNOgWIoCoN0iAqMRoFoJYM8kjWBeguEbAIXgnchNBgBAgEBAgEBAm0ohTcBAQEBAgEjEUUQAgEIDgoCAiYCAgIwFRACBA4FgyCBeQiqZ4EuhGaFcoELiAkXggCBOQwTgkyDGwSEYDGCJAKaRQkCj0eOLJJOAhEUgSQdOIFScBVlAYI+kFNvAY0ggRsBAQ
X-IronPort-AV: E=Sophos;i="5.51,457,1526342400"; d="scan'208";a="433217575"
Received: from rcdn-core-10.cisco.com ([173.37.93.146]) by rcdn-iport-8.cisco.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 08 Aug 2018 11:28:20 +0000
Received: from XCH-RTP-012.cisco.com (xch-rtp-012.cisco.com [64.101.220.152]) by rcdn-core-10.cisco.com (8.15.2/8.15.2) with ESMTPS id w78BSJ3U016081 (version=TLSv1.2 cipher=AES256-SHA bits=256 verify=FAIL); Wed, 8 Aug 2018 11:28:20 GMT
Received: from xch-rtp-015.cisco.com (64.101.220.155) by XCH-RTP-012.cisco.com (64.101.220.152) with Microsoft SMTP Server (TLS) id 15.0.1320.4; Wed, 8 Aug 2018 07:28:19 -0400
Received: from xch-rtp-015.cisco.com ([64.101.220.155]) by XCH-RTP-015.cisco.com ([64.101.220.155]) with mapi id 15.00.1320.000; Wed, 8 Aug 2018 07:28:19 -0400
From: "Acee Lindem (acee)" <acee@cisco.com>
To: Martin Bjorklund <mbj@tail-f.com>
CC: "netmod@ietf.org" <netmod@ietf.org>
Thread-Topic: [netmod] xpath for must statements
Thread-Index: AQHULpoKt9x7V9xDM0K8KDBrtthF9aS1vKmA///78QA=
Date: Wed, 08 Aug 2018 11:28:19 +0000
Message-ID: <6BAF8353-6863-4B26-AB65-88CFBFC85E77@cisco.com>
References: <3FBE6E06-3C42-4CFE-9A4C-FAC55572901C@cisco.com> <20180808.094249.655098716605272274.mbj@tail-f.com>
In-Reply-To: <20180808.094249.655098716605272274.mbj@tail-f.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-ms-exchange-messagesentrepresentingtype: 1
x-ms-exchange-transport-fromentityheader: Hosted
x-originating-ip: [10.116.152.201]
Content-Type: text/plain; charset="utf-8"
Content-ID: <D3E1EE0158DCFF4A994D27628A9F9F8C@emea.cisco.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-Outbound-SMTP-Client: 64.101.220.152, xch-rtp-012.cisco.com
X-Outbound-Node: rcdn-core-10.cisco.com
Archived-At: <https://mailarchive.ietf.org/arch/msg/netmod/j8r_YCBRvmeFZ_SWPhV_opQOFyI>
Subject: Re: [netmod] xpath for must statements
X-BeenThere: netmod@ietf.org
X-Mailman-Version: 2.1.27
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: Wed, 08 Aug 2018 11:28:23 -0000

Thanks Martin - see inline. 

On 8/8/18, 3:43 AM, "Martin Bjorklund" <mbj@tail-f.com> wrote:

    Hi,
    
    "Acee Lindem \(acee\)" <acee=40cisco.com@dmarc.ietf.org> wrote:
    > Is it possible to indicate that choice statement must be specified
    > in a YANG 1.1 “must” clause w/o specifying every case?
    
    Do you mean that you to ensure that a case is always configured?  If
    so, mark the choice as "mandatory true".  It can't be done with an
    XPath expression.

It's not that easy since at the least the choice or another leaf must be specified. I found that the choice and case identifiers are not part of the Xpath. Even after rereading some sections of RFC7950, this wasn't intuitive.

Thanks,
Acee 
    
    
    /martin
    
    
    
    > Similarly, it is there a way specify that a container cannot be empty in “must” clause?
    > Thanks,
    > Acee