Archipelago
Any sea or broad sheet of water interspersed with many islands, cool software, or sneux.
Revisions: 219
RFC: Really Simple Discoverability 1.0
Author: Daniel Berlinger (daniel at circumtech dot com)
Posted: 10/31/2002 at 7:14:41 PM
Last Updated: 09/25/2003 at 1:09:20 PM
Message Number: 1330
Reads: 63699
Responses:
*

[08/11/2003: A copy of this spec can be found here courtesy of Dave Winer. I also posted one here.]

Really Simple Discovery is a way to help client software find the services needed to read, edit, or "work with" weblogging software. Although I talk about weblogging software, there's no reason this format can't apply to other forms of web client/system software that I wasn't considering, or may not even exist as of this writing. (There is an example below where I did just that.) This format is simple but flexible. One of the deisgn goals was to ensure that it would be human writeable. This was my \"test" for ensuring that the format was easy for everyone to implement.

The goal is simple. To reduce the information required to UserName, Password, and homepage URL.

Hopefully, it'll work for you.

"mysig"

PS For early adopters there is a BDG for moving from 0.6 to 1.0. Thanks for jumping in.



***The Problem

The number one customer service issue I've had with "Archipelago" is settings for services. Specifically, the "Path To Service" setting, but more generally where to point for services.

"I'm afraid I could not get very far with Archipelago. The download and install was fine, but I'm not sure what to set for the rest. I have my account with blogger (that I use now) and the site itself is hosted somewhere else. Both of these have different names and passwords. What do I do?"


The solution I propose below will simplify the discovery of settings information by reducing the information a user must supply to three well known elements. Assuming that the RSD file is generated by the blogging software (Radio, Manila, Moveable Type, SnipSnap, Conversant, Drupal, etc.) the other required bits of information not well known to the user can be easliy discovered and supplied.

***Examples of difference

Blogger has "plant.blogger.com", "api/RPC2", and the blogID. The "Path to Service is case sensitive. If a user enters "/api/rpc2" in their preferences they get an error in html, courtesy of Tomcat, that states "The requested resource (/rpc2) is not available.". The error message is subject to change in format. This same problem could apply to every case.

Moveable Type uses an endpoint of "mt/mt-xmlrpc.cgi", and the domain level of the URL depends on the installation. The site identifier is the blogID number.

Manila and Radio use "rpc2", case insensitive. Manila's domain level URL depends on the installation but it does provide the "sitename" through the ManilaRPC API. Whew! Radio has a consistent siteID (as of this writing).

Conversant has its own API plus support for basic Blogger API. It uses x|x|x identifier where the various flexible elements of Conversant are "x". Familiarity with Conversant is somewhat required. These elements are also required when specifiying a message, so you need a message "number" that looks like this x|x|x|123. Path to service is rpc2, and case insensitive (not tested).

As you can imagine, plenty of folks have struggled to get this information exactly correct for each case. Anything that helps automate the process or gives users up to date information on the specific service their employing would help mitigate this difficulty.

***RSD

I'd think that something simple, like an xml document that lists the critical info would be about right. It should be simple enough to be written by hand.

I'm calling this document "Really Simple Discoverability". I want to address the needs of blogging software, not be terribly general at first, and leave room for growth. I hope the RSS and XML folks dive in and help create a great format.

The goal is to reduce the information required to set up editing software to three well known elements. UserName, Password, and homepage URL. Any other critical bits should either be defined in the related RSD file, or discoverable using the information provided.

***Location, Location, Location

Jon Udell provided another piece to the puzzle, reminding me about the RSS link we have buried in our homepages. A similar link would serve the purpose here. This idea as it relates to RSS (I believe) was first proposed by Mark Pilgrim. It works perfectly here as well.

By inserting a link such this

<link rel="EditURI" type="application/rsd+xml" title=\"RSD" href="http:\//whereever the rsd.xml lives." />

into a homepage's header we uncouple the need to know where to find the RSD file. Each vendor can control where it makes sense for them to "place" the RSD file, accessible via the embedded URL. Client software only need to look at the homepage headers to discover where to look for more information. Excellent.

At the same time, it has been suggested that we have a "best practice" location that represents a location where clients can try to find the file in cases where the link above has been removed, broken, or simply is not present. Having surveyed where folks are keeping their RSS files, we recommend http:\//www.userdomain.com/rsd.xml

(There can be validation issues with the closed form (<something />) as shown above, which is important for say XHMTL but not for HTML 4.01 Transitional. The link will work just as well either way.)

***Elements

<service> is a container element. It's a hedge against the future.

Sub-elements of <service>

  • <engineName> a string that is the name of the engine that is providing the services being described.
  • <engineLink> is the URL to the home of the engine.
  • <homePageLink> is the URL of the users homepage.
  • <apis> is a container element.


Sub-elements of <apis>

  • <api> has 4 required attributes. "name" is a string that is the name of the api. There is a list of "well-known" names below. A name does not need to be listed here or elsewhere to be valid. (see below). Multiple api elements are allowed.
    • "preferred" is a boolean and takes either "true" or "false". The point is to allow weblog software to list all the APIs supported, but choose which one to "recommend" to the client software. Only one API should set as prefered.
    • "apiLink" is the URL for this API. The location the client should speak to.
    • "blogID" is a common bit of data that most APIs currently require. It can be specified here. If your system doesn't require it, include the attribute, but leave it blank like so blogID="" (this is demonstrated in the example.)


Optional sub-elements of <api>

The api element doesn't require these elements. Information required by more flexible or capable systems can be expressed here.

<settings> is a container element and is required if you are going to include the following optional sub-elements.

  • <docs> is a URL that points to the documentation for this API.
  • <notes> is text that should be used to explain features and their settings. Intended to be human readable.
  • <setting> requires a single attribute "name" a string which refers to the name of the "service-specific-setting". The value is the service setting. Multiple setting elements are allowed.


***Well known API names

The well known names are a list of suggested names at the time of publication (Wednesday, December 18, 2002). Being listed in this table is not required for an api name to be included in a valid RSD document. Further, we recommend that, if possible, you look to the api name implemented by the creator of that api as the definitive "name". (What is implemented is real.) To suggest additions, please use the form below. (It's broken at the moment, sorry.) (Atom (AtomPub) was added as requested here. Tuesday, October 16, 2007)

  • Atom
  • Blogger
  • MetaWeblog
  • Conversant
  • Manila
  • MetaWiki
  • Antville
  • LiveJournal


(Suggestions without an email address will not be given consideration. Thanks for your understanding and trust*. )
Suggested addition to the list:
Your email address:





***Example RSD

Example 1

Here is an early example of an RSD file for the RESTLog API.

***Extending RSD

Developers are welcome to extend RSD using modules defined in namespaces, as specified by the W3C.

A RSD feed may contain elements not described on this page, only if those elements are defined in a namespace. All core RSD elements are defined in a namespace. Below is an example that extends RSD to include two additional elements generatorAgent and errorReportsTo. Another example can be found further down the page.

Example (optional module)

***Down the road, down the way

Extension and modification should occur via modules. This should provide enough flexibility for anyone to extend the format in the direction they require. Backward compatibility must be maintained by any future versions.

As an example I wrote a module for Dave's weblog archives format. Everyone wants easy access to archives! And it displays how RSD can be flexible about its purpose. *

***Thanks

Stephan Schmidt, Seth Dillingham, Brent Simmons, and Dave Winer have all lent a hand in getting this together. Their support and ideas are greatly appreciated.

I also would like to thank all the developers who decided to join the fun and implement RSD prior to 1.0. It really helped other developers understand what RSD is accomplishing.

***Changes
  • Wiped the changes clean (they're archived)


***Notes

***Contact

Feel free to write.

***Copyright and disclaimer

© Copyright 2002 Circumstance Technology. All Rights Reserved. This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and these paragraphs are included on all such copies and derivative works.

This document may not be modified in any way, such as by removing the copyright notice or references to Circumstance Technology or other organizations. Further, while these copyright restrictions apply to the written RSD specification, no claim of ownership is made by Circumstance Technology to the format it describes. Any party may, for commercial or non-commercial purposes, implement this format without royalty or license fee to Circumstance Technology. The limited permissions granted herein are perpetual and will not be revoked by Circumstance Technology or its successors or assigns.

This document and the information contained herein is provided on an "AS IS" basis and CIRCUMSTANCE TECHNOLOGY DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.

***Trust

*We respect your privacy. We'll NEVER sell or rent your email address. Ever. We require it only to ensure that real suggestions are added to the list. Thanks for understanding.

Edit in Archipelago.
Toggle display of the XML Method Response.
alsoListedIn archipelagoStories body <a href="http://127.0.0.1:8181/arcedit/editStory?d=02CA1A9BE78790557BE78AEBEBEB4513F669BBBE25A8D853DAE8FB7C1E899B4E9B91811B383D0854EAA1A0F6CD684463B82022B4D55CEC42EB3BB972484760D1B97C29E2B270F9CB59AEEEA1CC2E4C7FCFED1367B0354102A3EEFC2C0B5E29CE0EE787472344AA48">*</a> <cite cite="http://archipelago.phrasewise.com/rsd" title="Daniel's remark..."><i>[08/11/2003: A copy of this spec can be found <a href="http://cyber.law.harvard.edu/blogs/gems/tech/rsd.html">here</a> courtesy of <a href="http://www.scripting.com/">Dave Winer</a>. I also posted one <a href="http://tales.phrasewise.com/rfc/rsd.html">here</a>.]</i></cite> Really Simple Discovery is a way to help client software find the services needed to read, edit, or "work with" weblogging software. Although I talk about weblogging software, there's no reason this format can't apply to other forms of web client/system software that I wasn't considering, or may not even exist as of this writing. (There is an <a href="http://archipelago.phrasewise.com/rsd#Mjo0NjoyNCBQTQdbdb">example below</a> where I did just that.) This format is simple but flexible. One of the deisgn goals was to ensure that it would be human writeable. This was my \"test" for ensuring that the format was easy for everyone to implement. The goal is simple. To reduce the information required to UserName, Password, and homepage URL. Hopefully, it'll work for you. "mysig" PS For early adopters there is a <a href="http://archipelago.phrasewise.com/stories/storyReader$1486">BDG for moving from 0.6 to 1.0</a>. Thanks for jumping in. <ul><li><a href="http://archipelago.phrasewise.com/rsd#ODoxMjo0MiBBTQdbdb" title="Permanent link to this item.">The Problem</a></li> <li><a href="http://archipelago.phrasewise.com/rsd#ODoxNDoxNyBBTQdbdb" title="Permanent link to this item.">Examples of difference</a></li> <li><a href="http://archipelago.phrasewise.com/rsd#ODoxNTowMyBBTQdbdb" title="Permanent link to this item.">RSD</a></li> <li><a href="http://archipelago.phrasewise.com/rsd#ODoxNTozNiBBTQdbdb" title="Permanent link to this item.">Location, Location, Location</a></li> <li><a href="http://archipelago.phrasewise.com/rsd#ODoxNjozMSBBTQdbdb" title="Permanent link to this item.">Elements</a></li> <li><a href="http://archipelago.phrasewise.com/rsd#ODoxNzozNCBBTQdbdb" title="Permanent link to this item.">"Well known" API names</a></li> <li><a href="http://archipelago.phrasewise.com/rsd#ODoxODozNSBBTQdbdb" title="Permanent link to this item.">Examples</a></li> <li><a href="http://archipelago.phrasewise.com/rsd#ODoxOToxMyBBTQdbdb" title="Permanent link to this item.">Extending RSD</a></li> <li><a href="http://archipelago.phrasewise.com/rsd#ODoxOTo1MCBBTQdbdb" title="Permanent link to this item.">Down the road, down the way</a></li> <li><a href="http://archipelago.phrasewise.com/rsd#ODoyMTozNCBBTQdbdb" title="Permanent link to this item.">Thanks</a></li> <li><a href="http://archipelago.phrasewise.com/rsd#ODoyMjowOSBBTQdbdb" title="Permanent link to this item.">Changes</a></li> <li><a href="http://archipelago.phrasewise.com/rsd#ODoyMjozMyBBTQdbdb" title="Permanent link to this item.">Notes</a></li> <li><a href="http://archipelago.phrasewise.com/rsd#ODoyMzowNyBBTQdbdb" title="Permanent link to this item.">Contact</a></li> <li><a href="http://archipelago.phrasewise.com/rsd#ODoyMzozNyBBTQdbdb" title="Permanent link to this item.">Copyright and Disclaimer</a></li> <li><a href="http://archipelago.phrasewise.com/rsd#ODoyNDoxMiBBTQdbdb" title="Permanent link to this item.">Trust</a></li></ul> <a name="ODoxMjo0MiBBTQdbdb">***The Problem</a> The number one customer service issue I've had with "Archipelago" is settings for services. Specifically, the "Path To Service" setting, but more generally where to point for services. <blockquote>"I'm afraid I could not get very far with Archipelago. The download and install was fine, but I'm not sure what to set for the rest. I have my account with blogger (that I use now) and the site itself is hosted somewhere else. Both of these have different names and passwords. What do I do?"</blockquote> The solution I propose below will simplify the discovery of settings information by reducing the information a user must supply to three well known elements. Assuming that the <a href="http://archipelago.phrasewise.com/rsd#ODoxNTozNiBBTQdbdb" title="Permanent link to this item.">RSD</a> file is generated by the blogging software (Radio, Manila, Moveable Type, SnipSnap, Conversant, Drupal, etc.) the other required bits of information not well known to the user can be easliy discovered and supplied. <a name="ODoxNDoxNyBBTQdbdb">***Examples of difference</a> Blogger has "plant.blogger.com", "api/RPC2", and the blogID. The "Path to Service is case sensitive. If a user enters "/api/rpc2" in their preferences they get an error in html, courtesy of Tomcat, that states "The requested resource (/rpc2) is not available.". The error message is subject to change in format. This same problem could apply to every case. Moveable Type uses an endpoint of "mt/mt-xmlrpc.cgi", and the domain level of the URL depends on the installation. The site identifier is the blogID number. Manila and Radio use "rpc2", case insensitive. Manila's domain level URL depends on the installation but it does provide the "sitename" through the ManilaRPC API. Whew! Radio has a consistent siteID (as of this writing). Conversant has its own API plus support for basic Blogger API. It uses x|x|x identifier where the various flexible elements of Conversant are "x". Familiarity with Conversant is somewhat required. These elements are also required when specifiying a message, so you need a message "number" that looks like this x|x|x|123. Path to service is rpc2, and case insensitive (not tested). As you can imagine, plenty of folks have struggled to get this information exactly correct for each case. Anything that helps automate the process or gives users up to date information on the specific service their employing would help mitigate this difficulty. <a name="ODoxNTowMyBBTQdbdb">***RSD</a> I'd think that something simple, like an xml document that lists the critical info would be about right. It should be simple enough to be written by hand. I'm calling this document "Really Simple Discoverability". I want to address the needs of blogging software, not be terribly general at first, and leave room for growth. I hope the RSS and XML folks dive in and help create a great format. The goal is to reduce the information required to set up editing software to three well known elements. UserName, Password, and homepage URL. Any other critical bits should either be defined in the related RSD file, or discoverable using the information provided. <a name="ODoxNTozNiBBTQdbdb">***Location, Location, Location</a> <a href="http://weblog.infoworld.com/udell/">Jon Udell</a> provided another piece to the puzzle, reminding me about the RSS link we have buried in our homepages. A similar link would serve the purpose here. This idea as it relates to RSS (I believe) was first proposed by <a href="http://diveintomark.org/">Mark Pilgrim</a>. It works perfectly here as well. By inserting a link such this &lt;link rel="EditURI" type="application/rsd+xml" title=\"RSD" href="http:\//whereever the rsd.xml lives." /> into a homepage's header we uncouple the need to know where to find the RSD file. Each vendor can control where it makes sense for them to "place" the RSD file, accessible via the embedded URL. Client software only need to look at the homepage headers to discover where to look for more information. Excellent. At the same time, it has been suggested that we have a "best practice" location that represents a location where clients can try to find the file in cases where the link above has been removed, broken, or simply is not present. Having surveyed where folks are keeping their RSS files, we recommend http:\//www.userdomain.com/rsd.xml (There can be validation issues with the closed form (&lt;something />) as shown above, which is important for say XHMTL but not for HTML 4.01 Transitional. The link will work just as well either way.) <a name="ODoxNjozMSBBTQdbdb">***Elements</a> &lt;service> is a container element. It's a hedge against the future. Sub-elements of &lt;service> <ul><li>&lt;engineName> a string that is the name of the engine that is providing the services being described.</li> <li>&lt;engineLink> is the URL to the home of the engine.</li> <li>&lt;homePageLink> is the URL of the users homepage.</li> <li>&lt;apis> is a container element.</li></ul> Sub-elements of &lt;apis> <ul><li>&lt;api> has 4 required attributes. "name" is a string that is the name of the api. There is a list of "well-known" names below. A name does not need to be listed here or elsewhere to be valid. (see below). Multiple api elements are allowed.</li> <ul><li>"preferred" is a boolean and takes either "true" or "false". The point is to allow weblog software to list all the APIs supported, but choose which one to "recommend" to the client software. Only one API should set as prefered.</li> <li>"apiLink" is the URL for this API. The location the client should speak to.</li> <li>"blogID" is a common bit of data that most APIs currently require. It can be specified here. If your system doesn't require it, include the attribute, but leave it blank like so blogID="" (this is demonstrated in the example.)</li></ul></ul> Optional sub-elements of &lt;api> The api element doesn't require these elements. Information required by more flexible or capable systems can be expressed here. &lt;settings> is a container element and is required if you are going to include the following optional sub-elements. <ul><li>&lt;docs> is a URL that points to the documentation for this API.</li> <li>&lt;notes> is text that should be used to explain features and their settings. Intended to be human readable.</li> <li>&lt;setting> requires a single attribute "name" a string which refers to the name of the "service-specific-setting". The value is the service setting. Multiple setting elements are allowed.</li></ul> <a name="ODoxNzozNCBBTQdbdb">***Well known API names</a> The well known names are a list of <b>suggested</b> names at the time of publication (Wednesday, December 18, 2002). Being listed in this table is <b>not</b> required for an api name to be included in a valid RSD document. Further, we recommend that, if possible, you look to the api name implemented by the creator of that api as the definitive "name". (What is implemented is real.) To suggest additions, please use the form below. <ul> <li>Blogger</li> <li>MetaWeblog</li> <li>Conversant</li> <li>Manila</li> <li>MetaWiki</li> <li>Antville</li> <li>LiveJournal</li> </ul> <center><form method="post" action="http://backend.econnergy.com/arc/ScoutSubmit.asp"> <table bgcolor="gray"> <tr> (Suggestions <b>without</b> an email address will <b>not</b> be given consideration. Thanks for your understanding and trust*. ) <td><input type="hidden" value="Zing" name="ScoutUserName"></td> <td><input type="hidden" value="RSD" name="ScoutProject"></td> <td><input type="hidden" value="Well Known API Names" name="ScoutArea"></td> <td><input type="hidden" value="API Suggestion" name="Description"></td> </tr> <tr> <td align="right">Suggested addition to the list:</td> <td><input type="text" value="" name="Extra"></td> </tr> <tr> <td align="right">Your email address:</td> <td><input type="text" value="" name="Email"></td> </tr> <tr> <td><input type="hidden" value="0" name="ForceNewBug"></td> <td><input type="hidden" value="Thanks for making a suggestion. We'll process it as promptly as possible." name="ScoutDefaultMessage"></td> <td><input type="hidden" value="1" name="FriendlyResponse"></td> </tr> <tr> <td align="right"></td> <td align="right" ><input type="submit"></td> </tr> </table> </form></center> <br /> <a name="ODoxODozNSBBTQdbdb">***Example RSD</a> <a href="http://archipelago.phrasewise.com/stories/storyReader$1368">Example 1</a> Here is <a href="http://wellformedweb.org/story/7">an early example</a> of an RSD file for the RESTLog API. <a name="ODoxOToxMyBBTQdbdb">***Extending RSD</a> Developers are welcome to extend RSD using modules defined in namespaces, as <a href="http://www.w3.org/TR/REC-xml-names/">specified by the W3C</a>. A RSD feed may contain elements not described on this page, only if those elements are defined in a namespace. All core RSD elements are defined in a namespace. Below is an example that extends RSD to include two additional elements generatorAgent and errorReportsTo. Another example can be found <a href="http://archipelago.phrasewise.com/rsd#Mjo0NjoyNCBQTQdbdb">further down the page</a>. <a href="http://archipelago.phrasewise.com/stories/storyReader$1369">Example (optional module)</a> <a name="ODoxOTo1MCBBTQdbdb">***Down the road, down the way</a> Extension and modification should occur via modules. This should provide enough flexibility for anyone to extend the format in the direction they require. <b>Backward compatibility</b> must be maintained by any future versions. <a name="Mjo0NjoyNCBQTQdbdb">As an example I wrote <a href="http://archipelago.phrasewise.com/rsdmodules/rss2archives">a module</a> for <a href="http://backend.userland.com/formatsForBlogBrowsers">Dave's weblog archives format.</a> Everyone wants easy access to archives! And it displays how RSD can be flexible about its purpose.<a href="http://archipelago.phrasewise.com/rsd#Mjo0NjoyNCBQTQdbdb" title="Permanent link to this item."> *</a></a> <a name="ODoyMTozNCBBTQdbdb">***Thanks</a> <a href="http://www.snipsnap.org/">Stephan Schmidt</a>, <a href="http://www.truerwords.net/">Seth Dillingham</a>, <a href="http://www.ranchero.com/">Brent Simmons</a>, and <a href="http://www.scripting.com/">Dave Winer</a> have all lent a hand in getting this together. Their support and ideas are greatly appreciated. I also would like to thank all the developers who decided to join the fun and implement RSD prior to 1.0. It really helped other developers understand what RSD is accomplishing. <a name="ODoyMjowOSBBTQdbdb">***Changes</a> <ul> <li>Wiped the changes clean (they're <a href="http://archipelago.phrasewise.com/stories/storyReader$1485">archived</a>)</li> </ul> <a name="ODoyMjozMyBBTQdbdb">***Notes</a> <ul> <li><a href="http://www.w3.org/TR/REC-xml-names/">XML Namespaces</a></li> <li><a href="http://www.intertwingly.net/stories/2002/09/09/gentleIntroductionToNamespaces.html">A Gentle Introduction to Namespaces</a></li> <li><a href="http://www.jclark.com/xml/xmlns.htm">XML Namespaces (John Clark)</a></li> <li><a href="http://www.xml.com/pub/a/1999/01/namespaces.html">XML Namespaces (Tim Bray)</a></li> <li>WSDL/<a href="http://www.oasis-open.org/committees/uddi-spec/">UDDI</a></li> <li><a href="http://www.intertwingly.net/stories/2002/03/15/copingWithChange.html#Conclusion">Coping with Change</a></li> <li><a href="http://www.intertwingly.net/stories/2002/02/15/aBusyDevelopersGuideToWsdl11.html">A Busy Developer's Guide to WSDL 1.1</a></li> </ul> <a name="ODoyMzowNyBBTQdbdb">***Contact</a> Feel free to <a href="http://archipelago.phrasewise.com/stories/storyReader$1372">write</a>. <a name="ODoyMzozNyBBTQdbdb">***Copyright and disclaimer</a> &copy; Copyright 2002 Circumstance Technology. All Rights Reserved. This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and these paragraphs are included on all such copies and derivative works. This document may not be modified in any way, such as by removing the copyright notice or references to Circumstance Technology or other organizations. Further, while these copyright restrictions apply to the written RSD specification, no claim of ownership is made by Circumstance Technology to the format it describes. Any party may, for commercial or non-commercial purposes, implement this format without royalty or license fee to Circumstance Technology. The limited permissions granted herein are perpetual and will not be revoked by Circumstance Technology or its successors or assigns. This document and the information contained herein is provided on an "AS IS" basis and CIRCUMSTANCE TECHNOLOGY DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. <a name="ODoyNDoxMiBBTQdbdb">***Trust</a> *We respect your privacy. We'll NEVER sell or rent your email address. Ever. We require it only to ensure that real suggestions are added to the list. Thanks for understanding. <a href="http://127.0.0.1:8181/arcedit/editStory?d=02CA1A9BE78790557BE78AEBEBEB4513F669BBBE25A8D853DAE8FB7C1E899B4E9B91811B383D0854EAA1A0F6CD684463B82022B4D55CEC42EB3BB972484760D1B97C29E2B270F9CB59AEEEA1CC2E4C7FCFED1367B0354102A3EEFC2C0B5E29CE0EE787472344AA48">Edit in Archipelago</a>. bodyType text/plain ctReads 63699 ctRevisions 219 flServerAcceptsOpml 1 inResponseTo 0 lastUpdate 20030925T13:09:20 member daniel@circumtech.com memberName Daniel Berlinger msgnum 1330 postTime 20021031T19:14:41 rendererInfo flRenderOnEntry 0 name pikeRenderer responses 1353 1359 1464 1472 1774 subject RFC: Really Simple Discoverability 1.0 url http://archipelago.phrasewise.com/rsd windowInfo expansionState height 496 left 319 scrollLine 1 top 294 width 100 ]]>

Be mindful. Be focused. Be of the moment. Be respectful.
Copyright © 1999 - 2005 Daniel Berlinger, Circumstance Technology, All Rights Reserved.