Return-Path: <pathori@gmail.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 47F9112EBD1
 for <netconf@ietfa.amsl.com>; Tue, 29 May 2018 12:59:58 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.998
X-Spam-Level: 
X-Spam-Status: No, score=-1.998 tagged_above=-999 required=5
 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1,
 DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001,
 RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001]
 autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key)
 header.d=gmail.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 OUhQ7mAtzFS5 for <netconf@ietfa.amsl.com>;
 Tue, 29 May 2018 12:59:54 -0700 (PDT)
Received: from mail-ot0-x230.google.com (mail-ot0-x230.google.com
 [IPv6:2607:f8b0:4003:c0f::230])
 (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits))
 (No client certificate requested)
 by ietfa.amsl.com (Postfix) with ESMTPS id B5BCA12EB92
 for <netconf@ietf.org>; Tue, 29 May 2018 12:59:54 -0700 (PDT)
Received: by mail-ot0-x230.google.com with SMTP id g7-v6so18414198otj.11
 for <netconf@ietf.org>; Tue, 29 May 2018 12:59:54 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; 
 h=mime-version:in-reply-to:references:from:date:message-id:subject:to; 
 bh=DaDe8njUMNVGZx9hKmvX8oT3dGEZNzV7FZ/Pg4h1EYI=;
 b=R9XTqErt4qY14/iGPIihBkT0RX8IkO4sb5z17DRTjuNap09YxoNtK1yezIAVOrrOmx
 x91UKR0WfbabkGbUea7OsogEIH4zcG2ol0qbifkHdfYBXOVj6e9Z++6/asYPeIKhsqiu
 jVKxE4KLKuE7agRduYKH7ztJQcJrAFxp7aoZLaNMlVw60DCGrjJtpfDy7P5MtfYzp6yw
 VYwgFDlr3j4w4fh/HUbq6hSpN+5jTHuFjs9vo8zIutM6pwO0UICffrRfYajD1UNUnGX/
 1E5GSKDu6mCCzDbLH1cnR4Y7US1w0vTyTJ1R1tSIRlOb9+kPvojy7sgkJShZ6Ol5gvsL
 Q4/w==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:mime-version:in-reply-to:references:from:date
 :message-id:subject:to;
 bh=DaDe8njUMNVGZx9hKmvX8oT3dGEZNzV7FZ/Pg4h1EYI=;
 b=RtnFOvSWLMa/HIp0ev6T3AUvBHZ215Bd9opU/qCjPW4Lq+zEdic4t6E06vhsSw0uGy
 sbCbzHHJDav86bW71VNi4iEyAiLiJvh66NSwyyV5fVh/50fHinmr2i5msToCdji2LQJZ
 Hob2HPE/HTVRxmofU3UcWIjov+HKuTuK7DbdElTK8dSdjtegbULn7t6EELsHjb3EpiEH
 9yEJ95Vr8OomUMWO/V+4sHxf67G3+aJDk1hbtJQkGNIKmTzBh0af496hcLmhWkjm6hwL
 lp4wR/umrvCkx2Ug/8+0eLlVrGHlfgffiOxMcMbP8dbyU09TNEJpFSLR4z8ypVUHN4nm
 MoMg==
X-Gm-Message-State: ALKqPwdrGILd3thgN9PRf97/5urH7GXHZmWnXVS/P5k8LvWaiAi8qMm0
 r89qyPkc5jB/w6VDbNx2d0o6RRldoDEVXS7TPH8dog==
X-Google-Smtp-Source: AB8JxZo8Nyp4Y2kxd+dR/SmFP8SKyQH24rYb54ZdCWJsOLBuzEabIG+bk8mSJcNKvQm/JWxeAhmkKLBb4G5bjc+oWGk=
X-Received: by 2002:a9d:44c3:: with SMTP id
 p3-v6mr12663995otg.66.1527623993917; 
 Tue, 29 May 2018 12:59:53 -0700 (PDT)
MIME-Version: 1.0
Received: by 2002:a9d:424:0:0:0:0:0 with HTTP;
 Tue, 29 May 2018 12:59:53 -0700 (PDT)
In-Reply-To: <mailman.43.1527534007.23060.netconf@ietf.org>
References: <mailman.43.1527534007.23060.netconf@ietf.org>
From: Shiva Kumar Pathori <pathori@gmail.com>
Date: Wed, 30 May 2018 01:29:53 +0530
Message-ID: <CAJtYN8LBOrmZqSJug5n80UdSuOit2rZW8jQaUzsjNPyvs6Q3RQ@mail.gmail.com>
To: netconf@ietf.org
Content-Type: multipart/alternative; boundary="0000000000008207ab056d5dadcd"
Archived-At: <https://mailarchive.ietf.org/arch/msg/netconf/ODwCm9Z4qqahEIYgipSHtKNbvpY>
Subject: Re: [Netconf] Netconf Digest, Vol 123, Issue 43
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: Tue, 29 May 2018 19:59:59 -0000

--0000000000008207ab056d5dadcd
Content-Type: text/plain; charset="UTF-8"

Hi,
What could be the reason for not including the "<full-name>" leaf in the
reply?
I see the example in section 6.4.5 in RFC 6241 include the above mentioned
leaf when a content match node present in the filter.

BTW, the reply is same for the both xpath and subtree filter RPCs mentioned
in the mail?

On 29 May 2018 at 00:30, <netconf-request@ietf.org> wrote:

> Send Netconf mailing list submissions to
>         netconf@ietf.org
>
> To subscribe or unsubscribe via the World Wide Web, visit
>         https://www.ietf.org/mailman/listinfo/netconf
> or, via email, send a message with subject or body 'help' to
>         netconf-request@ietf.org
>
> You can reach the person managing the list at
>         netconf-owner@ietf.org
>
> When replying, please edit your Subject line so it is more specific
> than "Re: Contents of Netconf digest..."
>
>
> Today's Topics:
>
>    1. Re: Clarification about su tree filtering (Martin Bjorklund)Hi
>
>
> ----------------------------------------------------------------------
>
> Message: 1
> Date: Mon, 28 May 2018 15:37:48 +0200 (CEST)
> From: Martin Bjorklund <mbj@tail-f.com>
> To: mjethanandani@gmail.com
> Cc: netconf@ietf.org
> Subject: Re: [Netconf] Clarification about su tree filtering
> Message-ID: <20180528.153748.2044064270808262081.mbj@tail-f.com>
> Content-Type: Text/Plain; charset=utf-8
>
> Hi,
>
> See answers inline.
>
>
> Mahesh Jethanandani <mjethanandani@gmail.com> wrote:
> > Forwarding to NETCONF WG mailing list.
> >
> > Begin forwarded message:
> >
> > > From: Shiva Kumar Pathori <pathori@gmail.com>
> > > Date: May 28, 2018 at 5:27:19 AM EDT
> > > To: Alex Campbell <Alex.Campbell@aviatnet.com>
> > > Cc: netmod@ietf.org
> > > Subject: Re: [netmod] Clarification about subtree filtering
> > >
> > > Thanks Alex for the clarification. Can somebody please clarify about
> subtree filter behaviour or provide some pointers in RFC so that I can
> refer to it.
> > >
> > >> On Thu 24 May, 2018, 5:56 AM Alex Campbell, <
> Alex.Campbell@aviatnet.com> wrote:
> > >> Hi,
> > >>
> > >>
> > >> Since nobody else has answered I'll have a go.
> > >> I'm not familiar with subtree filtering, but I am with XPath.
> Assuming your XPath translation is accurate, it will return no data
> (response A).
> > >>
> > >> From: netmod <netmod-bounces@ietf.org> on behalf of Shiva Kumar
> Pathori <pathori@gmail.com>
> > >> Sent: Tuesday, 22 May 2018 8:38 p.m.
> > >> To: netmod@ietf.org
> > >> Subject: [netmod] Clarification about subtree filtering
> > >>
> > >>
> > >>> Hi,
> > >>> Can somebody clarify what could be the response for the <get-config>
> operation provided below.
> > >>>
> > >>> Following is the user information in the datastore that is provided
> in the RFC 6241 as example.
> > >>>> <rpc message-id="101"
> > >>>>           xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
> > >>>>        <get-config>
> > >>>>          <source>
> > >>>>            <running/>
> > >>>>          </source>
> > >>>>          <filter type="subtree">
> > >>>>            <top xmlns="http://example.com/schema/1.2/config">
> > >>>>              <users/>
> > >>>>            </top>
> > >>>>          </filter>
> > >>>>        </get-config>
> > >>>>      </rpc>
> > >>>
> > >>>> <rpc-reply message-id="101" xmlns="urn:ietf:params:xml:ns:
> netconf:base:1.0">
> > >>>>   <data>
> > >>>>     <top xmlns="http://example.com/schema/1.2/config">
> > >>>>       <users>
> > >>>>         <user>
> > >>>>           <name>root</name>
> > >>>>           <type>superuser</type>
> > >>>>           <full-name>Charlie Root</full-name>
> > >>>>           <company-info>
> > >>>>             <dept>1</dept>
> > >>>>             <id>1</id>
> > >>>>           </company-info>
> > >>>>         </user>
> > >>>>         <user>
> > >>>>           <name>fred</name>
> > >>>>           <type>admin</type>
> > >>>>           <full-name>Fred Flintstone</full-name>
> > >>>>           <company-info>
> > >>>>             <dept>2</dept>
> > >>>>             <id>2</id>
> > >>>>           </company-info>
> > >>>>         </user>
> > >>>>         <user>
> > >>>>           <name>barney</name>
> > >>>>           <type>admin</type>
> > >>>>           <full-name>Barney Rubble</full-name>
> > >>>>           <company-info>
> > >>>>             <dept>2</dept>
> > >>>>             <id>3</id>
> > >>>>           </company-info>
> > >>>>         </user>
> > >>>>       </users>
> > >>>>     </top>
> > >>>>   </data>
> > >>>> </rpc-reply>
> > >>>
> > >>>
> > >>> The <get-config> operation with content-match at parent and child
> nodes;
> > >>>
> > >>>> <rpc message-id="101" xmlns="urn:ietf:params:xml:ns:
> netconf:base:1.0">
> > >>>>   <get-config>
> > >>>>     <source>
> > >>>>       <running/>
> > >>>>     </source>
> > >>>>     <filter type="subtree">
> > >>>>       <top xmlns="http://example.com/schema/1.2/config">
> > >>>>         <users>
> > >>>>           <user>
> > >>>>             <type>admin</name>
> > >>>>             <company-info>
> > >>>>               <dept>1</dept>
> > >>>>             </company-info>
> > >>>>           </user>
> > >>>>         </users>
> > >>>>       </top>
> > >>>>     </filter>
> > >>>>   </get-config>
> > >>>> </rpc>
> > >>>
> > >>> The equivalent XPATH expression :
> > >>>> <rpc message-id="101" xmlns="urn:ietf:params:xml:ns:
> netconf:base:1.0">
> > >>>>   <get-config>
> > >>>>     <source>
> > >>>>       <running/>
> > >>>>     </source>
> > >>>>     <filter xmlns:t="http://example.com/schema/1.2/config"
> > >>>>                  type="xpath"
> > >>>>                  select="/t:top/t:users/t:user[
> t:type='admin']/t:company-info[t:dept=?1?]"/>
> > >>>>         </get-config>
> > >>>>      </rpc>
>
> This is not an equivalent expression, b/c a content-match node ("type")
> is not AND:ed with a selection node ("company-info").
>
> > >>> For this what could be the response
> > >>>
> > >>> a) The response based on content-match nodes are AND-ed together
> > >>>> <rpc-reply message-id="101" xmlns="urn:ietf:params:xml:ns:
> netconf:base:1.0">
> > >>>>        <data>
> > >>>>       </data>
> > >>>>      </rpc-reply>
> > >>> OR
> > >>>
> > >>> b)  The response based on content-match nodes treated separately
> > >>>> <rpc-reply message-id="101" xmlns="urn:ietf:params:xml:ns:
> netconf:base:1.0">
> > >>>>   <data>
> > >>>>     <top xmlns="http://example.com/schema/1.2/config">
> > >>>>       <users>
> > >>>>         <user>
> > >>>>           <name>fred</name>
> > >>>>           <type>admin</type>
> > >>>>           <full-name>Fred Flintstone</full-name>
> > >>>>         </user>
> > >>>>         <user>
> > >>>>           <name>barney</name>
> > >>>>           <type>admin</type>
> > >>>>           <full-name>Barney Rubble</full-name>
> > >>>>         </user>
> > >>>>       </users>
> > >>>>     </top>
> > >>>>   </data>
> > >>>> </rpc-reply>
>
> Sibling content-match nodes are AND:ed, but in this case "type" and
> "dept" are not siblings.
>
> The correct reply is:
>
>    <data>
>      <top xmlns="http://example.com/schema/1.2/config">
>        <users>
>          <user>
>            <name>fred</name> (*)
>            <type>admin</type>
>          </user>
>          <user>
>            <name>barney</name> (*)
>            <type>admin</type>
>          </user>
>        </users>
>      </top>
>    </data>
>
> (*) note that if the name is the key, it MAY (or may not) be present
> in the output, see 6.2.5 of RFC 6241:
>
>    o  If any sibling nodes of the selection node are instance identifier
>       components for a conceptual data structure (e.g., list key leaf),
>       then they MAY also be included in the filter output.
>
>
>
> /martin
>
> ------------------------------
>
> Subject: Digest Footer
>
> _______________________________________________
> Netconf mailing list
> Netconf@ietf.org
> https://www.ietf.org/mailman/listinfo/netconf
>
>
> ------------------------------
>
> End of Netconf Digest, Vol 123, Issue 43
> ****************************************
>

--0000000000008207ab056d5dadcd
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr">Hi,=C2=A0<div>What could be the reason for not including t=
he &quot;<span style=3D"color:rgb(0,0,0);font-size:13.3333px">&lt;full-name=
&gt;</span>&quot; leaf in the reply?</div><div>I see the example in section=
 6.4.5 in RFC 6241 include the above mentioned leaf when a content match no=
de present in the filter.</div><div><br></div><div>BTW, the reply is same f=
or the both xpath and subtree filter RPCs mentioned in the mail?<br><div cl=
ass=3D"gmail_extra"><br><div class=3D"gmail_quote">On 29 May 2018 at 00:30,=
  <span dir=3D"ltr">&lt;<a href=3D"mailto:netconf-request@ietf.org" target=
=3D"_blank">netconf-request@ietf.org</a>&gt;</span> wrote:<br><blockquote c=
lass=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;=
padding-left:1ex">Send Netconf mailing list submissions to<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 <a href=3D"mailto:netconf@ietf.org">netconf@iet=
f.org</a><br>
<br>
To subscribe or unsubscribe via the World Wide Web, visit<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 <a href=3D"https://www.ietf.org/mailman/listinf=
o/netconf" rel=3D"noreferrer" target=3D"_blank">https://www.ietf.org/mailma=
n/<wbr>listinfo/netconf</a><br>
or, via email, send a message with subject or body &#39;help&#39; to<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 <a href=3D"mailto:netconf-request@ietf.org">net=
conf-request@ietf.org</a><br>
<br>
You can reach the person managing the list at<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 <a href=3D"mailto:netconf-owner@ietf.org">netco=
nf-owner@ietf.org</a><br>
<br>
When replying, please edit your Subject line so it is more specific<br>
than &quot;Re: Contents of Netconf digest...&quot;<br>
<br>
<br>
Today&#39;s Topics:<br>
<br>
=C2=A0 =C2=A01. Re: Clarification about su tree filtering (Martin Bjorklund=
)Hi<br>
<br>
<br>
------------------------------<wbr>------------------------------<wbr>-----=
-----<br>
<br>
Message: 1<br>
Date: Mon, 28 May 2018 15:37:48 +0200 (CEST)<br>
From: Martin Bjorklund &lt;<a href=3D"mailto:mbj@tail-f.com">mbj@tail-f.com=
</a>&gt;<br>
To: <a href=3D"mailto:mjethanandani@gmail.com">mjethanandani@gmail.com</a><=
br>
Cc: <a href=3D"mailto:netconf@ietf.org">netconf@ietf.org</a><br>
Subject: Re: [Netconf] Clarification about su tree filtering<br>
Message-ID: &lt;<a href=3D"mailto:20180528.153748.2044064270808262081.mbj@t=
ail-f.com">20180528.153748.<wbr>2044064270808262081.mbj@tail-<wbr>f.com</a>=
&gt;<br>
Content-Type: Text/Plain; charset=3Dutf-8<br>
<br>
Hi,<br>
<br>
See answers inline.<br>
<br>
<br>
Mahesh Jethanandani &lt;<a href=3D"mailto:mjethanandani@gmail.com">mjethana=
ndani@gmail.com</a>&gt; wrote:<br>
&gt; Forwarding to NETCONF WG mailing list.<br>
&gt; <br>
&gt; Begin forwarded message:<br>
&gt; <br>
&gt; &gt; From: Shiva Kumar Pathori &lt;<a href=3D"mailto:pathori@gmail.com=
">pathori@gmail.com</a>&gt;<br>
&gt; &gt; Date: May 28, 2018 at 5:27:19 AM EDT<br>
&gt; &gt; To: Alex Campbell &lt;<a href=3D"mailto:Alex.Campbell@aviatnet.co=
m">Alex.Campbell@aviatnet.com</a>&gt;<br>
&gt; &gt; Cc: <a href=3D"mailto:netmod@ietf.org">netmod@ietf.org</a><br>
&gt; &gt; Subject: Re: [netmod] Clarification about subtree filtering<br>
&gt; &gt; <br>
&gt; &gt; Thanks Alex for the clarification. Can somebody please clarify ab=
out subtree filter behaviour or provide some pointers in RFC so that I can =
refer to it.<br>
&gt; &gt; <br>
&gt; &gt;&gt; On Thu 24 May, 2018, 5:56 AM Alex Campbell, &lt;<a href=3D"ma=
ilto:Alex.Campbell@aviatnet.com">Alex.Campbell@aviatnet.com</a>&gt; wrote:<=
br>
&gt; &gt;&gt; Hi,<br>
&gt; &gt;&gt; <br>
&gt; &gt;&gt; <br>
&gt; &gt;&gt; Since nobody else has answered I&#39;ll have a go.<br>
&gt; &gt;&gt; I&#39;m not familiar with subtree filtering, but I am with XP=
ath. Assuming your XPath translation is accurate, it will return no data (r=
esponse A).<br>
&gt; &gt;&gt; <br>
&gt; &gt;&gt; From: netmod &lt;<a href=3D"mailto:netmod-bounces@ietf.org">n=
etmod-bounces@ietf.org</a>&gt; on behalf of Shiva Kumar Pathori &lt;<a href=
=3D"mailto:pathori@gmail.com">pathori@gmail.com</a>&gt;<br>
&gt; &gt;&gt; Sent: Tuesday, 22 May 2018 8:38 p.m.<br>
&gt; &gt;&gt; To: <a href=3D"mailto:netmod@ietf.org">netmod@ietf.org</a><br=
>
&gt; &gt;&gt; Subject: [netmod] Clarification about subtree filtering<br>
&gt; &gt;&gt;=C2=A0 <br>
&gt; &gt;&gt; <br>
&gt; &gt;&gt;&gt; Hi,<br>
&gt; &gt;&gt;&gt; Can somebody clarify what could be the response for the &=
lt;get-config&gt; operation provided below.<br>
&gt; &gt;&gt;&gt; <br>
&gt; &gt;&gt;&gt; Following is the user information in the datastore that i=
s provided in the RFC 6241 as example.<br>
&gt; &gt;&gt;&gt;&gt; &lt;rpc message-id=3D&quot;101&quot;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0xmlns=3D&quot=
;urn:ietf:params:xml:ns:<wbr>netconf:base:1.0&quot;&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 &lt;get-config&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &lt;source&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &lt;running/=
&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &lt;/source&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &lt;filter type=3D&=
quot;subtree&quot;&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &lt;top xmln=
s=3D&quot;<a href=3D"http://example.com/schema/1.2/config" rel=3D"noreferre=
r" target=3D"_blank">http://example.com/<wbr>schema/1.2/config</a>&quot;&gt=
;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &lt;u=
sers/&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &lt;/top&gt;=
<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 &lt;/filter&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 &lt;/get-config&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0 &lt;/rpc&gt;<br>
&gt; &gt;&gt;&gt; <br>
&gt; &gt;&gt;&gt;&gt; &lt;rpc-reply message-id=3D&quot;101&quot; xmlns=3D&q=
uot;urn:ietf:params:xml:ns:<wbr>netconf:base:1.0&quot;&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0&lt;data&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0&lt;top xmlns=3D&quot;<a href=3D"h=
ttp://example.com/schema/1.2/config" rel=3D"noreferrer" target=3D"_blank">h=
ttp://example.com/<wbr>schema/1.2/config</a>&quot;&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;users&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;user&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;name&gt;r=
oot&lt;/name&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;type&gt;s=
uperuser&lt;/type&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;full-name=
&gt;Charlie Root&lt;/full-name&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;company-i=
nfo&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;de=
pt&gt;1&lt;/dept&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;id=
&gt;1&lt;/id&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;/company-=
info&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;/user&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;user&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;name&gt;f=
red&lt;/name&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;type&gt;a=
dmin&lt;/type&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;full-name=
&gt;Fred Flintstone&lt;/full-name&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;company-i=
nfo&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;de=
pt&gt;2&lt;/dept&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;id=
&gt;2&lt;/id&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;/company-=
info&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;/user&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;user&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;name&gt;b=
arney&lt;/name&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;type&gt;a=
dmin&lt;/type&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;full-name=
&gt;Barney Rubble&lt;/full-name&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;company-i=
nfo&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;de=
pt&gt;2&lt;/dept&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;id=
&gt;3&lt;/id&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;/company-=
info&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;/user&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;/users&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0&lt;/top&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0&lt;/data&gt;<br>
&gt; &gt;&gt;&gt;&gt; &lt;/rpc-reply&gt;<br>
&gt; &gt;&gt;&gt; <br>
&gt; &gt;&gt;&gt; <br>
&gt; &gt;&gt;&gt; The &lt;get-config&gt; operation with content-match at pa=
rent and child nodes;<br>
&gt; &gt;&gt;&gt; <br>
&gt; &gt;&gt;&gt;&gt; &lt;rpc message-id=3D&quot;101&quot; xmlns=3D&quot;ur=
n:ietf:params:xml:ns:<wbr>netconf:base:1.0&quot;&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0&lt;get-config&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0&lt;source&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;running/&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0&lt;/source&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0&lt;filter type=3D&quot;subtree&qu=
ot;&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;top xmlns=3D&quot;<a hr=
ef=3D"http://example.com/schema/1.2/config" rel=3D"noreferrer" target=3D"_b=
lank">http://example.com/<wbr>schema/1.2/config</a>&quot;&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;users&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;user&gt;<=
br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;ty=
pe&gt;admin&lt;/name&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;co=
mpany-info&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0&lt;dept&gt;1&lt;/dept&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;/c=
ompany-info&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;/user&gt;=
<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;/users&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;/top&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0&lt;/filter&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0&lt;/get-config&gt;<br>
&gt; &gt;&gt;&gt;&gt; &lt;/rpc&gt;<br>
&gt; &gt;&gt;&gt; <br>
&gt; &gt;&gt;&gt; The equivalent XPATH expression : <br>
&gt; &gt;&gt;&gt;&gt; &lt;rpc message-id=3D&quot;101&quot; xmlns=3D&quot;ur=
n:ietf:params:xml:ns:<wbr>netconf:base:1.0&quot;&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0&lt;get-config&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0&lt;source&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;running/&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0&lt;/source&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0&lt;filter xmlns:t=3D&quot;<a href=
=3D"http://example.com/schema/1.2/config" rel=3D"noreferrer" target=3D"_bla=
nk">http://example.com/<wbr>schema/1.2/config</a>&quot; <br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0 =C2=A0 type=3D&quot;xpath&quot;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0 =C2=A0 select=3D&quot;/t:top/t:users/t:user[<wbr>t:type=3D&#39;admin&#3=
9;]/t:company-<wbr>info[t:dept=3D?1?]&quot;/&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;/get-config&gt;<=
br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0 &lt;/rpc&gt;<br>
<br>
This is not an equivalent expression, b/c a content-match node (&quot;type&=
quot;)<br>
is not AND:ed with a selection node (&quot;company-info&quot;).<br>
<br>
&gt; &gt;&gt;&gt; For this what could be the response<br>
&gt; &gt;&gt;&gt; <br>
&gt; &gt;&gt;&gt; a) The response based on content-match nodes are AND-ed t=
ogether<br>
&gt; &gt;&gt;&gt;&gt; &lt;rpc-reply message-id=3D&quot;101&quot; xmlns=3D&q=
uot;urn:ietf:params:xml:ns:<wbr>netconf:base:1.0&quot;&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 &lt;data&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;/data&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0 &lt;/rpc-reply&gt;<br>
&gt; &gt;&gt;&gt; OR <br>
&gt; &gt;&gt;&gt; <br>
&gt; &gt;&gt;&gt; b)=C2=A0 The response based on content-match nodes treate=
d separately<br>
&gt; &gt;&gt;&gt;&gt; &lt;rpc-reply message-id=3D&quot;101&quot; xmlns=3D&q=
uot;urn:ietf:params:xml:ns:<wbr>netconf:base:1.0&quot;&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0&lt;data&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0&lt;top xmlns=3D&quot;<a href=3D"h=
ttp://example.com/schema/1.2/config" rel=3D"noreferrer" target=3D"_blank">h=
ttp://example.com/<wbr>schema/1.2/config</a>&quot;&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;users&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;user&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;name&gt;f=
red&lt;/name&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;type&gt;a=
dmin&lt;/type&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;full-name=
&gt;Fred Flintstone&lt;/full-name&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;/user&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;user&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;name&gt;b=
arney&lt;/name&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;type&gt;a=
dmin&lt;/type&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;full-name=
&gt;Barney Rubble&lt;/full-name&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;/user&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;/users&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0 =C2=A0&lt;/top&gt;<br>
&gt; &gt;&gt;&gt;&gt;=C2=A0 =C2=A0&lt;/data&gt;<br>
&gt; &gt;&gt;&gt;&gt; &lt;/rpc-reply&gt;<br>
<br>
Sibling content-match nodes are AND:ed, but in this case &quot;type&quot; a=
nd<br>
&quot;dept&quot; are not siblings.<br>
<br>
The correct reply is:<br>
<br>
=C2=A0 =C2=A0&lt;data&gt;<br>
=C2=A0 =C2=A0 =C2=A0&lt;top xmlns=3D&quot;<a href=3D"http://example.com/sch=
ema/1.2/config" rel=3D"noreferrer" target=3D"_blank">http://example.com/<wb=
r>schema/1.2/config</a>&quot;&gt;<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;users&gt;<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;user&gt;<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;name&gt;fred&lt;/name&gt; (*)<=
br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;type&gt;admin&lt;/type&gt;<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;/user&gt;<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;user&gt;<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;name&gt;barney&lt;/name&gt; (*=
)<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;type&gt;admin&lt;/type&gt;<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;/user&gt;<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0&lt;/users&gt;<br>
=C2=A0 =C2=A0 =C2=A0&lt;/top&gt;<br>
=C2=A0 =C2=A0&lt;/data&gt;<br>
<br>
(*) note that if the name is the key, it MAY (or may not) be present<br>
in the output, see 6.2.5 of RFC 6241:<br>
<br>
=C2=A0 =C2=A0o=C2=A0 If any sibling nodes of the selection node are instanc=
e identifier<br>
=C2=A0 =C2=A0 =C2=A0 components for a conceptual data structure (e.g., list=
 key leaf),<br>
=C2=A0 =C2=A0 =C2=A0 then they MAY also be included in the filter output.<b=
r>
<br>
<br>
<br>
/martin<br>
<br>
------------------------------<br>
<br>
Subject: Digest Footer<br>
<br>
______________________________<wbr>_________________<br>
Netconf mailing list<br>
<a href=3D"mailto:Netconf@ietf.org">Netconf@ietf.org</a><br>
<a href=3D"https://www.ietf.org/mailman/listinfo/netconf" rel=3D"noreferrer=
" target=3D"_blank">https://www.ietf.org/mailman/<wbr>listinfo/netconf</a><=
br>
<br>
<br>
------------------------------<br>
<br>
End of Netconf Digest, Vol 123, Issue 43<br>
******************************<wbr>**********<br>
</blockquote></div><br></div></div></div>

--0000000000008207ab056d5dadcd--

