private XmlSchemaForm ElementForm(string ns, XmlSchemaElement element)
{
if (element.Form == XmlSchemaForm.None)
{
XmlSchemaObject parent = element;
while (parent.Parent != null)
{
parent = parent.Parent;
}
XmlSchema schema = parent as XmlSchema;
if (schema != null)
{
if (ns == null || ns.Length == 0)
{
return schema.ElementFormDefault == XmlSchemaForm.None ? XmlSchemaForm.Unqualified : schema.ElementFormDefault;
}
else
{
XmlSchemas.Preprocess(schema);
return element.QualifiedName.Namespace == null || element.QualifiedName.Namespace.Length == 0 ? XmlSchemaForm.Unqualified : XmlSchemaForm.Qualified;
}
}
return XmlSchemaForm.Qualified;
}
return element.Form;
}