Xstream+oracle+gerar schema banco em xml

Caros bom dia.

Estou iniciando meus estudos em java com xml e necessito desenvolver uma rotina de backup e restore de banco dados em xml.
Pesquisando na web encontrei a API XSTREAM estou tentando utilizar essa API para gerar schema do ORACLE.

Minha ideia e gerar um XML com seguintes configurações:

. . . . . . . .

Mais ao inves disso esta gerando a seguinte saida em XML:

ATM ATM_CODIGOS_DDD ATM CATEGORIAS ATM ENTRANTE_DIARIO ATM ENTRANTE_NIVEL_1 ATM ENTRANTE_NIVEL_1_MENSAL ATM ENTRANTE_NIVEL_2 ATM ENTRANTE_NIVEL_2_MENSAL ATM ENTRANTE_NIVEL_3 ATM ENTRANTE_NIVEL_3_MENSAL

CLASSES EM JAVA:

package schema;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import com.thoughtworks.xstream.XStream;

public class Main {
public static void main(String[] args) {
Connection connection = null;
try{
Connection conn = ConnectionMaker.getInstance(“cce”, “Cce”, “GTI2”, “UXRJOCP2”);

        String query = "Select distinct owner,table_name from all_tables";
        PreparedStatement stmt = conn.prepareStatement(query);
        ResultSet rs = stmt.executeQuery();

        ListaDatabase lb = new ListaDatabase();

        while(rs.next()){
            DataBase db = new DataBase();
            Table    tb = new Table();
            db.setDataBase(rs.getString(1));
            tb.setTableName(rs.getString(2));
            db.add(tb);
            lb.add(db);
        }

        XStream xstream = new XStream();
        xstream.addImplicitCollection(ListaDatabase.class,"databases");
        xstream.alias("Schemas",ListaDatabase.class);
        xstream.alias("DataBase",DataBase.class);
        String xml = xstream.toXML(lb);
        System.out.println(xml);
        
        stmt.close();
        rs.close();
        conn.close();
    }catch(Exception ex) {
        ex.printStackTrace();
    }
}

}

----------------------------------------------------------------//-----------------------------------------------------------

package schema;

import java.sql.Connection;
import java.sql.DriverManager;
import oracle.jdbc.driver.OracleDriver;

public class ConnectionMaker {
public static Connection getInstance(String user, String password, String sid, String url) throws Exception{
DriverManager.registerDriver(new OracleDriver());
Connection conn = DriverManager.getConnection(“jdbc:oracle:thin:@” + url + “:1521:” + sid, user, password);
conn.setAutoCommit(false);
return conn;
}
public static Connection getInstance(String user, String password, String sid) throws Exception{
return getInstance(user, password, sid, “localhost”);
}
}

----------------------------------------------------------------//-----------------------------------------------------------

package schema;

import java.util.ArrayList;
import java.util.List;

public class DataBase {
private String dataBaseName;
private List

databases = new ArrayList
();
public void setDataBase(String dataBaseName){
    this.dataBaseName = dataBaseName;
}

public String getDatabase(){
    return dataBaseName;
}

public void add(Table tb){
    this.databases.add(tb);
}

}

----------------------------------------------------------------//-----------------------------------------------------------

package schema;

import java.util.ArrayList;
import java.util.List;

public class ListaDatabase {
private List databases = new ArrayList();

public void add(DataBase db){
    this.databases.add(db);
}

}

----------------------------------------------------------------//-----------------------------------------------------------

package schema;

public class Table {
private String tableName;

public void setTableName(String tableName){
    this.tableName = tableName;
}

public String getTableName() {
    return tableName;
}

}

Desde já muito obrigado a todos.

Atenciosamente.