Một tùy chọn khác sẽ là sử dụng JAXB để tạo các đối tượng Java và sử dụng Hibernate để tạo một lược đồ dựa trên phân cấp lớp.
Nói như vậy, điều đó phụ thuộc vào những gì bạn đang cố gắng thực hiện và tôi nghĩ rằng các giải pháp như vậy có thể sẽ trở nên khó khăn và khó duy trì.