Re: [OAUTH-WG] [apps-discuss] Web Finger vs. Simple Web Discovery (SWD)

"Paul E. Jones" <paulej@packetizer.com> Fri, 20 April 2012 05:01 UTC

Return-Path: <paulej@packetizer.com>
X-Original-To: oauth@ietfa.amsl.com
Delivered-To: oauth@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 51C6721F8441; Thu, 19 Apr 2012 22:01:05 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.348
X-Spam-Level:
X-Spam-Status: No, score=-2.348 tagged_above=-999 required=5 tests=[AWL=0.251, BAYES_00=-2.599]
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 kid846gV3-41; Thu, 19 Apr 2012 22:01:04 -0700 (PDT)
Received: from dublin.packetizer.com (dublin.packetizer.com [75.101.130.125]) by ietfa.amsl.com (Postfix) with ESMTP id 7D9A421F852D; Thu, 19 Apr 2012 21:43:31 -0700 (PDT)
Received: from sydney (rrcs-98-101-148-48.midsouth.biz.rr.com [98.101.148.48]) (authenticated bits=0) by dublin.packetizer.com (8.14.5/8.14.5) with ESMTP id q3K4gl4d030202 (version=TLSv1/SSLv3 cipher=AES128-SHA bits=128 verify=NO); Fri, 20 Apr 2012 00:42:48 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=packetizer.com; s=dublin; t=1334896969; bh=v0AuuV0Q5NlqXAt4TVgoXLPxImzeLDpP1syOQVU5Qt8=; h=From:To:Cc:References:In-Reply-To:Subject:Date:Message-ID: MIME-Version:Content-Type:Content-Transfer-Encoding; b=Hs8g8HR9CFhhbg3P+SWCBQiLSI/gRTG3s4eh7/9C7GcXYzZvIzpbD9tNBfl9Xl8n6 oSSQMkRIKpQ8SVX9p/6iIS2LCCSaypRAXSutWDbE8UNOqAAH7BP3tbknh+RCA39oMM KXS4j9aseFbTZ3j6gQA+JKerFjQ2UnmfZScI1W/M=
From: "Paul E. Jones" <paulej@packetizer.com>
To: 'Tim Bray' <tbray@textuality.com>
References: <423611CD-8496-4F89-8994-3F837582EB21@gmx.net> <4F8852D0.4020404@cs.tcd.ie> <9452079D1A51524AA5749AD23E0039280EFE8D@exch-mbx901.corp.cloudmark.com> <sjm1unn338j.fsf@mocana.ihtfp.org> <9452079D1A51524AA5749AD23E0039280FACC3@exch-mbx901.corp.cloudmark.com> <4E1F6AAD24975D4BA5B168042967394366490B2A@TK5EX14MBXC284.redmond.corp.microsoft.com> <091401cd1ea3$e159be70$a40d3b50$@packetizer.com> <CAHBU6it3ZmTdK-mTwydXSRvGvZAYuv0FFR2EWLwdfTxQh4XV5g@mail.gmail.com>
In-Reply-To: <CAHBU6it3ZmTdK-mTwydXSRvGvZAYuv0FFR2EWLwdfTxQh4XV5g@mail.gmail.com>
Date: Fri, 20 Apr 2012 00:43:08 -0400
Message-ID: <091901cd1eb0$167a8ce0$436fa6a0$@packetizer.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
X-Mailer: Microsoft Outlook 14.0
Thread-Index: AQIAfr0IMYFP+Nqgkj5c4C1LFLKQ8QHu47mLATII4l0DGXo5TgGHkeTZAgqoPTsBaa3oyAIw2f/NldEdewA=
Content-Language: en-us
Cc: oauth@ietf.org, 'Apps Discuss' <apps-discuss@ietf.org>
Subject: Re: [OAUTH-WG] [apps-discuss] Web Finger vs. Simple Web Discovery (SWD)
X-BeenThere: oauth@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: OAUTH WG <oauth.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/oauth>, <mailto:oauth-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/oauth>
List-Post: <mailto:oauth@ietf.org>
List-Help: <mailto:oauth-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/oauth>, <mailto:oauth-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 20 Apr 2012 05:01:05 -0000

Tim,

I do not agree that it's harmful. If I removed the WF discussion off the
table, I'm still having a hard time buying into everything you said in the
blog post.

I implement various web services, largely for my own use.  Usually, I
implement all of them in XML, JSON, plain text (attribute/value pairs), AND
JavaScript (for JSONP).  For simple services, it's not hard.  I do it
because I sometimes have different wants/desires on the client side.  (For
more complex ones, I use XML.)

For your point (1):
For WebFinger, the format is simple.  The XRD and JRD definitions exist and
are clearly defined.  I think the definitions of each are natural.  It's not
hard to produce both.  

For your point (2):
That's a bias you have against XML, no two ways about it.  I tend to prefer
to run XML through a sax-style parser and pull out what I want.  But, doing
data binding is reasonable if one is dealing with complex data structures.
WebFinger is not so complex that it would need to be done that way, but so
what if developers did?  It's their code.  A lot of web services have been
written that way, so let developers choose.

You conclude with "use JSON".  By that logic, we should send the HTML5 team
back to the drawing board and have then re-write it in JSON.  Oh, HTML is a
document format.  Complex JSON isn't?  I'd argue it is whatever you want to
put in it.

In any case, I'm not going to object if the consensus of the group is to
abandon XML entirely.  I personally do not care which format(s) we use.
What bothers me, though, is that we put a stake in the ground a few years
ago and people were happy until *very* recently.  Now, we want to pull it
out of the ground and put in a whole new one.

Engineering protocols should involve thinking far down the road.  I cannot
fault anyone for having selected XML at the outset.  I cannot fault anyone
for wanting to add JSON support now for something this simple to implement
on the server.  However, what I call dangerous is declaring that JSON should
be the only format for the web, ignoring the significant investment web
developers have in XML.  The motivation for JSON?  Because it works well
with JavaScript, in spite of the fact that nobody would want to do an eval
on it, so it has to be parsed like any other format?  What about the next
web language?  Would we invent a new format for that, too?

This is like throwing out a widely deploy authentication protocol and
re-inventing that wheel, too.  Oh yeah... that would be what was done with
OpenID Connect ;-)

Seriously... is there no sense of maintaining backward compatibility and
rigidly defining protocols for the long-term?

Paul

> -----Original Message-----
> From: Tim Bray [mailto:tbray@textuality.com]
> Sent: Thursday, April 19, 2012 11:41 PM
> To: Paul E. Jones
> Cc: Mike Jones; Murray S. Kucherawy; oauth@ietf.org; Apps Discuss
> Subject: Re: [apps-discuss] [OAUTH-WG] Web Finger vs. Simple Web Discovery
> (SWD)
> 
> No. Supporting two different on-the-wire data formats is actively harmful.
> Here are two pieces which explain why:
> 
> - mnot, this month:
> http://www.mnot.net/blog/2012/04/13/json_or_xml_just_decide
> - Me, back in 2009
> 
> Pick one. -T
> 
> On Thu, Apr 19, 2012 at 8:15 PM, Paul E. Jones <paulej@packetizer.com>
> wrote:
> > Mike,
> >
> >> There are two criteria that I would consider to be essential
> >> requirements for any resulting general-purpose discovery specification:
> >>
> >> 1.  Being able to always discover per-user information with a single
> >> GET (minimizing user interface latency for mobile devices, etc.)
> >
> > WF can do that.  See:
> > $ curl -v https://packetizer.com/.well-known/\
> >          host-meta.json?resource=acct:paulej@packetizer.com
> >
> >> 2.  JSON should be required and it should be the only format required
> >> (simplicity and ease of deployment/adoption)
> >
> > See the above example.  However, I also support XML with my server.
> > It took me less than 10 minutes to code up both XML and JSON
> > representations.  Once the requested format is determined, the
> > requested URI is determined, data is pulled from the database, spitting
> out the desired format is trivial.
> >
> > Note, and very important note: supporting both XML and JSON would only
> > be a server-side requirement.  The client is at liberty to use the
> > format it prefers.  I would agree that forcing a client to support
> > both would be unacceptable, but the server?  Nothing to it.
> >
> >> SWD already meets those requirements.  If the resulting spec meets
> >> those requirements, it doesn't matter a lot whether we call it
> >> WebFinger or Simple Web Discovery, but I believe that the
> >> requirements discussion is probably the most productive one to be
> >> having at this point - not the starting point document.
> >
> > I believe WebFinger meets those requirements.  We could debate whether
> > XML should be supported, but I'll note (again) that it is there in RFC
> 6415.
> > That document isn't all that old and, frankly, it concerns me that we
> > would have a strong preference for format A one week and then Format B
> the next.
> > We are where we are and I can see reason for asking for JSON, but no
> > good reason to say we should not allow XML (on the server side).
> >
> > Paul
> >
> >
> > _______________________________________________
> > apps-discuss mailing list
> > apps-discuss@ietf.org
> > https://www.ietf.org/mailman/listinfo/apps-discuss