for (int x = 0; x < schema.getItems().getCount(); x++) {
XmlSchemaObject item = schema.getItems().getItem(x);
if (item instanceof XmlSchemaElement) {
addElementCrossImportsElement(schema, item);
} else if (item instanceof XmlSchemaAttribute) {
XmlSchemaAttribute attr = (XmlSchemaAttribute)item;
XmlSchemaUtils.addImportIfNeeded(schema, attr.getRefName());
XmlSchemaUtils.addImportIfNeeded(schema, attr.getSchemaTypeName());
if (attr.getSchemaType() != null) {
XmlSchemaUtils.addImportIfNeeded(schema, attr.getSchemaType().getBaseSchemaTypeName());
}
} else if (item instanceof XmlSchemaType) {
XmlSchemaType type = (XmlSchemaType)item;
addCrossImportsType(schema, type);
}