[Cosmo-dev] Cosmo Jackrabbit nodes

Vinubalaji Gopal vinu at osafoundation.org
Thu Jun 29 19:16:14 PDT 2006


Hi all,
  I was able to dump the complete repository (the Jackrabbit tree) using
a dump utility (custom function) and see the entire repository created
by Cosmo. I have put my dump file and the explanation at:
http://wiki.osafoundation.org/bin/view/Projects/CosmoJackrabbit

I believe that the ics files are parsed using the ical4j library and the
properties of the ics file are stored as jackrabbit properties (like
icalendar:vcalendar-vevent_description, etc) and as complete ics files
(part of jcr:content node).

I am planning to use similar API's to parse the vcards (Something
similar to the iCal4j for parsing iCalendar). 

There are two projects (AFAIK) that implements the vCard RFC and that
could be used for parsing. 
http://sourceforge.net/projects/vcard4j/ 
http://sourceforge.net/projects/mime-dir-j/
Both are licensed under LGPL. Suggestions about the API (including links
to other projects if any) are welcome. I am inclined towards mime-dir-j
because its labeled stable in sourceforge and source code looks neater.
I really doubt if vcard4j has any relation to ical4j, but would like to
know if its related and if so how good is the ical4j code.  


Apart from that I would also like to start a discussion on the
repository hierarchy in cosmo and the changes I will make to support
CardDAV. 

After going through the code I realized that most of the properties are
set using setProperty (which creates a property if the property does not
exist) since some of the properties of a ical may be optional. I would
like to add vcard properties in a similar fashion. 

I would like to know the importance of this two properties, part of a
calendar collection, is it defined by the spec or defined by Cosmo? :
calendar:language = en_AU
calendar:supportedComponentSet = VEVENT
I did not see any timezone (calendar:timezone) property set by Scooby,
but I am equally curious about this property?


[calendar:collection] mixin
  - calendar:description (string) copy
  - calendar:language (string) mandatory copy
  - calendar:supportedComponentSet (string) multiple copy
  - calendar:timezone (binary) copy

What is the purpose of copy attribute of a property in jackrabbit? I
could not find much details about this attribute in the jackrabbit
documentation.

--
Vinu



More information about the cosmo-dev mailing list