<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns="http://myclass"
targetNamespace="http://myclass"
elementFormDefault="qualified">
<xs:element name="Animal">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="type" type="xs:string" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
</xs:schema>
Using the xjc tool (XSD to Java Compiler) to generate classes from XML Schemas.
So you can simply run:
xjc myclass.xsd
And it will generate these files
myclass/Animal.java
myclass/ObjectFactory.java
myclass/package-info.java
Place these in your classpath.
Now you can write a simple program where you can
create instances using that class,
and then serialize it to XML using a JAXB marshaller:
import myclass.Animal;
import javax.xml.bind.*;
/*from ww w . j a va 2 s . c om*/
public class Main {
public static void main(String[] args) throws JAXBException {
Animal tiger = new Animal();
tiger.setType("A");
tiger.setValue("Tiger");
JAXBContext jaxbContext = JAXBContext.newInstance(Animal.class);
Marshaller m = jaxbContext.createMarshaller();
m.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, true);
m.marshal(tiger, System.out);
}
}