docs: def make_metatab_citation_dict(t):
      """
      Return a dict with BibText key/values for metatab data
      :param t:
      :return:
      """
  
      try:
  
          if parse_app_url(t.url).proto == 'metatab':
  
              try:
                  url = parse_app_url(str(t.resolved_url)).resource_url
                  doc = t.row_generator.generator.package
  
              except AttributeError as e:
                  return False  # It isn't a resource or reference
  
              creator = doc.find_first('Root.Creator')
              author_key='author'
  
              if not creator:
                  creator = doc.find_first('Root.Wrangler')
                  author_key = 'editor'
  
              if not creator:
                  creator = doc.find_first('Root.Origin')
                  author_key = 'editor'
  
              try:
                  origin = doc['Contacts'].get('Root.Origin').get('organization').value
              except AttributeError:
                  try:
                      origin = doc.get_value('Root.Origin', doc.get_value('Name.Origin')).title()
                  except:
                      origin = None
  
              d = {
                  'type': 'dataset',
                  'name_link': t.name,
                  author_key: [HumanName(creator.value).as_dict(include_empty=False)],
                  'publisher': creator.properties.get('organization'),
                  'origin': origin,
                  'journal': '2010 - 2015 American Community Survey',
                  'title': doc['Root'].find_first_value('Root.Title') + '; ' + t.name,
                  'year': doc.get_value('Root.Year'),
                  'accessDate': '{}'.format(datetime.datetime.now().strftime('%Y-%m-%d')),
                  'url': url,
                  'version': doc.get_value('Root.Version', doc.get_value('Name.Version') ),
              }
  
              d =  { k:v for k, v in d.items() if v is not None}
  
  
              return d
  
  
          else:
              return False
  
      except (AttributeError, KeyError) as e:
          raise
          return False