[Archive copy mirrored from the URL: http://www.datachannel.com/WhitePapers/seybold2/sybold2.html; see this canonical version of the document.]

The Data-Driven Desktop: DataChannel Pushes XML

The easiest way to describe DataChannel's ChannelManager is to call it "multi-channel push," but that doesn't really tell the whole story. ChannelManager is a hierarchy of channels containing heterogeneous content but unified by a cohesive look and feel and driven by a dynamically populated repository. With this product, DataChannel's president, Dave Pool, wants to redefine the desktop, putting it under the control of ordinary folks publishing ordinary documents.

Pool calls it "the right information to the right person at the right time." The content, presentation and workgroup behavior are all driven by Extensible Markup Language (XML) metadata, so we call it the first commercial, end-user product to do something interesting with the Web's new standard for open information.

Dave Pool remembers when Bill Gates first said that the browser is the desktop of the future. It was the summer of 1996, and Pool was executive vice president of strategic development at CompuServe, a position he assumed after CompuServe acquired his Spry browser and Internet in a Box for a cool $100 million. Pool found Gates's document-as-interface vision compelling enough to leave CompuServe and to found the Seattle start-up DataChannel. A little more than a year later, DataChannel has released its first product (ChannelManager), secured its first round of venture financing and is looking to redefine "information management" from a lexicon built on XML.

Information management typically means that some application (read "executable file") manages the information (read "data" or "document" or "page" or "query result"). What the end user sees is usually determined by the preconstructed interface of the application. ChannelManager turns this relationship on its head: XML-tagged metadata manages the application-the buttons, tabs and menus?via a browser, which-voilà!-becomes the desktop.

Or so the theory goes. Until XML comes into its own on the Web, that is, until we have monstrous XML-encoded repositories and universal conventions for access and distribution of XML-defined metadata (not to mention browsers with style sheets that will make the pages look appealing), it will remain difficult to substantiate this theory. But DataChannel seems to be putting all the right pieces together in the right order and, for the moment, is breaking new ground in data-driven, content-centric, open-standards computing. With that in mind, we recently visited the company to learn more about its products and to take a look at where it's headed.

Who's in charge here?

Data and applications interact-when something changes on the screen, how do you say which one is in control? For example, if you pull in a new page with a graphic or an applet, the application window looks different. If you want to change the user interface, you do so directly in the application, such as by turning your toolbar on and off. In a typical desktop application, even one that "pushes" content to your desktop, the data changes, but the user interface stays constant.

With the Web browser becoming an application user interface, we are beginning to see application functions that once resided in menus and popup windows (e.g., check-in/check-out) becoming embedded in the document open in your browser. But even then, these functions are typically driven by an application server responding to scripted actions. How is ChannelManager different?

ChannelManager, like any browser, can point to pages and change the content of a window. In Figure 1, the sales chart is a content page. What's different here is that the user interface-here the menu on the left starting with "Administration" and the tabs and items above the chart-are driven off of XML data and are dynamically updated as channels.


Figure 1: ChannelManager HTML client. Here we see an HTML page as a "channel" with two different presentation themes. The themes are selected through the console and can be driven dynamically by XML metadata.


In effect, the data is the desktop. To change the GUI, you are pointing to different data in a repository outside the client application, not changing a script or a program within the application. ChannelManager "pushes" not only the content, it shapes the user interface, and behind the scenes, it is XML metadata that is pulling the strings.

What benefits does this technical approach provide? For users, it means tighter control over the information that reaches their desktops and a single interface to multiple applications. For managers, it means added flexibility, less maintenance and training, and simplified development. Information resources can be distributed according to business need, on demand, without all of the headaches that usually accompany development of new ways of accessing and manipulating information. For publishers, it means greater leverage for the markup they add to their content.

DataChannel Products

DataChannel's company literature calls ChannelManager "a business framework for managing the proliferation of Web content," a means of creating a "private brand" for industry, corporation, department and employee business rules and stamping that brand onto the desktop. At the company's offices in Seattle, Pool discussed how all of this might come to be.

The product manages content, presentation and application for distributed workgroups (Figure 2). With the browser as the desktop and the Internet providing the network, you can think of ChannelManager as the system administrator's console, but one that demands an ordinary-mortal level of technical proficiency. If you can browse the Web, you can subscribe to a ChannelManager channel. If you can point and click, you can rearrange the menus, tabs and other items on your interface.

The data is the desktop. ChannelManager
"pushes" not only the content, it shapes
the user interface, and behind the scenes,
it is XML metadata that is pulling the strings.

To manage content, presentation and behavior independently and on the fly, clearly you must store the elements separately, yet integrate them in software. Pool says that DataChannel could have represented both data and software in Java, but he chose XML for the data representation because it represents a higher level of abstraction, one that keeps the data neutral to the software.

Three main functions. Content management is the core function of this software. "Content" can be pushed or pulled by the administrator or by users. Notification options for pushed content range from "in your face" (interrupting whatever is in the foreground to display the new information) to "do not disturb." These options (and all else mediated by ChannelManager) are configured by query, network availability and user profile. Anything accessible by a URL-whether by direct link or by query-is within reach of a content channel. It can apply to HTML pages, news feeds, Netscape or Microsoft Active Channels, documents, images or even corporate data repositories.

Software, in the form of Java applets and applications, also can be pushed onto group or individual desktops through the same channel-management framework. The Open Software Description (OSD) proposed by Microsoft and Marimba (http://www.microsoft.com/standards/osd) uses XML metadata to describe software components distributed over any network. To ChannelManager, OSD is just another form of XML metadata, and the applications are just content for another push channel.

The third function is to manage users and groups. Each group and each user has a presentation profile that drives the client user interface. The presentation profile can be updated manually through the DataChannel user interface or dynamically based on queries or push notification.

ChannelManager administrators add and delete individual users; set up hierarchical groups of users; and then assign access, content, presentation and notification behavior for these individuals and groups. Pool did not set out to build workflow software, but by building in the central administration of the data-driven desktop, enough of the features of workgroup and workflow software are present to position DataChannel as a potential lynchpin for distributed workgroup applications.


Figure 2: ChannelManager architecture. ChannelServer acts as the intermediary between the ChannelBase repository and the desktop clients.


Content, presentation and administration are all driven by URLs. URLs may point to a database or a news feed, or may carry an SQL query or a CGI request. When a URL is updated or any modification is made to the database (e.g., a user profile changes), a send notification request is made by the client user to the server, a new item is created in a channel, and SQL transactions take place between the ChannelManager server and the repository database. ChannelManager updates content at least once in 24 hours; more often if you prefer.

Three Components

ChannelManager manages content, presentation and the user interface with three major components:

ChannelServer. Users log on to the DataChannel server with a password. ChannelServer translates client requests and filters incoming channels according to notification and configuration rules. The server has authentication rules that enable "nomadic" access. Based on user IDs, the server fetches and sends the appropriate frame objects and URLs from ChannelBase to the client. The server supports Excite, Lycos and Yahoo search engines.

When the password is verified, the server generates a SQL request to ChannelBase. ChannelBase responds with a display profile and channel links based on a look-up of user preferences This provides a nomadic, personal desktop-one that gets loaded from the server whenever you log on, from wherever you are.

Configurable clients. One of the nice aspects of keeping content and presentation separate is that new and different clients can be designed without waiting for an upgrade to the underlying data format. This approach also makes it easier for a single customer to utilize client software from a variety of vendors, all of which recognize a common data format.

There are actually three types of clients for ChannelManager: ChannelClient, a collection of Java applets; Pax Syntactica, an experimental XML applet available for free download; or the generic XML-capable browsers of the future, starting with the beta release of Microsoft Internet Explorer 4.0.


Figure 3: The Pax Syntactica XML applet inside Netscape 3.0. The top window shows the applet displaying CDF metadata, which acts as a table of contents navigator for the bottom window, which, in this case, is an HTML page.


The production-ready client today is ChannelClient, which can open other application windows or become the entire user interface for HTML pages and Java applications. The basic look is built on hierarchical lists of channels, tabs and items. Assuming ten of each, the user has access to 1,000 pieces of information within three clicks. Will all types of information readily fit this hierarchical paradigm? Pool says yes, claiming, "I haven't found anything that I can't describe as a hierarchical list."

Pax Syntactica is a 400K Java applet that downloads an XML parser, graphical interface and channel logic onto a window in the client machine (Figure 3).

The XML viewer anticipates how client software will handle XML-encoded data in the near future, but Pool has no ambition as a browser developer. "Our goal is to have our product replaced on the client," he said. When Microsoft and Netscape come out with browsers that handle XML metadata, Pool claims that DataChannel will be pleased to ease out of the viewer business and focus on the repository and server software that feeds such viewers.

While the document is still in HTML, its XML metadata becomes the table of contents?the navigator to the document. John Tigue, senior software architect, says, "It's your bookmark.htm file on steroids."

The navigator is created from the tags of the metadata, such as these snippets in Channel Definition Format (CDF):


<?XML version="1.0"?>

<Channel Href="http://www.datachannel.com/

channelworld/new/newcopy16.htm">

<Title>Welcome to DataChannel's ChannelWorld</title>

<Abstract>Welcome to DataChannel's ChannelWorld</abstract>

<Author Value="Lisa Rein" />

?

<item href="http://www.datachannel.com/

ChannelWorld/xml/osdfaq.htm#nova">

<title>What's going on with Novadigm suing Marimba?</title>

<abstract>The Novadigm vs. Marimba dispute is over a different specification, the DRP submission, not the OSD submission. </abstract>

</item>


It is this sort of markup that publishers will soon be adding to their Web pages, making it easier for visitors to use search engines, Web browsers and other navigation aids to zero in on the information they seek.

ChannelBase. The ChannelBase repository holds the indexes, descriptions, URLs and presentation characteristics for the content of each frame in a desktop template. It contains user templates for individuals and groups. Objects stored within ChannelBase can point to pages, channels, corporate databases, Java applets and ActiveX components.

Connection to ChannelServer is provided through an ODBC interface. For connecting to XML processors, ChannelManager supports XAPI-J, an XML API written in Java by Tigue.

Administration. Once ChannelManager is installed and connected to a local database, configuring it is a point-and-click process. Content is organized as items within tabs within channels. Figure 4 shows the interface for creating a new item.

On a different tab, administrators create or edit user properties (Figure 5). User properties include the usual identification and authentication parameters plus user preferences for presentation characteristics for the user's desktop. Administrators create groups and then assign individuals to groups of one or more.

Channel management consists of subscribing users or groups to published (available) channels (Figure 6).

What Does It Buy You?

ChannelManager has implications for publishers, both in terms of how to present information to customers and how employees will use such systems internally.

Internally, for example, a sales manager can have one-click access to an orders database, a prospect database and a contact manager application, and to significant documents such as monthly memos on sales calls. In the same company, managed by the same server, a marketing employee could get one-click access to the customer database, industry newsletters and an events calendar. All of this was possible before, but not as easily; at least not from a single, central administrative console, with a single user interface, with this degree of flexibility for users and administrators alike.

Managing channels by XML metadata provides further potential payoffs for those who have diligently structured information in open formats. For example, let's say you publish a journal from SGML source files. The original plan for Internet publishing may have been on-the-fly translation to HTML. Now, XML bibliographies and footnotes become metadata that can be imported into the ChannelBase repository and linked to the referenced material. If the link targets are tagged in XML (or SGML) as well, the connection can be made to sections and paragraphs within the material, not just to the top of the document. ChannelBase, in effect, becomes an asset manager that can link objects to the level of granularity described in the markup.


Figure 4: The ChannelManager interface for creating new content channels, tabs and items. Each level of content is associated with a title, URL, description and optional headline.



Figure 5: Assigning users to ChannelManager groups.



Figure 6: Channel management. "Publishing" a channel makes it available for it to be pulled onto the desktop; "subscribing" pushes the channel to the desktop. In this case, we're publishing the HR Benefits channel to the marketing group.


Pool observed that at CompuServe, one of the main "pain points" was its failure to retain customers. He also found that if you can customize the user interface, the user is less likely to switch online services, because the individual has become invested in the service, in its user interface. In his view, more customization of the user interface means higher retention, greater satisfaction and higher profits for an online service. If he's right, this is as true for delivery of Internet services as it is for delivery of health-care services or any other information-based service business.

What's Missing?

When we spoke with Pool in mid-August he predicted that "by this time next year, everyone will have XML metadata tags on their Web site." We're not convinced that everyone will adopt XML that quickly, but we agree that it's possible for a fair number of the larger sites. Those that already have CDF metadata can be found linked from ChannelWorld.

Yet, even if a majority of Web sites used XML metadata, there will still be a few pieces missing from the puzzle:

Sharing conventions. Right now, the ChannelWorld list of sites is created by cutting and pasting CDF fragments culled from individual servers. ChannelManager can't crawl over the Net, peeking into sites and plucking XML metadata. To do so would require that all CDF metadata be stored within one identified folder on a server. Somehow, this must be generalized so that XML servers can grab, customize, massage and deliver the data without manual intervention. (Such conventions are a possible outcome if Netscape's proposed Resource Description Framework [RDF] is adopted.)

XML-tagged documents with styles. ChannelManager manages the most common form of XML metadata, the Channel Definition Format. It displays content as HTML within the browser or a proprietary format, such as RTF or Marimba, within a separate application window.

Pool also predicts that "XML will pass HTML on the Internet in 1999," but with the caveat that there arise FrontPage equivalents for XML. For CDF and other metadata applications, Pool expects that people will use Java as the user interface to a database that exports XML. For XML documents to make a big splash, new editing software will have to find a way to make creating XML documents easy and fun-maybe not as much fun as HTML, but certainly more immediately appealing and easy to figure out than the best of today's SGML editors.

This month DataChannel is expected to announce its own foray into the authoring market. The company is developing an add-on to a "popular word processor" that will "save as XML." The new product wasn't ready when we visited in August, but we wouldn't be surprised to see a prerelease version demonstrated in October.

However, along with tagging tools, the market needs a strong, generalized styling mechanism to make screen presentations a direct response to data. The recent XML style sheet proposal put forth by Microsoft, Arbortext and Inso gives hope that before long Web browsers will be able to do a much better job of formatting tagged documents (see story in the Latest Word of this issue).

When, or if, richly marked up text starts to blur the distinction between data and metadata, channel management by data input should really take off.

Client-side processing. As long as clients are serving up HTML documents, all of the management takes place on the server. When browsers have XML to chew on, processing can pass to the client.

John Tigue provides an example to illustrate this point. When you point your browser at a server today, it can automatically generate an HTML page with folder and file icons in a graphic tree in which each icon is a link to the item. Looking at the contents of a folder means hitting the server again and regenerating a static HTML page. If, instead, you could get a CDF page representing files and folders, you could sort by name, date or size and look within folders, all on your client. (This is the same vision of XML-enabled client-side processing espoused by AIS with its Balise XML plug-in. See The Seybold Report on Publishing Systems, Vol. 26, No. 19, pp. 35-36.)

When consumers in the mass market hit their hands on their foreheads and realize, oh, if my document was in XML, I could derive my CDF automatically from the document, it might be worth holding stock in that cool XML editor company.

The Market

Pool describes DataChannel's market as "huge companies with routing and productivity problems." It will go first into businesses, such as financial brokers, that put a premium on instant access to the right information and have no trouble justifying the cost of technology that improves this access.

To date, ChannelManager has fewer than ten paid clients, but each is a substantial installation. The largest is Koch Industries, with over 1,000 seats under ChannelManager. In addition, there are 300 beta installations of ChannelManager preview release 2, which can be downloaded free from the DataChannel site.

To prime the pump, DataChannel has created ChannelWorld, an online resource directory of information on push and XML. Until XML breaks out of its latency stage, ChannelWorld is also a good test bed for the company's XML browser.

The competition. Several companies compete with DataChannel to provide centralized management of user profiles, but most administer the content only, not the user interface, and they do so with CDF, not yet with RDF or other XML applications. Other systems build channels with Java applets or JavaScript rather than data markup. Basing the channel on data rather than on a program makes the channel less vulnerable to application upgrades and platform incompatibilities. For this reason, we expect publishers to get behind the CDF, RDF and XML efforts, because these standards will enable them to create channels that work across a variety of tools. If that happens, other "push" vendors, such as PointCast and BackWeb will be vying with DataChannel for the privilege of managing your channels and desktops.

ChannelManager Requirements
ChannelServer platforms: Sun Solaris, Microsoft Windows NT 3.5/4.0, HP MP UX, IBM AIX, DEC Ultrix
Web server: Netscape 3.0 and Constellation, or Microsoft Information Server 3.0, or Microsoft Active Server
Databases: Oracle, Sybase, Informix, SQL Anywhere, or MS SQL
Browser: 32-bit, Java-enabled Web browser
Pricing: By site license; about $40,000 for 100 seats

Like every other software vendor, especially those in the "push" market, DataChannel has to base its game plan, in part, on what Netscape and Microsoft will be doing. Netscape's Mission Control is a multiple-channel management system, but it is not-no surprise here-browser independent. DataChannel's Web site features a blow-by-blow comparison of Mission Channel and ChannelManager.

As we went to press, the Gates view of the role of XML in the enterprise and on the desktop has not been released, so it is too soon to say how fiercely Microsoft will compete for desktop management. However, it seems unlikely that Gates will leave the execution of his vision of the browser-based desktop to others to realize.

DataChannel has been able to attract top talent, which may help it stay ahead of the pack. Norbert Mikula, a recent engineering graduate from the University of Klagenfurt in Austria who wrote one of the first XML parsers, was courted, or at least flirted with, by no less than ten companies. Along with Mikula, DataChannel obtained the license to NXP-Norbert's XML Parser. The firm plans to blend it with its existing XML parser and an API written by John Tigue, providing a complete XML application development environment for Java. Tigue is a member of the W3C XML Working Group, which is responsible for the standard.

Conclusion

DataChannel is interesting as an early implementor of XML, a standard that should substantively change the art of publishing on the Internet. Document markup may be used for more than just formatting, and right now Web developers are just starting to latch onto structured markup as a handle for controlling the flow of information. Pool, for example, views XML as "a content-routing protocol with extensibility rules" that can invoke a process. In other words, the markup can drive the timing and nature of publishing as well as its appearance. To see adoption of XML this early for this purpose confirms that the rewrite of SGML is meeting one of the objectives of the XML project, namely, to put the rules of SGML structured markup into a form that speaks to mainstream programmers.

Bill Gates is expected to kick off
Microsoft's XML awareness campaign
in his keynote speech at Seybold
San Francisco. Check the Seybold Seminars Web site (www.seyboldseminars.com)
during the first week of October for details.

Tigue calls DataChannel's use of XML and Java the marriage of the universal executable and the universal data format-giving Java arbitrarily complex data to manipulate. But the success of the DataChannel offspring of this marriage will depend on both its ability to continue to grow and develop, and on the speed with which XML can propagate to create a friendly environment.

Liora Alschuler


Visit the homepage.

A Seybold Reprint

This material appeared in The Seybold Report on Internet Publishing, Volume 2, Number 2, October, 1997.

©1997 by Seybold Publications, PO Box 644, Media, PA 19063. Phone (610) 565-2480, fax (610) 565-4659. Reproduction in whole or in part without written permission is prohibited.