code: private static String getFieldName(XmlSchemaChoice xsdChoice) {
          for (XmlSchemaChoiceMember alternative : xsdChoice.getItems()) {
              if (alternative instanceof XmlSchemaElement) {
                  return getFieldName((XmlSchemaElement) alternative)
                          + CHOICE_FIELD_NAME_SUFFIX;
              }
  
          }
          throw new Xsd2ConverterException(
                  "Choice without any alternative at line "
                          + xsdChoice.getLineNumber());
      }
docs: A choice is given a name built using its first alternative name (choices
  do not have names in the XSD).
  
  @param xsdChoice the XSD choice
  @return a field name to use for this choice in its parent complex type