FML Home Page

Visit our PatternStream Database Publishing Site

 

Database Publishing

Leveraging Existing Technology Benefits of Database Publishing

Key Elements in Database Publishing Adobe's Frame Tool Set

Cross-Platform Compatibility Database Publishing on the Macintosh

Sample Applications Is An Application Suitable? FML Database Solutions

Introduction

Traditionally, databases have been used to manage vast amounts of data where quick access and flexible selection and sorting are crucial. Since a database's primary mission is to store rapidly changing data, report generation tools have often stressed speed of report development over the presentation of information. Why spend time preparing a polished report when the underlying data will change by the time the report is finished?

Publishing systems, on the other hand, typically focus on more stable information such as user documentation, manuals and instructions. As a result, most publishing systems offer tools to more effectively communicate fixed information rather than tools that dynamically accommodate changing data.

Technology has moved to the point where compromising between a database's need for speed, and a publishing system's emphasis on quality of output, is no longer acceptable. The technique known as database publishing bridges the gap between speed of report generation and documentation quality.

This section provides an overview of the emerging database publishing technology. It examines the real-world needs and uses that have spurred this development, and explains how FML has used Adobe tools to incorporate support for database publishing into their services and products.

Leveraging Existing Technology

One of the key advantages of database publishing is that it allows businesses to leverage existing data and data management assets. Many of today's database applications can create files usable by electronic publishing software such as Adobe's FrameMaker and FrameViewer connected by a database-to-Frame application. By establishing communication between the two types of applications, the database can continue managing data, and the publishing system can be used as an information synthesis tool to gather data from a variety of sources (databases, graphics, and text) and present it in a single, cohesive document.

This leveraging of existing tools provides several benefits:

Top of Page

Benefits of Database Publishing

The benefits of this technology impacts any business that needs to communicate changing information internally or externally. Both information providers and users discover they are able to add new value to their existing information investments.

Benefits for Information Providers

Benefits for Users

Top of Page

Key Elements in Database Publishing

There are three key elements in a typical Adobe FrameMaker database publishing solution:

More complex applications may require an external control program to manage the interface between the database and the Frame applications. In many cases this is a simple C program that issues SQL inquiries and controls which FrameMaker template to use.

For complex requirements, this control application could even be an artificial intelligence-based system that requests different database reports based on the user's knowledge or security levels. The complexity or simplicity of this control application is defined by the developer's needs.

Top of Page

Adobe's Frame Tool Set Integration Capabilities

The Frame tool set provides an environment to create database publishing applications using any SQL database with most operating systems and include:

Frame tools are cross platform compatible and integrate with other applications through the FDK.

Differences Between Frame Authoring/Editing and Viewing Tools

FrameMaker, FrameMaker+SGML, FrameViewer and FrameReader each offer unique features required for database publishing. The differences between the products are:

Frame Developer's Kit (FDK)

The FDK provides a development environment to control FrameMaker and FrameViewer sessions and create special applications. It consists of two parts:

API

The API is an interface for FrameMaker and FrameViewer. Using the API, C programming language applications can be written to control a FrameMaker or FrameViewer session and communicate interactively with the user. The API gives the application direct access to the text and graphic objects in a document. This permits applications to be developed that can do anything a real user can do and more, such as:

The API consists of header files, function libraries, sample source code, and utilities.

FDE

The FDE provides an environment for creating cross-platform and cross-Frame tool applications by recompiling. The FDE includes a set of header files, libraries, wrappers, makefiles, and utilities for supported platforms.

Top of Page

Cross-Platform Compatibility

Frame files are cross-platform compatible -- for example, Frame documents authored and edited on a computer using a UNIX operating system can be authored and edited without translation on computers using Macintosh, DOS/Windows 3.1/3.11, Windows 95 and NT operating systems. All Frame software functions such as cross-references, variables, autonumbering, drawing tools, and format options operate on the different platforms.

Operating System Interprocess Communication

Using the FDK and UNIX specific mechanisms, Frame database applications can be developed to use operating system interprocess communication capabilities. This permits Frame software to communicate directly with a database using an operating system's native means.

DOS/Windows 3.1/3.11 and Windows 95 and NT

Several different inter-application communication strategies can be used to develop Frame database applications on DOS/Windows 3.1/3.11 and Windows 95 and NT platforms. One successful strategy FML has used is to create a DLL file with the FDK that uses open database connectivity (ODBC) to link to SQL databases. A second FML strategy has used the Windows DDE mechanism.

UNIX

On UNIX platforms, FrameMaker and FrameViewer offer integration with other applications through several basic mechanisms. Each of the following mechanisms is tightly coupled with the Frame formatting engine:

Remote Procedure Calls

Remote procedure calls (RPCs) are an interchange format that permits UNIX applications to communicate with each other. Adobe's Frame products support an appropriate subset of RPC commands through the FrameServer function. Fmbatch also uses RPC calls to communicate with other applications.

Using RPC commands, external applications can issue commands to open or create documents, import text and graphics into a document, print, or perform almost any Frame function.

Top of Page

Database Publishing on the Macintosh

With the advent of Apple's System 7 operating system, inter-application communication can occur through the AppleEvents function. AppleEvents are implemented using the FDK.

The new Macintosh operating system ("Rhapsody" currently under development by the Apple and NeXT Computer development team) should permit additional database connectivity. The current NeXTSTEP operating system permits object-based inter-application communication as one of several application connectivity options.

Sample Applications

FML has developed and implemented database publishing applications using FrameMaker or FrameViewer in conjunction with commercially available database systems. Four applications are discussed below.

Baseball Encyclopedia

FML designed and developed a database publishing system for Simon & Schuster Macmillan Company, the world's largest publisher. The application was developed to publish the Baseball Encyclopedia, a 3,026 page book containing the complete statistical history of baseball in tabular format. FML designed a database interface application to retrieve information from the baseball database and populate FrameMaker templates. The database interface was written using the FDK, C language code, and embedded SQL. The application was also written in accordance with the FDE and ODBC to ease portability between the DOS/Windows and Macintosh operating environments.

The application queried information from a Microsoft SQL Server database and populated a FrameMaker template residing on a DOS/Windows or Macintosh computer.

The application allows the publisher/editor to populate portions or all of the prescribed Baseball Encyclopedia tables from FrameMaker menu command selections. Non-tabular text information (e.g., section front matter) was input using the standard FrameMaker interface. Pagination is also controlled by the FrameMaker engine.

This application's goal was to decrease publishing time and costs. Both goals have been realized. The book publishing time has been reduced to months instead of more than a year. Production has been moved in-house, reducing costs dramatically. In addition, new spin-off books may be published about specific baseball teams using the same technique.

Test Manual

FML designed, developed, and implemented a database publishing system for a major telecommunications hardware and software company. The purpose of the system was to automatically publish phone switch test data into a manual for delivery to customers. The system was developed using FML's database publishing architecture and connected to a Microsoft Access database and FrameMaker version 5.5.1.

The final application not only performs database publishing, but also one button publishing. When the database is ready to publish, the application is started from the FrameMaker menu. The application queries the user for information for placement as FrameMaker variables across all the book files. Once the user enters the information, the application:

The entire 800 page manual is typically published in 15 minutes or less. Previously, two engineer months of effort were required to accomplish this effort.

Product Catalogs

FML is designing and implementing database publishing applications for two different product manufacturers - Morgan Distribution and James McGraw. Morgan Distribution sales and distributes Morgan Doors, Anderson Windows, and other quality products for the building and remodeling market. James McGraw sales and distributions mill parts for paper, textile, steel, machine and other manufacturing plants.

Both applications are being written using FrameMaker version 5.5.1, FML's database publishing architecture, and Microsoft SQL Server. The final systems will provide printed and WWW information for distribution to customers.

Lighting Specification Page Photometric Information

FML designed and developed a CD-ROM database publishing system for Hubbell Lighting, Inc. (HLI), a large lighting manufacturer. The application was created to populate the photometric area of light fixture specification sheets. A specification sheet contains technical information about a series of lighting fixtures. It is used by representatives, distributors, engineers, and others to create and implement lighting designs. The photometric portion of a specification page is a grouping of tables and graphs that are calculated from lighting fixture measurement data.

The database interface was written using the FDK, C and FORTRAN language code, along with embedded SQL. HLI provided FML with FORTRAN routines that FML wrapped in C code to call the Frame API. This allowed reuse of existing, tested code and rapid application development. Because the application also had to operate in the 16 bit Windows environment, the application had to be implemented as a server application to work with an API client.

This database application allows the user to specify a catalog number, match it to a file containing raw ASCII data, perform calculations, plot data, and populate part of a Frame document template with tabular and plotted information. It operates with FrameMaker and FrameViewer and interfaces with Sybase's Wacom database.

The application allows HLI to publish precise photometric information for its lighting sales personnel and customers from an easy to distribute CD-ROM. Lighting fixture test data can be added, deleted, or changed without affecting the application or the specification pages.

Adobe has highlighted this project as one of its case studies at: http://www.adobe.com/studio/casestudies/frmhubbell.html

Other Applications

Other customers have used FrameMaker and FrameViewer with standard database packages to develop other applications for:

As one example, a customer used FrameMaker as a database publishing tool to reduce catalog production time from over three months, using older manual methods, to less than two weeks. FrameMaker also allowed more flexibility to create a higher quality, better designed catalog.

Constantly changing prices, product availability, options and specifications on products increase the difficulty of producing up-to-date pricing proposals. FrameMaker customers have used database publishing to improve the price books publishing process -- significantly reducing development time, improving accuracy, and providing better control over formatting and structure.

By linking the report generation capabilities of the Informix database with the advanced features of FrameMaker and FrameViewer, a customer is able to dramatically reduce the time required to produce reports and form letters, while greatly improving both their appearance and accuracy.

Top of Page

Is An Application Suitable?

While database publishing can improve the quality of output from many database systems, it may not be suitable for every application. There are two general areas to consider when evaluating whether or not database publishing is appropriate for an application.

Data Structure Requirements

Most information currently stored in a database can be used as part of a database publishing application.

Output Requirements

Reports that are similar to completed forms are usually good database publishing candidates. These might include mail-merge applications, fill-in-the-blank contracts, invoices, purchase orders and other form-like reports.

Since such forms often require a mixture of text and images, they are often easier to produce with a database publishing solution than with standard database report writers.

FrameMaker can also be used as an effective input source for databases.

Top of Page

FML Database Solutions

Go to PatternStream

FML uses Adobe's Frame tool-set to design and develop mission critical database solutions to:

Like Frame software, FML is not operating system or database dependent and can perform equally well in any environment. Our 100% project successful completion rate is one example of this.

FML personnel have used Frame software since 1990 and continue to be at the forefront of Frame software use and inter-application development. FML personnel attended the first FDK classes in 1992 and have used the FDK to develop numerous applications for both internal FML and customer use.

Top of Page



Please send comments about this site to info@fml.com
© 2003 FINITE MATTERS LTD. All Rights Reserved.
see disclaimer and trademarks