Implementing YADIS with no new software
Martin Atkins
mart at degeneration.co.uk
Mon Oct 31 10:58:48 PST 2005
Christopher E. Granade wrote:
> Kurt Raschke wrote:
>
>>>This sort of thing works well with existing documents (whether static or
>>>dynamic), and requires nothing more than a few tags in the <head>. The
>>>only problems is that it is (X)HTML-specific. This has been raised
>>>before in terms of decoupling OpenID from (X)HTML, and I don't believe a
>>>satisfactory resolution was ever reached on that issue.
>>>
>>>-Kurt
>>>
>
> If the XHTML decoupling is an issue, couple YADIS to RDF. Then link to
> it by a method dependant on the base format. I'm none too well versed in
> RDF myself (need to learn), but it seems that an XHTML document could
> have a <link rel="meta" /> element linking to an RDF document with the
> CC license, YADIS capabilities, etc.
>
> An example of the YADIS info could be something like:
>
> <y:Capabilities>
> <y:Server protocol="OpenID" preference="0.9" href="..." />
> <y:Server protocol="LID" preference="0.7" href="..." />
> </y:Capabilities>
We've come full circle and back to where we started again. The only
difference is that you've changed the capability format to RDF rather
than the HTTP-ish format in the original proposal.
In any case, allow me to reply to this entire thread at once, since
otherwise it'll all get quite messy and redundant.
I think there are several virtues to having the capability stuff in a
separate document:
* It allows several documents to share the same capability declaration
file. (This may be a problem for LID, since I seem to remember that its
identity URLs are the same as the server URL. Maybe that's changed.)
* Related to the previous point, it means that the capability document
can be cached separately from the referencing HTML document(s). They'll
almost certainly be more cachable than, say, a LiveJournal journal page.
* An identity URL is free to return a capability document directly if it
so wishes. The indirection through an HTML document is optional.
* The format of the external capability document can be more rich than
it can be when it is crammed into the limited metadata elements in HTML.
Support for things that don't use URLs directly was mentioned.
This can be handled under the current proposal with a declaration like this:
capability: http://example.com/new/innovative/capability
version: 1.0
username: donkey
This is similar in principle to OpenID's identity delegation. It's
saying "This identity URL delegates to this user at 'donkey'".
I think that's everything...
More information about the yadis
mailing list