Re: [apps-discuss] [rest-discuss] Re: Feedback on draft-wilde-profile-link-00

Jan Algermissen <jan.algermissen@nordsc.com> Tue, 10 April 2012 18:58 UTC

Return-Path: <jan.algermissen@nordsc.com>
X-Original-To: apps-discuss@ietfa.amsl.com
Delivered-To: apps-discuss@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 3F03211E811A for <apps-discuss@ietfa.amsl.com>; Tue, 10 Apr 2012 11:58:54 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.249
X-Spam-Level:
X-Spam-Status: No, score=-2.249 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, HELO_EQ_DE=0.35]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 0bHWt1EWw0L5 for <apps-discuss@ietfa.amsl.com>; Tue, 10 Apr 2012 11:58:53 -0700 (PDT)
Received: from moutng.kundenserver.de (moutng.kundenserver.de [212.227.126.171]) by ietfa.amsl.com (Postfix) with ESMTP id 82CCF11E80FD for <apps-discuss@ietf.org>; Tue, 10 Apr 2012 11:58:53 -0700 (PDT)
Received: from [192.168.2.103] (p548F9CC3.dip.t-dialin.net [84.143.156.195]) by mrelayeu.kundenserver.de (node=mrbap2) with ESMTP (Nemesis) id 0Lu38g-1S8IYe2WYw-011d7h; Tue, 10 Apr 2012 20:58:50 +0200
Mime-Version: 1.0 (Apple Message framework v1084)
Content-Type: text/plain; charset="us-ascii"
From: Jan Algermissen <jan.algermissen@nordsc.com>
In-Reply-To: <FFA388B3-F4D9-47AB-81EF-0761200438FB@mnot.net>
Date: Tue, 10 Apr 2012 20:58:48 +0200
Content-Transfer-Encoding: quoted-printable
Message-Id: <624F8E5E-7997-4716-AE84-78B30F7D2E38@nordsc.com>
References: <04FC3F79-93B5-4F86-82B2-42029138E202@mnot.net> <4F7F416C.3050400@berkeley.edu> <FFA388B3-F4D9-47AB-81EF-0761200438FB@mnot.net>
To: Mark Nottingham <mnot@mnot.net>
X-Mailer: Apple Mail (2.1084)
X-Provags-ID: V02:K0:H5B5E2hCIwVtejN6pRPgZ7S732hfxH/cgYfw8lcUDW8 n76CgdoRxt+F63UfS/+Llpc0sNIXMQuttuyuuhPv7D8VE7Tm/O 2HkvPeHMgggxkcLZO7gom50oytdkeWJCeo/HVQyq0swFUHBxqQ a9VBdoH0nf4UD8wN1N0bUloLpEYmlzZ7k+QFP/DZCUPXNrMXrm yNwSi8Vh8kJqdhjIsUiUxQD7ayiss1EmUaPaGhwOmC3Nj0189E xUAWWfQ+5SmCQpJfnAVICATYVGZpYM6uVpws+IRR1aV9WTjEyx qYRKXEG4M8x+0Yef7mbFkEw6i4+VqTuiw8LoT9BFHl3XRn1xPL 7v2Ux4zPsxN4A1T+4jZxV4nuPXIKBeMc6aGDBSw2VLwuupzbBx 0frmFjDlaKCng==
X-Mailman-Approved-At: Wed, 11 Apr 2012 08:06:57 -0700
Cc: Erik Wilde <dret@berkeley.edu>, "apps-discuss@ietf.org application-layer protocols" <apps-discuss@ietf.org>, REST Discuss <rest-discuss@yahoogroups.com>
Subject: Re: [apps-discuss] [rest-discuss] Re: Feedback on draft-wilde-profile-link-00
X-BeenThere: apps-discuss@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: General discussion of application-layer protocols <apps-discuss.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/apps-discuss>, <mailto:apps-discuss-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/apps-discuss>
List-Post: <mailto:apps-discuss@ietf.org>
List-Help: <mailto:apps-discuss-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/apps-discuss>, <mailto:apps-discuss-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 10 Apr 2012 18:58:54 -0000

On Apr 10, 2012, at 5:56 PM, Mark Nottingham wrote:

> > one example i am currently considering adding is atompub. currently, when you retrieve a feed, there's no way to tell it's atompub-capable just by looking at it.

The thing is that it is not necessary to *learn* this. If it is your expectation that the service you are interacting with is actually an atompub service then fine, go ahead. If the service behaves as you expect, fine; your use case succeeds.

If it isn't you'll discover that from the response and change configuration of your set of entry URIs or whatever.

The decision regarding your use case comes first and you do not need to double check at runtime. For example, you have a bookmark for your favorite search engine. Do you check every time you use that bookmark whether the search engine is still there? Or do you just use the bookmark based according to your expectations?

Likewise, what does that check for atompub capabilities buy you? The reason you check for them is that you assume they are there in the first place. If that check fails .... then what? You are in exactly the same situation as when you POST you atom entry right away and see what happens.


The nature (as in "Amazon is an online store") of services changes slowly (if at all) and the particular HTTP idioms that services use also changes slowly (e.g. creation with PUT vs. creation with POST). In REST there is, IMHO at least, a third xxx-time besides the traditional design-time and run-time. It is what I think of as 'configuration-time'. This is where a method like OPTIONS plays its part, for example. Try out a service once, learn what it is and what its particularities are and then adjust your configuration for interactions with that service. The things you discover at configuration-time are not likely to change soon. If they do, you adjust your configuration and maybe you do not need to do that , ever.

> 
> Well, what thing in this case is atom pub capable? The format that the links are occurring within, or the targets of the links themselves? I'd argue the latter. You can take that argument too far, of course, but generally I see profiles as describing format conventions, and link relations as describing behaviours of resources. Of course, some of those behaviours can be "produce this format" and some of the formatting conventions can be "link to something with this behaviour".
> 
> Am happy to be proven wrong on this, I just think we need good patterns of use / best practices to encourage reasonable design.

+1

Jan


> 
> Make sense?