11.07.2015 Views

Encyclopedia of Computer Science and Technology

Encyclopedia of Computer Science and Technology

Encyclopedia of Computer Science and Technology

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

160 document modelSociety for Technical Communication. Available online. URL:http://www.stc.org/. Accessed July 9, 2007.document modelMost early developers <strong>and</strong> users <strong>of</strong> desktop computing systemsthought in terms <strong>of</strong> application programs rather thanfocusing on the documents or other products being createdwith them. From the application point <strong>of</strong> view, filesare opened or created, content (text or graphics) is created,<strong>and</strong> the file is then saved. There is no connection betweenthe files except in the mind <strong>of</strong> the user. The dominant wordprocessors <strong>of</strong> the 1980s (such as WordStar <strong>and</strong> WordPerfect)were designed as replacements for the typewriter <strong>and</strong>emphasized the efficient creation <strong>of</strong> text (see word processing).Users who wanted to work with other types <strong>of</strong>information had to run completely separate applications,such as dBase for databases or Lotus 1-2-3 for spreadsheets.Working with graphics images (to the extent it was possiblewith early PCs) required still other programs.This “application-centric” way <strong>of</strong> thinking suited programdevelopers at a time when most computer systems(such as those running MS-DOS) could run only one programat a time. But increasing processor power, memory,<strong>and</strong> graphics display capabilities during the late 1980s madeit possible to create an operating system such as Micros<strong>of</strong>tWindows that could display text fonts <strong>and</strong> formatting,graphics <strong>and</strong> other content in the same window, <strong>and</strong> runseveral different program windows at the same time (seemultitasking). In turn, this made it possible to present amodel that was more in keeping with the way people hadworked in the precomputer era.In the new “document model,” instead <strong>of</strong> thinking interms <strong>of</strong> individual application programs working withfiles, users could think in terms <strong>of</strong> creating documents.A document (such as a brochure or report) could containformatted text, graphics, <strong>and</strong> data brought in from databaseor spreadsheet programs. This meant that in the course <strong>of</strong>working with a document users would actually be invokingthe services <strong>of</strong> several programs: a word processor, graphicseditor, database, spreadsheet, <strong>and</strong> perhaps others. To theuser, however, the focus would be on a screen “desktop” onwhich would be arranged documents (or projects), not onthe process <strong>of</strong> running individual programs <strong>and</strong> loadingfiles.Implementing the Document ModelThere are two basic approaches to maintaining documents.One is to create large programs that provide all <strong>of</strong> the featuresneeded, including word processing, graphics, <strong>and</strong> datamanagement (see application suite). While such tightintegration can (ideally at least) create a seamless workingenvironment with a consistent user interface, it lacksflexibility. If a user needs capabilities not included in thesuite (such as, perhaps the ability to create an HTML version<strong>of</strong> the document for the Web), one <strong>of</strong> two cumbersomeprocedures would have to be followed. Either the operatingsystem’s “cut <strong>and</strong> paste” facilities might be used to copydata from another application into the document (possiblywith formatting or other information lost in the process),or possibly the document could be saved in a file formatthat could be read by the program that was to provide theadditional functionality (again with the possibility <strong>of</strong> losingsomething in the translation).Linking <strong>and</strong> EmbeddingA more sophisticated approach is to create a protocol thatapplications could use to call upon one another’s services.The Windows COM (Component Object Model) uses a technologyformerly called OLE (Object Linking <strong>and</strong> Embedding).Using this facility, someone working on a documentin Micros<strong>of</strong>t Word could “embed” another object such asan Excel spreadsheet or an Access database into the currentdocument (which becomes the container). When theuser double-clicks on the embedded object, the appropriateapplication is launched automatically, <strong>and</strong> the user sees thescreen menus <strong>and</strong> controls from that application instead <strong>of</strong>those in Word. (One can also think <strong>of</strong> Word in this examplebeing the client <strong>and</strong> Excel or Access as the server—see client-servercomputing). All work done with the embeddedobject is automatically updated by the server application<strong>and</strong> everything is stored in the same document file. Alternatively,an application may be linked rather than embedded.In that case, the container document simply containsa pointer to the file in the other application. Wheneverthat file is changed, all documents that are linked to it areupdated. Object embedding thus preserves a document-centricapproach but works with any applications that supportthat facility, regardless <strong>of</strong> vendor. The Macintosh operatingsystem <strong>of</strong>fers a similar facility. Apple <strong>and</strong> IBM attemptedunsuccessfully to create a competing st<strong>and</strong>ard called Open-Doc. This should not be confused with the more recentOpen Document st<strong>and</strong>ard from the popular open-sourceapplication Open Office. Meanwhile Micros<strong>of</strong>t’s COM, graduallyintroduced during the later 1990s, has been largelysuperseded by .NET (see Micros<strong>of</strong>t .NET). This reflectsa shift in emphasis from a document model (within a sin-The Document Object Model (DOM) treats a Web page as an objectthat can be manipulated using a variety <strong>of</strong> scripting languages.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!