TypeMapping ImportType(XmlQualifiedName name, bool excludeFromImport) {
if (name.Name == Soap.UrType && name.Namespace == XmlSchema.Namespace)
return ImportRootMapping();
object type = FindType(name);
TypeMapping mapping = (TypeMapping)ImportedMappings[type];
if (mapping == null) {
if (type is XmlSchemaComplexType)
mapping = ImportType((XmlSchemaComplexType)type, name.Namespace, excludeFromImport);
else if (type is XmlSchemaSimpleType)
mapping = ImportDataType((XmlSchemaSimpleType)type, name.Namespace, name.Name, false);
else
throw new InvalidOperationException(Res.GetString(Res.XmlInternalError));
}
if (excludeFromImport)
mapping.IncludeInSchema = false;
return mapping;
}