token word: a Xanalogical Transclusion and Micropayment System Jason Rohrer University of California, Santa Cruz Dept. of Computer Science Santa Cruz, CA 95064 rohrer@cse.ucsc.edu ABSTRACT We describe token word, a web-based xanalogical hypertext system. Our system supports almost every core feature associated with Xanadu, an architecture that has been actively discussed for nearly forty years. Features include deep quotation, unbreakable references, two-way reference chasing, and frictionless micropayments that are backed by realworld currency. To our knowledge, token word is the first xanalogical system implementation to included all of these features. Furthermore, token word is the first xanalogical system of any kind to be accessible using a web browser with no additional software. Previous attempts at full xanalogical implementations took many years and were ultimately never completed. Given this historical backdrop, an additional contribution of this paper is in analyzing the development strategies that led to a relatively novel success. A live token word system is running at: http://hypertext.sf.net/token word Categories and Subject Descriptors H.5.4 [Information Interfaces and Applications]: Hypertext/Hypermedia--Architectures; K.4 [Computers and Society]: Electronic Commerce--Payment Schemes General Terms Design, Human Factors Keywords Micropayments, quotation, transclusion, Xanadu 1. INTRODUCTION Xanadu has been floating in the collective mind of the hypertext research community for nearly forty years. Xanadu is a dream and an ideal. We know that it would be great (or at least interesting) if a xanalogical system existed, but we are also resigned to the notion that such a system will probably never exist. Is Xanadu impossible? That question by itself, the impossibility question, is extraordinarily intriguing. We know that Xanadu is not impossible. The design, on paper [15], is clear enough: we just need to build it. The problem might be that no one tried to build it. But many people did try to build Xanadu over the years. The problem might be that the people trying to build it did not have sufficient resources. But people with extraordinary resources did try to build it. Will anyone argue that Autodesk did not have extraordinary software development resources in the late 1980s? Furthermore, Autodesk believed in Xanadu. The following quote from a 1988 Autodesk press release is most telling: In 1964, Xanadu was a dream in a single mind. In 1980, it was the shared goal of a small group of brilliant technologists. By 1989, it will be a product. And by 1995 it will begin to change the world. Much work remains to be done to realize the potential of Xanadu--it will take the Xanadu development team 18 months to field the first Xanadu system. [19] In the same press release, Autodesk claimed 1987 sales figures topping $79 million. Indeed, Autodesk had extraordinary resources for its time. In 1992, after four years of development and $5 million spent [8], Autodesk ceased development of Xanadu [7]. Ironically, this decision was made just when the world was ripe for the first global hypertext system [9]. We are scared of Xanadu. We hear its siren song and are tempted, but we know that many have tried and many have failed. The most frustrating factor is that none of us really know how useful Xanadu would be, even if it did exist. We can look at architecture diagrams and photographs of cardboard mock-ups [16], but these do not give us a true sense of what it would be like to use a xanalogical system. Few of us have ever played with a xanalogical user interface prototype, even fewer have paid or received a true micropayment (xanalogical or otherwise), and almost none have transcluded the work of another or had our work transcluded. Many hypertext systems have been inspired by xanalogical ideas. To our knowledge, however, none of these system support a true form of transclusion, let alone transclusion and micropayments, both of which are central to the Xanadu architecture and user experience. What is using a xanalogical system really like? Is it as useful as it sounds? What made implementing Xanadu so difficult for so many people? This paper attempts to answer these question by describing the first fully-realized xanalogical implementation. Given this historical perspective, the contributions of this paper are threefold. First, this paper analyzes the process that lead from a paper design to real-world xanalogical software. Second, this paper shows that modern technology and techniques are of utmost importance for making this implementation process possible, let alone quick. Third, this paper describes a full xanalogical system implementation from the perspective of an end-user. The novelty of this paper hinges on the implementation, which has a modern flavor, though the underlying ideas are quite old. We have achieved a novel success, where past attempts have failed, and we feel that the lessons learned from this process are valuable. 2. THE XANADU MODEL As mentioned in the above quote, Xanadu's underlying ideas were first incubated by Nelson in the 1960s [14]. These ideas evolved somewhat over the next forty years, receiving one of their most verbose presentations in Nelson's book Literary Machines, which was first published in 1981 [15]. Nelson's more recent paper on the xanalogical model is up to date in terms of modern technological trends, but the core ideas have not changed [16]. The high-level description and interpretation of Xanadu given here is based on information culled from Literary Machines, Nelson's recent lectures, and personal conversations with Nelson. The chief goal of Xanadu, distilled into a single phrase, is frictionless content reuse. This goal would be easily realized in a frictionless, copyright-free world: authors could simply copy whatever they want and reuse it however they please. In our world, however, we have copyright. Unlike other systems [11], Xanadu does not attempt to undermine copyright, but instead tries to work with it. All of the design choices and complications in the Xanadu model can be seen as mechanisms for making reuse frictionless in the face of copyright. When trying to implement unrestricted reuse in a way that works with copyright, we are faced with the following issue: copyright forbids unrestricted copying. Xanadu's central mechanism is transclusion, a form of quotation. Transclusion differs from standard quotation in that it does not involve copying of any kind. When document A transcludes a quote from document B, the quote is stored as a deep reference to the quoted material in B: words from B are not copied into A. Whenever A is viewed, the words from A are fetched from A's owner, and the necessary words from B are fetched from B's owner. Thus, even though A's owner has quoted document B, the quoted owner still retains control over the distribution and licensing of his or her words. Transclusion creates a serious problem, at least in combination with how we commonly interact with electronic documents: they change constantly. If B changes or is deleted, A's quote can break. Xanadu's solution is to forbid document change but encourage document versioning. Thus, as B is updated, all previous versions are maintained, and A's quote can point to the particular version that A's owner quoted. Each version of B is immutable, so A's quote will never break. The Xanadu model refines versioning further by describing an ever-growing, add-only, content space. When a document is created, its text is added to this space. When a document transcludes from another document, it points not to the document itself, but to the transcluded words in the content space. Thus, a document in Xanadu is a list of pointers to regions in the content space--no text is contained in the documents themselves. Versioning with this mechanism is particularly space-efficient: unchanged portions of a new document version can be transcluded from the content space instead of being duplicated. Along with requiring a new model for document maintenance, transclusion pushes us toward a new model for licensing copyrighted material. We commonly think about licensing documents only in their entirety. For example, we may assign monetary value to a printed copy of a book, but we have difficulty imagining how much a chapter, page, or paragraph of that book is worth. In the Xanadu model, when users read a quote from document B embedded in document A, they may only be accessing a small portion of B (for example, a single sentence from a 10,000-word document). Thus, B's owner must be prepared to license only a portion of B to readers. The Xanadu model handles this licensing issue with micropayments and per-character values for content. Nelson is fond of using the term nanobuck (10^-9 dollars) to describe the smallest unit of payment: documents, or portions of documents, are licensed for N nanobucks per character. For example, if N = 100, a document containing one million characters, if licensed in its entirety, would cost $0.10, while the first half would cost only $0.05. When licensing a portion of a document in the Xanadu model, users are actually licensing a region of the content space. Each character in the content space can be permanently acquired for a one-time licensing fee. Thus, if users purchase documents that overlap with regions they already own, they only pay for the portions that they have yet to acquire. Each user accumulates a "library" of acquired text regions over time and pays for each region only once. When a document is accessed that contains quotes from multiple authors, the micropayments are divided and routed to the original authors on a per-character basis. Though reading content requires payment, quoting is essentially free, since the content is not accessed during the act of quoting. In practice, an author will need to read a document before quoting from it, but this reading requires only the normal first-access payment, no matter how widely the new, quoting document is expected to be read. However, the more a document is quoted and read in quoted form, the more micropayments the original author will receive. Thus, authors benefit from the unrestricted quotation and reuse of their work: they have no financial motivation for imposing any limits. 8. REFERENCES [1] Everything2. http://www.everything2.com. [2] Kuro5hin. http://www.kuro5hin.org. [3] PayPal. http://www.paypal.com. [4] Udanax. http://www.udanax.com. [5] Wiki Wiki Web. http://c2.com/cgi/wiki?WikiWikiWeb. [6] Wikipedia. http://www.wikipedia.org. [7] Autodesk hands over control of information systems division. In J. Walker, editor, The Autodesk File. Aug. 1992. http://www.fourmilab.to/autofile/. [8] Xanadu light. TidBITS, 204, 1993. http://www.tidbits.com/tb-issues/TidBITS-204.html. [9] T. Berners-Lee, R. Cailliau, J.-F. Groff, and B. Pollermann. World-Wide Web: The information universe. Electronic Networking: Research, Applications and Policy, 1(2):74-82, 1992. [10] S. Brin and L. Page. The anatomy of a large-scale hypertextual web search engine. Computer Networks and ISDN Systems, 30(1-7):107-117, 1998. [11] I. Clarke, O. Sandberg, B. Wiley, and T. W. Hong. Freenet: A distributed anonymous information storage and retrieval system. In Workshop on Design Issues in Anonymity and Unobservability, pages 46-66, 2000. [12] D. Lowe and E. Wilde. Improving web linking using xlink. In Open Publish, 2001. [13] T. J. Lukka and B. Fallenstein. Freenet-like GUIDs for implementing xanalogical hypertext. In Proceedings of the 2002 ACM Conference on Hypertext, pages 194-195, 2002. [14] T. H. Nelson. The hypertext. In Proceedings of the World Documentation Federation Conference, 1965. [15] T. H. Nelson. Literary Machines. Mindful Press, Sausalito, CA, 1992. [16] T. H. Nelson. Xanalogical structure, needed now more than ever: parallel documents, deep links to content, deep versioning, and deep re-use. ACM Computing Surveys, 30(4es), 1999. [17] A. Silberschatz and P. B. Galvin. Operating System Concepts. Addison-Wesley, Reading, MA, 1998. [18] F. Vitali, F. Folli, and C. Tasso. Two implementations of xpointer. In Proceedings of the 2002 ACM Conference on Hypertext, pages 145-146, 2002. [19] J. Walker. Statement for the Autodesk/Xanadu press conference. In J. Walker, editor, The Autodesk File. Apr. 1988. http://www.fourmilab.to/autofile/.