docs: private SequenceMethodInfo getSequenceInfo(Stream<XsdAbstractElement> xsdElements, String className, int interfaceIndex, int unnamedIndex, String apiName, String groupName){
          List<XsdAbstractElement> xsdElementsList = xsdElements.collect(Collectors.toList());
          SequenceMethodInfo sequenceMethodInfo = new SequenceMethodInfo(xsdElementsList.stream().filter(element -> !(element instanceof XsdSequence)).collect(Collectors.toList()), interfaceIndex, unnamedIndex);
  
          for (XsdAbstractElement element : xsdElementsList) {
              if (element instanceof XsdElement){
                  String elementName = ((XsdElement) element).getName();
  
                  if (elementName != null){
                      sequenceMethodInfo.addElementName(elementName);
                  } else {
                      sequenceMethodInfo.addElementName(className + "SequenceUnnamed" + sequenceMethodInfo.getUnnamedIndex());
                      sequenceMethodInfo.incrementUnnamedIndex();
                  }
              } else {
                  if (element instanceof XsdSequence){
                      sequenceMethodInfo.receiveChildSequence(getSequenceInfo(element.getXsdElements(), className, interfaceIndex, unnamedIndex, apiName, groupName));
                  } else {
                      InterfaceInfo interfaceInfo = iterativeCreation(element, className, interfaceIndex + 1, apiName, groupName).get(0);
  
                      sequenceMethodInfo.setInterfaceIndex(interfaceInfo.getInterfaceIndex());
                      sequenceMethodInfo.addElementName(interfaceInfo.getInterfaceName());
                  }
              }
          }
  
          return sequenceMethodInfo;
      }