Deprecated: Function eregi() is deprecated in /home/emarkwoo/public_html/inkblots/wp-content/plugins/captcha/captcha.php on line 1360
inkBlots » rome

Archive for the 'rome' Category

Atom + Jena

Tuesday, February 1st, 2005

There is a good bit of independent work being done on bringing Atom and OWL together. This coupling would make sure the metadata of Atom feeds will play nicely in Semantic Web efforts.

I thought it would be a fun experiment to take an OWL schema for Atom, run it through Kazuki, and generate some easy-to-use classes for Atom in Jena.

It would be oh-so-simple to move data between ROME and these beans in Jena.

So here is a jar of the source and binary files for concrete Java beans that represent the Atom RDF schema, have type-safe getters/setters, and will play nicely in Jena:

    atom-jena.jar

(In addition to the standard Jena jars, you’ll need the kazuki.jar as well. Get it here.)

If this proves useful to you, drop me a note and let me know. (I can’t support it in any way, however. Use it as a starting point for your own experiments.)

Note: I edited the original OWL schema file slightly to fix a couple of resource URIs. The resulting AtomSchema.rdf is in the jar. There may also be a couple of defined Datatype properties that are actually using Objects, according to the schema. I decided not to mess with those, so be on the lookout.

Rolling with Castor

Tuesday, February 1st, 2005

I’ve begun off-hours work on an experimental project to persist ROME beans into a back-end database. I started with straight JDBC connections and my own xml mapping structure, but Robert Cooper of FeedPod fame turned me onto Castor. After getting over my initial misgivings, I quickly warmed to the suggestion.

Myth: Castor is dead. Fact: A review of the Castor website shows a lot of activity and new releases in 2004.

There are various resources out there on getting up to speed with Castor… some better than others. Here is my suggested reading list for anyone investigating Castor JDO on their own:

  1. Using Castor JDO
  2. Mapping Castor Objects to a Database with Castor JDO
  3. Cultivating your relationship with Castor JDO
  4. Data Access Object (DAO) Design Pattern

This last link is helpful to understand some of the more elegant ways to handle persisting/retrieving objects through any mechanism, Castor included.

Rome Badge

Friday, January 28th, 2005

I made a quick “Powered By ROME” badge. (It’ll serve as a placeholder until somebody comes up with something better… which shouldn’t take long.)

PoweredByRome

Please copy the image to your own server.

Jira and RSS

Tuesday, January 25th, 2005

I did the happy dance today when I discovered another business use for RSS that has already been deployed in the wild. A recent version of Jira (think Bugzilla, but cooler and only free for open source projects) provides RSS feeds for any issue in the system.

For example, here’s a Jira issue opened in the Jetspeed 2 project where they have decided to use the Rome framework for RSS:

http://issues.apache.org/jira/browse/JS2-191?page=history

The little [xml] link at the top of the left sidebar gives the RSS feed for that issue so that you can be notified when the issue is updated. Very nice.

I use Jira at work, so I’m pretty jazzed to have it already available.

All Feeds Lead to Rome

Monday, January 24th, 2005

If you’re a java developer, you should check out ROME, a Java library designed to make consuming RSS/Atom feeds, well, silly-simple. The goal of ROME is to pull in ANY syndication feed type (RSS .90, .91, .92, Atom .3, etc.) and populate canonical java beans. From what I’ve seen, it is all kinds of nifty, even though the current release is only 0.5.

Furthermore, it proved completely trivial to run a test class (using the ROME Fetcher subproject) and grab the /. feed, my own feed, and a bevy of others.

The guys working on the ROME project have been pretty responsive to the user mailing lists, so I’m getting good vibes about the whole deal. (Or dealio, as a certain nifty monkey might say.) I’m currently cooking up a personal project using Rome/Fetcher so I can dig further. More on that in another post.