Linkspace

Perhaps most important is what VXML means for links.

In 1945, an engineer named Vannevar Bush wrote an essay titled "The Memex." In this essay, he presciently described a machine that functioned much like today's web. However, with the clarity of thought only available because nothing even remotely like the Memex had ever been implemented, he also described lots of linking features that are nearly impossible to implement using basic HTML. Ted Nelson, who coined the term hypertext, also has proposed many different linking structures and further defined Bush's ideas.

I propose calling these linking structures Bush-Nelson links in their honor. XML is a method of implementing Bush-Nelson links. Project Mcubed is a way of visualing that implementation.

The image to the right is four simple nodes connected by three bidirectional jump links. A user positioned at one point in the space is smoothly navigated to the end point when they click on the blue link trigger. If these were another type of link- bidirectional collapsing links, for example- when the trigger is activated, the two nodes involved could move to alongside each other.

When Ted Nelson saw an early demo of this at Hypertext 97 in April 1997 (the floating homepage demo, which I also showed at the VRML BOF at SIGGRAPH 96), he went bananas.

This is what the VRML looks like for a link. All I've done so far are bidirectional jump links, but there are lots of other possibilities for linking structures:
  • links that fire automatically (useful for demos)
  • links with exits that can be traversed at varying velocities
  • invisible links
  • links that disappear or appear when text or a bit of geometry is moused over or otherwise interacted with
  • multihead/multitail links (think about a hub at the geometric center of all the connected nodes)
  • collapse links, that bring the nodes they connect closer together when activated
These are just the ones I've thought about so far. Implementing any of these using VRML shouldn't be too difficult.

biLink {
ID "L0"
startPoint 0 0 10
endPoint 9.511 0 3.09
}

Of course, links are easy to describe in XML, too.

Just the node names can be given in the XML if the tool that publishes the VRML from the XML is even remotely intelligent.

Plus, links can be stored out of line with XML. Different arrangements of links can be applied to the same raw information. A visual implementation of the Xpointer specification would allow links to address a document at any granularity.

<biLink startNode="n0" endNode="n1"/>

<autoLink startNode="n1" endNode="n2" delay="0:05.00"/>

<collapseLink>
<node ID="n3" weight="0.6">
<node ID="n4" weight="0.3">
<node ID="n5" weight="0.4">
</collapseLink>

sitespace
home overview nodespace impact future
linkspace

history author references