Return-Path: <rohitrranade@huawei.com>
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 BAD5A124D37;
 Mon,  4 Jun 2018 02:16:17 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.19
X-Spam-Level: 
X-Spam-Status: No, score=-4.19 tagged_above=-999 required=5
 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_MED=-2.3,
 SPF_PASS=-0.001, T_KAM_HTML_FONT_INVALID=0.01]
 autolearn=ham autolearn_force=no
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 KtPYK1zqqisy; Mon,  4 Jun 2018 02:16:14 -0700 (PDT)
Received: from huawei.com (lhrrgout.huawei.com [194.213.3.17])
 (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 51D12124C27;
 Mon,  4 Jun 2018 02:16:14 -0700 (PDT)
Received: from lhreml701-cah.china.huawei.com (unknown [172.18.7.108])
 by Forcepoint Email with ESMTP id 348EE32B98915;
 Mon,  4 Jun 2018 10:16:10 +0100 (IST)
Received: from DGGEML423-HUB.china.huawei.com (10.1.199.40) by
 lhreml701-cah.china.huawei.com (10.201.108.42) with Microsoft SMTP Server
 (TLS) id 14.3.382.0; Mon, 4 Jun 2018 10:16:11 +0100
Received: from DGGEML510-MBX.china.huawei.com ([169.254.2.6]) by
 dggeml423-hub.china.huawei.com ([10.1.199.40]) with mapi id 14.03.0382.000;
 Mon, 4 Jun 2018 17:16:03 +0800
From: Rohit R Ranade <rohitrranade@huawei.com>
To: Robert Wilton <rwilton@cisco.com>, "netconf@ietf.org" <netconf@ietf.org>, 
 "draft-ietf-netconf-nmda-netconf@ietf.org"
 <draft-ietf-netconf-nmda-netconf@ietf.org>
Thread-Topic: [Netconf] Editorial change-2 for draft-ietf-netconf-nmda-netconf
Thread-Index: AdP5cHGIUfFqVxlzSpC0uX7jp7wZ7gAETTEAAJiSBvA=
Date: Mon, 4 Jun 2018 09:16:03 +0000
Message-ID: <991B70D8B4112A4699D5C00DDBBF878A6BBB864E@dggeml510-mbx.china.huawei.com>
References: <991B70D8B4112A4699D5C00DDBBF878A6BBB4569@dggeml510-mbx.china.huawei.com>
 <a497b165-1f78-2d2f-9563-01fbb39619df@cisco.com>
In-Reply-To: <a497b165-1f78-2d2f-9563-01fbb39619df@cisco.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
x-originating-ip: [10.18.150.121]
Content-Type: multipart/alternative;
 boundary="_000_991B70D8B4112A4699D5C00DDBBF878A6BBB864Edggeml510mbxchi_"
MIME-Version: 1.0
X-CFilter-Loop: Reflected
Archived-At: <https://mailarchive.ietf.org/arch/msg/netconf/RorVpB6rbumB4krFdl7TjSKrYyA>
Subject: Re: [Netconf] Editorial change-2 for draft-ietf-netconf-nmda-netconf
X-BeenThere: netconf@ietf.org
X-Mailman-Version: 2.1.22
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, 04 Jun 2018 09:16:18 -0000

--_000_991B70D8B4112A4699D5C00DDBBF878A6BBB864Edggeml510mbxchi_
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

Hi Rob,

I am OK with the changes.
To enhance the understandability of the readers, please check if we can add=
 an example in the draft for using the new filters, similar to the one I ha=
d given in my previous mail.

With Regards,
Rohit R Ranade

From: Robert Wilton [mailto:rwilton@cisco.com]
Sent: 01 June 2018 21:52
To: Rohit R Ranade <rohitrranade@huawei.com>; netconf@ietf.org; draft-ietf-=
netconf-nmda-netconf@ietf.org
Subject: Re: [Netconf] Editorial change-2 for draft-ietf-netconf-nmda-netco=
nf


Hi Rohit, authors,

I think that these are valid clarifications. I've reworded them slightly, a=
nd moved the ancestor node text to the YANG module instead.  I also think t=
hat the ancestor node text generically covers the config filter clarificati=
on that you raised previously.

Hence, I propose the following diff to the NETCONF NMDA draft:
rwilton@rwilton-lnx:~/netconf-wg/netconf-nmda$ git diff --staged
diff --git a/ietf-netconf-nmda.yang b/ietf-netconf-nmda.yang
index f2929b9..72a674a 100644
--- a/ietf-netconf-nmda.yang
+++ b/ietf-netconf-nmda.yang
@@ -105,6 +105,9 @@ module ietf-netconf-nmda {
        by get-data must satisfy all filters, i.e., the filter
        criteria are logically ANDed.

+       Any ancestor nodes (including list keys) of nodes matched by
+       the filter are included in the response.
+
        The 'with-origin' parameter is only valid for an operational
        datastore. If 'with-origin' is used with an invalid datastore,
        then the server MUST return an <rpc-error> element with an
@@ -193,7 +196,7 @@ module ietf-netconf-nmda {
           description
             "Filter based on the 'origin' annotation.  A node matches
              the filter if its 'origin' annotation is not derived
-             from and not equal to all of the given filter values.";
+             from and not equal to any of the given filter values.";
         }
       }

diff --git a/nmda-netconf.org b/nmda-netconf.org
index e44e2c7..100e173 100644
--- a/nmda-netconf.org
+++ b/nmda-netconf.org
@@ -129,14 +129,17 @@ The "config-filter" parameter can be used to retrieve=
 only "config
 true" or "config false" nodes.

 The "origin-filter" parameter, which can be present multiple times,
-selects nodes matching any of the given values. The
-"negated-origin-filter", which can be present multiple times, selects
-nodes that do not match all given values. The "origin-filter"
-and "negated-origin-filter" parameters cannot be used together.
+selects nodes with origins matching, or derived from, any of the given
+values. The "negated-origin-filter", which can be present multiple
+times, selects nodes with origins that do not match, and are not
+derived from, any of the given values. The "origin-filter" and
+"negated-origin-filter" parameters cannot be used together.

 The "max-depth" parameter can be used by the client to limit the
 number of sub-tree levels that are returned in the reply.

Note to the authors, for the negative-origin-filter, I've also changed "all=
" to "any" (which changes the semantics, but I think it was wrong before).

Similar updates will need to also be done to RESTCONF, but let's agree the =
NETCONF text first.

Thanks,
Rob

On 01/06/2018 10:10, Rohit R Ranade wrote:
Hi All,

Section 3.1.1

OLD:
   The "origin-filter" parameter, which can be present multiple times,
   selects nodes matching any of the given values.  The
   "negated-origin-filter", which can be present multiple times, selects
   nodes that do not match all given values.

NEW:
The "origin-filter" parameter, which can be present multiple times,
   selects nodes which are derived from or matching any of the given values=
.  The
   "negated-origin-filter", which can be present multiple times, selects
   nodes which are not derived from and do not match all given values.
When a data-node matching the filter is selected, the configuration ancesto=
rs
(if any) and list key leafs (if any), even if they do not match the filter,=
 are also returned.

Consider two origins such as "learned" and "derived-from-learned".
"derived-from-learned" is derived from learned origin.
Using the origin filters it is not possible to get nodes belonging to "lear=
ned"
only as the nodes of derived origin are automatically selected.

Notes:
The text in 3.1.1 did not include the "derived-from" logic for selection , =
while in the data-model definition it was present.
 We can also add clarification about the ancestor and key being output, eve=
n if though they do match the filter, since the leaf
matches the filter.

Example : We can use the RFC 8342 Appendix C.2 BGP Example

   <rpc message-id=3D"101"
        xmlns=3D"urn:ietf:params:xml:ns:netconf:base:1.0">
     <get-data xmlns=3D"urn:ietf:params:xml:ns:yang:ietf-netconf-nmda"
               xmlns:ds=3D"urn:ietf:params:xml:ns:yang:ietf-datastores">
       <datastore>ds:running</datastore>
       <subtree-filter>
         <bgp xmlns=3D"urn:ietf:params:xml:ns:yang:ietf-netconf-nmda"/>
      </subtree-filter>
       <negated-origin-filter>intended</negated-origin-filter>
       <with-origin>true</with-origin>
     </get-data>
   </rpc>

   <rpc-reply message-id=3D"101"
        xmlns=3D"urn:ietf:params:xml:ns:netconf:base:1.0">
     <data xmlns=3D"urn:ietf:params:xml:ns:yang:ietf-netconf-nmda">
      <bgp xmlns:or=3D"urn:ietf:params:xml:ns:yang:ietf-origin"
          or:origin=3D"or:intended">
       <peer>
         <name>2001:db8::2:3</name>
         <local-as or:origin=3D"or:default">64501</local-as>
         <peer-as or:origin=3D"or:default">64502</peer-as>
         <local-port or:origin=3D"or:system">60794</local-port>
         <remote-port or:origin=3D"or:default">179</remote-port>
         <state>established</state>
       </peer>
      </bgp>
     </data>
   </rpc-reply>

With Regards,
Rohit R Ranade





_______________________________________________

Netconf mailing list

Netconf@ietf.org<mailto:Netconf@ietf.org>

https://www.ietf.org/mailman/listinfo/netconf


--_000_991B70D8B4112A4699D5C00DDBBF878A6BBB864Edggeml510mbxchi_
Content-Type: text/html; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

<html xmlns:v=3D"urn:schemas-microsoft-com:vml" xmlns:o=3D"urn:schemas-micr=
osoft-com:office:office" xmlns:w=3D"urn:schemas-microsoft-com:office:word" =
xmlns:m=3D"http://schemas.microsoft.com/office/2004/12/omml" xmlns=3D"http:=
//www.w3.org/TR/REC-html40">
<head>
<meta http-equiv=3D"Content-Type" content=3D"text/html; charset=3Dus-ascii"=
>
<meta name=3D"Generator" content=3D"Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
	{font-family:SimSun;
	panose-1:2 1 6 0 3 1 1 1 1 1;}
@font-face
	{font-family:"Cambria Math";
	panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
	{font-family:Calibri;
	panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
	{font-family:SimSun;
	panose-1:2 1 6 0 3 1 1 1 1 1;}
@font-face
	{font-family:"Courier New \;color\:black";
	panose-1:0 0 0 0 0 0 0 0 0 0;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
	{margin:0cm;
	margin-bottom:.0001pt;
	text-align:justify;
	text-justify:inter-ideograph;
	font-size:10.5pt;
	font-family:"Calibri",sans-serif;
	color:black;}
a:link, span.MsoHyperlink
	{mso-style-priority:99;
	color:#0563C1;
	text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
	{mso-style-priority:99;
	color:#954F72;
	text-decoration:underline;}
p
	{mso-style-priority:99;
	mso-margin-top-alt:auto;
	margin-right:0cm;
	mso-margin-bottom-alt:auto;
	margin-left:0cm;
	text-align:justify;
	text-justify:inter-ideograph;
	font-size:10.5pt;
	font-family:"Calibri",sans-serif;
	color:black;}
pre
	{mso-style-priority:99;
	mso-style-link:"HTML Preformatted Char";
	margin:0cm;
	margin-bottom:.0001pt;
	text-align:left;
	font-size:10.0pt;
	font-family:"Courier New";
	color:black;}
tt
	{mso-style-priority:99;
	font-family:"Courier New";}
span.EmailStyle19
	{mso-style-type:personal;
	font-family:"Calibri",sans-serif;
	color:windowtext;}
span.HTMLPreformattedChar
	{mso-style-name:"HTML Preformatted Char";
	mso-style-priority:99;
	mso-style-link:"HTML Preformatted";
	font-family:"Courier New";
	color:black;}
span.EmailStyle22
	{mso-style-type:personal-reply;
	font-family:"Calibri",sans-serif;
	color:#1F497D;}
.MsoChpDefault
	{mso-style-type:export-only;
	font-size:10.0pt;}
@page WordSection1
	{size:612.0pt 792.0pt;
	margin:72.0pt 90.0pt 72.0pt 90.0pt;}
div.WordSection1
	{page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext=3D"edit" spidmax=3D"1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext=3D"edit">
<o:idmap v:ext=3D"edit" data=3D"1" />
</o:shapelayout></xml><![endif]-->
</head>
<body bgcolor=3D"white" lang=3D"ZH-CN" link=3D"#0563C1" vlink=3D"#954F72">
<div class=3D"WordSection1">
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"color:#1F497D">Hi Rob,=
<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"color:#1F497D"><o:p>&n=
bsp;</o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"color:#1F497D">I am OK=
 with the changes.
<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"color:#1F497D">To enha=
nce the understandability of the readers, please check if we can add an exa=
mple in the draft for using the new filters, similar to the one I had given=
 in my previous mail.
<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"color:#1F497D"><o:p>&n=
bsp;</o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"color:#1F497D">With Re=
gards,<o:p></o:p></span></p>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"color:#1F497D">Rohit R=
 Ranade<o:p></o:p></span></p>
</div>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"color:#1F497D"><o:p>&n=
bsp;</o:p></span></p>
<div>
<div style=3D"border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0cm =
0cm 0cm">
<p class=3D"MsoNormal" align=3D"left" style=3D"text-align:left"><b><span la=
ng=3D"EN-US" style=3D"font-size:11.0pt;color:windowtext">From:</span></b><s=
pan lang=3D"EN-US" style=3D"font-size:11.0pt;color:windowtext"> Robert Wilt=
on [mailto:rwilton@cisco.com]
<br>
<b>Sent:</b> 01 June 2018 21:52<br>
<b>To:</b> Rohit R Ranade &lt;rohitrranade@huawei.com&gt;; netconf@ietf.org=
; draft-ietf-netconf-nmda-netconf@ietf.org<br>
<b>Subject:</b> Re: [Netconf] Editorial change-2 for draft-ietf-netconf-nmd=
a-netconf<o:p></o:p></span></p>
</div>
</div>
<p class=3D"MsoNormal" align=3D"left" style=3D"text-align:left"><span lang=
=3D"EN-US"><o:p>&nbsp;</o:p></span></p>
<p><span lang=3D"EN-US">Hi Rohit, authors,</span><span lang=3D"EN-US" style=
=3D"font-size:12.0pt"><o:p></o:p></span></p>
<p><span lang=3D"EN-US">I think that these are valid clarifications. I've r=
eworded them slightly, and moved the ancestor node text to the YANG module =
instead.&nbsp; I also think that the ancestor node text generically covers =
the config filter clarification that you
 raised previously.<o:p></o:p></span></p>
<p><span lang=3D"EN-US">Hence, I propose the following diff to the NETCONF =
NMDA draft:<o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"margin-bottom:12.0pt"><tt><span lang=3D"EN-=
US" style=3D"font-size:10.0pt">rwilton@rwilton-lnx:~/netconf-wg/netconf-nmd=
a$ git diff --staged</span></tt><span lang=3D"EN-US" style=3D"font-size:10.=
0pt;font-family:&quot;Courier New&quot;"><br>
<tt>diff --git a/ietf-netconf-nmda.yang b/ietf-netconf-nmda.yang</tt><br>
<tt>index f2929b9..72a674a 100644</tt><br>
<tt>--- a/ietf-netconf-nmda.yang</tt><br>
<tt>&#43;&#43;&#43; b/ietf-netconf-nmda.yang</tt><br>
<tt>@@ -105,6 &#43;105,9 @@ module ietf-netconf-nmda {</tt><br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; by get-data must satisfy all=
 filters, i.e., the filter</tt><br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; criteria are logically ANDed=
.</tt><br>
<tt>&nbsp;</tt><br>
<tt>&#43;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Any ancestor nodes (including=
 list keys) of nodes matched by</tt><br>
<tt>&#43;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; the filter are included in th=
e response.</tt><br>
<tt>&#43;</tt><br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; The 'with-origin' parameter =
is only valid for an operational</tt><br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; datastore. If 'with-origin' =
is used with an invalid datastore,</tt><br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; then the server MUST return =
an &lt;rpc-error&gt; element with an</tt><br>
<tt>@@ -193,7 &#43;196,7 @@ module ietf-netconf-nmda {</tt><br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; descriptio=
n</tt><br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp=
; &quot;Filter based on the 'origin' annotation.&nbsp; A node matches</tt><=
br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp=
;&nbsp; the filter if its 'origin' annotation is not derived</tt><br>
<tt>-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs=
p; from and not equal to all of the given filter values.&quot;;</tt><br>
<tt>&#43;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=
&nbsp; from and not equal to any of the given filter values.&quot;;</tt><br=
>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }</tt><br>
<tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }</tt><br>
<tt>&nbsp;</tt><br>
<tt>diff --git a/nmda-netconf.org b/nmda-netconf.org</tt><br>
<tt>index e44e2c7..100e173 100644</tt><br>
<tt>--- a/nmda-netconf.org</tt><br>
<tt>&#43;&#43;&#43; b/nmda-netconf.org</tt><br>
<tt>@@ -129,14 &#43;129,17 @@ The &quot;config-filter&quot; parameter can b=
e used to retrieve only &quot;config</tt><br>
<tt>&nbsp;true&quot; or &quot;config false&quot; nodes.</tt><br>
<tt>&nbsp;</tt><br>
<tt>&nbsp;The &quot;origin-filter&quot; parameter, which can be present mul=
tiple times,</tt><br>
<tt>-selects nodes matching any of the given values. The</tt><br>
<tt>-&quot;negated-origin-filter&quot;, which can be present multiple times=
, selects</tt><br>
<tt>-nodes that do not match all given values. The &quot;origin-filter&quot=
;</tt><br>
<tt>-and &quot;negated-origin-filter&quot; parameters cannot be used togeth=
er.</tt><br>
<tt>&#43;selects nodes with origins matching, or derived from, any of the g=
iven</tt><br>
<tt>&#43;values. The &quot;negated-origin-filter&quot;, which can be presen=
t multiple</tt><br>
<tt>&#43;times, selects nodes with origins that do not match, and are not</=
tt><br>
<tt>&#43;derived from, any of the given values. The &quot;origin-filter&quo=
t; and</tt><br>
<tt>&#43;&quot;negated-origin-filter&quot; parameters cannot be used togeth=
er.</tt><br>
<tt>&nbsp;</tt><br>
<tt>&nbsp;The &quot;max-depth&quot; parameter can be used by the client to =
limit the</tt><br>
<tt>&nbsp;number of sub-tree levels that are returned in the reply.</tt></s=
pan><span lang=3D"EN-US"><o:p></o:p></span></p>
<p><span lang=3D"EN-US">Note to the authors, for the negative-origin-filter=
, I've also changed &quot;all&quot; to &quot;any&quot; (which changes the s=
emantics, but I think it was wrong before).<o:p></o:p></span></p>
<p><span lang=3D"EN-US">Similar updates will need to also be done to RESTCO=
NF, but let's agree the NETCONF text first.<o:p></o:p></span></p>
<p><span lang=3D"EN-US">Thanks,<br>
Rob<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US"><o:p>&nbsp;</o:p></span></p>
<div>
<p class=3D"MsoNormal"><span lang=3D"EN-US">On 01/06/2018 10:10, Rohit R Ra=
nade wrote:<o:p></o:p></span></p>
</div>
<blockquote style=3D"margin-top:5.0pt;margin-bottom:5.0pt">
<p class=3D"MsoNormal"><span lang=3D"EN-US">Hi All,<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">&nbsp;<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">Section 3.1.1<o:p></o:p></span>=
</p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">&nbsp;<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">OLD:<o:p></o:p></span></p>
<p class=3D"MsoNormal" align=3D"left" style=3D"text-align:left;text-autospa=
ce:none"><span lang=3D"EN-US" style=3D"font-size:10.0pt;font-family:&quot;C=
ourier New ;color:black&quot;,serif">&nbsp;&nbsp; The &quot;origin-filter&q=
uot; parameter, which can be present multiple times,</span><span lang=3D"EN=
-US"><o:p></o:p></span></p>
<p class=3D"MsoNormal" align=3D"left" style=3D"text-align:left;text-autospa=
ce:none"><span lang=3D"EN-US" style=3D"font-size:10.0pt;font-family:&quot;C=
ourier New ;color:black&quot;,serif">&nbsp;&nbsp; selects nodes matching an=
y of the given values.&nbsp; The</span><span lang=3D"EN-US"><o:p></o:p></sp=
an></p>
<p class=3D"MsoNormal" align=3D"left" style=3D"text-align:left;text-autospa=
ce:none"><span lang=3D"EN-US" style=3D"font-size:10.0pt;font-family:&quot;C=
ourier New ;color:black&quot;,serif">&nbsp;&nbsp; &quot;negated-origin-filt=
er&quot;, which can be present multiple times, selects</span><span lang=3D"=
EN-US"><o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:10.0pt;font-=
family:&quot;Courier New ;color:black&quot;,serif">&nbsp;&nbsp; nodes that =
do not match all given values.</span><span lang=3D"EN-US"><o:p></o:p></span=
></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">&nbsp;<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">NEW:<o:p></o:p></span></p>
<p class=3D"MsoNormal" align=3D"left" style=3D"text-align:left;text-indent:=
15.0pt;text-autospace:none">
<span lang=3D"EN-US" style=3D"font-size:10.0pt;font-family:&quot;Courier Ne=
w ;color:black&quot;,serif">The &quot;origin-filter&quot; parameter, which =
can be present multiple times,</span><span lang=3D"EN-US"><o:p></o:p></span=
></p>
<p class=3D"MsoNormal" align=3D"left" style=3D"text-align:left;text-autospa=
ce:none"><span lang=3D"EN-US" style=3D"font-size:10.0pt;font-family:&quot;C=
ourier New ;color:black&quot;,serif">&nbsp;&nbsp; selects nodes which are d=
erived from or matching any of the given values.&nbsp; The</span><span lang=
=3D"EN-US"><o:p></o:p></span></p>
<p class=3D"MsoNormal" align=3D"left" style=3D"text-align:left;text-autospa=
ce:none"><span lang=3D"EN-US" style=3D"font-size:10.0pt;font-family:&quot;C=
ourier New ;color:black&quot;,serif">&nbsp;&nbsp; &quot;negated-origin-filt=
er&quot;, which can be present multiple times, selects</span><span lang=3D"=
EN-US"><o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:10.0pt;font-=
family:&quot;Courier New ;color:black&quot;,serif">&nbsp;&nbsp; nodes which=
 are not derived from and do not match all given values.</span><span lang=
=3D"EN-US"><o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-indent:10.0pt"><span lang=3D"EN-US" st=
yle=3D"font-size:10.0pt;font-family:&quot;Courier New ;color:black&quot;,se=
rif">When a data-node matching the filter is selected, the configuration an=
cestors
</span><span lang=3D"EN-US"><o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-indent:10.0pt"><span lang=3D"EN-US" st=
yle=3D"font-size:10.0pt;font-family:&quot;Courier New ;color:black&quot;,se=
rif">(if any) and list key leafs (if any), even if they do not match the fi=
lter, are also returned.</span><span lang=3D"EN-US"><o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:10.0pt;font-=
family:&quot;Courier New ;color:black&quot;,serif">&nbsp;</span><span lang=
=3D"EN-US"><o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-indent:10.0pt"><span lang=3D"EN-US" st=
yle=3D"font-size:10.0pt;font-family:&quot;Courier New ;color:black&quot;,se=
rif">Consider two origins such as &#8220;learned&#8221; and &#8220;derived-=
from-learned&#8221;.
</span><span lang=3D"EN-US"><o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-indent:10.0pt"><span lang=3D"EN-US" st=
yle=3D"font-size:10.0pt;font-family:&quot;Courier New ;color:black&quot;,se=
rif">&#8220;derived-from-learned&#8221; is derived from learned origin.
</span><span lang=3D"EN-US"><o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-indent:10.0pt"><span lang=3D"EN-US" st=
yle=3D"font-size:10.0pt;font-family:&quot;Courier New ;color:black&quot;,se=
rif">Using the origin filters it is not possible to get nodes belonging to =
&#8220;learned&#8221;</span><span lang=3D"EN-US"><o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-indent:10.0pt"><span lang=3D"EN-US" st=
yle=3D"font-size:10.0pt;font-family:&quot;Courier New ;color:black&quot;,se=
rif">only as the nodes of derived origin are automatically selected.
</span><span lang=3D"EN-US"><o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">&nbsp;<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">Notes:<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">The text in 3.1.1 did not inclu=
de the &#8220;derived-from&#8221; logic for selection , while in the data-m=
odel definition it was present.
<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">&nbsp;We can also add clarifica=
tion about the ancestor and key being output, even if though they do match =
the filter, since the leaf
<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">matches the filter.<o:p></o:p><=
/span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">&nbsp;<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">Example : We can use the RFC 83=
42 Appendix C.2 BGP Example<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">&nbsp;<o:p></o:p></span></p>
<p class=3D"MsoNormal" align=3D"left" style=3D"text-align:left;text-autospa=
ce:none"><span lang=3D"EN-US" style=3D"font-size:10.0pt;font-family:&quot;C=
ourier New ;color:black&quot;,serif">&nbsp;&nbsp; &lt;rpc message-id=3D&quo=
t;101&quot;</span><span lang=3D"EN-US"><o:p></o:p></span></p>
<p class=3D"MsoNormal" align=3D"left" style=3D"text-align:left;text-autospa=
ce:none"><span lang=3D"EN-US" style=3D"font-size:10.0pt;font-family:&quot;C=
ourier New ;color:black&quot;,serif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&n=
bsp; xmlns=3D&quot;urn:ietf:params:<a href=3D"xml:ns:netconf:base:1.0">xml:=
ns:netconf:base:1.0</a>&quot;&gt;</span><span lang=3D"EN-US"><o:p></o:p></s=
pan></p>
<p class=3D"MsoNormal" align=3D"left" style=3D"text-align:left;text-autospa=
ce:none"><span lang=3D"EN-US" style=3D"font-size:10.0pt;font-family:&quot;C=
ourier New ;color:black&quot;,serif">&nbsp;&nbsp;&nbsp;&nbsp; &lt;get-data =
xmlns=3D&quot;urn:ietf:params:<a href=3D"xml:ns:yang:ietf-netconf-nmda">xml=
:ns:yang:ietf-netconf-nmda</a>&quot;</span><span lang=3D"EN-US"><o:p></o:p>=
</span></p>
<p class=3D"MsoNormal" align=3D"left" style=3D"text-align:left;text-autospa=
ce:none"><span lang=3D"EN-US" style=3D"font-size:10.0pt;font-family:&quot;C=
ourier New ;color:black&quot;,serif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&n=
bsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; xmlns:ds=3D&quot;urn:ietf:pa=
rams:<a href=3D"xml:ns:yang:ietf-datastores">xml:ns:yang:ietf-datastores</a=
>&quot;&gt;</span><span lang=3D"EN-US"><o:p></o:p></span></p>
<p class=3D"MsoNormal" align=3D"left" style=3D"text-align:left;text-autospa=
ce:none"><span lang=3D"EN-US" style=3D"font-size:10.0pt;font-family:&quot;C=
ourier New ;color:black&quot;,serif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &=
lt;datastore&gt;ds:running&lt;/datastore&gt;</span><span lang=3D"EN-US"><o:=
p></o:p></span></p>
<p class=3D"MsoNormal" align=3D"left" style=3D"text-align:left;text-autospa=
ce:none"><span lang=3D"EN-US" style=3D"font-size:10.0pt;font-family:&quot;C=
ourier New ;color:black&quot;,serif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &=
lt;subtree-filter&gt;</span><span lang=3D"EN-US"><o:p></o:p></span></p>
<p class=3D"MsoNormal" align=3D"left" style=3D"text-align:left;text-autospa=
ce:none"><span lang=3D"EN-US" style=3D"font-size:10.0pt;font-family:&quot;C=
ourier New ;color:black&quot;,serif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&n=
bsp;&nbsp; &lt;bgp xmlns=3D&quot;urn:ietf:params:<a href=3D"xml:ns:yang:iet=
f-netconf-nmda">xml:ns:yang:ietf-netconf-nmda</a>&quot;/&gt;</span><span la=
ng=3D"EN-US"><o:p></o:p></span></p>
<p class=3D"MsoNormal" align=3D"left" style=3D"text-align:left;text-autospa=
ce:none"><span lang=3D"EN-US" style=3D"font-size:10.0pt;font-family:&quot;C=
ourier New ;color:black&quot;,serif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&l=
t;/subtree-filter&gt;</span><span lang=3D"EN-US"><o:p></o:p></span></p>
<p class=3D"MsoNormal" align=3D"left" style=3D"text-align:left;text-autospa=
ce:none"><span lang=3D"EN-US" style=3D"font-size:10.0pt;font-family:&quot;C=
ourier New ;color:black&quot;,serif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &=
lt;negated-origin-filter&gt;intended&lt;/negated-origin-filter&gt;</span><s=
pan lang=3D"EN-US"><o:p></o:p></span></p>
<p class=3D"MsoNormal" align=3D"left" style=3D"text-align:left;text-autospa=
ce:none"><span lang=3D"EN-US" style=3D"font-size:10.0pt;font-family:&quot;C=
ourier New ;color:black&quot;,serif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &=
lt;with-origin&gt;true&lt;/with-origin&gt;</span><span lang=3D"EN-US"><o:p>=
</o:p></span></p>
<p class=3D"MsoNormal" align=3D"left" style=3D"text-align:left;text-autospa=
ce:none"><span lang=3D"EN-US" style=3D"font-size:10.0pt;font-family:&quot;C=
ourier New ;color:black&quot;,serif">&nbsp;&nbsp;&nbsp;&nbsp; &lt;/get-data=
&gt;</span><span lang=3D"EN-US"><o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:10.0pt;font-=
family:&quot;Courier New ;color:black&quot;,serif">&nbsp;&nbsp; &lt;/rpc&gt=
;</span><span lang=3D"EN-US"><o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:10.0pt;font-=
family:&quot;Courier New ;color:black&quot;,serif">&nbsp;</span><span lang=
=3D"EN-US"><o:p></o:p></span></p>
<p class=3D"MsoNormal" align=3D"left" style=3D"text-align:left;text-autospa=
ce:none"><span lang=3D"EN-US" style=3D"font-size:10.0pt;font-family:&quot;C=
ourier New ;color:black&quot;,serif">&nbsp;&nbsp; &lt;rpc-reply message-id=
=3D&quot;101&quot;</span><span lang=3D"EN-US"><o:p></o:p></span></p>
<p class=3D"MsoNormal" align=3D"left" style=3D"text-align:left;text-autospa=
ce:none"><span lang=3D"EN-US" style=3D"font-size:10.0pt;font-family:&quot;C=
ourier New ;color:black&quot;,serif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&n=
bsp; xmlns=3D&quot;urn:ietf:params:<a href=3D"xml:ns:netconf:base:1.0">xml:=
ns:netconf:base:1.0</a>&quot;&gt;</span><span lang=3D"EN-US"><o:p></o:p></s=
pan></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:10.0pt;font-=
family:&quot;Courier New ;color:black&quot;,serif">&nbsp;&nbsp;&nbsp;&nbsp;=
 &lt;data xmlns=3D&quot;urn:ietf:params:<a href=3D"xml:ns:yang:ietf-netconf=
-nmda">xml:ns:yang:ietf-netconf-nmda</a>&quot;&gt;</span><span lang=3D"EN-U=
S"><o:p></o:p></span></p>
<p class=3D"MsoNormal" align=3D"left" style=3D"text-align:left;text-autospa=
ce:none"><span lang=3D"EN-US" style=3D"font-size:10.0pt;font-family:&quot;C=
ourier New ;color:black&quot;,serif">&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&lt;bgp=
 xmlns:or=3D&quot;urn:ietf:params:<a href=3D"xml:ns:yang:ietf-origin">xml:n=
s:yang:ietf-origin</a>&quot;</span><span lang=3D"EN-US"><o:p></o:p></span><=
/p>
<p class=3D"MsoNormal" align=3D"left" style=3D"text-align:left;text-autospa=
ce:none"><span lang=3D"EN-US" style=3D"font-size:10.0pt;font-family:&quot;C=
ourier New ;color:black&quot;,serif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&n=
bsp;&nbsp;&nbsp; or:origin=3D&quot;or:intended&quot;&gt;</span><span lang=
=3D"EN-US"><o:p></o:p></span></p>
<p class=3D"MsoNormal" align=3D"left" style=3D"text-align:left;text-autospa=
ce:none"><span lang=3D"EN-US" style=3D"font-size:10.0pt;font-family:&quot;C=
ourier New ;color:black&quot;,serif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &=
lt;peer&gt;</span><span lang=3D"EN-US"><o:p></o:p></span></p>
<p class=3D"MsoNormal" align=3D"left" style=3D"text-align:left;text-autospa=
ce:none"><span lang=3D"EN-US" style=3D"font-size:10.0pt;font-family:&quot;C=
ourier New ;color:black&quot;,serif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&n=
bsp;&nbsp; &lt;name&gt;2001:db8::2:3&lt;/name&gt;</span><span lang=3D"EN-US=
"><o:p></o:p></span></p>
<p class=3D"MsoNormal" align=3D"left" style=3D"text-align:left;text-autospa=
ce:none"><span lang=3D"EN-US" style=3D"font-size:10.0pt;font-family:&quot;C=
ourier New ;color:black&quot;,serif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&n=
bsp;&nbsp; &lt;local-as or:origin=3D&quot;or:default&quot;&gt;64501&lt;/loc=
al-as&gt;</span><span lang=3D"EN-US"><o:p></o:p></span></p>
<p class=3D"MsoNormal" align=3D"left" style=3D"text-align:left;text-autospa=
ce:none"><span lang=3D"EN-US" style=3D"font-size:10.0pt;font-family:&quot;C=
ourier New ;color:black&quot;,serif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&n=
bsp;&nbsp; &lt;peer-as or:origin=3D&quot;or:default&quot;&gt;64502&lt;/peer=
-as&gt;</span><span lang=3D"EN-US"><o:p></o:p></span></p>
<p class=3D"MsoNormal" align=3D"left" style=3D"text-align:left;text-autospa=
ce:none"><span lang=3D"EN-US" style=3D"font-size:10.0pt;font-family:&quot;C=
ourier New ;color:black&quot;,serif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&n=
bsp;&nbsp; &lt;local-port or:origin=3D&quot;or:system&quot;&gt;60794&lt;/lo=
cal-port&gt;</span><span lang=3D"EN-US"><o:p></o:p></span></p>
<p class=3D"MsoNormal" align=3D"left" style=3D"text-align:left;text-autospa=
ce:none"><span lang=3D"EN-US" style=3D"font-size:10.0pt;font-family:&quot;C=
ourier New ;color:black&quot;,serif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&n=
bsp;&nbsp; &lt;remote-port or:origin=3D&quot;or:default&quot;&gt;179&lt;/re=
mote-port&gt;</span><span lang=3D"EN-US"><o:p></o:p></span></p>
<p class=3D"MsoNormal" align=3D"left" style=3D"text-align:left;text-autospa=
ce:none"><span lang=3D"EN-US" style=3D"font-size:10.0pt;font-family:&quot;C=
ourier New ;color:black&quot;,serif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&n=
bsp;&nbsp; &lt;state&gt;established&lt;/state&gt;</span><span lang=3D"EN-US=
"><o:p></o:p></span></p>
<p class=3D"MsoNormal" align=3D"left" style=3D"text-align:left;text-autospa=
ce:none"><span lang=3D"EN-US" style=3D"font-size:10.0pt;font-family:&quot;C=
ourier New ;color:black&quot;,serif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &=
lt;/peer&gt;</span><span lang=3D"EN-US"><o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:10.0pt;font-=
family:&quot;Courier New ;color:black&quot;,serif">&nbsp;&nbsp;&nbsp;&nbsp;=
 &nbsp;&lt;/bgp&gt;</span><span lang=3D"EN-US"><o:p></o:p></span></p>
<p class=3D"MsoNormal" align=3D"left" style=3D"text-align:left;text-autospa=
ce:none"><span lang=3D"EN-US" style=3D"font-size:10.0pt;font-family:&quot;C=
ourier New ;color:black&quot;,serif">&nbsp;&nbsp;&nbsp;&nbsp; &lt;/data&gt;=
</span><span lang=3D"EN-US"><o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:10.0pt;font-=
family:&quot;Courier New ;color:black&quot;,serif">&nbsp;&nbsp; &lt;/rpc-re=
ply&gt;</span><span lang=3D"EN-US"><o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">&nbsp;<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">With Regards,<o:p></o:p></span>=
</p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">Rohit R Ranade<o:p></o:p></span=
></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">&nbsp;<o:p></o:p></span></p>
<p class=3D"MsoNormal" align=3D"left" style=3D"text-align:left"><span lang=
=3D"EN-US" style=3D"font-size:12.0pt;font-family:&quot;Times New Roman&quot=
;,serif"><br>
<br>
<br>
<o:p></o:p></span></p>
<pre><span lang=3D"EN-US">_______________________________________________<o=
:p></o:p></span></pre>
<pre><span lang=3D"EN-US">Netconf mailing list<o:p></o:p></span></pre>
<pre><span lang=3D"EN-US"><a href=3D"mailto:Netconf@ietf.org">Netconf@ietf.=
org</a><o:p></o:p></span></pre>
<pre><span lang=3D"EN-US"><a href=3D"https://www.ietf.org/mailman/listinfo/=
netconf">https://www.ietf.org/mailman/listinfo/netconf</a><o:p></o:p></span=
></pre>
</blockquote>
<p class=3D"MsoNormal" align=3D"left" style=3D"text-align:left"><span lang=
=3D"EN-US" style=3D"font-size:12.0pt;font-family:&quot;Times New Roman&quot=
;,serif"><o:p>&nbsp;</o:p></span></p>
</div>
</body>
</html>

--_000_991B70D8B4112A4699D5C00DDBBF878A6BBB864Edggeml510mbxchi_--

