Wednesday, March 07, 2007

Status Report for 02/14/2007 -- 03/07/2007

Progress

1. Atom Feed for CIMA Web 2.0

(1) CIMA persons click the link to feeds which will pop up on all the parameters for them to subscribe;

(2) CIMA Client gets the http request and registers a CIMA service;

(3) CIMA Service sends a parcel with the service information users required;

(4) Atom Feed parses the parcel and convert service information into Atom Syndication format and send them back to users

2. Research methods

(1) Create a simple atom feed (xml file) sample by hand

(2) Make a service with and Create an atom feed from step(1) by using atmosphere Java library;

A brief instruction to create an atom feed:

(a) requirements: JDK 1.4.2 or 1.5

(b) download the following jar and war files at http://www.colorfulsoftware.com/projects/atomsphere

(c) export all the jar files above in the java project

(d) API(JavaDoc) http://www.colorfulsoftware.com/projects/atomsphere/api/

(e) create an atom feed by atmosphere library (sample code is shown below)

Feed feed = new Feed();
feed.addAuthor(new Author("Yu(Carol) Deng"));
feed.setId(new Id("tag:www.xxxxxxxx.com"));
feed.setTitle(new Title("Cool Atom Feed"));
feed.setUpdated(new Updated(new Date(2005,3,2)));

Entry firstEntry = new Entry();
firstEntry.setTitle(new Title("Some interesting stuff"));
firstEntry.setId(new Id("tag:www.XMML.com/2004/12/08.html"));
firstEntry.setUpdated(new Updated(new Date(2006,3,1)));
feed.addEntry(firstEntry);

FeedDoc.writeFeedDoc("foo.xml",feed,FeedDoc.encoding,FeedDoc.xml_version);

(3) Repeat step(2), use xml beans (apache project) instead;

I tried to write a program in XML beans (http://xmlbeans.apache.org/) to create an atom feed. But I found that the schema of Atom 1.0 feed follows RELAX NG Compact Schema while xml beans supports XML Schema not RELAX NG Compact Schema. I tried to find the conversion between these two, but failed. I am wondering if there is some kind of conversion between RELAX NG Compact Schema and XML Schema.

Discussion

1. The format of parcel from CIMA Service

2. The storage of the Atom feed

Future work

1. The issues described in Discussion section