Skaringa is an API for Java and XML language binding. It transforms Java objects into XML documents and back, and can generate XML schema definitions for a Java class. Typical applications are data exchange, object persistence, object transformation, and driving XML based presentation layers.