Re: Atom revision tracking extension

Alistair Miles <alimanfoo@googlemail.com> Thu, 04 November 2010 13:48 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 03E8D3A68B5 for <ietfarch-atompub-archive@core3.amsl.com>; Thu, 4 Nov 2010 06:48:09 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -0.046
X-Spam-Level:
X-Spam-Status: No, score=-0.046 tagged_above=-999 required=5 tests=[AWL=0.200, BAYES_00=-2.599, HELO_MISMATCH_COM=0.553, J_CHICKENPOX_27=0.6, J_CHICKENPOX_28=0.6, J_CHICKENPOX_47=0.6]
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 R3dgntcAG+KD for <ietfarch-atompub-archive@core3.amsl.com>; Thu, 4 Nov 2010 06:48:07 -0700 (PDT)
Received: from hoffman.proper.com (Hoffman.Proper.COM [207.182.41.81]) by core3.amsl.com (Postfix) with ESMTP id AA9A13A68A6 for <atompub-archive@ietf.org>; Thu, 4 Nov 2010 06:48:07 -0700 (PDT)
Received: from hoffman.proper.com (localhost [127.0.0.1]) by hoffman.proper.com (8.14.4/8.14.3) with ESMTP id oA4DhSjs014463 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Thu, 4 Nov 2010 06:43:28 -0700 (MST) (envelope-from owner-atom-syntax@mail.imc.org)
Received: (from majordom@localhost) by hoffman.proper.com (8.14.4/8.13.5/Submit) id oA4DhSwe014462; Thu, 4 Nov 2010 06:43:28 -0700 (MST) (envelope-from owner-atom-syntax@mail.imc.org)
X-Authentication-Warning: hoffman.proper.com: majordom set sender to owner-atom-syntax@mail.imc.org using -f
Received: from mail-wy0-f171.google.com (mail-wy0-f171.google.com [74.125.82.171]) by hoffman.proper.com (8.14.4/8.14.3) with ESMTP id oA4DhRLP014456 for <atom-syntax@imc.org>; Thu, 4 Nov 2010 06:43:27 -0700 (MST) (envelope-from alimanfoo@googlemail.com)
Received: by wyb39 with SMTP id 39so1822606wyb.16 for <atom-syntax@imc.org>; Thu, 04 Nov 2010 06:43:26 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=gamma; h=domainkey-signature:received:received:date:from:to:cc:subject :message-id:references:mime-version:content-type:content-disposition :in-reply-to:user-agent; bh=ebP5+9AJQSTs6VPhk59rmQCOVs/XQ6djD+2FSOX1Kzw=; b=vrlnIfis1pyT3XDEbLTIlssiKRtq7zi1M+CUIQl2RqeGjzWVPxVX1G7Ng9kyjk19La 5xeBJLKUvySZDG0RfrTLLkrmd1MwCnV/79CCzM3omL4BTk4eVQpvOqOyjVIZt/FqR4Cs qoC1IkfTxDjtC4vvv4pgBtlyA/OqvZ2BkLpAs=
DomainKey-Signature: a=rsa-sha1; c=nofws; d=googlemail.com; s=gamma; h=date:from:to:cc:subject:message-id:references:mime-version :content-type:content-disposition:in-reply-to:user-agent; b=uq5SsTQ8XGpxAnbTDtYnzp8AJlZE1OSrDk8nDqGtawbP351xIVHv8P+VaDHNkPjdex ThT3xJdns+uBoQ0OIbTnF5aLcKa9oGTLvxNh8NEjAQiqznxfnXkmnA0WN+PPRWTsvUQe 1nlAfj882OCBcEAsG40beHX6xVHJBvSb/TpIA=
Received: by 10.227.143.18 with SMTP id s18mr757247wbu.112.1288878205364; Thu, 04 Nov 2010 06:43:25 -0700 (PDT)
Received: from aliman-desktop (dhcp594.well.ox.ac.uk [129.67.46.181]) by mx.google.com with ESMTPS id w29sm6447053weq.19.2010.11.04.06.43.16 (version=SSLv3 cipher=RC4-MD5); Thu, 04 Nov 2010 06:43:24 -0700 (PDT)
Date: Thu, 04 Nov 2010 13:43:14 +0000
From: Alistair Miles <alimanfoo@googlemail.com>
To: James Snell <jasnell@gmail.com>
Cc: Julian Reschke <julian.reschke@gmx.de>, Erik Wilde <dret@berkeley.edu>, atom-syntax@imc.org
Subject: Re: Atom revision tracking extension
Message-ID: <20101104134314.GB4580@aliman-desktop>
References: <20101102111107.GA14216@skiathos> <4CD055FD.5080506@berkeley.edu> <4CD0819A.6080404@gmx.de> <AANLkTiki04nBRZWkdF8O13iKR7inHmgerq-wcKKmoBZj@mail.gmail.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Disposition: inline
In-Reply-To: <AANLkTiki04nBRZWkdF8O13iKR7inHmgerq-wcKKmoBZj@mail.gmail.com>
User-Agent: Mutt/1.5.20 (2009-06-14)
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>

Hi James,

On Tue, Nov 02, 2010 at 03:47:58PM -0700, James Snell wrote:
> Ok, I was just looking over the old revision draft. I can definitely see a
> number of key changes that can be made...
> 
> 1. Drop the deleted-entry element in favor of the Atom Tombstones Draft

+1

> 2. Drop all of the link-relations in favor of those defined in RFC5829

I think this might need a bit of discussion. 

Two possible issues here...

One simple issue, the mapping from link relations defined in your revision
tracking I-D to RFC5829 is incomplete...

history -> version-history 
diff -> ???
initial-revision -> ???
current-revision -> latest-version
this-revision -> ???
prior-revision -> predecessor-version
next-revision -> successor-version

We haven't actually implemented the diff relation, but we make heavy use of
"this-revision" - it's how a client navigates from a history feed (which
might contain an incomplete representation of each revision for efficiency
reasons) to a full representation of a specific revision.

Another possible issue is that RFC5829 anticipates source-code style versioning,
defining notions of "working copy" and "checkout". We don't have any need for
these notions, and it might be easier to get consensus on a new atom revision
tracking draft if we kept it simple and limited it to consider only provision
of revision history where versioning is transparent to the client.

> 3. Refine the definition of ar:revision to:
> 
>      revision = element ar:revision {
>        atomCommonAttributes,
>        attribute label { text },
>        attribute scheme { atomIRI }?,
>        (atomAuthor?,
>         atomUpdated?,
>         atomSummary?,
>         undefinedContent)
>      }
> 
>     This gives us the simplest example:
> 
>      <ar:revision label="01" scheme="http://example.org/foo" />
> 
>     If we want to indicate who made the revision, when, and provide a
> revision comment, we would do:
> 
>     <ar:revision label="01" scheme="http://example.org/foo">
>       <author><name>James</name></author>
>       <updated>2010-12-12T12:12:12Z</updated>
>       <summary>Removed some stuff</summary>
>     </ar:revision>

+1 to add atomAuthor here

Also I suggest making it clear that the atom:summary element within ar:revision
is *the* place to put *the* revision comment for a specific revision.

Are you proposing to drop the @number attribute? What about @initial,
@final, @significant? I could live without @significant (not sure how this
is determined anyway) but @initial and @final are useful.

>   4. I'd like to drop the ar: namespace and define the revision, comment and
> host elements within the Atom namespace.
> 
>       e.g.:
>       <entry>
>         ...
>           <revision label="01" scheme="http://example.org/foo" />
>         ...
>       </entry>
> 
> Thoughts?

Doesn't matter to me either way.

I think also the intended/expected usage of the ar:comment element needs a
bit of discussion too.

Thanks,

Alistair

> 
> On Tue, Nov 2, 2010 at 2:24 PM, Julian Reschke <julian.reschke@gmx.de>wrote:
> 
> >
> > On 02.11.2010 19:18, Erik Wilde wrote:
> >
> >>
> >> hello alistair.
> >>
> >> On 2010-11-02 4:11, Alistair Miles wrote:
> >>
> >>> This is just a short note to say that we've done an implementation of
> >>> James
> >>> Snell's 2006 I-D on a revision tracking extension [1], see the
> >>> documentation
> >>> at [2].
> >>> [1] http://tools.ietf.org/html/draft-snell-atompub-revision-00
> >>> [2] http://code.google.com/p/atombeat/wiki/TutorialVersioning
> >>>
> >>
> >> http://tools.ietf.org/id/draft-brown-versioning-link-relations-07.txt is
> >> something that is more recent and seems to cover similar use cases, even
> >> though it's using only link relations instead of a mix of elements and
> >> link relations. the latest version of that is also expired (but not
> >> nearly as old as draft-snell-atompub-revision), but now that RFC 5988 is
> >> published, maybe a new version will be published soon?
> >>
> >
> > It has been published as RFC; why are you expecting a new version?
> >
> >

-- 
Alistair Miles
Head of Epidemiological Informatics
Centre for Genomics and Global Health <http://cggh.org>
The Wellcome Trust Centre for Human Genetics
Roosevelt Drive
Oxford
OX3 7BN
United Kingdom
Web: http://purl.org/net/aliman
Email: alimanfoo@gmail.com
Tel: +44 (0)1865 287669