docs: def _get_description(self, element):
          """
          Returns the description of element.
  
          :param element: The element.
          :type element: hatemile.util.html.htmldomelement.HTMLDOMElement
          :return: The description of element.
          :rtype: str
          """
  
          description = None
          if element.has_attribute('title'):
              description = element.get_attribute('title')
          elif element.has_attribute('aria-label'):
              description = element.get_attribute('aria-label')
          elif element.has_attribute('alt'):
              description = element.get_attribute('alt')
          elif element.has_attribute('label'):
              description = element.get_attribute('label')
          elif (
              (element.has_attribute('aria-labelledby'))
              or (element.has_attribute('aria-describedby'))
          ):
              if element.has_attribute('aria-labelledby'):
                  description_ids = re.split(
                      '[ \n\r\t]+',
                      element.get_attribute('aria-labelledby').strip()
                  )
              else:
                  description_ids = re.split(
                      '[ \n\r\t]+',
                      element.get_attribute('aria-describedby').strip()
                  )
              for description_id in description_ids:
                  element_description = self.parser.find(
                      '#' + description_id
                  ).first_result()
                  if element_description is not None:
                      description = element_description.get_text_content()
                      break
          elif (
              (element.get_tag_name() == 'INPUT')
              and (element.has_attribute('type'))
          ):
              type_attribute = element.get_attribute('type').lower()
              if (
                  (
                      (type_attribute == 'button')
                      or (type_attribute == 'submit')
                      or (type_attribute == 'reset')
                  )
                  and (element.has_attribute('value'))
              ):
                  description = element.get_attribute('value')
          if not bool(description):
              description = element.get_text_content()
          return re.sub('[ \n\r\t]+', ' ', description.strip())