if (INTERNAL_XML_NAME.equals(descriptors[i].getXMLName())) continue;
    public static InheritanceMatch[] searchInheritance        (String name, String namespace, XMLClassDescriptor classDesc, ClassDescriptorResolver cdResolver)     {        //-- A little required logic for finding Not-Yet-Loaded        //-- descriptors        String className =JavaNaming.toJavaClassName(name);        //-- should use namespace-to-prefix mappings, but        //-- just create package for now.        Class clazz = classDesc.getJavaClass();        String pkg = null;        if (clazz != null) {            while (clazz.getDeclaringClass() != null)                clazz = clazz.getDeclaringClass();            pkg = clazz.getName();            int idx = pkg.lastIndexOf('.');            if (idx >= 0) {                pkg = pkg.substring(0, idx+1);                className = pkg + className;            }        }        cdResolver.resolve(className, classDesc.getClass().getClassLoader());        //-- end Not-Yet-Loaded descriptor logic        Vector inheritanceList = null;        XMLFieldDescriptor descriptor  = null;        ClassDescriptorEnumeration cde = cdResolver.resolveAllByXMLName(name, namespace, null);        XMLFieldDescriptor[] descriptors = classDesc.getElementDescriptors();        XMLClassDescriptor cdInherited = null;        if (cde.hasNext()) {            while (cde.hasNext() && (descriptor == null)) {                cdInherited = cde.getNext();                Class subclass = cdInherited.getJavaClass();                for (int i = 0; i < descriptors.length; i++) {                    if (descriptors[i] == null) continue;                    //-- check for inheritence                    Class superclass = descriptors[i].getFieldType();                    // It is possible that the superclass is of type object if we use any node.                    if (superclass.isAssignableFrom(subclass) && (superclass != Object.class)) {                        descriptor = descriptors[i];                        if (inheritanceList == null)                            inheritanceList = new Vector(3);                        inheritanceList.addElement(new InheritanceMatch(descriptor, cdInherited));                    }                }            }            //-- reset inherited class descriptor, if necessary            if (descriptor == null) cdInherited = null;        }                if (inheritanceList != null) {            InheritanceMatch[] result = new InheritanceMatch[inheritanceList.size()];            inheritanceList.toArray(result);            return result;        }        return NO_MATCH_ARRAY;            }