=================================
Welcome to Jackrabbit JCR Commons 
=================================

This is the JCR Commons component of the Apache Jackrabbit project.
This component contains a number of general-purpose classes for
use with the JCR API.
