'OK, best is a value judgement, but so be it. You\'ll get
back either the atom, rss or first template available. This
method handles the main difference between opensearch v1.0 and v1.1'

def get_best_template(self):

    if self.url:
        return self.url
    if self.get_url_by_type(u'application/atom+xml'):
        return self.get_url_by_type(u'application/atom+xml').template
    if self.get_url_by_type(u'application/rss+xml'):
        return self.get_url_by_type(u'application/rss+xml').template
    if self.get_url_by_type(u'text/xml'):
        return self.get_url_by_Type(u'text/xml').template
    if (len(self.urls) > 0):
        return self.urls[0].template
    return None
