docs: def data_recognise(self, data=None):
          """Returns an unicode string indicating the data type of the data paramater"""
          data = data or self.data
          data_lower = data.lower()
          if data_lower.startswith(u"http://") or data_lower.startswith(u"https://"):
              return u'url'
          elif data_lower.startswith(u"mailto:"):
              return u'email'
          elif data_lower.startswith(u"matmsg:to:"):
              return u'emailmessage'
          elif data_lower.startswith(u"tel:"):
              return u'telephone'
          elif data_lower.startswith(u"smsto:"):
              return u'sms'
          elif data_lower.startswith(u"mmsto:"):
              return u'mms'
          elif data_lower.startswith(u"geo:"):
              return u'geo'
          elif data_lower.startswith(u"mebkm:title:"):
              return u'bookmark'
          elif data_lower.startswith(u"mecard:"):
              return u'phonebook'
          else:
              return u'text'