code: def get_tags(self, tag, quiet=1):
          
          if not self.pipeline:
              print('Please set pipeline first.')
              self.get_pipeline_alternatives(quiet)
          else:
              if tag == 'sub':
                  datapath = self.BIDS_dir + '/derivatives/' + self.pipeline + '/'
                  tag_alternatives = [
                      f.split('sub-')[1] for f in os.listdir(datapath) if os.path.isdir(datapath + f) and 'sub-' in f]
              elif tag == 'ses':
                  tag_alternatives = []
                  for sub in self.bids_tags['sub']:
                      tag_alternatives += [f.split('ses-')[1] for f in os.listdir(
                          self.BIDS_dir + '/derivatives/' + self.pipeline + '/' + 'sub-' + sub) if 'ses' in f]
                  tag_alternatives = set(tag_alternatives)
              else:
                  files = self.get_selected_files(quiet=1)
                  tag_alternatives = []
                  for f in files:
                      f = f.split('.')[0]
                      f = f.split('/')[-1]
                      tag_alternatives += [t.split('-')[1]
                                           for t in f.split('_') if t.split('-')[0] == tag]
                  tag_alternatives = set(tag_alternatives)
              if quiet == 0:
                  print(tag + ' alternatives: ' + ', '.join(tag_alternatives))
              return list(tag_alternatives)
docs: Returns which tag alternatives can be identified in the BIDS derivatives structure.