<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>MicahLogic &#187; intentional web</title>
	<atom:link href="http://dubinko.info/blog/tags/intentional-web/feed/" rel="self" type="application/rss+xml" />
	<link>http://dubinko.info/blog</link>
	<description>From an XML geek, a reader, a writer, a connector, a man of the people (says keep hope alive)</description>
	<lastBuildDate>Fri, 27 Apr 2012 05:25:44 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>Explosive growth of RDFa</title>
		<link>http://dubinko.info/blog/2011/01/26/explosive-growth-of-rdfa/</link>
		<comments>http://dubinko.info/blog/2011/01/26/explosive-growth-of-rdfa/#comments</comments>
		<pubDate>Thu, 27 Jan 2011 02:19:49 +0000</pubDate>
		<dc:creator>mdubinko</dc:creator>
				<category><![CDATA[intentional web]]></category>
		<category><![CDATA[metadata]]></category>
		<category><![CDATA[microformats]]></category>
		<category><![CDATA[data]]></category>
		<category><![CDATA[erdf]]></category>
		<category><![CDATA[hatom]]></category>
		<category><![CDATA[hreview]]></category>
		<category><![CDATA[rdf]]></category>
		<category><![CDATA[rdfa]]></category>
		<category><![CDATA[statistics]]></category>
		<category><![CDATA[web]]></category>

		<guid isPermaLink="false">http://dubinko.info/blog/?p=917</guid>
		<description><![CDATA[Some great data from my one-time colleague Peter Mika. Based on data culled from 12 billion web pages, RDFa is on 3.5 percent of them, even after discounting &#8220;trivial&#8221; uses of it. Just look at how much that dark blue bar shot up since the last measurement, some 18 months earlier. Also of note: eRDF [...]]]></description>
			<content:encoded><![CDATA[<p>Some great <a href="https://tripletalk.wordpress.com/2011/01/25/rdfa-deployment-across-the-web/">data</a> from my one-time colleague Peter Mika. Based on data culled from 12 billion web pages, RDFa is on 3.5 percent of them, even after discounting &#8220;trivial&#8221; uses of it. Just look at how much that dark blue bar shot up since the last measurement, some 18 months earlier.</p>
<p>Also of note: eRDF has dropped off the map. hAtom and hReview are continuing their climb.</p>
<p>-m</p>
]]></content:encoded>
			<wfw:commentRss>http://dubinko.info/blog/2011/01/26/explosive-growth-of-rdfa/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Geek Thoughts: statistical argument against link shortener sustainability</title>
		<link>http://dubinko.info/blog/2010/10/24/statistical-argument-against-link-shorteners/</link>
		<comments>http://dubinko.info/blog/2010/10/24/statistical-argument-against-link-shorteners/#comments</comments>
		<pubDate>Sun, 24 Oct 2010 22:11:59 +0000</pubDate>
		<dc:creator>mdubinko</dc:creator>
				<category><![CDATA[aswemaythink]]></category>
		<category><![CDATA[everythingismiscellaneous]]></category>
		<category><![CDATA[intentional web]]></category>
		<category><![CDATA[trends]]></category>
		<category><![CDATA[URLs]]></category>
		<category><![CDATA[bitly]]></category>
		<category><![CDATA[data storage]]></category>
		<category><![CDATA[hyperlinks]]></category>
		<category><![CDATA[integrity]]></category>
		<category><![CDATA[Links]]></category>
		<category><![CDATA[tld]]></category>
		<category><![CDATA[twitter]]></category>
		<category><![CDATA[wil wheaton]]></category>

		<guid isPermaLink="false">http://dubinko.info/blog/?p=900</guid>
		<description><![CDATA[I&#8217;ve seen lots of discussion for and against link shorteners, but not specifically this line of argument: Let me grab a random shortened link from Twitter. Don&#8217;t go away, I&#8217;ll be right back. http://bit.ly/b1fYi1 OK, that&#8217;s six characters in the domain, a slash, and six more characters. 50 years from now, if bit.ly is still [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve seen lots of discussion for and against link shorteners, but not specifically this line of argument:</p>
<p>Let me grab a random shortened link from Twitter. Don&#8217;t go away, I&#8217;ll be right back.</p>
<p><a rel="nofollow" href="http://bit.ly/b1fYi1" target="_blank">http://bit.ly/b1fYi1</a></p>
<p>OK, that&#8217;s six characters in the domain, a slash, and six more characters. 50 years from now, if bit.ly is still in operation, the URLspace will be rather more crowded, and the part after the slash might be eight or nine characters. This is a significant cliff, since most people have trouble remembering more than 6 or 7 things in their head at a time. Thus, one could conclude that 50 years from now, newly minted bit.ly URLs will be less fashionable than those from newer link-shortening services, particularly if more short TLDs come online, which seems likely. In that scenario, fewer and fewer people will use bit.ly, and it will become a resource-pit as costs go up (for more database storage, among other things) while usage drops, an economic trend that has only one eventual outcome, leading to the breaking all the external links relying on this service.</p>
<p>I&#8217;ve been picking on bit.ly here, but the same principle applies to any shortener service. In fact, the more popular, the more quickly the URLspace will fill.</p>
<p>The moral: don&#8217;t use link shorteners for anything that needs to be more durable than something you&#8217;d scribble on a scrap of paper at your desk.</p>
<p>More collected Geek Thoughts at http://<a href="http://geekthoughts.info/">geekthoughts</a>.info.</p>
]]></content:encoded>
			<wfw:commentRss>http://dubinko.info/blog/2010/10/24/statistical-argument-against-link-shorteners/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Is XForms really MVC?</title>
		<link>http://dubinko.info/blog/2010/09/02/is-xforms-really-mvc/</link>
		<comments>http://dubinko.info/blog/2010/09/02/is-xforms-really-mvc/#comments</comments>
		<pubDate>Fri, 03 Sep 2010 03:56:00 +0000</pubDate>
		<dc:creator>mdubinko</dc:creator>
				<category><![CDATA[intentional web]]></category>
		<category><![CDATA[languages]]></category>
		<category><![CDATA[patternalia]]></category>
		<category><![CDATA[software]]></category>
		<category><![CDATA[stuff]]></category>
		<category><![CDATA[XForms]]></category>
		<category><![CDATA[design]]></category>
		<category><![CDATA[model]]></category>
		<category><![CDATA[mvc]]></category>
		<category><![CDATA[mvp]]></category>
		<category><![CDATA[oo]]></category>
		<category><![CDATA[pattern]]></category>
		<category><![CDATA[view]]></category>
		<category><![CDATA[web]]></category>

		<guid isPermaLink="false">http://dubinko.info/blog/?p=890</guid>
		<description><![CDATA[This epic posting on MVC helped me better understand the pattern, and all the variants that have flowed outward from the original design. One interesting observation is that the earlier designs used Views primarily as output-only, and Controllers primarily as input-only, and as a consequence the Controller was the one true path for getting data [...]]]></description>
			<content:encoded><![CDATA[<p>This <a href="http://www.aspiringcraftsman.com/2007/08/interactive-application-architecture/">epic posting</a> on MVC helped me better understand the pattern, and all the variants that have flowed outward from the original design. One interesting observation is that the earlier designs used Views primarily as output-only, and Controllers primarily as input-only, and as a consequence the Controller was the one true path for getting data into the Model.</p>
<p>But with browser forms, input and output are tightly intermingled. The View takes care of input and output. Something else has primary responsibility for mediating the data flow to and from the model&#8211;and that something has been called a Presenter. This yields the MVP pattern.</p>
<p>The terminology gets confusing quickly, but roughly</p>
<p>XForms Instance == MVP Model</p>
<p>XForms Model == MVP Presenter</p>
<p>XForms User Interface == MVP View</p>
<p>It&#8217;s not wrong to associate XForms with MVC&#8211;the term has become so blurry that it&#8217;s easy to lump variants like MVP into the same bucket. But to the extent that it makes sense to talk about more specific patterns, maybe we should be calling the XForms design pattern MVP instead of MVC. Comments? Criticism? Fire away below. -m</p>
]]></content:encoded>
			<wfw:commentRss>http://dubinko.info/blog/2010/09/02/is-xforms-really-mvc/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Grokking Selenium</title>
		<link>http://dubinko.info/blog/2010/07/07/grokking-selenium/</link>
		<comments>http://dubinko.info/blog/2010/07/07/grokking-selenium/#comments</comments>
		<pubDate>Wed, 07 Jul 2010 18:00:36 +0000</pubDate>
		<dc:creator>mdubinko</dc:creator>
				<category><![CDATA[browsers]]></category>
		<category><![CDATA[commercialism]]></category>
		<category><![CDATA[software]]></category>
		<category><![CDATA[web20]]></category>
		<category><![CDATA[architecture]]></category>
		<category><![CDATA[qa]]></category>
		<category><![CDATA[selenium]]></category>
		<category><![CDATA[testing]]></category>
		<category><![CDATA[webapp]]></category>

		<guid isPermaLink="false">http://dubinko.info/blog/?p=859</guid>
		<description><![CDATA[As the world of web apps gets more framework-y, I need to get up to speed on contemporary automation testing tools. One of the most popular ones right now is the open source Selenium project. From the look of it, that project is going through an awkward adolescent phase. For example: Selenium IDE lets you [...]]]></description>
			<content:encoded><![CDATA[<p>As the world of web apps gets more framework-y, I need to get up to speed on contemporary automation testing tools. One of the most popular ones right now is the open source <a href="http://seleniumhq.org/">Selenium</a> project. From the look of it, that project is going through an awkward adolescent phase. For example:</p>
<ul>
<li>Selenium IDE lets you record tests in a number of languages, but only HTML ones can be played back. For someone using only Selenium IDE, it&#8217;s a confusing array of choices for no apparent reason.</li>
<li>Selenium RC has bindings for lots of different languages but not for the HTML tests that are most useful in Selenium IDE. (Why not include the ability to simply play through an entire recorded  script in one call, instead of fine grained commands like selenium.key_press(input_id, 110), etc.?)</li>
<li>The list of <a href="http://seleniumhq.org/projects/">projects</a> prominently mentions Selenium Core (a JavaScript implementation), but when you click through to the documentation, it&#8217;s not mentioned. Elsewhere on the site it&#8217;s spoken of in deprecating terms.</li>
<li>If you look at the developer <a href="http://code.google.com/p/selenium/w/list">wiki</a>, all the recent attention is on Web Drivers, a new architecture for remote-controlling browsers, but those aren&#8217;t mentioned in the docs (yet) either.</li>
</ul>
<p>So yeah, right now it&#8217;s awkward and confusing. The underlying architecture of the project is undergoing a tectonic shift, something that would never see public light of day in a proprietary project. In the end it will come out leaner and meaner. What the project needs in the short term is more help from fresh outsiders who can visualize the desirable end state and help the ramped and productive developers on the project get there.</p>
<p>By the way, if this kind of problem seems interesting to you, let me know. We&#8217;re hiring. If you have any tips for getting up to speed in Selenium, comment below.</p>
<p>-m</p>
]]></content:encoded>
			<wfw:commentRss>http://dubinko.info/blog/2010/07/07/grokking-selenium/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>&#8220;Google syntax&#8221; for semantic queries?</title>
		<link>http://dubinko.info/blog/2010/06/09/google-syntax-for-semantic-queries/</link>
		<comments>http://dubinko.info/blog/2010/06/09/google-syntax-for-semantic-queries/#comments</comments>
		<pubDate>Wed, 09 Jun 2010 07:14:42 +0000</pubDate>
		<dc:creator>mdubinko</dc:creator>
				<category><![CDATA[everythingismiscellaneous]]></category>
		<category><![CDATA[intentional web]]></category>
		<category><![CDATA[Mark Logic]]></category>
		<category><![CDATA[metadata]]></category>
		<category><![CDATA[search]]></category>
		<category><![CDATA[software]]></category>
		<category><![CDATA[stuff]]></category>
		<category><![CDATA[google]]></category>
		<category><![CDATA[rdf]]></category>
		<category><![CDATA[searchmonkey]]></category>
		<category><![CDATA[semantics]]></category>
		<category><![CDATA[semweb]]></category>

		<guid isPermaLink="false">http://dubinko.info/blog/?p=831</guid>
		<description><![CDATA[Thought experiment: are there any commonly-expressed semantic queries&#8211;the kind of queries you&#8217;d run over a triple store, or perhaps a SearchMonkey-annotated web site&#8211;expressible in common type-in-a-searchbox query grammar? As a refresher, here&#8217;s some things that Google and other search engines can handle. The square brackets represent the search box into which the queries are typed, [...]]]></description>
			<content:encoded><![CDATA[<p>Thought experiment: are there any commonly-expressed semantic queries&#8211;the kind of queries you&#8217;d run over a triple store, or perhaps a <a href="http://developer.yahoo.com/searchmonkey/">SearchMonkey</a>-annotated web site&#8211;expressible in common type-in-a-searchbox query grammar?</p>
<p>As a refresher, here&#8217;s some things that Google and other search engines can handle. The square brackets represent the search box into which the queries are typed, not part of the queries themselves.</p>
<p>[term]</p>
<p>[term -butnotthis]</p>
<p>[term1 OR term2]</p>
<p>["phrase term"]</p>
<p>[tem1 OR term2 -"but not this" site:dubinko.info filetype:html]</p>
<p>So what kind of semantic queries would be usefully expressed in a similar way, avoiding SPARQL and the like? For example, maybe [by:"Micah Dubinko"] could map to a document containing a triple like &lt;this document&gt; &lt;dc:author&gt; &#8220;Micah Dubinko&#8221;. What other kinds of graph queries are interesting, common, and simple to express like this? Comments welcome.</p>
<p>-m</p>
]]></content:encoded>
			<wfw:commentRss>http://dubinko.info/blog/2010/06/09/google-syntax-for-semantic-queries/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Balisage contest: solving the wikiml problem</title>
		<link>http://dubinko.info/blog/2010/05/30/balisage-contest-solving-the-wikiml-problem/</link>
		<comments>http://dubinko.info/blog/2010/05/30/balisage-contest-solving-the-wikiml-problem/#comments</comments>
		<pubDate>Sun, 30 May 2010 20:00:48 +0000</pubDate>
		<dc:creator>mdubinko</dc:creator>
				<category><![CDATA[announcement]]></category>
		<category><![CDATA[intentional web]]></category>
		<category><![CDATA[languages]]></category>
		<category><![CDATA[Mark Logic]]></category>
		<category><![CDATA[metadata]]></category>
		<category><![CDATA[standards]]></category>
		<category><![CDATA[writing]]></category>
		<category><![CDATA[xml]]></category>

		<guid isPermaLink="false">http://dubinko.info/blog/?p=829</guid>
		<description><![CDATA[I wish I could say I had something to do with the planning of this: part of Balisage 2010 is a contest to &#8220;encourage markup experts to review and to research the current state of wiki markup languages and to generate a proposal that serves to de-babelize the current state of affairs for the long [...]]]></description>
			<content:encoded><![CDATA[<p>I wish I could say I had something to do with the planning of this: part of Balisage 2010 is a <a href="http://www.balisage.net/contest.html">contest</a> to &#8220;encourage markup experts to review and to  research the current state of wiki      markup languages and to generate a proposal that serves to  de-babelize the current state of affairs for the long haul.&#8221;  To enter, you must propose a set of concrete steps (organizational,  social, and/or      technological) that will enable wiki content interchange, a real      WYSIWYG editor, and/or wiki syntax standardization.</p>
<p>This pushes all of my buttons. It&#8217;s got structured documents, Web, parser geekery, writing, engineering, and standards. There&#8217;s a bunch of open source prior art, including <a href="http://sourceforge.net/projects/pyxmlwiki/">PyXMLWiki</a>, which I adapted from some fantastic earlier work from Rick Jelliffe.</p>
<p>Sadly, MarkLogic employees aren&#8217;t eligible to enter. Get your write-up done by July 15 and sent to <strong><em>balisage-2010-contest at marklogic dot com</em></strong>. The winner will be announced at Balisage and will take home some serious prize winnings, and also will be strongly encouraged (but not required) to give a brief summary (~10 minutes) of their winning entry.</p>
<p>Can&#8217;t wait to see what comes out of this. -m</p>
]]></content:encoded>
			<wfw:commentRss>http://dubinko.info/blog/2010/05/30/balisage-contest-solving-the-wikiml-problem/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>A Hyperlink Offering revisited</title>
		<link>http://dubinko.info/blog/2010/03/05/a-hyperlink-offering-revisited/</link>
		<comments>http://dubinko.info/blog/2010/03/05/a-hyperlink-offering-revisited/#comments</comments>
		<pubDate>Sat, 06 Mar 2010 05:52:22 +0000</pubDate>
		<dc:creator>mdubinko</dc:creator>
				<category><![CDATA[annoyance]]></category>
		<category><![CDATA[intentional web]]></category>
		<category><![CDATA[xml]]></category>
		<category><![CDATA[html5]]></category>
		<category><![CDATA[hypertext]]></category>
		<category><![CDATA[w3c]]></category>
		<category><![CDATA[xlink]]></category>

		<guid isPermaLink="false">http://dubinko.info/blog/?p=802</guid>
		<description><![CDATA[The xml-dev mailing list has been discussing XLink 1.1, which after a long quiet period popped up as a &#8220;Proposed Recommendation&#8221;, which means that a largely procedural vote is is all that stands between the document becoming a full W3C Recommendation. (The previous two revisions of the document date to 2008 and 2006, respectively) In [...]]]></description>
			<content:encoded><![CDATA[<p>The xml-dev mailing list has been discussing <a title="As of this writing, this document still lists Jamcracker as the employer of Dave Orchard...what's up with THAT?" href="http://www.w3.org/TR/xlink11/">XLink 1.1</a>, which after a long quiet period popped up as a &#8220;Proposed Recommendation&#8221;, which means that a largely procedural vote is is all that stands between the document becoming a full W3C Recommendation. (The previous two revisions of the document date to 2008 and 2006, respectively)</p>
<p>In 2005 I <a href="http://dubinko.info/blog/2005/01.html">called</a> continued development of XLink a &#8220;reanimated spectre&#8221;. But even earlier, in 2002 I wrote one of the rare fiction pieces on xml.com, <a title="A Hyperlink Offering" href="http://www.xml.com/pub/a/2002/09/25/linkoffering.html">A Hyperlink Offering</a>, which using the format of a Carrollian dialog between Tortoise and Achilles, explained a few of the problems with the XLink specification. It ended with this:</p>
<p style="padding-left: 30px;">What if the W3C pushed for Working Groups to use a future XLink, just not XLink <em>1.0</em>?</p>
<p>Indeed, this version has minor improvements. In particular, &#8220;simple&#8221; links are simpler now&#8211;you can drop an xlink:href attribute where you please and it&#8217;s now legit. The spec used to REQUIRE additional xlink:type=&#8221;simple&#8221; attributes all over the place. But it&#8217;s still awkward to use for multi-ended links, and now even farther away from the mainstream hyperlinking aspects of HTML5, which for all of its faults, embodies the grossly predominant description of linking on the web.</p>
<p>So in many ways, my longstanding disappointment with XLink is that it only ever became a tiny sliver of what it could have been. Dashed visions of <a href="http://dubinko.info/blog/2009/11/22/how-xanadu-works/">Xanadu</a> dance through my head. -m</p>
]]></content:encoded>
			<wfw:commentRss>http://dubinko.info/blog/2010/03/05/a-hyperlink-offering-revisited/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How Xanadu Works: technical overview</title>
		<link>http://dubinko.info/blog/2009/11/22/how-xanadu-works/</link>
		<comments>http://dubinko.info/blog/2009/11/22/how-xanadu-works/#comments</comments>
		<pubDate>Mon, 23 Nov 2009 06:49:32 +0000</pubDate>
		<dc:creator>mdubinko</dc:creator>
				<category><![CDATA[browsers]]></category>
		<category><![CDATA[intentional web]]></category>
		<category><![CDATA[IPR]]></category>
		<category><![CDATA[stuff]]></category>
		<category><![CDATA[html]]></category>
		<category><![CDATA[hyperlinking]]></category>
		<category><![CDATA[hypertext]]></category>
		<category><![CDATA[nelson]]></category>
		<category><![CDATA[theodor]]></category>
		<category><![CDATA[web]]></category>
		<category><![CDATA[xanadu]]></category>

		<guid isPermaLink="false">http://dubinko.info/blog/?p=696</guid>
		<description><![CDATA[One particular conversation I&#8217;ve overheard several times, often in the context of web and standards development, has always intrigued me. It goes something like this: You know, Ted Nelson&#8217;s hypertext system from the 60&#8242;s had unbreakable, two-way links. It was elegant. But then came along Tim Berners-Lee and HTML, with its crappy, one-way, breakable links, [...]]]></description>
			<content:encoded><![CDATA[<p>One particular conversation I&#8217;ve overheard several times, often in the context of web and standards development, has always intrigued me. It goes something like this:</p>
<p style="padding-left: 30px;">You know, Ted Nelson&#8217;s hypertext system from the 60&#8242;s had unbreakable, two-way links. It was <em>elegant</em>. But then came along Tim Berners-Lee and HTML, with its crappy, one-way, breakable links, and it took over the world.</p>
<p>The general moral of the story is usually about avoiding over-thinking problems and striving for simplicity. This has been rolling around in the back of my mind ever since the first time I heard the story. Is it an accurate assessment of reality? And how exactly did Nelson&#8217;s system, called Xanadu (R), manage the trick of unbreakable super-links? Even if the web ended up going in a different direction, there still might be lessons to learn for the current generation of people building things that run (and run on) the web.</p>
<p>Nelson&#8217;s book <em>Literary Machines</em> describes the system in some detail, but it&#8217;s hard to come by in the usual channels like Amazon, or even local bookstores. One place does have it, and for a reasonable price too: <a title="DO NOT CONFUSE IT WITH ANY OTHER COMPUTER BOOK the cover admonishes" href="http://www.eastgate.com/catalog/LiteraryMachines.html">Eastgate Systems</a>. [Disclosure: I bought mine from there for full price. I'm not getting anything for writing this post on my blog.] The book has a versioning notation, with 93.1 being the most recent, describing the &#8220;1993 design&#8221; of the software.</p>
<p>Pause for a moment and think about the history here. 1993 is 16 years ago as I write this, about the same span of time between Vannevar Bush&#8217;s groundbreaking 1945 article <a href="http://www.theatlantic.com/doc/194507/bush">As We May Think</a> (reprinted in full in <em>Literary Machines</em>) and Nelson&#8217;s initial work in 1960 on what would become the Xanadu project. As far as software projects go, this one has some serious history.</p>
<p>So how does it work? The basic concepts, in no particular order, are:</p>
<ul>
<li>A heavier-weight publishing process: Other than inaccessible &#8220;privashed&#8221; (as opposed to &#8220;pub&#8221;lished) documents, once published, documents are forever, and can&#8217;t be deleted except in extraordinary circumstances and with some kind of waiting period.</li>
<li>All documents have a specific owner, are royalty-bearing, and work through a micropayment system. Anyone can quote, transclude, or modify any amount of anything, with the payments sorting themselves out accordingly.</li>
<li>Software called a &#8220;front end&#8221; (today we&#8217;d call it a &#8220;browser&#8221;) works on behalf of the user to navigate the network and render documents.</li>
<li>Published documents can be updated at will, in which case unchanged pieces can remain unchanged, with inserted and deleted sections in between. Thus, across the history of a document, there are implicit links forward and backward in time through all the various editions and alternatives.</li>
<li>In general, links can jump to a new location in the docuverse or transclude part of a remote document into another, and many more configurations, including multi-ended links, and are granular to the character level, as well as attached to particular characters.</li>
<li>Document and network addressing are accomplished through a clever numbering system (somewhat reminiscent of <a href="http://dubinko.info/blog/2004_02_01_archive.html#107622326951410859">organic versioning</a>, but in a way infinitely extensible on multiple axes). These address, called tumblers, represent a Node+User+Document+Subdocument, and a minor variant to the syntax can express ranges between two points therein.</li>
<li>The system uses its own protocol called FEBE (Front End Back End) which contains at several verbs including on page 4/61: RETRIEVEV (like HTTP GET), DELETEVSPAN, MAKELINK, FINDNUMOFLINKSTOTHREE, FINDLINKSFROMTOTHREE, and FINDDOCSCONTAINING [Note that "three" in this context is an unusual notation for a link type] Maybe 10 more verbs are defined in total.</li>
</ul>
<p>A few common themes emerge. One is the grandiose scope: This really is intended as a system to encompass all of literature past, present, and future, and to thereby create a culture of intellect and reshape civilization. &#8220;We think that anyone who <em>actually understands the problems</em> will recognize ours approach as the unique solution.&#8221; (italics from original, 1993 preface)</p>
<p>Another theme is simple solutions to incredibly difficult problems. So the basic solution to unbreakable links is to never change documents.  Sometimes these solutions work brilliantly, sometimes they fall short, and many times they ends up somewhere in between. In terms of sheer vision, nobody else has come close to inspiring as many people working on the web. Descriptions of what today we&#8217;d call a browser would sound familiar, if a bit abstract, even to casual users of Firefox or IE.</p>
<p>Nothing like REST seems to have occurred to Nelson or his associates. It&#8217;s unclear how widely deployed Xanadu prototypes ever were, or how many nodes were ever online at any point. The set of verbs in the FEBE protocol reads like that a competent engineer would come up with. The benefits of REST, in particular of minimizing verbs and maximizing nouns, are non-obvious without a significant amount of web-scale experience.</p>
<p>Likewise Creative Commons seems like something the designers never contemplated.  &#8220;Ancient documents, no longer having a current owner, are considered to be owned by the system&#8211;or preferably by some high-minded literary body that oversees their royalties.&#8221; (page 2/29) While this sounds eerily like the Google Books settlement, this misses the implications of truly free-as-in-beer content, but equally misses the power of free-as-in-freedom documents. In terms of social impact there&#8217;s a huge difference between something that costs $0 and $0.000001.</p>
<p>In this system anyone can include any amount of any published document into their own without special permission. In a world where people writing <a href="http://en.wikipedia.org/wiki/Legal_disputes_over_the_Harry_Potter_series">Harry Potter Lexicons</a> are getting sued by the copyright industry, it&#8217;s hard to imagine this coming to pass without kicking and screaming, but it is a nice world to think about. Anyway, in Xanadu per-byte royalties work themselves out according to the proportion of original vs. transcluded bytes.</p>
<p>Where is Google in this picture? &#8220;Two system directories, maintained by the system itself, are anticipated: author and title, no more&#8221; (page 2/49) For additional directories or search engines, it&#8217;s not clear how that would work: is a search results page a published or privashed document? Does every possible older version of every result page stick around in the system? (If not, links to/from might break) It&#8217;s part of a bigger question about how to represent and handle dynamic documents in the system.</p>
<p>On privacy: &#8220;The network will not, may not monitor what is written in private documents.&#8221; (page 2/59) A whole section in chapter 3 deals with these kinds of issues, as does <a href="http://www.amazon.com/exec/obidos/ASIN/0914845497/dubinkoinfo-20">Computer Lib</a>, another of Nelson&#8217;s works.</p>
<p>He was early to recognize the framing problem: how in a tangle of interlinked documents, to make sense of what&#8217;s there, to discern between useful and extraneous chunks. Nelson admits to no general solution, but points at some promising directions, one of which is link typing&#8211;the more information there is on individual links, the more handles there are to make sense of the tangle. Some tentative link types include title, author, supersession, correction, comment, counterpart, translation, heading, paragraph, quote, footnote, jump-link, modal jump-link, suggested threading, expansion, citation, alternative version, comment, certification, and mail.</p>
<p>At several points, Nelson mentions algorithmic work that makes the system possible. Page 1/36 states &#8220;Our enfilade data structures and methods effectively refute Donald Knuth&#8217;s list of desirable features that he says you can&#8217;t have all at once (in his book <a href="http://www.amazon.com/Art-Computer-Programming-Sorting-Searching/dp/0201896850">Fundamental Algorithms: Sorting and Searching</a>)&#8221;. I&#8217;m curious if anyone knows more about this, or if Knuth ever got to know enough details to verify that claim, or revise his.</p>
<p>So was the opening anecdote a valid description of reality? I have to say no, it&#8217;s not that simple. Nelson rightly calls the web a shallow imitation of his grand ideas, but those ideas are&#8211;in some ways literally&#8211;from a different world. It&#8217;s not a question of &#8220;if only things had unfolded a bit differently&#8230;&#8221;. To put it even more strongly, a system with that kind of scope cannot be designed all at once, in order to be embraced by the real world it has to be developed with a feedback loop to the real world. This in no way diminishes the value and influence of big ideas or the place that Roarkian stick-to-your-gunnedness has in our world, industry, and society. We may have gotten ourselves into a mess with the architecture of the present web, but even so, Nelson&#8217;s vision will keep us aspiring toward something better.</p>
<p>I intend to return to this posting and update it for accuracy as my understanding improves. Some additional topics to maybe address are: a more detailed linking example (page 2/45), comparing XLink to Xanadu, comparing URIs and tumblers, and mention the bizarre (and yet oddly familiar if you&#8217;ve ever been inside a FedEx Kinkos) notion of &#8220;SilverStands&#8221;.</p>
<p>For more on Nelson, there is the <a title="The Curse of Xanadu" href="http://wired-vig.wired.com/wired/archive/3.06/xanadu.html">epic</a> writeup in Wired. YouTube has some good stuff too.</p>
<p>Comments are welcome. -m</p>
<p>Xanadu is a registered trademark, here used for specific identifying purpose.</p>
]]></content:encoded>
			<wfw:commentRss>http://dubinko.info/blog/2009/11/22/how-xanadu-works/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>XForms Developer Zone</title>
		<link>http://dubinko.info/blog/2009/09/22/xforms-developer-zone/</link>
		<comments>http://dubinko.info/blog/2009/09/22/xforms-developer-zone/#comments</comments>
		<pubDate>Wed, 23 Sep 2009 06:14:09 +0000</pubDate>
		<dc:creator>mdubinko</dc:creator>
				<category><![CDATA[announcement]]></category>
		<category><![CDATA[web20]]></category>
		<category><![CDATA[XForms]]></category>
		<category><![CDATA[development]]></category>
		<category><![CDATA[site]]></category>
		<category><![CDATA[web]]></category>
		<category><![CDATA[xrx]]></category>

		<guid isPermaLink="false">http://dubinko.info/blog/?p=647</guid>
		<description><![CDATA[Another XForms site launched this week. This one seems pretty close to what I would like XForms Institute to become, if I had an extra 10 hours per week. -m]]></description>
			<content:encoded><![CDATA[<p>Another XForms <a href="http://xformsdz.org/">site</a> launched this week. This one seems pretty close to what I would like <a title="XForms Institute" href="http://xformsinstitute.com">XForms Institute</a> to become, if I had an extra 10 hours per week. -m</p>
]]></content:encoded>
			<wfw:commentRss>http://dubinko.info/blog/2009/09/22/xforms-developer-zone/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Object-Oriented CSS</title>
		<link>http://dubinko.info/blog/2009/07/29/object-oriented-css/</link>
		<comments>http://dubinko.info/blog/2009/07/29/object-oriented-css/#comments</comments>
		<pubDate>Thu, 30 Jul 2009 02:25:27 +0000</pubDate>
		<dc:creator>mdubinko</dc:creator>
				<category><![CDATA[browsers]]></category>
		<category><![CDATA[web20]]></category>
		<category><![CDATA[bayjax]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[oocss]]></category>
		<category><![CDATA[stubbornella]]></category>
		<category><![CDATA[webdev]]></category>

		<guid isPermaLink="false">http://dubinko.info/blog/?p=601</guid>
		<description><![CDATA[I enjoyed Nicole Sullivan&#8216;s talk at the BayJax Meetup on Object-Oriented CSS, something I hadn&#8217;t run in to before. Adding predictability to CSS development seems like a huge win. I need to wrap my head around it better. Anyone with experience using this technique care to comment? -m]]></description>
			<content:encoded><![CDATA[<p>I enjoyed <a title="stubbornella" href="http://www.stubbornella.org/content/">Nicole Sullivan</a>&#8216;s talk at the <a title="Meeting summary" href="http://wiki.dandascalescu.com/summaries/bayjax_2009-july">BayJax Meetup</a> on <a href="http://wiki.github.com/stubbornella/oocss">Object-Oriented CSS</a>, something I hadn&#8217;t run in to before. Adding predictability to CSS development seems like a huge win. I need to wrap my head around it better. Anyone with experience using this technique care to comment? -m</p>
]]></content:encoded>
			<wfw:commentRss>http://dubinko.info/blog/2009/07/29/object-oriented-css/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Java-style namespaces for markup</title>
		<link>http://dubinko.info/blog/2009/07/24/java-style-namespaces-for-markup/</link>
		<comments>http://dubinko.info/blog/2009/07/24/java-style-namespaces-for-markup/#comments</comments>
		<pubDate>Sat, 25 Jul 2009 05:41:34 +0000</pubDate>
		<dc:creator>mdubinko</dc:creator>
				<category><![CDATA[announcement]]></category>
		<category><![CDATA[intentional web]]></category>
		<category><![CDATA[xml]]></category>
		<category><![CDATA[extensibility]]></category>
		<category><![CDATA[html5]]></category>
		<category><![CDATA[namespaces]]></category>
		<category><![CDATA[pragmatic namespaces]]></category>

		<guid isPermaLink="false">http://dubinko.info/blog/?p=599</guid>
		<description><![CDATA[I&#8217;m noodling around with requirements and exploring existing work toward a solution for &#8220;decentralized extensability&#8221; on xml-dev, particularly for HTML. The notion of &#8220;Java-style&#8221; syntax, with reverse dns names and all, has come up many times in the context of these kinds of discussions, but AFAICT never been fully fleshed out. This is ongoing, slowly, [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m noodling around with requirements and exploring existing work toward a solution for &#8220;decentralized extensability&#8221; on <a href="http://markmail.org/search/?q=list%3Aorg.xml.lists.xml-dev+Namespace+use+cases">xml-dev</a>, particularly for HTML. The notion of &#8220;Java-style&#8221; syntax, with reverse dns names and all, has come up many times in the context of these kinds of discussions, but AFAICT never been fully fleshed out. This is ongoing, slowly, in available time&#8211;which as been a post or two per week.  (In case there is any doubt, this is a spare-time effort not connected with my employer)</p>
<p>Check it out and add your knowledge to the thread. -m</p>
]]></content:encoded>
			<wfw:commentRss>http://dubinko.info/blog/2009/07/24/java-style-namespaces-for-markup/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>And then there were one&#8230;</title>
		<link>http://dubinko.info/blog/2009/07/02/and-then-there-were-one/</link>
		<comments>http://dubinko.info/blog/2009/07/02/and-then-there-were-one/#comments</comments>
		<pubDate>Fri, 03 Jul 2009 01:57:29 +0000</pubDate>
		<dc:creator>mdubinko</dc:creator>
				<category><![CDATA[browsers]]></category>
		<category><![CDATA[standards]]></category>
		<category><![CDATA[trends]]></category>
		<category><![CDATA[web20]]></category>
		<category><![CDATA[future]]></category>
		<category><![CDATA[html]]></category>
		<category><![CDATA[html5]]></category>
		<category><![CDATA[w3c]]></category>
		<category><![CDATA[web]]></category>
		<category><![CDATA[xhtml]]></category>
		<category><![CDATA[xhtml2]]></category>

		<guid isPermaLink="false">http://dubinko.info/blog/?p=587</guid>
		<description><![CDATA[On May 8 I wrote: it’s time for the W3C to show some tough love and force the two (X)HTML Working Groups together. On July 2, the W3C wrote: Today the Director announces that when the XHTML 2 Working Group charter expires as scheduled at the end of 2009, the charter will not be renewed. [...]]]></description>
			<content:encoded><![CDATA[<p>On May 8 I <a href="http://dubinko.info/blog/2009/05/08/html-the-markup-language-marks-a-new-beginning/">wrote</a>:</p>
<p style="padding-left: 30px;">it’s time for the W3C to show some tough love and force the two (X)HTML Working Groups together.</p>
<p>On July 2, the W3C <a href="http://www.w3.org/News/2009#item119">wrote</a>:</p>
<p style="padding-left: 30px;">Today the Director announces that when the <a href="http://www.w3.org/2007/03/XHTML2-WG-charter">XHTML 2 Working Group charter</a> expires as scheduled at the end of 2009, the charter will not be renewed. By doing so, and by increasing resources in the <a href="http://www.w3.org/html/wg/">Working Group</a>, W3C hopes to accelerate the progress of <a href="http://www.w3.org/TR/html5">HTML 5</a> and clarify W3C&#8217;s position regarding the future of HTML.</p>
<p>The real test is whether the single HTML Working Group can be held to the standard of other Working Groups, and be able to recruit some much-needed editorial help from some of the displaced XHTML 2 gang.  -m</p>
]]></content:encoded>
			<wfw:commentRss>http://dubinko.info/blog/2009/07/02/and-then-there-were-one/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>RDFa List Apart</title>
		<link>http://dubinko.info/blog/2009/06/23/rdfa-list-apart/</link>
		<comments>http://dubinko.info/blog/2009/06/23/rdfa-list-apart/#comments</comments>
		<pubDate>Wed, 24 Jun 2009 01:33:59 +0000</pubDate>
		<dc:creator>mdubinko</dc:creator>
				<category><![CDATA[browsers]]></category>
		<category><![CDATA[intentional web]]></category>
		<category><![CDATA[metadata]]></category>
		<category><![CDATA[alistapart]]></category>
		<category><![CDATA[birbeck]]></category>
		<category><![CDATA[mark]]></category>
		<category><![CDATA[rdf]]></category>
		<category><![CDATA[rdfa]]></category>

		<guid isPermaLink="false">http://dubinko.info/blog/?p=569</guid>
		<description><![CDATA[A great introduction article. Maybe it&#8217;s just the crowd I hang with, but RDFa looks like it&#8217;s moving from trendy to serious tooling. -m]]></description>
			<content:encoded><![CDATA[<p>A great <a href="http://www.alistapart.com/articles/introduction-to-rdfa/">introduction</a> article. Maybe it&#8217;s just the crowd I hang with, but RDFa looks like it&#8217;s moving from trendy to serious tooling. -m</p>
]]></content:encoded>
			<wfw:commentRss>http://dubinko.info/blog/2009/06/23/rdfa-list-apart/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>VoCamp Wrap-up</title>
		<link>http://dubinko.info/blog/2009/06/19/vocamp-wrap-up/</link>
		<comments>http://dubinko.info/blog/2009/06/19/vocamp-wrap-up/#comments</comments>
		<pubDate>Sat, 20 Jun 2009 05:45:08 +0000</pubDate>
		<dc:creator>mdubinko</dc:creator>
				<category><![CDATA[aswemaythink]]></category>
		<category><![CDATA[everythingismiscellaneous]]></category>
		<category><![CDATA[intentional web]]></category>
		<category><![CDATA[metadata]]></category>
		<category><![CDATA[yahoo]]></category>
		<category><![CDATA[celik]]></category>
		<category><![CDATA[rdbms]]></category>
		<category><![CDATA[rdf]]></category>
		<category><![CDATA[semantic]]></category>
		<category><![CDATA[tantek]]></category>
		<category><![CDATA[vocamp]]></category>
		<category><![CDATA[web]]></category>

		<guid isPermaLink="false">http://dubinko.info/blog/?p=567</guid>
		<description><![CDATA[I spent 2 days at the Yahoo! campus at a VoCamp event, my first. Initially, I was dismayed at the schedule. Spend all the time the first day figuring out why everybody came? It seemed inefficient. But having gone through it, the process seems productive, exactly the way that completely decentralized groups need to get [...]]]></description>
			<content:encoded><![CDATA[<p>I spent 2 days at the Yahoo! campus at a <a title="Sunnyvale VoCamp 2009" href="http://vocamp.org/wiki/VoCampSunnyvale2009">VoCamp</a> event, my first. Initially, I was dismayed at the schedule. Spend all the time the first day figuring out why everybody came? It seemed inefficient. But having gone through it, the process seems productive, exactly the way that completely decentralized groups need to get things done. Peter Mika did a great job moderating.</p>
<p>Attendees numbered about 35, and came from widely varying backgrounds from librarian to linguist to professor to student to CTO, though uniformly geeky. With <a href="http://www.semantic-conference.com/">SemTech</a> this week, the timing was right, and the number of international attendees was impressive.</p>
<p>In community development, nothing gets completely decided just because a few people met. But progress happens. The first day was largely exploratory, but also covered plenary topics that nearly everyone was interested in. Namely:</p>
<ul>
<li>Finding, choosing, and knowing when to create vocabularies</li>
<li>Mapping from one vocabulary to another</li>
<li>RDBMS to RDF mapping</li>
</ul>
<p>Much of the shared understanding of these discussions is captured on various wiki pages connected to the one at the top of this article.</p>
<p>For day 2, we split into smaller working groups with more focused topics. I sat in on a discussion of Common Tag (which still feels too complex to me, but does fulfill a richer use case than rel-tag). Next, some vocabulary design, planning a microformat (and eventual RDF vocab) to represent code documentation: classes, functions, parameters, and the like. Tantek Çelik espoused the &#8220;scientific method&#8221; of vocab design: would a separate group, in similar circumstances, come up with the same design? If the answer is &#8216;yes&#8217;, then you probably designed it right. The way to make that happen is to focus on the basics, keeping everything as simple as possible. If any important features are missed, you will find out quickly. The experience of getting the simple thing out the door will provide the education needed to make the more complicated follow-on version a success.</p>
<p>From the wrap-up: if you are designing a vocabulary, the most useful thing you can do is NOT to unleash a fully-formed proposal on the world, but rather to capture the discussion around it. What were the initial use cases? What are people currently doing? What design goals were explicitly left off the table, or deferred to a future verson, or immediately shot down? It&#8217;s better to capture multiple proposals, even if fragmentary, and let lots of people look them over and gravitate toward the best design.</p>
<p>Lastly, some cool things overheard:</p>
<p>&#8220;Relational databases? We call those &#8216;legacy&#8217;.&#8221;</p>
<p>&#8220;The socially-accepted schema is fairly consistent.&#8221;</p>
<p>&#8220;It&#8217;s just a map, it&#8217;s not the territory.&#8221;</p>
<p>-m</p>
]]></content:encoded>
			<wfw:commentRss>http://dubinko.info/blog/2009/06/19/vocamp-wrap-up/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Google Rich Snippets powered by RDFa</title>
		<link>http://dubinko.info/blog/2009/05/12/google-rich-snippets-powered-by-rdfa/</link>
		<comments>http://dubinko.info/blog/2009/05/12/google-rich-snippets-powered-by-rdfa/#comments</comments>
		<pubDate>Wed, 13 May 2009 04:43:09 +0000</pubDate>
		<dc:creator>mdubinko</dc:creator>
				<category><![CDATA[commercialism]]></category>
		<category><![CDATA[google]]></category>
		<category><![CDATA[intentional web]]></category>
		<category><![CDATA[languages]]></category>
		<category><![CDATA[metadata]]></category>
		<category><![CDATA[microformats]]></category>
		<category><![CDATA[search]]></category>
		<category><![CDATA[yahoo]]></category>
		<category><![CDATA[rdfa]]></category>
		<category><![CDATA[rich]]></category>
		<category><![CDATA[searchmonkey]]></category>
		<category><![CDATA[snippets]]></category>

		<guid isPermaLink="false">http://dubinko.info/blog/?p=532</guid>
		<description><![CDATA[The new feature called rich snippets shows that SearchMonkey has caught the eye of the 800 pound gorilla. Many of the same microformats and RDF vocabularies are supported. It seems increasingly inevitable that RDFa will catch on, no matter what the HTML5 group thinks. -m]]></description>
			<content:encoded><![CDATA[<p>The new feature called <a href="http://googlewebmastercentral.blogspot.com/2009/05/introducing-rich-snippets.html">rich snippets</a> shows that SearchMonkey has caught the eye of the 800 pound gorilla. Many of the same microformats and RDF vocabularies are supported. It seems increasingly inevitable that RDFa will catch on, no matter what the HTML5 group thinks. -m</p>
]]></content:encoded>
			<wfw:commentRss>http://dubinko.info/blog/2009/05/12/google-rich-snippets-powered-by-rdfa/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

