[netconf] YANG Push patch messages

Michal Vasko <mvasko@cesnet.cz> Fri, 08 November 2024 07:49 UTC

Return-Path: <mvasko@cesnet.cz>
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 6A285C1D620E for <netconf@ietfa.amsl.com>; Thu, 7 Nov 2024 23:49:18 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.105
X-Spam-Level:
X-Spam-Status: No, score=-2.105 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_BLOCKED=0.001, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01, URIBL_DBL_BLOCKED_OPENDNS=0.001, URIBL_ZEN_BLOCKED_OPENDNS=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=cesnet.cz
Received: from mail.ietf.org ([50.223.129.194]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id CRZ58g4CKtVQ for <netconf@ietfa.amsl.com>; Thu, 7 Nov 2024 23:49:14 -0800 (PST)
Received: from office2.cesnet.cz (office2.cesnet.cz [IPv6:2001:718:ff05:10b::237]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-256) server-digest SHA256) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id DAE2AC1D5C7A for <netconf@ietf.org>; Thu, 7 Nov 2024 23:49:12 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cesnet.cz; s=office2-2020; t=1731052149; bh=TfNn30s8K1t9Lv6WtrNtw0HnE59yts1weJ5TApZJQeg=; h=Date:To:From:Subject; b=CkRgg2+BIRJGHmVFALpggr6E+myRInBYfvQvmfma4lUiwG3EG3Mhlt/ppJ/fCYOM2 klLtJU00TBXa4SfSqNwTyg1Z7GNBjxFXQ9nt/0wh/ZMqj368lGCfFECmZ9rxSWYBJG FcjzGVTovnDxwEmjx1t+qWsgrgFAHFtuPuY/Mb7H7fziqLRBU/7HNesskAhIOZMrXN WbbPSqi/0TJTcrlZYnDpHZ3FBKXjrRmF50aGrI4xL4+/BedAVnF9ORec5BXVxAdzq5 oRH8oD3Zdj7/NlGl9Cqs+uQ+3Ojh9Zi/M3N5eWPloiFvHzUudtUZrdfFLOrWL1EEFx 6MK5Rnk1brUmA==
Received: from [IPV6:2001:718:812:27::3e5] (unknown [IPv6:2001:718:812:27::3e5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by office2.cesnet.cz (Postfix) with ESMTPSA id 2ABBA1180078 for <netconf@ietf.org>; Fri, 8 Nov 2024 08:49:09 +0100 (CET)
Message-ID: <3457d267-092c-45cc-9470-46e56cb8344d@cesnet.cz>
Date: Fri, 08 Nov 2024 08:49:08 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Content-Language: en-US
To: netconf <netconf@ietf.org>
From: Michal Vasko <mvasko@cesnet.cz>
Content-Type: multipart/signed; protocol="application/pkcs7-signature"; micalg="sha-256"; boundary="------------ms010505050904030703010906"
Message-ID-Hash: N6ME3I2VT6FR5YDYDPQURMIWUDSSMYTA
X-Message-ID-Hash: N6ME3I2VT6FR5YDYDPQURMIWUDSSMYTA
X-MailFrom: mvasko@cesnet.cz
X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; header-match-netconf.ietf.org-0; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header
X-Mailman-Version: 3.3.9rc6
Precedence: list
Subject: [netconf] YANG Push patch messages
List-Id: NETCONF WG list <netconf.ietf.org>
Archived-At: <https://mailarchive.ietf.org/arch/msg/netconf/W7k59qKLqNtvuyHHQ9y2aq-UqRU>
List-Archive: <https://mailarchive.ietf.org/arch/browse/netconf>
List-Help: <mailto:netconf-request@ietf.org?subject=help>
List-Owner: <mailto:netconf-owner@ietf.org>
List-Post: <mailto:netconf@ietf.org>
List-Subscribe: <mailto:netconf-join@ietf.org>
List-Unsubscribe: <mailto:netconf-leave@ietf.org>

Hi,

I wanted to clarify how exactly should the YANG Patch messages look like 
when sending YANG Push on-change notifications. Specifically, it is not 
clear whether nested changes should be reported. Example:

YANG:
list l {
   key "k";
   leaf k {
     type string;
   }
   leaf x {
     type string;
   }
}

Data:
<l>
   <k>key</k>
   <x>value</x>
</l>

1) An instance of `l` with `x` is created. The patch can then report a 
single creation of `l` or a creation of `l` and `x`. Since the YANG 
Patch includes a value <https://www.rfc-editor.org/rfc/rfc8072#page-19> 
node, I assume it should be the former and only a single change reported 
because all the descendants are included in the `value` node.

2) An instance of `l` with `x` is deleted. Here it is a bit more tricky 
because deletions cannot include the `value` node because of its when 
condition. So, should all the nested deletions be reported individually 
or report only the parent change? Only a single deletion would be used 
for a similar RESTCONF edit but in this case the information about any 
deleted descendants would be lost, is that intentional or should the 
nested changes be also reported?

Regards,
Michal