code: def fromHTML(cls, uri, html):
          
          discovery_types = [
              (OPENID_2_0_TYPE, 'openid2.provider', 'openid2.local_id'),
              (OPENID_1_1_TYPE, 'openid.server', 'openid.delegate'),
              ]
  
          link_attrs = html_parse.parseLinkAttrs(html)
          services = []
          for type_uri, op_endpoint_rel, local_id_rel in discovery_types:
              op_endpoint_url = html_parse.findFirstHref(
                  link_attrs, op_endpoint_rel)
              if op_endpoint_url is None:
                  continue
  
              service = cls()
              service.claimed_id = uri
              service.local_id = html_parse.findFirstHref(
                  link_attrs, local_id_rel)
              service.server_url = op_endpoint_url
              service.type_uris = [type_uri]
  
              services.append(service)
  
          return services
docs: Parse the given document as HTML looking for an OpenID <link
          rel=...>
  
          @rtype: [OpenIDServiceEndpoint]