Re: [Netconf] Clarification about subtree filter

Shiva Kumar Pathori <pathori@gmail.com> Wed, 30 May 2018 06:16 UTC

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 4B8DF12F4E3 for <netconf@ietfa.amsl.com>; Tue, 29 May 2018 23:16:19 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.699
X-Spam-Level:
X-Spam-Status: No, score=-2.699 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_LOW=-0.7, SPF_PASS=-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 Ayv1rTSnlgob for <netconf@ietfa.amsl.com>; Tue, 29 May 2018 23:16:16 -0700 (PDT)
Received: from mail-oi0-x232.google.com (mail-oi0-x232.google.com [IPv6:2607:f8b0:4003:c06::232]) (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 3BD2D12FA97 for <netconf@ietf.org>; Tue, 29 May 2018 23:16:16 -0700 (PDT)
Received: by mail-oi0-x232.google.com with SMTP id h79-v6so8819202oig.13 for <netconf@ietf.org>; Tue, 29 May 2018 23:16:16 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:from:date:message-id:subject:to; bh=Xpnl6+DoUgCfRAA2HBbb3JKMZkidNTumWlMman54z+8=; b=ke2nqmL6a0t+Rx/x6L794iN6XuhJx38ZZm9XQmbML8lTL8i0RL8kllUcHXE/bC17Oz XjBLDxQsaQ05VLtuaCU+p3t+jcc1wqwJiyXNhNOje4x8e+w1r2Ho2GyTxE1LDpigL7HN FQhESPPX9gkAzNJzFe0d4bslEoPHwGyGmS5x3xjEX5VW+ZO0e65sKrNcrKNs1KXQXysM B4OVMAIyx5SySvRr1VN1Z+FLcWaOnmO4C6Gmwg7HhU1LtvXV1NK+IyWsvHNK8F2BwxJd Pwd36ckn3ZcB6xL0csrFGzifIJQMmgajDhsiBe2nmZe1M1i+3xunX6aOWJOmj6ATKarD ROuA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=Xpnl6+DoUgCfRAA2HBbb3JKMZkidNTumWlMman54z+8=; b=q3q5jcHFt3XJieEf5Z9Tp5o6HMo0fwcOw33htRfkQGtnsG0BlbF1iIX72XB1AoUYcH nzZTRFtllP+i/ObFEl0yNLbNteQdiq5O5giMNtA8SF+k4E9p7C8QGhwuIJY5sKCVvWNX b/UNmUarvk/YpbBzyfprixIWJdeRyWoqZ7o9HvxP+w+IF95Tf01HWLq8tfyLn0VoG9m4 /IkkqaGc+38AFjp3SOjVVu0FagUajjR7bWWrjGhMTxm/icCnED8y7XRgJsTnecXrKUSk mW8yA0cXr38rbgOWTTWb+2YH2m1MAkOsN6bzfNbWTZW56cXTzTb4+gUKaUqMlTaEoVJd Qtww==
X-Gm-Message-State: APt69E0iBx1orDemOHTzxPIYJHJJ3D/KeJD1pTCoayHNEn6REk2a0G7+ g1teKIiq2OWy3YOuB44MOEjUYOC36+vlUtwzX08=
X-Google-Smtp-Source: ADUXVKIykpErrC/mz0d/fmi20aEdFFgDk7jhpjSk7Tucnf/WxA3XQ+PZKmeW/X0vBegr+lZsVNykhLGRobmkCMiDp+o=
X-Received: by 2002:aca:1218:: with SMTP id 24-v6mr742499ois.144.1527660975300; Tue, 29 May 2018 23:16:15 -0700 (PDT)
MIME-Version: 1.0
From: Shiva Kumar Pathori <pathori@gmail.com>
Date: Wed, 30 May 2018 11:46:04 +0530
Message-ID: <CAJtYN8K6YaZESGM5s4_b9+vDEsKFy=G890aaki2KJ2rW+ckKHA@mail.gmail.com>
To: netconf@ietf.org
Content-Type: multipart/alternative; boundary="000000000000c52750056d6649c7"
Archived-At: <https://mailarchive.ietf.org/arch/msg/netconf/0ToQX8ToMmuMUfa7QtOMBR0rif4>
Subject: Re: [Netconf] Clarification about subtree filter
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: Wed, 30 May 2018 06:16:19 -0000

Hi,  Sorry did not update subject line, It's updated now.

On Wed 30 May, 2018, 2:53 AM , <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: Netconf Digest, Vol 123, Issue 43 (Shiva Kumar Pathori)
>    2. How would RESTCONF access multiple datastores defined by NMDA
>       (Henry Yu)
>
>
> ----------------------------------------------------------------------
>
> Message: 1
> Date: Wed, 30 May 2018 01:29:53 +0530
> From: Shiva Kumar Pathori <pathori@gmail.com>
> To: netconf@ietf.org
> Subject: Re: [Netconf] Clarification about subtree filter
> Message-ID:
>         <
> CAJtYN8LBOrmZqSJug5n80UdSuOit2rZW8jQaUzsjNPyvs6Q3RQ@mail.gmail.com>
> 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
> > ****************************************
> >
> -------------- next part --------------
> An HTML attachment was scrubbed...
> URL: <
> https://mailarchive.ietf.org/arch/browse/netconf/attachments/20180530/93583caa/attachment.html
> >
>
> ------------------------------
>
> Message: 2
> Date: Tue, 29 May 2018 17:23:07 -0400
> From: Henry Yu <hyu2010b@gmail.com>
> To: netconf@ietf.org
> Subject: [Netconf] How would RESTCONF access multiple datastores
>         defined by NMDA
> Message-ID:
>         <
> CAFsbzLkU5W5hL5Yb5YB3ft73idYoT1QPxXNWwMa_VBBvQ+c_GQ@mail.gmail.com>
> Content-Type: text/plain; charset="utf-8"
>
> Hi,
>
> According to my understanding of RFC 8040, there is only one datastore
> (which is represented by "{+restconf}/data"). But NMDA introduces multiple
> datastores. How does RESTCONF provide access to them? I think a RESTCONF
> user would, at minimum, need the access to the <running> and the
> <operational>.
>
> Thanks,
> Henry
> P.S., I would not find an answer in the mailing list's archive. My
> apologies if this question has already been asked/answered.
> -------------- next part --------------
> An HTML attachment was scrubbed...
> URL: <
> https://mailarchive.ietf.org/arch/browse/netconf/attachments/20180529/81c594a0/attachment.html
> >
>
> ------------------------------
>
> Subject: Digest Footer
>
> _______________________________________________
> Netconf mailing list
> Netconf@ietf.org
> https://www.ietf.org/mailman/listinfo/netconf
>
>
> ------------------------------
>
> End of Netconf Digest, Vol 123, Issue 44
> ****************************************
>