<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=us-ascii">
<meta name=Generator content="Microsoft Word 12 (filtered medium)">
<style>
<!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:Tahoma;
        panose-1:2 11 6 4 3 5 4 4 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:"Times New Roman","serif";}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
p
        {mso-style-priority:99;
        mso-margin-top-alt:auto;
        margin-right:0in;
        mso-margin-bottom-alt:auto;
        margin-left:0in;
        font-size:12.0pt;
        font-family:"Times New Roman","serif";}
span.EmailStyle18
        {mso-style-type:personal-reply;
        font-family:"Calibri","sans-serif";
        color:#1F497D;}
.MsoChpDefault
        {mso-style-type:export-only;}
@page Section1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.Section1
        {page:Section1;}
-->
</style>
<!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang=EN-US link=blue vlink=purple>
<div class=Section1>
<p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";
color:#1F497D'>This problem gets worse because people have been educated by irresponsible
browser vendors to expect broken HTML to simply work.<o:p></o:p></span></p>
<p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";
color:#1F497D'><o:p> </o:p></span></p>
<p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";
color:#1F497D'>EHL<o:p></o:p></span></p>
<p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";
color:#1F497D'><o:p> </o:p></span></p>
<div style='border:none;border-left:solid blue 1.5pt;padding:0in 0in 0in 4.0pt'>
<div>
<div style='border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in'>
<p class=MsoNormal><b><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'>From:</span></b><span
style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'>
general-bounces@openid.net [mailto:general-bounces@openid.net] <b>On Behalf Of </b>Andrew
Arnott<br>
<b>Sent:</b> Thursday, January 08, 2009 9:38 AM<br>
<b>To:</b> Peter Williams<br>
<b>Cc:</b> general@openid.net List<br>
<b>Subject:</b> Re: [OpenID] HTML-Based Discovery incompatibilities<o:p></o:p></span></p>
</div>
</div>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal>Peter,<o:p></o:p></p>
<div>
<p class=MsoNormal><o:p> </o:p></p>
</div>
<div>
<p class=MsoNormal>I'd say what you're missing is that not all HTML is
well-formed XML. If I shot all HTML that dotnetopenid downloaded through
an XML parser, dotnetopenid code would look wonderful and perfect... and only
20% of HTML pages with OpenID tags would even be discoverable because the HTML
in the other 80% is not well-formed.<o:p></o:p></p>
</div>
<div>
<p class=MsoNormal style='margin-bottom:12.0pt'><br clear=all>
--<br>
Andrew Arnott<br>
"I [may] not agree with what you have to say, but I'll defend to the death
your right to say it." - Voltaire<br>
<br>
<o:p></o:p></p>
<div>
<p class=MsoNormal>On Thu, Jan 8, 2009 at 9:05 AM, Peter Williams <<a
href="mailto:pwilliams@rapattoni.com">pwilliams@rapattoni.com</a>> wrote:<o:p></o:p></p>
<div>
<div>
<p><span style='font-size:11.0pt;color:#1F497D'>I'm missing something (big,
obviously).</span><o:p></o:p></p>
<p><span style='font-size:11.0pt;color:#1F497D'> </span><o:p></o:p></p>
<p><span style='font-size:11.0pt;color:#1F497D'>If DotNetOpenID can delegate to
the platform for https, why cannot it delegate to the platform for XML:
just treat the HTML as an XML stream, and build a DOM tree using .NET
libraries?</span><o:p></o:p></p>
<p><span style='font-size:11.0pt;color:#1F497D'> </span><o:p></o:p></p>
<p><span style='font-size:11.0pt;color:#1F497D'> </span><o:p></o:p></p>
<p><span style='font-size:11.0pt;color:#1F497D'> </span><o:p></o:p></p>
<div style='border:none;border-left:solid blue 1.5pt;padding:0in 0in 0in 4.0pt'>
<div>
<div style='border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in'>
<p><b><span style='font-size:10.0pt'>From:</span></b><span style='font-size:
10.0pt'> <a href="mailto:general-bounces@openid.net" target="_blank">general-bounces@openid.net</a>
[mailto:<a href="mailto:general-bounces@openid.net" target="_blank">general-bounces@openid.net</a>]
<b>On Behalf Of </b>Andrew Arnott<br>
<b>Sent:</b> Thursday, January 08, 2009 8:56 AM<br>
<b>To:</b> Chris Messina<br>
<b>Cc:</b> <a href="mailto:general@openid.net" target="_blank">general@openid.net</a>
List<br>
<b>Subject:</b> Re: [OpenID] HTML-Based Discovery incompatibilities</span><o:p></o:p></p>
</div>
</div>
<div>
<div>
<p> <o:p></o:p></p>
<div>
<p>Chris,<o:p></o:p></p>
</div>
<div>
<p> <o:p></o:p></p>
</div>
<div>
<p>While you bring up a good issue, and it is a problem with the libraries, I
would be against building this into the OpenID spec because this is just
following the HTML spec, as you point out. There are many more rules in
HTML that a good RP discovery library should follow (like ignoring commented
out HTML tags, javascript, etc.), and these rules don't belong in the OpenID
spec either, IMO.<o:p></o:p></p>
</div>
<div>
<p> <o:p></o:p></p>
</div>
<div>
<p>FWIW, dotnetopenid is one library that can handle both formats you listed.
But I do not claim that it has a full browser-quality HTML parser.
Just like every library, I imagine, I had to choose how much time to
invest in HTML discovery. Unless there's a decent open-source HTML parser
available for C#, I don't think any C# openid library will ever have
"perfect" html discovery by the HTML spec anyway.<o:p></o:p></p>
</div>
<p style='margin-bottom:12.0pt'><br clear=all>
--<br>
Andrew Arnott<br>
"I [may] not agree with what you have to say, but I'll defend to the death
your right to say it." - Voltaire<o:p></o:p></p>
<div>
<p>On Thu, Jan 8, 2009 at 12:58 AM, Chris Messina <<a
href="mailto:chris.messina@gmail.com" target="_blank">chris.messina@gmail.com</a>>
wrote:<o:p></o:p></p>
<p>I just read over SS 7.3.3 on HTML-Based Discovery [1], and considering my
experience today trying to re-delegate my OpenID, I've discovered that this
section needs to updated a clarified.<br>
<br>
It turns out that relying parties are not parsing HTML rel values in a standard
way. That is, if there is more than one rel value provided for a link, some RPs
fail, whereas others work fine.<br>
<br>
In other words, this:<br>
<br>
<link rel="<span style='background:#FFFF33'>openid2.provider
openid.server</span>" href="<a href="http://factoryjoe.com/blog/"
target="_blank">http://factoryjoe.com/blog/</a>" /><br>
<link rel="<span style='background:#FFFF33'>openid2.local_id
openid.delegate</span>" href="<a href="http://factoryjoe.com/blog/"
target="_blank">http://factoryjoe.com/blog/</a>" /><br>
<br>
is not the same as this:<br>
<br>
<link rel="<span style='background:#FFFF33'>openid2.provider</span>"
href="<a href="http://factoryjoe.com/blog/?openid_server=1" target="_blank">http://factoryjoe.com/blog/?openid_server=1</a>"
/><br>
<link rel="<span style='background:#FFFF33'>openid2.local_id</span>"
href="<a href="http://factoryjoe.com/blog/author/factoryjoe/"
target="_blank">http://factoryjoe.com/blog/author/factoryjoe/</a>" /><br>
<link rel="<span style='background:#FFFF33'>openid.server</span>"
href="<a href="http://factoryjoe.com/blog/?openid_server=1" target="_blank">http://factoryjoe.com/blog/?openid_server=1</a>"
/><br>
<link rel="<span style='background:#FFFF33'>openid.delegate</span>"
href="<a href="http://factoryjoe.com/blog/author/factoryjoe/"
target="_blank">http://factoryjoe.com/blog/author/factoryjoe/</a>" /><br>
<br>
It's my understanding that the rel attribute should be able to contain several
values.<o:p></o:p></p>
<div>
<p> <o:p></o:p></p>
</div>
<div>
<p>But I can tell you that IntenseDebate, for example, failed when delegation
was setup using the former code. It only worked when I broke out the two links
into four.<o:p></o:p></p>
</div>
<div>
<p> <o:p></o:p></p>
</div>
<div>
<p>I'm not sure if this is an issue with the libraries or what, but I'd like to
know if other people have experienced this problem, and if we can improve the
language in the spec to make sure that people understand that they need to look
for the presence of an element in a rel value -- not that the *entire* value is
one element.<o:p></o:p></p>
<div>
<p> <o:p></o:p></p>
</div>
<div>
<p style='margin-bottom:12.0pt'>Chris<br>
<br>
[1] <a
href="http://openid.net/specs/openid-authentication-2_0.html#html_disco"
target="_blank">http://openid.net/specs/openid-authentication-2_0.html#html_disco</a><br>
<br>
-- <br>
Chris Messina<br>
Citizen-Participant &<br>
Open Web Advocate-at-Large<br>
<br>
<a href="http://factoryjoe.com" target="_blank">factoryjoe.com</a> # <a
href="http://diso-project.org" target="_blank">diso-project.org</a><br>
<a href="http://citizenagency.com" target="_blank">citizenagency.com</a> # <a
href="http://vidoop.com" target="_blank">vidoop.com</a><br>
This email is: [ ] bloggable [X] ask first [ ]
private<o:p></o:p></p>
</div>
</div>
<p style='margin-bottom:12.0pt'><br>
_______________________________________________<br>
general mailing list<br>
<a href="mailto:general@openid.net" target="_blank">general@openid.net</a><br>
<a href="http://openid.net/mailman/listinfo/general" target="_blank">http://openid.net/mailman/listinfo/general</a><o:p></o:p></p>
</div>
<p> <o:p></o:p></p>
</div>
</div>
</div>
</div>
</div>
</div>
<p class=MsoNormal><o:p> </o:p></p>
</div>
</div>
</div>
</body>
</html>