docs: def get_string(self, joiner: str = " ") -> str:
          """
          Args:
              joiner(str): if the value of an extractable is not a string, join the elements
              using this string to separate them.
  
          Returns: the value of the segment as a string, using a default method to convert
          objects to strings.
          """
          if not self._value:
              return ""
          elif isinstance(self._value, list):
              return self.list2str(self._value, joiner)
          elif isinstance(self._value, dict):
              return self.dict2str(self._value, joiner)
          elif isinstance(self.value, numbers.Number):
              return str(self.value)
          elif isinstance(self._value, datetime.date):
              return self._value.strftime("%Y-%m-%d")
          elif isinstance(self._value, datetime.datetime):
              return self._value.isoformat()
          else:
              return self._value