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. Skaringa is designed for speed and simplicity, supporting a wide range of types. Skaringa works with all Plain Old Java Objects (POJOs), it is not limited to special cases, like JavaBeans.