currently bval-core needs xstream to compile, although xstream is NOT used to marshal XML when working with bval-jsr303 xml-descriptors. Only proprietary xml-support in bval-core uses xstream.
To minimize the number of different XML-frameworks (bval-jsr303 has a dependency to jaxb, which is OK, because this is part of the JDK) and to minimize the number of dependencies in general, we should refactor the core-classes to get rid of the mandatory xstream dependency.
A first simple way would be to remove all XStream annotation in org.apache.bval.xml and instead use the programmatic API of XStream to define the mapping and move the xstream-dependent code to a new optional mvn-module.
Another way could be to change the code from using XStream to using jaxb or to remove the code (if we do not want to keep the proprietary functionality, which is not required for the jsr303 features)
Any other ideas??