ClickAider
You are currently browsing the Bogle’s Blog weblog archives for the day Wednesday, March 15th, 2006.

The Web Clipboard is coming

Last October, I blogged on Bill Burcham’s idea of a web clipboard.

A widely adopted web clipboard standard is looking more and more likely to happen, based on the recent initiatives such as Live Clipboard and unAPI .  (There are probably other not-yet-public efforts going that we can expect to hear about soon.)

Today, every web application is an island. Sharing structured data across webapps is painful, requiring either manual file exports and uploads, or piecemeal copying and pasting of individual form fields.  

The web clipboard  would leverage existing browser features to allow structured data to be copied and pasted just as easily across different web apps as it is across desktop apps.   The data can be represented in a variety of formats, with the receiving app choosing the richest format that it understands.

For example, supposed I wanted to copy a set of contacts from Gmail into Salesforce. Today I’d have to figure out how to export CSV a file from Gmail, go to Salesforce, select import, browse to the file, click submit, and import the contacts.  If both apps supported a web clipboard, the same operation would literally be a copy and paste, with all structure retained intact.

The highest profile effort is perhaps Ray Ozzie’s work at Microsoft on Live Clipboard (see the demo and screencasts). Live Clipboard is intended to work across a range of modern browsers and does not require any external plugins.

The technical introduction explains how it works:

The Live Clipboard web control is a DHTML control that provides copy/paste functionality for data associated with a web page using the Live Clipboard XML data format. It consists of the following components:

  • UI elements for displaying the Live Clipboard icon
  • Javascript objects representing the Live Clipboard object model
  • Javascript that handles serialization / de-serialization of the Live Clipboard XML data
  • Javascript callback function registration for retrieving data for copy, pushing data for paste, and notifying when the control is “selected.”

It is designed to use standard Javascript and CSS techniques to “bring the clipboard to the web” and to work in as many browsers as possible. Currently, it is verified to work in IE 6, IE 7 Beta 2 Preview and in Mozilla Firefox for PC and Mac. We are working to bring support to other browsers as soon as possible. The control does not depend on installation of any client side applications or browser plug-ins, and it never gains access to the contents of the clipboard without explicit user action to paste.

The introduction includes a walkthrough for adding a clipboard control to any web page so that other site authors can experiment with it.  Example objects are provided for the hCard and hCal microformats and authors can of course implement other formats on their own.

A complementary effort is unAPI . As Daniel Chudnov describes it, “we think that unAPI and live clipboard should be two great tastes that taste great together… live clipboard deals with the “what’s in front of my face now” and unAPI deals with the “discrete objects that have names and different representations”.

Exciting stuff.