Tuscany SDO for 1.1.1 Source Distribution Readme File

See the LICENSE and NOTICE files for legal information concerning this distribution. 

See the RELEASE_NOTES file for a summary of what's new with this release.

See the BUILDING file for instructions on how to build Tuscany SDO Java from this source distribution.

Documentation

For general documentation about the Tuscany project and the SDO for Java, see the Tuscany website.
Please note that at the time of making this release, Apache Tuscany is in transition from being an Apache
incubator project to being an Apache top level project.  At the time of creating this readme,
the website can be found at 
http://incubator.apache.org/tuscany
However,  in the lifetime of this release that link will be out of date.  Please either follow any forward
references provided by that link,  or find us via the top level http:/www.apache.org page.  Most likely
you'll find us at http://tuscany.apache.org




