docs: def get_list_element_from_database(database='ENDF_VII'):
      """return a string array of all the element from the database
  
      Parameters:
      ==========
      database: string. Name of database
  
      Raises:
      ======
      ValueError if database can not be found
  
      """
      _file_path = os.path.abspath(os.path.dirname(__file__))
      _ref_data_folder = os.path.join(_file_path, 'reference_data')
      _database_folder = os.path.join(_ref_data_folder, database)
  
      if not os.path.exists(_ref_data_folder):
          os.makedirs(_ref_data_folder)
          print("Folder to store database files has been created: '{}'".format(_ref_data_folder))
  
      if not os.path.exists(_database_folder):
          print("First time using database '{}'? ".format(database))
          print("I will retrieve and store a local copy of database'{}': ".format(database))
          download_from_github(fname=database + '.zip', path=_ref_data_folder)
  
      # if '/_elements_list.csv' NOT exist
      if not os.path.exists(_database_folder + '/_elements_list.csv'):
          # glob all .csv files
          _list_files = glob.glob(_database_folder + '/*.csv')
  
          # glob all .h5 files if NO .csv file exist
          if not _list_files:
              _list_files = glob.glob(_database_folder + '/*.h5')
  
          # test if files globed
          _empty_list_boo = not _list_files
          if _empty_list_boo is True:
              raise ValueError("'{}' does not contain any '*.csv' or '*.h5' file.".format(_database_folder))
  
          # convert path/to/file to filename only
          _list_short_filename_without_extension = [os.path.splitext(os.path.basename(_file))[0] for _file in _list_files]
  
          # isolate element names and output as list
          if '-' in _list_short_filename_without_extension[0]:
              _list_element = list(set([_name.split('-')[0] for _name in _list_short_filename_without_extension]))
          else:
              _list_letter_part = list(
                  set([re.split(r'(\d+)', _name)[0] for _name in _list_short_filename_without_extension]))
              _list_element = []
              for each_letter_part in _list_letter_part:
                  if len(each_letter_part) <= 2:
                      _list_element.append(each_letter_part)
          # save to current dir
          _list_element.sort()
          df_to_save = pd.DataFrame()
          df_to_save['elements'] = _list_element
          df_to_save.to_csv(_database_folder + '/_elements_list.csv')
          # print("NOT FOUND '{}'".format(_database_folder + '/_elements_list.csv'))
          # print("SAVED '{}'".format(_database_folder + '/_elements_list.csv'))
  
      # '/_elements_list.csv' exist
      else:
          df_to_read = pd.read_csv(_database_folder + '/_elements_list.csv')
          _list_element = list(df_to_read['elements'])
          # print("FOUND '{}'".format(_database_folder + '/_elements_list.csv'))
          # print("READ '{}'".format(_database_folder + '/_elements_list.csv'))
  
      return _list_element