code: def to_searchable_text_metadata(value):
      
      if not value:
          return u""
      if value is Missing.Value:
          return u""
      if is_uid(value):
          return u""
      if isinstance(value, (bool)):
          return u""
      if isinstance(value, (list, tuple)):
          for v in value:
              return to_searchable_text_metadata(v)
      if isinstance(value, (dict)):
          for k, v in value.items():
              return to_searchable_text_metadata(v)
      if is_date(value):
          return value.strftime("%Y-%m-%d")
      if not isinstance(value, basestring):
          value = str(value)
      return safe_unicode(value)
docs: Parse the given metadata value to searchable text
  
      :param value: The raw value of the metadata column
      :returns: Searchable and translated unicode value or None