XmlAttributeDescriptor[] (final XmlTag context) { TypeDescriptor type = getType(context); if (type instanceof ComplexTypeDescriptor typeDescriptor) { XmlAttributeDescriptor[] attributeDescriptors = typeDescriptor.getAttributes(context); if (context != null) { final String contextNs = context.getNamespace(); boolean seenXmlNs = false; for(String ns:context.knownNamespaces()) { if (!contextNs.equals(ns) && ns.length() > 0) { seenXmlNs |= XmlUtil.XML_NAMESPACE_URI.equals(ns); attributeDescriptors = updateAttributeDescriptorsFromAny(context, typeDescriptor, attributeDescriptors, ns); } } if (!seenXmlNs) { attributeDescriptors = updateAttributeDescriptorsFromAny(context, typeDescriptor, attributeDescriptors, XmlUtil.XML_NAMESPACE_URI); } } return attributeDescriptors; } return XmlAttributeDescriptor.EMPTY; }