Archives
 
 
 
  Special
 
 
 
  About Us
 
 
 

Newsletter
Free E-mail Newsletter from BYTE.com

 
    
           
Visit the home page Browse the four-year online archive Download platform-neutral CPU/FPU benchmarks Find information for advertisers, authors, vendors, subscribers Request free information on products written about or advertised in BYTE Submit a press release, or scan recent announcements Talk with BYTE's staff and readers about products and technologies

ArticlesDistributed Document Management with OLE and OpenDoc


August 1994 / Cover Story / Distributed Document Management with OLE and OpenDoc
Jon Udell

The GUI revolution rewrote most of the rules for applications. But the File Open menu item in nearly all Windows and Macintosh software betrays one deeply rooted assumption that has yet to change. Programs still expect to create, write, and read ordinary disk files.

A programmer awakened from a 25-year coma would be overwhelmed by the snazzy APIs that control graphics, fonts, messaging, and other system services, but he or she would find the humble I/O functions used to store and retrieve documents quite familiar. Some of today's document managers can intercept File Open, but that's a stopgap. Robust, flexible control of shared documents won't really be possible until applications abandon direct file access in favor of the sort of mediated access that OLE's structured storage and OpenDoc's Bento provide.

A compound document stored using either of these technologies is more like a mountable volume than a file. It has its own internal directories and files that supply persistent storage for the pieces of a document. OLE 2.0 objects use storages and streams; OpenDoc parts use storage units and values. Because each piece of content stores to its own ``directory'' or ``file,'' fast incremental saves can occur. There's no need to rewrite the entire ``volume,'' as current applications typically do.

Because the compound document is self-contained, OLE and OpenDoc can track links within compound documents. (Tracking them across documents, however, remains a thorny problem that can only really be addressed once these storage architectures migrate into the operating system and network substrate.) Transaction controls enable users to undo and redo changes. The first release of OpenDoc will also support multiple drafts of a document, a feature that's still on the drawing board for OLE.

For vendors of document managers, the key point is that OLE and OpenDoc will spawn a new generation of applications that access compound documents only by way of high-level APIs. Because both storage systems are built to be replaceable, these APIs can in theory be redirected across networks to document servers. How might that work in practice? Microsoft OLE architect Tony Williams points out that in the near term, on Windows 3.x and Chicago, a document manager might embed content handled by OLE 2.0 applications in a shell that communicates with a server-based implementation of OLE structured storage.

That's better than hooking File Open, but it's still less than ideal because nothing prevents users from making an end run around the document manager and using applications in a stand-alone manner. Cairo will enable a more robust solution, says Williams, because document engines will be able to use its installable file-system mechani sm to make server-based document storage available to clients in a way that's transparent to all applications.


Jon Udell is a BYTE senior technical editor at large. You can reach him on the Internet or BIX at judell@bix.com .

Up to the Cover Story section contentsGo to previous article: Standards Efforts Aim to Ease InteroperabilityGo to next article: Image Retrieval for Compound DocumentsSearchSend a comment on this articleSubscribe to BYTE or BYTE on CD-ROM  
Flexible C++
Matthew Wilson
My approach to software engineering is far more pragmatic than it is theoretical--and no language better exemplifies this than C++.

more...

BYTE Digest

BYTE Digest editors every month analyze and evaluate the best articles from Information Week, EE Times, Dr. Dobb's Journal, Network Computing, Sys Admin, and dozens of other CMP publications—bringing you critical news and information about wireless communication, computer security, software development, embedded systems, and more!

Find out more

BYTE.com Store

BYTE CD-ROM
NOW, on one CD-ROM, you can instantly access more than 8 years of BYTE.
 
The Best of BYTE Volume 1: Programming Languages
The Best of BYTE
Volume 1: Programming Languages
In this issue of Best of BYTE, we bring together some of the leading programming language designers and implementors...

Copyright © 2005 CMP Media LLC, Privacy Policy, Your California Privacy rights, Terms of Service
Site comments: webmaster@byte.com
SDMG Web Sites: BYTE.com, C/C++ Users Journal, Dr. Dobb's Journal, MSDN Magazine, New Architect, SD Expo, SD Magazine, Sys Admin, The Perl Journal, UnixReview.com, Windows Developer Network