This directory will contain preliminary code being investigated that
eventually will become the next major revision of XMLBeans.

Since v2 will likely break some fundamental assumptions of that are
made by v1, v2 will be done as a new codeline here.

The code today (2003-09-24) is in a very preliminary state (actually
as of today, nothing is checked in here), so should be seen as
very early work.  As v2 progresses, this notice will be updated.

Minor bugfixes and small features should be made in the v1 directory; as
the v2 project ramps up, we all will need to make sure that fixes that
are applicable to both v1 and v2 are merged into both trees.