Saturday, August 18, 2007

Support for Description Set Profiles in SHAME

Today I added support in SHAME for converting Description Set Profiles (DSP for short) to Annotation Profiles (AP for short). A short introduction is perhaps in place:

SHAME is a library we have been developing within the KMR-group to automatically generate metadata editors (metadata expressed in RDF) from a configuration. The editor can be embedded, the current implementation supports java applications and a server side generated web interface. We are working on an AJAX version as well. The configuration has evolved over time into something we call an Annotation Profile which we recently (within the LUISA project) made an effort to write down a specification for.

Description Set Profile on the other hand is a specification developed within Dublin Core authored by my colleague Mikael Nilsson (chair of dc-architecture) as a formalization of the earlier thoughts on Application Profiles, see for example Heery and Patel. As the specification matured during this summer another colleague of mine, Fredrik Enoksson, has worked on a wiki format where Description Set Profiles can be authored. This formats allows both a simplified format for expressing it, a human readable presentation and an on the fly export to XML.

Hence, within SHAME I have done three things:
* Introduced a small API for representing Description Set Profiles.
* Provided a parser for the XML format.
* Done a converter to Annotation Profiles.

It should be noted that the converter is not complete, some (less common) cases will be supported as soon I have time to fix them. A few (luckily very uncommon) will never be supported due to inherent limitations to the design of SHAME. I will perhaps come back to this in another post later on.

Now, the effect of this is that you can test a newly expressed Description Set Profile to see if the result is satisfying rather quickly. In fact, the intention is to make SHAME flexible enough to be useful for editing after the design phase is over, saving time and money by avoiding the process of developing a tailored metadata authoring tool according to the profile.
The code is available in the SHAME cvs at sourceforge in the se.kth.nada.kmr.dst package.

No comments: