public Map<String, Schema> getSchemas() {
Map<String, Schema> result = new HashMap<String, Schema>();
for (XmlSchema b : schemas) {
Schema schema = Schema.create(
SchemaId.create(b.id.name, b.id.desc, b.id.singleton), b.type, b.name,
b.desc);
for (XmlSchemaProperty p : b.properties) {
schema.add(SchemaProperty.create(p.name, p.fieldName, p.type, p.desc,
p.isImmutable, p.isEnum, p.defaultValue));
}
for (XmlSchemaCollection p : b.collection) {
schema.add(SchemaPropertyList.create(p.name, p.fieldName, p.parameterizedType,
p.desc, p.isImmutable, p.isEnum, p.defaultValues, p.collectionType));
}
for (XmlSchemaRef p : b.ref) {
schema.add(SchemaPropertyRef.create(p.name, p.fieldName, p.schemaName, p.desc,
p.isImmutable, p.isSingleton));
}
for (XmlSchemaRefCollection p : b.refCollection) {
schema.add(SchemaPropertyRefList.create(p.name, p.fieldName, p.schemaName,
p.desc, p.isImmutable, p.collectionType));
}
for (XmlSchemaRefMap p : b.refMap) {
schema.add(SchemaPropertyRefMap.create(p.name, p.fieldName, p.schemaName,
p.desc, p.isImmutable, p.mapType));
}
result.put(schema.getName(), schema);
}
return result;
}