Re: Input on request for link relation [ w/ proposed modifications to link draft ]

Mark Nottingham <mnot@mnot.net> Mon, 21 September 2009 04:12 UTC

Return-Path: <owner-atom-syntax@mail.imc.org>
X-Original-To: ietfarch-atompub-archive@core3.amsl.com
Delivered-To: ietfarch-atompub-archive@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 486063A69CE for <ietfarch-atompub-archive@core3.amsl.com>; Sun, 20 Sep 2009 21:12:26 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -7.342
X-Spam-Level:
X-Spam-Status: No, score=-7.342 tagged_above=-999 required=5 tests=[AWL=-1.296, BAYES_00=-2.599, HELO_MISMATCH_COM=0.553, RCVD_IN_DNSWL_MED=-4]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id RgI+yNSssqdf for <ietfarch-atompub-archive@core3.amsl.com>; Sun, 20 Sep 2009 21:12:25 -0700 (PDT)
Received: from balder-227.proper.com (Balder-227.Proper.COM [192.245.12.227]) by core3.amsl.com (Postfix) with ESMTP id 1356C3A68BC for <atompub-archive@ietf.org>; Sun, 20 Sep 2009 21:12:25 -0700 (PDT)
Received: from balder-227.proper.com (localhost [127.0.0.1]) by balder-227.proper.com (8.14.2/8.14.2) with ESMTP id n8L44sSA089191 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Sun, 20 Sep 2009 21:04:54 -0700 (MST) (envelope-from owner-atom-syntax@mail.imc.org)
Received: (from majordom@localhost) by balder-227.proper.com (8.14.2/8.13.5/Submit) id n8L44sHi089190; Sun, 20 Sep 2009 21:04:54 -0700 (MST) (envelope-from owner-atom-syntax@mail.imc.org)
X-Authentication-Warning: balder-227.proper.com: majordom set sender to owner-atom-syntax@mail.imc.org using -f
Received: from mxout-08.mxes.net (mxout-08.mxes.net [216.86.168.183]) by balder-227.proper.com (8.14.2/8.14.2) with ESMTP id n8L44rEc089184 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO) for <atom-syntax@imc.org>; Sun, 20 Sep 2009 21:04:53 -0700 (MST) (envelope-from mnot@mnot.net)
Received: from [10.194.5.121] (unknown [58.171.230.51]) (using TLSv1 with cipher AES128-SHA (128/128 bits)) (No client certificate requested) by smtp.mxes.net (Postfix) with ESMTPSA id 78C22509D9; Mon, 21 Sep 2009 00:04:45 -0400 (EDT)
Subject: Re: Input on request for link relation [ w/ proposed modifications to link draft ]
Mime-Version: 1.0 (Apple Message framework v1076)
Content-Type: text/plain; charset="us-ascii"; format="flowed"; delsp="yes"
From: Mark Nottingham <mnot@mnot.net>
In-Reply-To: <966f8bd30909202043w9d558c7r286f5cfed3a8db6e@mail.gmail.com>
Date: Mon, 21 Sep 2009 14:04:38 +1000
Cc: Sam Johnston <samj@samj.net>, Lisa Dusseault <lisa.dusseault@gmail.com>, Atom-Syntax Syntax <atom-syntax@imc.org>, ietf-http-wg@w3.org
Content-Transfer-Encoding: 7bit
Message-Id: <FE0A21D1-80BC-4B42-A00A-6BB6F4C1807A@mnot.net>
References: <ca722a9e0909101030g6ccbc1e2t823f2abd19307bea@mail.gmail.com> <ADAD548E-2E95-4385-A749-7C6D5611D4F1@mnot.net> <21606dcf0909160313m1dcad47dk47c139959edb113d@mail.gmail.com> <966f8bd30909160735r43fd3c48p4059867e34ecd456@mail.gmail.com> <72D0641A-F30F-484C-ADAB-A042AA5E82DD@mnot.net> <966f8bd30909202043w9d558c7r286f5cfed3a8db6e@mail.gmail.com>
To: Brett Slatkin <brett@haxor.com>
X-Mailer: Apple Mail (2.1076)
Sender: owner-atom-syntax@mail.imc.org
Precedence: bulk
List-Archive: <http://www.imc.org/atom-syntax/mail-archive/>
List-Unsubscribe: <mailto:atom-syntax-request@imc.org?body=unsubscribe>
List-ID: <atom-syntax.imc.org>

Responses inline.

On 21/09/2009, at 1:43 PM, Brett Slatkin wrote:

> Hey Mark,
>
> Thanks for the reply.
>
> On Wed, Sep 16, 2009 at 10:51 PM, Mark Nottingham <mnot@mnot.net>  
> wrote:
>>> In that regard, it's important to note that PubSubHubbub is live for
>>> over 100 *million* feeds as of this writing. It is consumed by  
>>> dozens
>>> of companies and developers from multiple countries. There are
>>> implementations of publisher and subscriber clients in many
>>> programming languages. There are even new companies with private
>>> investment running hubs. We've had the genie out of the bottle  
>>> (since
>>> October 2008) and it's difficult to go back to ask everyone to  
>>> change
>>> things now.
>>
>> Then why are you only bringing it to the attention of the wider  
>> world now? I
>> don't mean to pick on you, but it seems like there are lots of  
>> developers
>> these days who are writing protocols in secret, and then expecting  
>> the world
>> to come along for the ride, no matter how badly they interact with  
>> the
>> infrastructure. Pubsubhubbub (PLEASE come up with a shorter name!)  
>> isn't the
>> worst in this respect by far, but still...
>
> Brad and I have been showing this protocol around for a while. We
> showed it off at an XMPP users group meeting in February
> (http://blog.webhooks.org/2009/02/22/the-great-xmpp-dispute-and-pubsubhubbub/ 
> )
> and multiple blog posts were written about it in the beginning of this
> year (http://tinyurl.com/mjvgy6) around Social Web Foo 2009. I'm not
> hooked into any standards bodies at all; is there some
> protocol-announce mailing list I should have used?

Obviously, I don't read the right blogs. :) Ideally people would have  
communicated this internally inside the IETF as well as in various  
companies that were working on it, but we don't live in that ideal  
world. Ah, well.

The best place to socialise this sort of thing in the IETF is probably  
the apps-discuss list; <https://www.ietf.org/mailman/listinfo/apps-discuss 
 >. In the W3C, it's probably www-talk; <http://lists.w3.org/Archives/Public/www-talk/ 
 >.



>>> So, this is how I would modify your description from before to be  
>>> more
>>> generic:
>>>
>>> Description: A URI for a "hub" (speaking the PubSubHubbub protocol)
>>> that enables clients to register for and publish real-time updates  
>>> to
>>> the resource.
>>>
>>> How does that sound?
>>
>> That's a start. To my mind, you need to:
>>
>> 1. Accommodate things other than Atom feeds in your protocol, if  
>> only by
>> leaving appropriate extension points for addressing it in a future
>> (hopefully soon; lots of people are interested in this, from what  
>> I've seen)
>> revision.
>
> I've opened this bug to track leaving open extensions for future  
> content types:
> http://code.google.com/p/pubsubhubbub/issues/detail?id=71
>
> We need to figure out how discovery will work (possibly XRD?) but I
> think it's doable.
>
>> 2. Publish as an Internet-Draft.
>>
>> The question that this brings to mind for me about the Link draft  
>> is whether
>> this text about registered relations is appropriate:
>>
>> "Relation types that constrain the target IRI or context IRI (e.g.,  
>> to a
>> specific media type) MUST NOT be registered."
>>
>> Obviously, that's pretty open-ended, and generally link relation  
>> types
>> shouldn't specify a media type, if they're to be broadly  
>> applicable, but
>> relations like "hub" that constrain things to specific input and  
>> output
>> formats for *generic* protocols (here, pub/sub) could be an  
>> exception. Read
>> too broadly, and this requirement could even disallow "duplicate"  
>> as we've
>> been discussing on a separate thread.
>>
>> My inclination at this point is to rewrite this as something like:
>>
>> "Registered relation types MUST NOT constrain the media type of the  
>> context
>> IRI, and MUST NOT constrain the available representation media  
>> types of the
>> target IRI. However, they MAY specify the behaviours (e.g., allowable
>> methods, request media types) and constrain the representations of  
>> target
>> resources in other ways."
>>
>> Thoughts?
>
> I like the second description here much more. It's a nice improvement
> on the original language.

Good, I think so too.

> Before PubSubHubbub is made into a
> legitimate internet draft, we'll need a better story for all content
> types (issue 71 filed above).
>
>> Regarding "hub" vs. "monitor" -- this is interesting to me, if not  
>> just
>> because people have been talking about this sort of protocol for  
>> easily more
>> than a decade, and many proposals have already been made*. As such,  
>> I think
>> there's more value in something more capable than specific, lest we  
>> all
>> drown in a sea of special-purpose, needlessly application-specific
>> protocols.
>>
>> That said, I don't think you can use one link relation for both  
>> purposes,
>> because even if they both took the same POST payloads, the further
>> interactions beyond that (the callback to you) would also need to be
>> compatible. While you could use the type attribute to distinguish  
>> between
>> which protocol is in use, that's not really what it's for; the
>> representation returned wouldn't be describing the protocol that  
>> was going
>> to commence.
>
> I can't seem to find any reference to the "monitor" relation type
> anywhere. Could you pass me a link to it?

See:
   http://tools.ietf.org/html/draft-roach-sip-http-subscribe
with a mailing list at:
   https://www.ietf.org/mailman/listinfo/sip-http-events


>> * I'm purposefully limiting my comments here to the impact on the  
>> link
>> relations draft and registry. I have many other thoughts about  
>> pubsubhubbub
>> and how suitable it is to general use; hopefully I'll have time to  
>> convey
>> them separately.
>
> I would really appreciate if you could find the time. I could really
> use some help from you and others who are familiar with the
> standardization process. This is all new to me.

Will do.

Cheers,


--
Mark Nottingham     http://www.mnot.net/