Really Simple Discovery

From Wikipedia, the free encyclopedia
Jump to: navigation, search

Really Simple Discovery (RSD) is an XML format and a publishing convention for making services exposed by blog, or other web software, discoverable by client software.

It is a way to reduce the information required to set up editing/blogging software to three well known elements:

Any other critical settings should either be defined in the RSD file related to the blog, or discoverable using the information provided.

Contents

[edit] History

RSD was authored by Daniel Berlinger in the Really Simple Discoverability 1.0 specification.

[edit] Format

To make use of RSD, the owner of a site places a link tag in the head section of the homepage which indicates the location of the RSD file. An example of what MediaWiki uses is:

<link rel="EditURI" type="application/rsd+xml" href="http://en.wikipedia.org/w/api.php?action=rsd" />

If this tag is missing or the file is not found, clients should look in the default location which is a file named rsd.xml in the webroot.[1] For example:

http://example.com/rsd.xml

[edit] Contents

Here is a sample RSD file, from "Really Simple Discoverability 1.0":

<?xml version="1.0" ?> 
<rsd version="1.0" xmlns="http://archipelago.phrasewise.com/rsd" >
    <service>
        <engineName>Blog Munging CMS</engineName> 
        <engineLink>http://www.blogmunging.com/</engineLink>
        <homePageLink>http://www.userdomain.com/</homePageLink>
        <apis>
            <api name="MetaWeblog" preferred="true" apiLink="http://example.com/xml/rpc/url" blogID="123abc" />
            <api name="Blogger" preferred="false" apiLink="http://example.com/xml/rpc/url" blogID="123abc" />
            <api name="MetaWiki" preferred="false" apiLink="http://example.com/some/other/url" blogID="123abc" />
            <api name="Antville" preferred="false" apiLink="http://example.com/yet/another/url" blogID="123abc" />
            <api name="Conversant" preferred="false" apiLink="http://example.com/xml/rpc/url" blogID="">
                <settings>
                    <docs>http://www.conversant.com/docs/api/ </docs> 
                    <notes>Additional explanation here.</notes>
                    <setting name="service-specific-setting">a value</setting> 
                    <setting name="another-setting">another value</setting> 
                    ... 
                </settings>
            </api>
        </apis>
    </service>
</rsd>

MediaWiki example[2]:

<?xml version="1.0"?>
<rsd version="1.0" xmlns="http://archipelago.phrasewise.com/rsd">
    <service>
        <apis>
            <api name="MediaWiki" preferred="true" apiLink="http://en.wikipedia.org/w/api.php" blogID="">
                <settings>
                    <docs xml:space="preserve">http://mediawiki.org/wiki/API</docs>
                    <setting name="OAuth" xml:space="preserve">false</setting>
                </settings>
            </api>
        </apis>
        <engineName xml:space="preserve">MediaWiki</engineName>
        <engineLink xml:space="preserve">http://www.mediawiki.org/</engineLink>
    </service>
</rsd>

[edit] Usage of RSD

[edit] References

  1. ^ "RFC: Really Simple Discoverability 1.0". 2007-10-16. http://tales.phrasewise.com/rfc/rsd#ODoxNTozNiBBTQdbdb. 
  2. ^ http://en.wikipedia.org/w/api.php?action=rsd
  3. ^ API discovery - StatusNet
  4. ^ [mediawiki] Contents of /trunk/phase3/includes/api/ApiRsd.php

[edit] See also

[edit] External links

Personal tools
Namespaces
Variants
Actions
Navigation
Interaction
Toolbox
Print/export
Languages