boolean generate=is_public && isConcreteClass && !clazz.isAnonymousClass();
if(!generate)
return;
XmlInclude incl=Util.getAnnotation(clazz, XmlInclude.class);
if(incl != null) {
String[] schemas=incl.schema();
if(schemas != null) {
for(String schema: schemas) {
Element incl_el=xmldoc.createElement(incl.type() == XmlInclude.Type.IMPORT? "xs:import" : "xs:include");
if(incl.namespace() != null && !incl.namespace().isEmpty())
incl_el.setAttribute("namespace",incl.namespace());
incl_el.setAttribute("schemaLocation", schema);
Node first_child=xmldoc.getDocumentElement().getFirstChild();
if(first_child == null)
xmldoc.getDocumentElement().appendChild(incl_el);
else
xmldoc.getDocumentElement().insertBefore(incl_el, first_child);
}
}
if(incl.alias() != null && !incl.alias().isEmpty())
xmldoc.getDocumentElement().setAttribute("xmlns:" + incl.alias(), incl.namespace());
}
parent.appendChild(createXMLTree(xmldoc, clazz, preAppendToSimpleClassName));
}