The OpenSocial v0.8 RESTful API Specification specifies the use of XRDS-Simple for auto-discovery.

On the other hand, the RESTful API used in OpenSocial v0.8 follows the AtomPub format, and AtomPub specifies the use of a Service Document.

This leaves container sites wondering which one to use, or if they should support both. I posted a question regarding this to the Google Group for discussing OpenSocial specifications.

Question:

Which should container sites adopt: AtomPub's Service Document or XRDS-Simple? Should they support both?

David Primmer's response:

AtomPub's Service Document is not well-suited for defining parts of a URL as templates and filling in variables. It seems to be designed for specifying relatively fixed URLs.
In that regard, XRDS-Simple is superior in that it allows discovering URLs by filling values into blanks.

On this point, Takemaru-san also pointed this out when implementing an AtomPub Perl library, and there is general agreement that using XRDS-Simple makes more sense.

Still, it's undeniably uncomfortable in the sense that it doesn't strictly adhere to the specification, and I'm wondering if this can be resolved somewhere. In the Google Group mentioned earlier, I asked, "Are there any plans to propose a specification change to the AtomPub spec authors?", but there has been no response since.

At the moment, someone named Rod Yates suggested that this specification might be applicable, so I'd like to consult with AtomPub experts and take some form of action.