Re: [core] Adding CRUD to the core.ll interface; was Re: draft-groves-core-dynlink-02

Christian Groves <cngroves.std@gmail.com> Tue, 28 February 2017 00:21 UTC

Return-Path: <cngroves.std@gmail.com>
X-Original-To: core@ietfa.amsl.com
Delivered-To: core@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id D8897129457 for <core@ietfa.amsl.com>; Mon, 27 Feb 2017 16:21:35 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 0.668
X-Spam-Level:
X-Spam-Status: No, score=0.668 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_ADSP_CUSTOM_MED=0.001, FREEMAIL_FROM=0.001, FREEMAIL_REPLY=1, NML_ADSP_CUSTOM_MED=0.9, RCVD_IN_DNSWL_NONE=-0.0001, SPF_SOFTFAIL=0.665, URIBL_BLOCKED=0.001] autolearn=no 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 t789h0BGFUH6 for <core@ietfa.amsl.com>; Mon, 27 Feb 2017 16:21:34 -0800 (PST)
Received: from msh04.myshophosting.com (msh04.myshophosting.com [101.0.86.118]) (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 B361A129400 for <core@ietf.org>; Mon, 27 Feb 2017 16:21:34 -0800 (PST)
Received: from ppp118-209-135-224.lns20.mel8.internode.on.net ([118.209.135.224]:52780 helo=[192.168.1.22]) by msh04.myshophosting.com with esmtpsa (TLSv1.2:ECDHE-RSA-AES128-GCM-SHA256:128) (Exim 4.88) (envelope-from <cngroves.std@gmail.com>) id 1ciVXo-003zBu-Oa; Tue, 28 Feb 2017 11:21:32 +1100
To: Michael Koster <michaeljohnkoster@gmail.com>
References: <AAC41ACC-476B-4D5E-83C1-1D76D45ACF70@gmail.com> <0d67976c-c566-ae89-cdcc-ed0828abe3d6@gmail.com> <58FEF934-CB65-4229-919F-508DE261EA1D@gmail.com> <2FEB83DB-873A-42BE-BADF-51AE72104205@gmail.com>
From: Christian Groves <cngroves.std@gmail.com>
Message-ID: <3c5bb910-0fbe-64cf-901c-6cba021d7150@gmail.com>
Date: Tue, 28 Feb 2017 11:21:29 +1100
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.7.1
MIME-Version: 1.0
In-Reply-To: <2FEB83DB-873A-42BE-BADF-51AE72104205@gmail.com>
Content-Type: text/plain; charset="windows-1252"; format="flowed"
Content-Transfer-Encoding: 7bit
X-AntiAbuse: This header was added to track abuse, please include it with any abuse report
X-AntiAbuse: Primary Hostname - msh04.myshophosting.com
X-AntiAbuse: Original Domain - ietf.org
X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12]
X-AntiAbuse: Sender Address Domain - gmail.com
X-Get-Message-Sender-Via: msh04.myshophosting.com: authenticated_id: christian@kunstmade.com.au
X-Authenticated-Sender: msh04.myshophosting.com: christian@kunstmade.com.au
X-Source:
X-Source-Args:
X-Source-Dir:
Archived-At: <https://mailarchive.ietf.org/arch/msg/core/0mHTtGQWRikhIdGCB9xPmYjXUik>
Cc: "core@ietf.org WG" <core@ietf.org>
Subject: Re: [core] Adding CRUD to the core.ll interface; was Re: draft-groves-core-dynlink-02
X-BeenThere: core@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
List-Id: "Constrained RESTful Environments \(CoRE\) Working Group list" <core.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/core>, <mailto:core-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/core/>
List-Post: <mailto:core@ietf.org>
List-Help: <mailto:core-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/core>, <mailto:core-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 28 Feb 2017 00:21:36 -0000

Hello Michael,

The abstracts contains the link to the github repository:

Interfaces -> https://github.com/core-wg/interfaces

Dynlink -> https://github.com/core-wg/dynlink

The latest versions are up there now.

Regards, Christian


On 28/02/2017 7:45 AM, Michael Koster wrote:
>
>> On Feb 27, 2017, at 7:25 AM, Michael Koster 
>> <michaeljohnkoster@gmail.com <mailto:michaeljohnkoster@gmail.com>> wrote:
>>
>> [MJK] Yes, I am proposing that the binding table use the core.ll 
>> interface, which is basically a collection resource that exposes core 
>> link-format. It can be identified as a binding table by using 
>> rt=core.bnd as a resource type, rather than a special interface type. 
>> I had intended to make this change when I made core.ll support 
>> create, update, and delete operations.
>
> I am proposing to add CRUD functionality to core.ll collections, as 
> described in section 3.4 of CoRE Interfaces, and which is consistent 
> with the current draft of CoRE Resource Directory, section 5.4 (attached)
>
>     Links in the collection MAY be Read, Updated, Added, or Removed using
>     the CoRE Link-Format or JSON Merge-Patch Content-Formats on the
>     collection resource.  Reading links uses the GET method and returns
>     an array or list containing the link-values of all selected links.
>     Links may be added to the collection using POST or PATCH methods.
>     Updates to links MUST use the PATCH method and MAY use query
>     filtering to select links for updating.  The PATCH method on links
>     MUST use the JSON Merge-Patch Content-Format (application/merge-
>     patch+json) specified in [RFC7396].
> Currently, core.ll only has GET defined (Table 2), but IMO there is no 
> reason not to add the full set of methods including PATCH. THe query 
> parameter selects one or more links for updating, and the merge-patch 
> document is applied to each selected link.
>
> At one point we discussed putting this into a separate document that 
> can be referenced from both RD and CoRE Interfaces, but it seems to 
> belong more in interfaces, where collections are described.
>
> Is there a place I could make a pull request to for a proposed update 
> to Section 4.1 of the CoRE Interfaces document? I am in the middle of 
> updating the description in CoRE RD and could do this relatively quickly.
>
> Also have some proposed tweaks to align b and lb interface definitoins 
> with OCF, but that is a separate proposal.
>
> Best regards,
>
> Michael
>
>
>