// TODO: arg
String targetNamespace = "http://www.jboss.com/xml/ns/javaee";
String version = "5.0";
SchemaBinding binding = JBossXBBuilder.build(root);
println("<?xml version=\"1.0\" encoding=\"UTF-8\"?>");
println("<xsd:schema xmlns=\"http://www.w3.org/2001/XMLSchema\"");
Map<String, String> nsByPrefix = getNsByPrefix(binding);
for(String prefix : nsByPrefix.keySet())
{
String namespace = binding.getNamespace(prefix);
println(" xmlns:" + prefix + "=\"" + namespace + "\"");
prefixByNs.put(namespace, prefix);
}
println(" targetNamespace=\"" + targetNamespace + "\"");
println(" version=\"" + version + "\"");
println(" elementFormDefault=\"qualified\"");
println(" >");
indent++;
Iterator<ParticleBinding> particles = binding.getElementParticles();
while(particles.hasNext())
{
ParticleBinding particle = particles.next();
dumpParticle(particle);
}
Iterator<TypeBinding> types = binding.getTypes();
while(types.hasNext())
{
TypeBinding type = types.next();
if(type.getQName().getNamespaceURI().equals(targetNamespace))
dumpType(type);
}
Iterator<ModelGroupBinding> groups = binding.getGroups();
while(groups.hasNext())
{
ModelGroupBinding modelGroup = groups.next();
dumpModelGroup(modelGroup);
}