Re: [Netconf] RESTCONF modularilty

Ladislav Lhotka <lhotka@nic.cz> Thu, 21 August 2014 14:26 UTC

Return-Path: <lhotka@nic.cz>
X-Original-To: netconf@ietfa.amsl.com
Delivered-To: netconf@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 8A8F51A031A for <netconf@ietfa.amsl.com>; Thu, 21 Aug 2014 07:26:25 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.9
X-Spam-Level:
X-Spam-Status: No, score=-1.9 tagged_above=-999 required=5 tests=[BAYES_00=-1.9] autolearn=ham
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 aqwoCmZ_ZTtn for <netconf@ietfa.amsl.com>; Thu, 21 Aug 2014 07:26:23 -0700 (PDT)
Received: from trail.lhotka.name (trail.lhotka.name [77.48.224.143]) (using TLSv1.1 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id F1F141A02F1 for <netconf@ietf.org>; Thu, 21 Aug 2014 07:26:21 -0700 (PDT)
Received: from localhost (localhost [127.0.0.1]) by trail.lhotka.name (Postfix) with ESMTP id 511E654057F; Thu, 21 Aug 2014 16:26:19 +0200 (CEST)
Received: from trail.lhotka.name ([127.0.0.1]) by localhost (trail.lhotka.name [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 6t9u887vOUmO; Thu, 21 Aug 2014 16:26:14 +0200 (CEST)
Received: from localhost (unknown [172.29.2.202]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by trail.lhotka.name (Postfix) with ESMTPSA id 6C06C540010; Thu, 21 Aug 2014 16:26:13 +0200 (CEST)
From: Ladislav Lhotka <lhotka@nic.cz>
To: Kent Watsen <kwatsen@juniper.net>, NetConf <netconf@ietf.org>
In-Reply-To: <D01263B1.7E18B%kwatsen@juniper.net>
References: <D01263B1.7E18B%kwatsen@juniper.net>
User-Agent: Notmuch/0.18.1 (http://notmuchmail.org) Emacs/24.3.50.2 (x86_64-apple-darwin13.0.0)
Date: Thu, 21 Aug 2014 16:26:11 +0200
Message-ID: <m2a96xly0s.fsf@nic.cz>
MIME-Version: 1.0
Content-Type: text/plain
Archived-At: http://mailarchive.ietf.org/arch/msg/netconf/ahKsI-euMrMjnPGNApHEZNpZUlI
Subject: Re: [Netconf] RESTCONF modularilty
X-BeenThere: netconf@ietf.org
X-Mailman-Version: 2.1.15
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: <http://www.ietf.org/mail-archive/web/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: Thu, 21 Aug 2014 14:26:25 -0000

Hi,

Kent Watsen <kwatsen@juniper.net> writes:

> The RESTCONF authors recently discussed adding support for filtering,
> sorting, and paging collections (i.e. lists).  One comment was that it
> was complex and better defined in another draft.  I agree, but more
> importantly, RESTCONF should be fully modular, providing an ability
> for implementations to selectively advertise support for various
> things.  This is exactly the approach we used for the NETCONF Light
> draft (http://tools.ietf.org/html/draft-schoenw-netconf-light-01), but
> RESTCONF being a new protocol, there is no reason to not do it from
> the get go.  This strategy was discussed in Toronto, but we felt we
> should take it to the list before restructuring the document...

I fully agree with this strategy. Support for individual capabilities
will be indicated somehow under the "restconf" resource?

...

>
> The corollary to RESTCONF might be:
>
>     Base Support
>           - the ability to GET and PUT on the top-level node using XML only
>
>     Optional Support:
>           - the ability to do PATCH  (this is already optional)
>           - the ability to use JSON encoding

I think XML and JSON should be given equal footing, i.e. the server
could support either or both. Perhaps the "Accept" header on the client
side and 406/415 status codes on the server side could be enough?

Lada

>           - the ability to POST/GET/PUT/DELETE subtrees   (PATCH too, is support for it is advertised)
>           - the ability to use "select" with GET operations
>           - the ability to use "filter" with GET on collection resources (i.e. lists) and event streams
>           - the ability to do pagination with GET on collection resources (i.e. lists)
>           - the ability to do sorting with GET on collection resources (i.e. lists)
>
>
> Thoughts?
>
> Thanks,
> Kent
>
>
>
> _______________________________________________
> Netconf mailing list
> Netconf@ietf.org
> https://www.ietf.org/mailman/listinfo/netconf

-- 
Ladislav Lhotka, CZ.NIC Labs
PGP Key ID: E74E8C0C