This is the interface that a object must fulfill that is configured by the XSD implementation.
An implementation will be instantiated using the default constructor.
Then the method setTransformer is called and the second method will be setArguments.
<xsd:complexType name="implementation">
<xsd:sequence>
<xsd:element name="arguments" type="propertyseq"
minOccurs="0" maxOccurs="1"/>
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required">
<xsd:annotation>
<xsd:documentation>
The fully qualified name of the class.
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attribute name="jar" type="xsd:string" use="optional">
<xsd:annotation>
<xsd:documentation>
The location of the jar file, were the class resides.
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
</xsd:complexType>
<xsd:complexType name="propertyseq">
<xsd:sequence>
<xsd:element name="property" type="property"
minOccurs="1" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="property">
<xsd:attribute name="name" type="xsd:NMTOKEN" use="required">
<xsd:annotation>
<xsd:documentation>
The keyword of the key value pair.
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attribute name="value" type="xsd:string">
<xsd:annotation>
<xsd:documentation>
The value of the pair, if the value is not a file location.
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attribute name="file" type="xsd:string">
<xsd:annotation>
<xsd:documentation>
A filename that contains java conform property declarations.
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attribute name="url" type="xsd:string">
<xsd:annotation>
<xsd:documentation>
A URL that contains java conform property declarations.
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
<xsd:attribute name="location" type="xsd:string">
<xsd:annotation>
<xsd:documentation>
The value of the pair, if the value is a file location.
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
</xsd:complexType>