Following on from the
earlier
post re. outliners, if we're talking about
Gopher
done with XML over HTTP, it might as well exploit some of the other
facilities that have become readily available since 1992.
So for a start, the nodes in an
outline
editor/viewer may just expand to show other local DOM tree
node…
…or they may provide links that can be followed in the
usual browser fashion
…or, they may
transclude
outlines found at the target URI, identifiable as
XOXO by
<head
profile="http://developers.technorati.com/wiki/xhtmloutlines">
(expanding in-place, via
Ajax)
…or, those remote outlines may take the place of the
current outline in the browser (retaining the same
behaviour/presentation)
…or, the node might refer to an
OPML file,
that can be transcluded in-place via Ajax+XSLT
…or, the node might refer to
microformats data, which might be nicely displayed (a
display:block in place) using format-specific CSS/XSLT
…or, the node might refer to an RSS/Atom feed, that can be
transcluded in-place via XSLT
…or, the node might refer to a del.icio.us tag, or a
Technorati Cosmos link, which also might be transcluded in place
via the respective RESTful API and a little XSLT
…or, the node might refer to a SPARQL query, the results
of which may be transcluded/formatted in place, again via
XSLT/CSS
…or, the node might refer to an FOAF or DOAP profile that
can be transcluded in-place (probably via SPARQL & XSLT
again)
…or, citation info could be transcluded in place from a
service like citeseer or
Connotea
…or, the leaf node might be an audio or other media file,
and an appropriate player launched
…or, the node might expand to endpoints to other services,
where the effects of in-place editing will be passed to the
services (e.g. POSTed to a blog or Wiki, or a GET to the Google
API)
…or, an individual node can be bookmarked a la
Purple
…or, an individual node can be folksonomically tagged
…or, an node/visible subtree in the expansion may be
pumped into a browser-friendly tool like
PiggyBank or
generic triplestore/Atom Store/XML/SQL DB (local or remote) for
future reference, saving the current UI state
Once that's all in place, we animate the .GIFs.
~
PS. Les Orchard has done a
half-hearted
implementation.
[Danny]