private XmlElementDescriptor[] doCollectElements(XmlElement context) {
    final Map<String,XmlElementDescriptor> map = new LinkedHashMap<>(5);
    XmlNSDescriptor descriptor = null;
    if (context instanceof XmlTag) {
      descriptor = ((XmlTag)context).getNSDescriptor(myDocumentDescriptor.getDefaultNamespace(), true);
    }
    processElements(createProcessor(map, descriptor instanceof XmlNSDescriptorImpl ? (XmlNSDescriptorImpl)descriptor : myDocumentDescriptor), map);
    return map.values().toArray(XmlElementDescriptor.EMPTY_ARRAY);
  }
private XmlElementDescriptor[] doCollectElements(XmlElement context)