return null;
SchemaType[] subTypes = curType.getAnonymousTypes();
String localName = part.substring(offset);
for (int j = 0; j < subTypes.length; j++)
{
SchemaField field = subTypes[j].getContainerField();
if (field != null && !field.isAttribute() && field.getName().getLocalPart().equals(localName))
{
curType = subTypes[j];
break cases;
}
}
return null;
}
else
{
SchemaGlobalElement elt = findElement(QNameHelper.forLNS(part.substring(offset), uri));
if (elt == null)
return null;
curType = elt.getType();
}
break;
case 'A':
case 'Q': // distinguish qualified/unqualified TBD
if (curType != null)
{
if (curType.isSimpleType())
return null;
SchemaType[] subTypes = curType.getAnonymousTypes();
String localName = part.substring(offset);
for (int j = 0; j < subTypes.length; j++)
{
SchemaField field = subTypes[j].getContainerField();
if (field != null && field.isAttribute() && field.getName().getLocalPart().equals(localName))
{
curType = subTypes[j];
break cases;
}
}