PatternStream Questions and Answers

The following question and answer list provides information about PatternStream. If you have a question that's not listed below or you want additional information, please don't hesitate to contact us or request additional information.

Advantages
Q:
What are PatternStream's advantages?
A: PatternStream has several advantages that make it the best database publishing solution including:
  • Rapid set up and implementation
  • Ability to publish complex formats including tables
  • Capability to obtain information directly from databases, flat files, mark-up, spreadsheets, images, and other sources
  • Cross media publishing capability - output to multiple file types with a single engine
  • Projects can be set up, saved, run, re-used, modified, and re-purposed
  • One project can publish multiple document types
  • Extensibility

These advantages make PatternStream the best cost effective system to publish your information in multiple forms for print and electronic distribution.

Q: How does PatternStream enable rapid database publishing set up?
A: PatternStream set up is accomplished through its graphical user interface (GUI). There's no development language to learn and use or is programming necessary. Database publishing projects are developed, saved, and run using the GUI which has been designed to maximize productivity and decrease time to publish. Due to the nature of the GUI and the environment, projects can be set up iteratively - literally as you go. Users can see exactly what they're publishing as they develop it.

Additionally, PatternStream connects directly to the project's databases and data sources. There's no need to develop and implement a data extraction application or parser.

Quick set up allows PatternStream to enable fast return on investment (ROI) for customers. For additional information, see project set up below.

Q: Can't all methods publish complex formats including tables?
A: The short answer is no.

Most database publishing solutions sacrifice formatting complexity for ease of application design. Some can't even address publishing true tables at all, let alone complex tables with straddles and color. PatternStream was designed to solve the database publishing to print problem first - which is the most complex problem. PatternStream's unique approach to the database publishing problem enables it to handle the most complex publishing output format requirements.

Additionally because PatternStream connects directly to databases, it doesn't have to flatten the data structure before publishing the information. This allows PatternStream to drive formatting directly from the database, presenting options not available with most other systems.

Q: How does PatternStream obtain information from so many data sources at once?
A: PatternStream was designed to be able to use most any electronic data as input for published print and electronic documents. Database connectivity is managed through PatternStream's ODBC/SQL and stored procedure database interface objects. Other data sources are managed as types of objects like:
  • Desktop publishing files (Corel WordPerfect, FrameMaker, Microsoft Word, RTF etc.)
  • Image files (e.g., BMP, DXF, EPS, GIF, JPEG, PCX, PDF, TIFF, WMF, etc.)
  • Mark-up files (i.e., HTML, XML, etc.)
  • Microsoft Excel files
  • Text files

PatternStream uses all of the objects that contain the source information in the sequence needed to publish to output. This allows PatternStream to publish the data where it needs to be in the output from the applicable sources.

Q: Why is PatternStream's cross media publishing capability important?
A: Cost savings - by creating multiple output formats at once.

PatternStream can publish from a multitude of data sources to a variety of electronic file formats allowing print and electronic distribution. The PatternStream system method will publish a document for distribution as highly formatted print, interactive CD, the web, and other electronic formats in one session. With PatternStream, customers can realize the promise of single source publishing. 

Q: How are PatternStream database publishing projects set up, saved, run, re-used, saved as, and re-purposed?
A: PatternStream database publishing projects are set up, saved, run, re-used, saved as, and re-purposed through its GUI. Each project is saved in a (binary) file named a pst (pattern set template) file. This file type or extension (*.pst) is like a FrameMaker *.fm file or a Word .doc file except that it saves the information for a PatternStream database publishing project instead of a document. This means that projects can not only be saved to publish again and again, but saved as to create new and derivative products.
Q: Why is it advantageous to publish more than one document with a set up?
A: Some classes of documents are similar to one another. For example, a proposed budget may be very similar to a final budget. A parts catalog with prices may be very similar to one without prices. A partial product catalog may be similar to a complete product catalog. There are many examples where documents are alike.

PatternStream through the use of conditions and other control functions, allows a single project set up to publish multiple documents of a like type. This decreases set up time and enables rapid ROI.

Q: What is extensiblity and why is it important to PatternStream?
A: Extensibility is the capability to add new features and functions to an application like PatternStream to satisfy special requirements. PatternStream will usually satisfy all of a database publishing project's needs, but in the event it there are unique needs, PatternStream has the capability to be extended to address the needs. For additional information, see Extensibility below.
Applicability
Q: When does desktop database publishing make sense?
A: Database publishing typically takes one of two forms, placing a specific string from a database within a document or the contiguous publishing of a pattern of information from a database to print. For additional discussion on this topic, please refer to the 1998 FrameUsers Conference paper entitled "Database Publishing with FrameMaker."
Q: What types of documents can be published with PatternStream?
A: The PatternStream desktop database publishing system can be used to produce superior:
  • Catalogs
  • Directories
  • Manuals
  • Reference Books
  • Reports
  • Any pattern-based published documents

In general, PatternStream can be used to rapidly setup and publish any information from databases to create complex printed and electronic documents

Q: Who needs PatternStream?
A: Organizations that currently have shown a need to perform database publishing tasks include:
  • Associations
  • Distributors
  • Financial
  • Government
  • Health Care
  • Manufacturers
  • Printers
  • Publishers
  • Service Providers
  • Utilities

Associations publish membership and other types of information directories for their members. Distributors publish product catalogs for customers. Financial organizations need to publish fund reports, general performance reports, prospectus, and other financial service documents for customers and prospective customers. All levels of government (local, state, federal) publish budgets, statistical reports, directories, catalogs, and other sources of information for its cognizant citizenry and/or other information customers. Health care providers publish directories. Manufacturers publish catalogs, manuals, test results, and other sources of information for current and prospective customers. Printer and service providers provide a method for customers to publish database information to print and electronic form including to the W3. Publishers have a need to publish their intellectual property for customers. Utilities have a need to publish manuals, directories, and other information for its employees.All of this information can be stored in databases.

Q: Can PatternStream be used for web publishing?
A: PatternStream can be used in three different processes to provide information for posting on the web. The first method is to use PatternStream to publish HTML for use at a web site. The second method is to use PatternStream as an engine to publish user defineable PDF documents over the web. For more information about this method, please see Dynamic PDF below. The last method is to use PatternStream to publish static HTML for use at a web site. 
Database Connectivity
Q: What types of databases can be used with PatternStream?
A: Any databases that are compliant with the open database connectivity (ODBC) and structured query language (SQL) standards can be used with PatternStream. This includes, but is not limited to:
  • FileMaker Pro
  • IBM DB2, Informix, and Lotus Notes
  • Microsoft Access, FoxPro, and SQL Server
  • Oracle
  • Paradox
  • Sybase
Q: What are ODBC and SQL?
A: ODBC and SQL are database industry standards for interfacing and querying databases.

There are two methods that can be used to connect to a database, ODBC or native proprietary database drivers. ODBC is the standard application programming interface (API) originally proposed by Microsoft that most database engine developers support for connecting to databases. Supporting the standard allows PatternStream to communicate with any compliant databases. For more information about ODBC, refer to the following information sources:

SQL is the standard (ISO/IEC 9075:1992, Information Technology - Database Languages - SQL and ANSI X3.135-1992, Database Language SQL) for querying a database for information. SQL provides a common language for obtaining information from any database. By using this mechanism for extracting database information, PatternStream will work with any compliant database. For more information about SQL, refer to the following information sources:

Q: Can PatternStream publish from multiple databases at once?
A: Yes, PatternStream can use multiple database sources at one time to publish a document or series of documents. This includes the use of different brands of database engines (e.g., Oracle and Access) to publish a project. 

One example of this is a county budget document. An Oracle database contains the county's financial information and an Access database contains its organizational structure. Both databases (and a number of images and word processing files) are used during the publishing process to create the final document. Queries are setup and used as required to obtain data from each database when needed.

Q: How is ODBC setup to access databases?
A: ODBC is part of the Microsoft Windows operating system.

odbc.jpg (2549 bytes)

Specific ODBC data sources are setup through the Windows 95, 98, NT, and 2000 control panel using the ODBC manager. For more information, refer to the Windows operating system manual and help files.

Q: How do I obtain an ODBC driver for my database that is not included with my Windows operating system?
A: The Microsoft Windows operating system is typically installed with the following ODBC drivers:
  • Access
  • FoxPro
  • dBase
  • SQL Server
  • Oracle
  • Paradox

Additional ODBC drivers can be obtained through database engine developers and third party suppliers.

Documentation
Q: What documentation is available with PatternStream?
A: PatternStream currently ships with three documents:
  • Getting Started guide
  • Quick Start guide
  • User Manual

The Getting Started guide provides information about PatternStream installation and demonstration version information. The Quick Start guide describes more information about how to setup PatternStream for successful publishing and how to create a basic publishing project. The PatternStream User Manual provides a complete description of the application.

Q: How can I obtain copies of PatternStream documentation?
A: PatternStream documentation is available from several different sources. The PatternStream demonstration and installation CDs contain the documentation in PDF file format. The documentation is also available in the library at this site. If you do not have either of the PatternStream CDs or the capability to download the PDF files from the library, please contact us and we'll get copies to you.
Dynamic PDF
Q: What is dynamic PDF?
A: Dynamic PDF is a PDF document created "on-the-fly" from one or more databases and other data sources. Dynamic PDF allows information suppliers to create or allow users to direct the creation of high quality output based on current data. Dynamic PDF can be created on a desktop computer, server, or web server depending on distribution requirements.

PatternStream can generate dynamic documents through the Internet, intranet, or extranet web-based front-ends. Users can jump online, select the information they desire, click "publish", and instantly receive a PDF file of the information as an email attachment. Very quick and totally dynamic!

Dynamic PDF documents can be created using a web interface to the PatternStream application and the publishing database. Using Java, CGI, or other web programming environments, simple applications can be written which allow:

  • mission specific information to be displayed on an HTML or XML page
  • a user with a web browser to choose information of interest
  • population of the publishing database with the user's selection
  • initiation of database publishing using the PatternStream application and creation of a user defined PDF document
  • email transmission of the PDF document to the user

This process allows users to create documents from a database(s) and have them delivered using a web interface or email attachment extending the reach and scope of database publishing to make it user defined and accessible to the world through the web.

Q: What kind of documents might be published as dynamic PDF?
A: Three examples are:

Training course catalogs

Educational and corporate organizations can list their available training courses on a web server for access. Training customers can select the courses they are interested in and have a PDF listing of the courses, including title, number, time, location, description, prerequisites, and other pertinent course attributes, emailed to them or displayed in their browser.

Product catalogs

Manufacturers can list products and catalog attributes on a web server enabling distribution centers to create customer specific catalogs. A salesperson in a remote location can go to a protected web site, access the appropriate page and application, choose the appropriate products and format (including end customer specific heading and footers), and create a PDF catalog. Once the PDF catalog is received and reviewed, the salesperson can 1) print the catalog on a desktop printer, 2) go to a quick-print shop to print a number of catalogs, 3) go to a high end printer for large quantities of catalogs, 4) provide the end customer with a PDF file.

Reports

Numerous organizations develop databases for reports for use by internal customers, clients, or the public. Using the web and PatternStream, systems can be rapidly developed and deployed which will allow web enabled customers to create custom PDF reports from various databases.

Q: Can you show any examples of dynamic PDF?
A: Most samples of PatternStream creating PDF dynamically are internal at various customer sites. One simple web front end driven example is available on one of our web servers for viewing. This example allows a user to specify what information is published into a PDF document.
Extensibility
Q: Why is extensibility important?
A: Extensibility is important because it allows the set of features and functions of an application to be increased. In the case of PatternStream, this allows additional functionality to be implemented that will satisfy explicit publishing requirements. PatternStream generally provides all of the tools necessary to publish any database publishing product - but in the event special needs exist, PatternStream can be extended.

As example, a publisher has a requirement to implement a rule for breaking leaders in a line that contains a complete name (including titles) and a phone number. A line has to contain at least three proportionally spaced leaders and can only break a name at certain places. PatternStream, like most database publishing solutions, can't do this out of the box, but a simple plug-in application can be developed and implemented which will.

Q: How is PatternStream extensible?
A: PatternStream is extensible through two means - dynamic linked libraries (dll) and FrameScript. Each approach has its set of advantages and disadvantages.
Q: What is FrameScript?
A: FrameScript is an English-like scripting environment for use with FrameMaker - and PatternStream. For additional information regarding FrameScript, see the FrameScript web site.
Format
Q: Does every page have to look the same?
A: One of presentation problems with database published documents is that every page looks the same. This is not true with PatternStream. PatternStream has a number of control features which allow published material to look different page after page. 
Q: How does PatternStream control document formatting?
A: PatternStream controls document formatting at several levels. 
Q: Can PatternStream populate complex tables in documents?
A: Yes, PatternStream can generate and populate very complex tables in documents. Tables may have: 
  • multiple straddles
  • unique table and cell colors and rules
  • multiple heading rows
  • tables-within-tables
  • continuation headers
  • dynamically driven rows and columns
  • other attributes

PatternStream hasn't failed in publishing the most complex tables that we have been presented.

Q: Can PatternStream import and resize images in documents?
A: Yes, PatternStream can import and resize images in documents. The resizing can be based on database information (dynamic resizing) and fit to specified size.
Q: Can PatternStream create formatting options not natively available in FrameMaker?
A: Yes, PatternStream can create formatting options not natively available in FrameMaker. For example, FrameMaker doesn't support the capability to place a three column flow within a two column page and straddle the first two columns. PatternStream does.

FrameMaker doesn't have a function that allows items to be fit in a "grid" over a page. PatternStream has a grid layout system that makes it easy to create documents like phone directories.

Q: Can PatternStream control the use of master pages?
A: Yes, PatternStream does control the use of FrameMaker master pages. First, in between, and last master pages can be specified or driven dynamically from a database. 
FrameMaker
Q: Why is Adobe FrameMaker used as part of the PatternStream database publishing solution?
A: FrameMaker is used as part of the PatternStream desktop database publishing solution because of its excellent features and capabilities:
  • Frame Developer's Kit (FDK)
  • Long document stability
  • Complex table publishing
  • Output ability (PDF, HTML, XML, etc.)
  • Input filters
  • Powerful publishing engine

 

Q: What is the Frame Developer's Kit (FDK) and why is it important?
A: The FDK is the application programming interface (API) for FrameMaker and other Frame products available from Adobe. It provides programmers the capability to extend the functionality of FrameMaker. We use it to interface PatternStream directly with FrameMaker. This allows PatternStream to drive and format data directly into FrameMaker without any manual interaction or in-between files. 

For more information about the FDK, please refer to information at the Adobe Developers Solutions FDK web site.

Q: How does the FrameMaker template interface with PatternStream?
A: PatternStream interfaces directly with the FrameMaker template through the FDK connection. All of the FrameMaker template attributes such as the paragraph, character, and table catalogs, master pages, and flows are accessible in the PatternStream GUI. This enables PatternStream objects to be assigned particular FrameMaker formatting attributes.
Graphical User Interface (GUI)
Q: How does the PatternStream's GUI work?
A: The PatternStream GUI allows users to set up, save, modify, and control database publishing projects. The interface has a series of icons that represent objects used for database publishing. Each object has a purpose and publishing attributes. The GUI was developed using the Microsoft Foundation Class (MFC) objects.
General
Q: How does PatternStream work?
A: Basically, PatternStream connects to any and multiple ODBC/SQL compliant databases and flat files and publishes into FrameMaker, Excel, or text files (mark-up or text). Database publishing project set up and control is through the PatternStream GUI. Project information is saved in a binary file.
Q: What is a pattern set template (pst) file?
A: A pst file (pattern set template file - also called a pset file) is the binary file that stores publishing project information. Like a FrameMaker (.fm) or Acobat (.pdf) binary file, the pst file contains all the information required to publish a document or series of documents from a database or group of databases. This information includes:
  • Database connection 
  • Flat file connection
  • FrameMaker template attributes
  • Publishing structure
  • Formatting
  • Publishing process control
  • Variable information 
Q: Does PatternStream allow you to publish to print, CD, and the web?
A: Yes, PatternStream allows the user to publish to print, CD, and the web. Depending on a project's information customers need, multiple output formats can be generated and set up for different types of distribution.
Q: How long has PatternStream been around?
A: PatternStream was publically announced September 1, 1998 at the San Francisco Seybold Conference in San Francisco where it was awarded with one of the Seybold Editor's Hot Picks. Before that date, FML only sold PatternStream and its database publishing architecture to selected customers. FML has studied the database publishing issue and been providing solutions since its September 23, 1991 formation.
Q: Why is PatternStream Patented?
A: FML made a patent submittal to the Patent Trademark Office (PTO) August 31, 1998 because PatternStream implements unique processes and methods not previously used in database publishing solutions. PatternStream brings these new methods and their corresponding advantages and efficiencies to publishing customers. 

The Patent was awarded about two years later and is available on the web at the U. S. Patent Office site (http://patft.uspto.gov/netahtml/srchnum.htm) and can be viewed by entering the Patent No. 6,282,539.

Q: Are the documents published by PatternStream editable?
A: Yes, the documents published by PatternStream are totally editable using Acrobat, FrameMaker, Excel, or a text editor, depending on output type.
Information Sources
Q: Besides data contained in database rows, what types of information can be published using PatternStream?
A: In addtion to database information, PatternStream can publish information from:
  • Text files including markup
  • Images
  • Excel
  • Word processing files
Microsoft Excel
Q: Why does PatternStream output directly to Excel?
A: PatternStream publishes to Excel spreadsheets because our customers in the government and financial sectors requested it. They have a need to not only publish to print and electronic documents but also provide their customers with electronic data in spreadsheet forms.
Q: How does PatternStream work with Excel?
A: PatternStream connects directly to Excel through its API. This allows PatternStream to publish Excel without the use of manual interaction or intermediate files. 
Output
Q: What types of output can be obtained using PatternStream?
A: A PatternStream publishing operation will generate any of the types of output format possible with FrameMaker which include:
  • Acrobat PDF file
  • FrameMaker binary file (fasel)
  • hypertext markup language (HTML)
  • maker interchange format (MIF)
  • PostScript (ps)
  • extensible markup language (XML)
  • various word processing applications

The PatternStream/FrameMaker output can be used to publish to print or electronic format. Typically PDF, PostScript, and/or FrameMaker output formats are sent to printers. PDF, HTML, and XML output formats are used for web distribution. PDF is also used to send published information via CD-ROM, CD-R, email, and other electronic distribution means to information customers.

Q: How can HTML output be obtained from a PatternStream publishing session?
A: PatternStream can generate HTML through several paths:
  • FrameMaker
  • FrameMaker and Quadralay WebWorks Publisher Professional
  • directly

Each HTML creation path has its advantages and disadvantages. The FrameMaker to WebWorks Publisher generates the best "looking" HTML but it is also the slowest. Direct PatternStream to HTML publishing is the fastest.

Q: Can file output names be database driven?
A: Yes, PatternStream can create output file names and directory paths based on database information. This allows files have names that correspond to user specified information - and be placed in defined directories. 
Q: Will imbedded hyperlinks be maintained in electronic file formats?
A: Yes, PatternStream generated hyperlinks will be available in all output file formats including PDF and HTML.
Project Set Up
Q: Why is project set up fast with PatternStream?
A: PatternStream has a graphical user interface which allows database publishing projects to be rapidly set up - without the need to learn a programming language or use intermediate files.
Publishing Speed
Q: What is PatternStream's publishing speed?
A: PatternStream's publishing speed typically depends on the FrameMaker engine formatting speed. The FrameMaker engine formatting speed is dependent on the publishing output formatting requirements. For example, a single column flow of continuous paragraphs will publish far faster than a multi-column page containing multiple types of tables. Publishing speeds can range from one page to several hundred pages a minute.
Q: What type of computer should be used for optimum PatternStream performance?
A: A computer containing a Pentium III, IV, or AMD processor and at least 128 MB of RAM should be used for optimum performance. Because the FrameMaker engine formatting speed is processor dependent, the faster the processor clock speed and the more memory cache, the better the publishing speed.
Queries
Q: Can PatternStream perform sub-queries?
A: Yes, PatternStream can perform multiple levels of sub-queries. This allows very complex documents to be data driven. PatternStream eliminates the need to flatten database information to publish.
Q: Can PatternStream perform complex queries that may include sums, groups, and joins?
A: Yes, PatternStream can perform all of the SQL functions except for having.
Training
Q: How much time is required for PatternStream training?
A: PatternStream training is normally scheduled for three day sessions. Class time can be shortened or increased depending on the student knowledge levels.
Q: What personnel knowledge is important to learn PatternStream?
A: We have found it important to have a good understanding of FrameMaker and a general understanding of databases and SQL before learning PatternStream. 
Q: Does FML provide FrameMaker training?
A: Yes, FML can provide for FrameMaker training directly or through its third party partners.
Web Database Publishing
Q: Can PatternStream be used to publish documents from databases to the web?
A: Yes, PatternStream can be used to publish documents from databases to the web, either in PDF, HTML, or XML file formats.
 

 

 

 

 

Copyright © 1998 - 2008 Finite Matters Ltd. All rights reserved.

PatternStream implements Patent Number 6,282,539.