Search code examples
javajakarta-eejackrabbitcontent-repository

Should I organize content in content repositories like I do in file systems?


How should I structure content in a content repository like http://jackrabbit.apache.org/?

Should the content be structured like I do in the file system? I can't find any information on this what so ever anywhere.


Solution

  • Thinking of JCR as a "file system on steroids" is often a good idea to help structure content. In Adobe CQ for example we use a tree that's fairly similar to a unix filesystem, with /libs, /apps, /etc, /var, /content etc. That helps make sense of the content, separate between system and user content and also helps setup the overall access control.

    In my opinion this makes a lot of sense for the macro structure of your content, i.e. the overall organization of things. Once you get down to micro structures that represent content pages or other data I usually forget about the filesystem and think in terms of abstract and extensible micro-trees.

    http://wiki.apache.org/jackrabbit/DavidsModel also has good pointers on how to structure content.

    My "JCR view of the world" talk, from Berlin Buzzwords 2012, gives a number of examples of how to structure JCR content, the video is at http://vimeo.com/44298693