[caldav] Bachelor Thesis on a RESTful API for a Groupware/OpenSocial

Thomas Koch <thomas@koch.ro> Mon, 09 April 2012 10:25 UTC

Return-Path: <thomas@koch.ro>
X-Original-To: caldav@ietfa.amsl.com
Delivered-To: caldav@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 0AACB21F8663; Mon, 9 Apr 2012 03:25:18 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 2.696
X-Spam-Level: **
X-Spam-Status: No, score=2.696 tagged_above=-999 required=5 tests=[BAYES_50=0.001, HELO_EQ_RO=1.235, HELO_IS_SMALL6=0.556, HOST_EQ_RO=0.904]
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 pSTf7hd9hZzH; Mon, 9 Apr 2012 03:25:17 -0700 (PDT)
Received: from koch.ro (koch.ro [88.198.2.104]) by ietfa.amsl.com (Postfix) with ESMTP id 0B83621F865D; Mon, 9 Apr 2012 03:25:16 -0700 (PDT)
Received: from [78.96.158.150] (helo=x121e.localnet) by koch.ro with esmtpsa (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.72) (envelope-from <thomas@koch.ro>) id 1SHBmV-00053r-Ug; Mon, 09 Apr 2012 12:25:08 +0200
From: Thomas Koch <thomas@koch.ro>
To: atom-protocol@imc.org, caldav@ietf.org, vcarddav@ietf.org, caldeveloper-l@lists.calconnect.org, icalendar@ietf.org, "opensocial-community" <opensocial-community@googlegroups.com>, rest-discuss@yahoogroups.com, users@jersey.java.net
Date: Mon, 9 Apr 2012 12:25:00 +0200
User-Agent: KMail/1.13.7 (Linux/3.2.0-2-amd64; KDE/4.7.4; x86_64; ; )
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Message-Id: <201204091225.01447.thomas@koch.ro>
Subject: [caldav] Bachelor Thesis on a RESTful API for a Groupware/OpenSocial
X-BeenThere: caldav@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
Reply-To: thomas@koch.ro
List-Id: <caldav.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/caldav>, <mailto:caldav-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/caldav>
List-Post: <mailto:caldav@ietf.org>
List-Help: <mailto:caldav-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/caldav>, <mailto:caldav-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 09 Apr 2012 10:25:18 -0000

Hi,

please allow me to bring to your attention my just finished bachelor thesis on 
the subject of the design of a restful API to be useful for a Groupware or the 
person related informations of OpenSocial.

I'd appreciate any feedback. The text will be available under a free license 
after I received the mark for it.

Points that might be of special interest for (some of) you:

 - a modernized design of CalAtom/CardAtom[1] without the need for a new 
   "feature" property
 - efficient synchronization of collections with restful HTTP
 - properties of vCard useful (or missing) for OpenSocial
 - use of OpenSearch for reports
 - use of nice small value objects replacing some functionality of Jersey 
   (Java REST framework)
 - a "resource facade" framework to support multiple "views" or media types of 
    the same data 
 - a minimal implementation of an atom pub server on top of Jersey

[1] http://robubu.com/?cat=2

http://github.com/thkoch2001/bachelor-
thesis/blob/master/latex/restful_groupware.pdf

Please be forgiving with the quality of my writing. It's a thesis written 
under time pressure and other constraints and I'm not a writer.

Best regards,

Thomas Koch, http://www.koch.ro