Note: Descriptions are shown in the official language in which they were submitted.
CA 02571092 2015-08-24
DOCUMENT OUTPUT PROCESSING USING CONTENT DATA AND FORM DATA
COPYRIGHT AND LEGAL NOTICES
[0001] A portion of the disclosure of this patent document contains
material
which is subject to copyright protection. The copyright owner has no objection
to the
facsimile reproduction by anyone of the patent document or the patent
disclosure, as
it appears in the Patent and Trademark Office patent files or records, but
otherwise
reserves all copyrights whatsoever.
SUMMARY OF THE INVENTION
[0002] The invention relates to printing and other output of documents
using
data processors, and particularly to methods, apparatus, and computer
programming
useful for controlling output processes.
[0003] The invention provides systems, methods, and computer programming
useful for minimizing the number of command inputs required from a user to
complete printing or other output of multiple documents. The invention also
provides
systems, methods, and computer programming useful for printing documents using
content data received from users or other sources, together with previously-
provided
form data, according to predetermined formats.
[0004] For example, the invention provides systems useable for printing
or
other output of documents, such systems comprising one or more input or other
client devices adapted for providing content data to an output server or
servers, and
one or more form data stores accessible by the output server(s). The form data
stores include data useable by the output server(s) for compiling, in
combination with
the content data, one or more documents according to predetermined formats.
[0005] Output servers according to such embodiments of the invention are
adapted to access the content data and the form data store, compile the
content
data and form data, and cause an output device to output at least one document
according to the at least one predetermined format, using the compiled data.
-1--
7124138.1
00782-2167
CA 02571092 2006-12-13
[0006] Output servers can comprise any hardware or software suitable for
use
in accomplishing such purposes. For example, an output server can comprise a
separate, e.g. remotely-located, physical computer or processor, or a suitably-
configured programming structure running on a client device, or any
combination(s)
thereof.
[0007] Output devices can comprise any printers, facsimile transmitters,
graphic display devices, or other devices or applications consistent with the
purposes described herein. For example, output devices can comprise e-mail
servers or applications, bulletin board or chat-type applications, and any
desired
multi-function devices.
[0008] The invention further provides processes for controlling such
printing or
other output processes. Such processes are performed by a computer or
computers
such as client devices and/or output servers, and can include receiving from
an input
or other client device content data useful in preparing one or more documents;
accessing in a data store form data useful for compiling, in combination with
the
received content data, data useful for outputting the at least one document
according
to at least one predetermined format; compiling the content data and the form
data to
provide data useful for outputting the at least one document according to the
at least
one predetermined format; and storing the compiled data in volatile or
persistent
memory. The volatile or persistent memory can comprise any memory directly or
indirectly accessible by the processor(s) controlling the output process,
including for
example dedicated random access or disk storage, or buffers or other memories
associated with printers or other output devices involved with the output
process.
[0009] In other embodiments the invention provides systems, methods, and
computer programming useful for minimizing the number of command inputs
required from a user to complete printing or other output of multiple
documents. For
example, the invention provides methods for controlling output processes which
include providing to a processor such as a client computer system data useable
by
the processor for displaying a user interface, the user interface comprising
data
identifying a plurality of documents that can be output using content data
received
from the client device and, with respect to each of the identified documents,
at least
one corresponding interactive item. Such methods can further include receiving
from
the client device or other processor a command signal set comprising at least
one
-2-
7124138.1
00782-2167
CA 02571092 2006-12-13
identification signal, the identification signal identifying at least one of a
plurality of
the identified documents to be output, and at least one execution signal. Such
command signal sets and identification signals can be provided, for example
using
well-known 'point-and-click' methods using trackballs, mice, or other
interface
controllers, by enabling a user to select one or more check boxes or radio
buttons
corresponding to desired documents, and pushing a control button associated
with
the interface controller, selecting an interactive execute item, or otherwise
providing
an execution command. Upon receipt of such an execution signal, the
processor(s)
can provide to one or more output device(s) data useable by the output
device(s) for
outputting the one or more documents in human-readable form.
[0010] In further aspects or embodiments the invention provides computer
memories communicatively linked to processors such as client computer systems
and to output devices, the memories comprising computer readable media
representing form data useable for compiling, in combination with content data
received from the client device, data useable for outputting one or more
documents
according to at least one predetermined format. Such form data can comprise
any
data useful in outputting such documents, including for example type fonts and
size
information; page size, margin, and other formatting information; and
standardized
text and images used in preparing or identifying the documents, such as
letterheads,
logos, and form paragraphs in contracts, notices, and other documents.
[0011] In other aspects, the invention provides computer-usable media
comprising computer readable code embodied therein for causing computers or
other automatic data processors to execute commands in conformance with the
processes disclosed herein.
[0012] Methods, apparatus, and programming according to the invention can
be used to cause multiple documents to be output simultaneously, using
minimized
numbers of command input signals, with significantly reduced demands on data
transfer and communications systems. Output of documents in accordance with
the
invention can significantly reduce the amount of data processed by and/or
transferred between servers, client systems, and output devices such as
computers,
and can save users of such devices significant amounts of time and trouble in
obtaining output of documents.
-3-
7124138.1
00782-2167
CA 02571092 2006-12-13
[0013] As will be apparent to those skilled in the relevant arts, once
they have
been made familiar with this disclosure, and as further disclosed herein,
content data
comprises any information desired to be output in one or more documents that
is
specific to a particular document or set of documents related to a specific
transaction, or otherwise designated as serving a specific purpose in a
document.
Content data can include static data specified by a user of an interactive
input
process or provided to a processor in disk, database, tape, card, or other
batch form,
including both text and images, or dynamic content of any compatible form,
including
for example changeable text matter or audio or video data, including for
example
data provided in flash, .mpeg, or .wave, or other formats.
[0014] As will further be apparent to those skilled in the relevant arts,
once
they have been made familiar with this disclosure, and as further disclosed
herein,
form data can comprise any data useful in outputting such documents, including
for
example type fonts and size information; page size, margin, punctuation,
column,
page numbering, and other formatting information; and standardized text and
images
useful in preparing or identifying the documents, such as letterheads, logos,
and
form paragraphs in contracts, notices, and other documents. Form data can
include
static and/or dynamic useful in compiling a form, including for example text
and
images, or dynamic content of any compatible form, including for example
changeable text matter or audio or video data, including for example data
provided in
flash, .mpeg, or .wave, or other formats.
[0015] As will further be apparent to those skilled in the relevant arts,
once
they have been made familiar with this disclosure, and as further disclosed
herein,
predetermined (i.e., preselected or otherwise desired) formats can comprise
any
specific or general forms contemplated for use in outputting documents. For
example, predetermined formats can include specific sizes, sequences,
relational
juxtapositions, or formats of text, images or other information used in
presenting a
document intended to be comprehensible to a human user.
[0016] As further disclosed below, it can be advantageous in some
circumstances to provide documents in predetermined format(s) using data sets
that
are at least initially application-, or format-, neutral. That is, in forms
which are
immediately interpretable (i.e., "native") to an intended output device,
and/or easily
translatable by output programs or devices into any desired format for further
output
-4-
7124138.1
00782-2167
CA 02571092 2006-12-13
processing. Thereafter, the format-neutral document(s) can be translated into
any
desired formats, such as, for example, WordTm-compatible .doc formats, Adobe
.pdf
format, .jpeg, .gif, etc. Format-neutral output can include, for example,
stream of data
that are interpretable, with or without further processing by printers or
other output
devices. One format that has proved particularly useful in present embodiments
is
the well-known PCL open-document format. For purposes of this disclosure,
"application-neutral" and "format-neutral" are synonymous.
[0017] As will further be apparent to those skilled in the relevant arts,
documents, for purposes relevant to this disclosure, can include any physical
or
virtual documents, including printed or printable documents, images, etc.
[0018] Systems, methods, and programming code according to the invention
are suitable for use in outputting all types of documents, particularly where
output of
multiple documents is desired, the documents being prepared based on a shared
set
of content data.
[0019] One application in which systems, methods, and programming
according to the invention may be particularly useful is where the output
documents
are to be retained as evidence of acceptance, acknowledgement or other action
by a
user of the documents, as for example where the documents are to be signed or
otherwise witnessed or authenticated. Such evidence may be provided for
example,
in the case of a physical document such as a set of papers, by physical
written
signature or, in the case of electronically-maintained documents, by
electronic
representations of such signatures or by association of the output document
data
sets with security devices such as biometric access controls. Such biometric
access
controls can include, for example, fingerprint readers/records, voice
recognition
data/equipment, retina scans, etc.
[0020] One industry in which systems, methods, and programming according
to the invention may be applied with particular advantage is the financial
services
industry. For example, transactions pertaining to loan or credit applications,
the
issuance or transfer of securities, the opening and/or management of accounts
such
as savings or checking accounts, the establishment and transfer of shares in
mutual
funds or other real or personal property, the preparation, issuance, and
maintenance
of insurance policies all typically involve the preparation of multiple
documents based
-5-
7124138.1
00782-2167
CA 025710 92 2 00 6-12-13
on sets of content data which may advantageously be shared between the
documents. Such shared information can include, for example, names and other
identifiers associated with account holders, lenders, borrowers, securities
issues,
etc., which must appear in multiple documents. The invention offers
significant
improvements in the preparation and control of such output documents.
[0021] Many of the advantages afforded by systems, processes, and
programming according to the invention will be made apparent in the disclosure
which follows.
BRIEF DESCRIPTION OF THE FIGURES
[0022] The invention is illustrated in the figures of the accompanying
drawings, which are meant to be exemplary and not limiting, and in which like
references are intended to refer to like or corresponding parts.
[0023] Figure 1 is a schematic diagram of a system suitable for use in
implementing the invention.
[0024] Figures 2a and 2b are schematic flow diagrams of processes for
controlling printing and other output processes according to the invention.
[0025] Figure 3 is a schematic diagram of a system suitable for use in
implementing the invention.
[0026] Figures 4 and 5 are schematic diagrams of user interfaces suitable
for
use in implementing processes according to the invention.
[0027] Figure 6, consisting of Figures 6a - 6c, is a listing of
processing
instructions useful in causing a processor to implement processes in
accordance
with the invention.
[0028] Figure 7 is a schematic diagram of a process for compiling output
data
in accordance with the invention.
[0029] Figure 8 is a schematic diagram of a document output in accordance
with the invention.
[0030] Figures 9 and 10 are schematic diagrams of user interfaces
suitable for
use in implementing processes according to the invention.
-6-
7124138.1
00782-2167
CA 02571092 2006-12-13
[0031] Figures ha - 11c and 12 are schematic diagrams of systems suitable
for use in implementing the invention.
[0032] Figures 13 and 14 are schematic diagrams of process flows in
accordance with the invention.
[0033] Figure 15 is a schematic diagram of a system suitable for use in
implementing the invention.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0034] Preferred embodiments of methods, systems, and apparatus according
to the invention are described through reference to the Figures.
[0035] Figure 1 is a schematic diagram of an example system architecture
suitable for use in implementing systems and output processes according to the
invention. In the example shown, system 100 can comprise one or more each of
output server(s) or other processor(s) 102, input device(s) 104, form data
store(s)
106, output device(s) 108, and display device(s) 110.
[0036] Output server(s) or other processor(s) 102 comprise, execute,
operate,
or are otherwise associated with programming and/or data processors adapted
for
communication with one or more of input device(s) 104, form data store(s) 106,
output device(s) 108, and display device(s) 110; and for control of output and
other
data processes performed thereby. A wide variety of digital processors and
computer programming are suitable for use in implementing output servers and
other
components of the invention, including for example processors such as those
incorporated within modern stand-alone or networked computer systems,
operating a
wide variety of suitable control or operating system software. For example,
systems
and processes according the invention may readily be implemented using PC-,
desktop, laptop, server-class, personal digital assistant (PDA), and/or
mainframe-
class computer systems using Windows , Linux, and/or other operating system
software. Output servers can be implemented by or as computer programs or
program modules stored on and/or executed by multi-purpose computer systems,
such as for example suitably-configured output control application programs
running
on PC or workstation class computer systems. A wide variety of such
processors,
-7-
7124138.1
00782-2167
CA 02571092 2006-12-13
application programs, and control and/or operating software systems suitable
for use
in implementing the invention are now commercially available, and others will
doubtless hereafter be developed. The selection of suitable devices and
control or
operating systems will not trouble those skilled in the relevant arts, once
they have
been made familiar with this disclosure.
[0037] Input device(s) 104 can include any input devices compatible with
the
objects and processes disclosed herein, including for example computer
keyboards,
pointing devices such as mouses (mice) or trackballs, and tape, disk, or card
readers. In general, such devices include any devices suitable for use in
providing to
output server 102 and other processors data and preferably also execution and
other
command signals useful in preparing forms and other documents for output
processing. Such input devices can be linked directly to output server(s) 102,
or
indirectly, as for example through networking of client systems such as PCs or
workstations communicatively linked to output server systems via local or wide
area
networks, and/or public networks such as the Internet.
[0038] Data signals provided by input device(s) 104 can comprise signals
representing content useful in outputting or otherwise preparing forms or
other
documents, as well as command and execution signals. As will be understood by
those skilled in the relevant arts, a wide variety of forms and other
documents are
used in business, government, and other forms of commerce. For example, in
completing a loan application a bank or other financial services provider can
require
the preparation of one or more forms useful in executing and memorializing the
loan
and related notices and records. Such forms typically include both information
which
relates to the particular matter pertinent to the forms, and information which
is
generalized, such as form paragraphs, instructions, etc. Such forms are also
frequently intended to be presented, upon completion, according to specified,
predetermined formats.
[0039] The completion of such forms typically involves the "filling in"
of, or
provision of content data for display within, certain fields, or, as they are
sometimes
called with physical forms completed by hand, typewriter, etc., "blanks". Such
fields
or blanks correspond, in general, to desired dispositions of content data with
respect
to other content and form data in compiled and/or output documents, so that
the data
can be appropriately recognized and processed.
-8-
7124138.1
00782-2167
CA 02571092 2006-12-13
[0040] In their physical or virtual forms, such documents can comprise
fields
or blanks in which data representing a wide variety of information is intended
to be
placed. For example, such forms may have spaces for setting out an applicant's
name, address, and other identifiers; terms such as a principal amount of a
loan to
be established, or a limit to be applied to a line of credit, or one or more
interest rates
or interest rate benchmarks; payment and default dates and rules; and the
like. Data
signals representing such information are included within the meaning of
content
data.
[0041] Thus, as will be understood by those skilled in the relevant arts,
in
some embodiments of the invention content data corresponds to data provided by
an
individual or accessed from an existing data store which is specific to one or
more
particular transactions or matters with relation to which one or more
documents is to
be completed, as opposed to form data, which is used for example in
establishing
and controlling the format and appearance of output documents.
[0042] Form data store(s) 106 can include any form(s) of volatile and/or
persistent memory, or combination(s) thereof, suitable for storing data useful
in
completing, in combination with or without content data, one or more forms,
which
data is, in general, employed pursuant to one or more protocols, formats,
templates,
etc., which are of general applicability, and not generally specific to
individual
transactions or matters. For example, a not uncommon means of completing forms
at present is to cause a computer to display an image constructed using
suitable
form data and corresponding to a form containing blanks for the input of
content data
pertinent to one or more matters, and, within such blanks, provide interactive
data
input fields, by means of which a user of a computer may use one or more input
devices to input corresponding content data. Known examples of such forms
include "fillable .pdf" forms.
[0043] Output device (s) 108 can include any processors, printers,
memories,
or other devices, including where applicable any associated processors or
other
components, together with associated software or firmware, suitable for use in
implementing the systems and processes disclosed herein. Such devices can
include, for example, printers; facsimile machines; e-mail servers, programs,
memories, or other devices; instant messaging servers, programs, memories, or
-9-
7124138.1
00782-2167
CA 02571092 2006-12-13
other devices; any variety of multi-function output devices, and/or any other
suitable
devices.
[0044] Display device(s) 110 can include any devices suitable for
providing
interactive user interfaces suitable for use for implementing the processes
and
systems disclosed herein. Display devices 110 can include, for example,
cathode
ray tube, liquid crystal diode, light emitting diode, plasma, or other
screens, together
with suitable input and control devices such as keyboards or keypads, mice,
trackballs, and/or other pointing and selecting devices, and suitable control
programming. A wide variety of such devices are now available commercially,
including for example, a very large number of computer display screens
provided
together with mice, trackballs, etc., and Linux, Windows , and other operating
system software.
[0045] Thus for example system 100 can comprise a single desktop computer
system associated with an input device such as a keyboard, a display such as a
graphic display screen, a disk or other memory storage device, a printer or
other
device, and one or more pointing and selecting devices such as mice, executing
suitably-configured software. System 100 can also be implemented, as disclosed
herein, using networked or otherwise communicatively-linked systems of
computers,
such as application servers and client workstations, together with associated
peripheral devices such as printers, display screens, etc. and suitably
configured
software systems.
[0046] As used herein, the term "server" can include either a physical
machine
comprising one or more processors, an instance of a program or application
running
on a machine, or any combination thereof.
[0047] Figures 2a and 2b are schematic flow diagrams of an example
process
for controlling printing and other output processes according to the
invention.
Process 200, 200' of Figure 2a, 2b is suitable for implementation using any of
the
architectures disclosed herein, and any other architectures suitable for use
in
implementing the processes described herein, including for example the
architectures shown in Figure 1 and 3. For purposes of illustration, and for
such
purposes only, process 200 is described with reference to the components 102,
104,
106, 108, 110 of system 100 as shown in Figures 1 and 3.
-10-
7124138.1
00782-2167
CA 02571092 2006-12-13
[0048] Figure 3 is a schematic diagram of a system architecture suitable
for
use in implementing systems and processes according to the invention. System
100
as it is shown in Figure 3 can be interpreted as an embellishment or more
comprehensive or specific depiction of the illustration of system 100 shown in
Figure
1. In the form illustrated in Figure 3, processor 102 is comprised by either
or both,
using for example known distributed processing techniques, of client
workstation 302
and/or output server 122. System 300 as shown in Figure 3 includes one or more
client systems 310, which include workstation(s) 302 which are communicatively
linked to corresponding displays 110, input devices 104, and output devices
108.
Client system(s) 310 may be communicatively linked to server system 320
directly or
via any suitable form of network 304, including for example local- or wide-
area
networks, and/or public networks such as the Internet.
[0049] For clarity, it is shown that client workstation(s) 302 and output
server(s) 102 comprise one or more corresponding processors 306 and local
memories 308. Local memories 308 can include persistent and/or volatile
memories
such as random access memories, processing buffers, and local hard- or
portable
drives such as CD or floppy disk drives.
10050] Network 304, as will be understood by those skilled in the
relevant arts,
can comprise any one or more of a wide variety of firewalls and other security
devices, many of which are well known, and available commercially, and others
of
which will doubtless be developed in future.
[0051] At 202 in the processing flow illustrated in Figure 2, a processor
102
such as a work station 302 receives from an input device 104 content data
suitable
for use in preparing one or more documents. As previously discussed, such
content
data can include, for example, facts or other data pertinent to a specific
transaction,
such as a loan application, product specification, transfer of real or
personal
property, government filing, or course of proposed medical treatment, or other
input
by a user of a stand-alone or client system such as a desktop computer, using
a
keyboard.
[0052] Such content data can be provided in any suitable batch form or on
an
intermittent or continuing basis, e.g., through an interactive process
executed by an
application running on a client workstation 302 or an application server. For
example,
-11-
7124138.1
00782-2167
CA 02571092 2006-12-13
such content can be provided by a user of a workstation 302 in response to
prompts
provided by an application running on a user workstation 302, or on a remotely-
located application server, incorporated or otherwise associated with, for
example, a
remote output server 102, via an interactive user interface adapted for
eliciting input
of pertinent or desired data. For example, an application or application
server can
cause a graphical user interface to be presented to the user on the display
screen
110 of a client workstation 302, the interface comprising one or more
interactive
graphical fields adapted to provide a specific type of data, such as a name or
date,
associated with an input field such as box displayed according to a Windows -
style
protocol. Using one or more pointing and control devices such as a mouse or
trackball with associated control switches, the user can select the
appropriate field(s)
and, using a keyboard, input desired data. Command or execution signals
causing
the application server or other processor to read the data from the input
field can be
provided by activating a control switch associated with the keyboard or
pointing
device.
[0053] An example of a suitably-adapted user interface 400 is shown in
Figure
4. In the example shown in Figure 4, a processor incorporated by or otherwise
associated with, for example, a client system workstation 302 or remote server
102
executing a "Product Xsell Enquiry" application useful for gathering data
useful in
preparing documents relating to a sales transaction, has provided to a display
110
control and data signals adapted for causing the display 110 to present to a
user of
the corresponding system an interactive user interface screen 400. Interface
400
comprises a number of descriptive text items 402 displayed in logical
association (as
for example in grammatical or visual combination or juxtaposition) with input
fields
404, including for example text items 402 "Applicant", "S.I.N.", "Street #",
"Date of
Birth", "Annual Gross Income", etc. and corresponding input fields. Text items
402
and their corresponding input fields 404 are adapted to elicit from the user
the input
at fields 404 data identified by the corresponding text items 402, so that,
upon input
of a suitable control signal, the processor 102 that caused the display of the
interface
can read the input data and store it in one or more of associated volatile or
persistent
memory(ies) 308.
[0054] In the example shown, a user has used a pointer, keyboard, and/or
other suitable control devices to select appropriate input fields 404 to input
content
-12-
7124138.1
00782-2167
CA 02571092 2006-12-13
data items "Chocolate Mousse", "111 111 118", "110", "10/07/69", and "100000",
respectively using, for example, Windows "point and click:" or other suitable
operating protocols.
[0055] As will be understood by those skilled in the relevant arts, any
suitable
method(s) of providing content data may be used in implementing the invention,
alone or combination. For example, in addition to or in lieu of the
interactive
methods described above, batch input methods such as card- or tape reading, or
accessing of previously or automatically-compiled databases may be used.
[0056] Moreover, content data intended for use in preparing forms can be
collected for a series of forms sequentially, or collectively for a plurality
of forms to be
prepared simultaneously. For example, a client workstation system 302 can be
used
to interactively collect a set of content data required for outputting a
plurality of
forms. The data may be stored locally until a desired complete data set has
been
collected, at which point the content data may be provided to, or made
accessible to,
an output server 122 for further processing.
[0057] At 204 a determination is made as to whether all desired content
input
has been input by the user and/or received by the processor 102. For example,
an
interactive input application can execute a loop waiting for input of further
content
data until such time as a user enters a suitable command signal which causes
the
processor 102 to stop accepting further input and to move to other processing,
or to
pass a gathered data set to another processor such as an output server 122 for
further processing. The determination made at 204 can be interpreted as
indicating
that a desired content data set has been stored in volatile or persistent
memory(ies)
such as memories 308.
[0058] For example, by entering a command or execution signal "Y" in
response to prompt 406 in Figure 4, a user of a processor 102 can instruct the
processor that all or any desired portion of the content data input has been
completed.
[0059] When a desired content data set has been received, at 206 the
processor(s) 102 can cause a display 110 associated with, for example, a
client
workstation 302 to display a list of documents that are available to be
compiled using
the gathered content data. For example, the processor(s) 102 can determine
which
-13-
7124138.1
00782-2167
CA 02571092 2006-12-13
of a corresponding set of documents are available for compilation, either by
association with a desired process or on the basis of minimum content
requirements
for compilation of the documents.
[0060] For example, in a process for preparing documents related to a
consumer or commercial loan transaction, an application executed by the
processor(s) 102 can determine which of a selected set of documents is
appropriate
for compilation using the received content data, or otherwise available for
printing.
For example, a data record or data set comprising a number of identifiers
associated
with documents required for completion of a the loan (or an extension of
credit, the
issuance of a series of securities, or the transfer of real or personal
property) can be
accessed by the computer, each of the identifiers being further associated
with data
sets representing form data useful in outputting such documents, particularly
when
compiled with the received content data.
[0061] An example of an interactive user interface suitable for use in
controlling such a process is shown in Figure 5. Screen 500 of Figure 5
comprises a
list 502 of documents compilable using content data received at 202 related to
a loan
transaction. Titles of corresponding documents are shown at 504, together with
corresponding selectable items 506. Selection of one or more of items 506
using
suitable controls such as mice, trackballs, or other graphics-based input
control
devices can cause one or more of processor(s) 102 to create and./or receive,
as
appropriate, control signals useful for designating one or more of documents
504 in
list 502 for compilation and subsequent printing or other output processes. A
selectable item 514 useful for designating all listed documents for
compilation, and
other suitable command items, can be presented.
[0062] A wide variety of other output control processes can be provided.
For
example, one or more selectable items 512 can be provided, to enable a user of
the
display 110 to send control signals to the processor(s) 102 to cause the
display to
present one or more compiled documents in a manner such as that in which it
might
be printed or otherwise output, for review and possible correction, storage,
and other
further processing; and for example at 508 a list of available output devices,
such as
printers, facsimile or e-mail servers, etc., can be provided.
-14-
7124138.1
00782-2167
CA 02571092 2006-12-13
[0063] When the user is satisfied that all desired compilable documents
have
been selected, at 210 he/she can cause a suitably-adapted control signal to be
provided to the processor(s) 102 controlling relevant portions of the
compilation /
output process; and at 212 processor(s) 102 can access form data in one or
more
form data stores 106. Form data stores 106, can be of any suitable type and
can be
located in any desired association with respect to output server 102, and can
be
accessed in any suitable manner. For example, as shown in Figures 1 and 3,
form
data store 106 can be directly or communicatively linked to output server 102,
and
can be read by a processor 102 associated with an output server 122 and/or a
client
system 302, etc., using well-understood data read functions. Alternatively, or
in
addition, one or more such form data stores can also be incorporated as a part
of a
client system 310 or provided by a third-party system as shown at 330, and
accessed accordingly.
[0064] For example, upon selection of a selectable item 510 by a user and
subsequent receipt by the processor(s) 102 of a suitably-adapted execution
command signal, the processor(s) 102 can access a form data store 106 to read
or
otherwise retrieve data useful in compiling any one or more of the forms 504
"Financial Services Terms (513602)", "Account Agreement (513828)", etc. in
list 502.
[0065] With desired form and content data accessible, at 214 processor(s)
102 can compile the form and content data to produce one or more compiled data
sets comprising data records suitable for use in printing or otherwise
outputting the
compiled data in the form of one or more documents.
[0066] Compilation of form and content data to provide compiled document
output data sets suitable for use in printing or otherwise outputting compiled
data in
the form of documents can be accomplished in any way or ways compatible with
the
purposes disclosed herein. For example, content data can comprise one or more
data records including text and/or image content, together with identifiers
useable by
output or other applications for identifying a type, class, or form of the
content; while
form data can comprise data records including any suitable information for
specifying
the arrangement and/or appearance of content and other data and/or information
on
or in an outputted document. Compilation may be accomplished by any means
suitable for merging or otherwise placing the content and form data into a
single data
-15-
7124138.1
00782-2167
CA 02571092 2006-12-13
set (e.g., a string of data records, one or more sets of data files, etc.)
useable for
causing an output device to produce a document in human-readable form.
[0067] An example of coded commands 600 useful for providing computer-
readable programming instructions suitable for use in the compilation of a
document
output data set in the Extensible Mark-Up (XML) language is shown in Figure 6.
Coding 600 Figure 6 provides an example of instructions suitable for use by a
processor or processors 103 such as client workstation 302 and/or output
server 122
in preparing a compiled document output data set, using suitably-encoded
programming instructions implementing processes such as those shown in Figure
2a. In particular, in the example shown, coding 600 provides an XML Schema
Document (XSD) that provides rigor around the submitted data set for a
particular
form.
[0068] At 601 coding 600 of Figure 6a comprises a set of instructions is
shown
for defining a reference to be used in further coding shown in Figure 6b for
identifying an address for content data identifying a customer to be named in
a
document" By-Law / Resolution" to output by a system 100 in accordance with
the
invention. In the example shown, the address "f513602" is defined, according
to the
XML protocol, and associated with a content data item "CL-CUSTOMER-NAME". At
603 it is specified that if such data is not defined at the time of
compilation of an
document output data set useful in outputting a document "By Law Resolution",
then
the compilation will fail. In such cases a suitably-worded warning can be
output to a
user of the system 100, by, for example, causing appropriate data to be
displayed on
a display 110.
[0069] Content data associated with the item "CL-CUSTOMER-NAME" can be
created by, for example, reading data from a suitably-adapted input field such
as
field 402 "Applicant" shown in Figure 4, and storing such data in one or more
of
memories 308 in association with an address identifier 1513602".
[0070] At 602 in Figure 6b a header is provided noting for the reference
of
humans reviewing the data set that the set has been compiled in XML version
1.0,
according to International Standards Organization standard ISO-8859-1,
[0071] The instructions shown in Figure 6 for compiling an output data
set are
suitable for providing output deliverable to a suitably-configured output
device 108
-16-
7124138.1
00782-2167
CA 02571092 2006-12-13
such as a printer, facsimile machine, e-mail server, etc., with or without
further
processing to translate the data set into a format preferred for use by such
an output
device. For example, the format-neutral output provided by the coding of
Figure 6
may, but need not necessarily, be translated into a format suitable for
causing a
printer, display, or other output device to output a document using a desired
protocol,
such as the .pdf protocol. The Portable Document Format (.pdf) is an open file
format created and overseen by Adobe Systems, for describing documents in a
device and resolution independent fixed-layout document format.
[0072] As will be understood by those skilled in the relevant arts,
format-
neutral refers to a representation of document data which has not been
manifested
in such form that it is processable only in particular document format, for
example,
according to .pdf, .jpeg, or .doc formats but which is, rather, native to and
therefore
immediately processable by one or more desired output devices.
[0073] At 604 instructions are provided for directing the processor(s)
102 to
access form data stored in the form of style sheets containing computer-
readable
instructions encoded according to the standardized XML protocol, and to use
such
data in instructing a printer or other output device 108 in outputting one or
more
documents, using other form and content data, if any, as further specified by
instruction set 600.
[0074] Beginning at 606 a set of instructions is provided for directing
the
processor(s) 102 to add to the form data specified at 604 further form data in
the
form of instructions specifying the page size(s) and margins to be used in
outputting
physical or virtual documents. For example, in the illustrated example, it is
specified
at 608 that the form data to be included in the compiled document output set
comprises a page size of 8.5 x 11 inches, with margins of 0.333 inches, and
with
content data merged into the body of the document to be output in "Times
Roman"
font, using a 9-point type size.
[0075] At 610, a series of instructions is provided for causing content
data to
be merged with both previously-compiled and further-specified form data in
such a
way as to cause output of a document comprising the specified content data
presented according to a desired format. In the example shown, at 612, 614
instructions are provided for causing retrieval of the current content of a
data item
-17-
7124138.1
00782-2167
CA 02571092 2006-12-13
corresponding to the identifiers "513602" and "CL-CUSTOMER-NAME", and merging
of such content data with form data which, upon processing by an output device
108,
will cause the current content data associated with those identifiers to be
printed or
otherwise displayed at a specified location in a document in a font "Times New
Roman" in 9-point size type.
[0076] As shown in the remainder of Figure 6, instructions for the
merging of
various forms of form data with the specified content data are provided. In
addition
to formatting data such as font sizes, types, and spacings, form data can
comprise
one or more of items 616 which include textual data. Thus it may be seen that
data
representing content not specific to a particular transaction or publication
of a
document or documents can be stored as form data. Alternatively, as will be
apparent to those skilled in the relevant arts, such data may be provided by
system
100 in the form of content data specified by a user of a client system 310, in
batch
format, or otherwise, and merged in the manner of shown at 610.
[0077] Content data records can also comprise, in lieu of or in addition
to
interactively or otherwise explicitly-specified content, content data
specified implicitly
in the form of links to previously- or independently defined content,
sometimes
referred to as dynamic content, which is designated by a user or other source
by
address, location, or other class identifier. Examples include internal or
external
memory address links, such as a register address or uniform resource locator
(URL).
Such identifiers can be used to cause processor(s) 102 compiling document
output
data sets to retrieve or otherwise access data stored in such locations and to
insert
such dynamic data into a desired document in a desired location or other
desired
relation to other content. For example, an image, digital sound reproduction
data, or
other non-textual content data may be retrieved and compiled such that it
appears in
an outputted document in a desired location. Moreover, such dynamic content
identifiers can be determined at the time of compilation on the basis of any
desired
parameters, including for example an identifier associated with an individual
user or
client system, a time of day or date, or any other desired information.
[0078] For example, at 618 in Figure 6b an instruction is provided which
provides a reference "tdct.gir to an independently-defined image data file to
be
incorporated in the outputted document(s) when displayed. At the time in which
the
document output data set is compiled, the processor(s) 102 are directed to
retrieve
-18-
7124138.1
00782-2167
CA 02571092 2006-12-13
from a data store 106 .gif-format image data, and to merge it with content
data
specified at 620 in order to cause it to be output in accordance with a
desired format.
[0079] Figure 6c provides an example of coding suitable for use in
causing a
processor 102 to associate content data specific to a given output job with a
suitable
address or other identifier, for use by other portions of coding 600 such as
that
shown in Figure 6a in creation of document output data set. In the example
shown,
the content data "John Doe" is associated with the content item type "CL-
CUSTOMER-NAME", for insertion into the compiled document data set at the point
specified at, for example, 614 in Figure 6b2.
[0080] Instruction set 600 can be compiled prior to a planned data
content
collection process such as process 202-204 of Figure 2a, or, through the use
of
suitably-prepared programming instructions, can be compiled automatically by
processor or processors 102 at the time of data collection and/or desired
document
output.
[0081] A process enabled by instruction sets such as instruction set 600
of
Figure 6 is shown conceptually in Figure 7. At 710 content data 704 derived
from
input 702 can be merged or otherwise compiled with form data 708 retrieved
from
form data store 706. Compiled document output data 712 produced at 710 can be
output at 714 to produce one or more documents 716. As previously noted,
compiled document output data set 712 can be provided in format-neutral form,
and
prior to output at 714, translated into a format-specific form, as for example
through
the insertion of suitable data items specified by a desired protocol.
[0082] Individual content and/or form data records can be used in
outputting
documents in as many instances as desired, both within single documents and
multiple output documents. Individual document output data sets produced
through
the processes disclosed herein can be adapted to provide for output arbitrary
numbers of output documents, based on arbitrary numbers of uses of such
individual
data records or data sets. For example, the content data record "CL-CUSTOMER-
NAME" referred to at 614 in instruction set 600 of Figure 6, comprising data
representing an applicant's name can be used in an arbitrary number of
instances in
a single document, or in multiple locations in multiple documents; and
instruction set
600 can be adapted to provide for compilation of a document output data set
-19-
7124138.1
00782-2167
CA 025710 92 2 00 6-12-13
adapted to cause, on being provided to an output device 108, an arbitrary
number of
documents.
[0083] When, as for example by execution of the instruction set 600 shown
in
Figure 6, a document output data set has been compiled, at 216 in Figure 2 the
compiled document output data set can be provided to a printer or other output
device 108 for outputting.
[0084] For example, upon execution of an instruction set such as
instruction
set 600 shown in Figure 6, a device-readable document output set can be
compiled.
By routing the compiled document output set to a printer 108, one or more
documents such as document 800 shown in Figure 8 can be produced.
[0085] In the example shown in Figure 8, document 800 comprises a printed
record of a content data item 802 "John Doe". The remaining items appearing on
the printed document are printed records of form data items, including for
example
form data item 804 corresponding to the .gif-format image file referenced at
618 in
Figure 6b1, and text form data items 806, 808, 810, 816, 818, 820, 822, 824,
corresponding to text items referenced at 626, 628, 630, 632, 634, 636, 640,
642
respectively.
[0086] In the example shown, the text content data "John Doe" may have
been entered by a user of an input device 110 associated with a client
workstation
302, and thereafter made available to an output server 122 and merged by a
processor 306 of output server 122 with form data records corresponding to
text
form data items 806, etc., in conjunction with formatting information adapted
to
cause the output of one or more documents containing such form and content
data
such as document 800 of Figure 8.
[0087] An example of a process for outputting documents using compiled
document output data sets in accordance with the invention is shown in Figures
9
and 10. Referring for example to Figure 5, a user of for example a client
workstation
302 can review a list 502 of outputtable documents using a display 110. By
selecting
with a suitably-adapted control device an interactive command item 512
corresponding to a compiled or compilable document output data set for a
document
such as "BY-LAW RESOLUTION" 800 shown in Figure 8, the user can cause the
display 110 to display an image 902 of a virtual copy of document 800, using a
-20-
7124138.1
00782-2167
CA 02571092 2006-12-13
document output data set compiled using an instruction set such as set 600 of
Figure
6. For example, selection of the item 512 by the user can cause the client
workstation to produce command data signals operable to cause one or more of
processors 102, 306 to execute a command set such as instruction set 600 to
compile a format-neutral output data set suitable for use in outputting the
document
800 according for example to the compilation process shown in Figure 7, and to
convert the format-neutral data set into a form suitable for displaying a
virtual image
of the document on a display device 110 in accordance with .gif, .pdf, .jpeg,
or other
protocols.
[0088] Moreover, the virtual image 902 of document 800 can be presented
in
such a manner as to enable the user of the client workstation 302 or other
processor
102 to perform other functions using the corresponding compiled document data
set.
For example, as shown in Figure 9 any number of document-processing functions
associated with the Windows , Adobe, or other known programming and operating
systems can be enabled. For example, by selecting a "save a copy" command item
906, the user can cause the compiled document output data set to be saved in
any
desired format, neutral or otherwise. By selecting "e-mail" command item 908,
the
user can cause the compiled document output data set to be output to an e-mail
application, for forwarding to a desired e-mail address, or other desired
processing.
If for example the user selects "print" command item 904, the user can cause
the
client system 310 and/or output server system 320 to execute a printing
process
including, for example, causing a suitably-adapted print control interface
1002 to be
displayed, as shown in Figure 10. Print control interface 1002 enables a user
of the
system(s) 310, 320 to review a virtual copy 902' of document 800, and to
perform
various other print control functions, using a suitably-configure input
control device.
A variety of suitable print control interfaces are known, and commercially
available,
including for example through the Microsoft Windows operating system.
[0089] Selection of "OK" control item 1004 in Figure 10 can cause the
system(s) 310, 320 to output the compiled document output data set to a
printer,
resulting in printing of a document 800 as shown in Figure 8.
[0090] It is important to note that processes and systems according to
the
invention are quite adaptable, and are suitable for implementation according
to a
wide variety of configurations.
-21-
7124138.1
00782-2167
CA 02571092 2006-12-13
[0091] For example, it may be noted by reference to Figures 1 and 3 that
many of the components of system 100 may be communicatively linked, or
otherwise
associated with each other, according to a wide variety of architectures
consistent
with and suitable for implementing the disclosure herein. For example, form
data
store 106 and output device 108 can be accessed and/or controlled by either of
workstation 302 or output server 122, or both, in a wide variety of
combinations.
[0092] As a further example, methods and processes according to the
invention may be implemented in a wide variety of forms. In particular, many
of the
individual steps or stages of such processes can be accomplished in various
orders;
any order consistent with the purposes described herein will serve. As a
particular
example, an alternative form of the process for controlling output processes
shown in
Figure 2A is shown in Figure 2B. In the embodiment shown in Figure 2B, content
data is collected in batch form, either by reading an interactively-input data
set or by
reading a tape, database, or otherwise accessing a previously-gathered data
set,
and form data related to one or more corresponding forms is accessed at 212.
Thereafter the form and content data are compiled to create a document output
data
set at 214, upon which at 206 a list of documents available using the compiled
data
set is provided, with selection and output of desired documents occurring at
208 -
216.
[0093] Thus, as will be apparent to those skilled in the relevant arts, a
wide
variety of variations of systems, architectures, processes, and programming
structures are suitable for use in implementing the invention.
[0094] Further examples of architectures for systems 100 suitable for use
in
implementing the invention are shown in Figures ha - 11c and 12.
[0095] In the example shown in Figure 11a, both form data store 106 and
output device 108 are communicatively linked directly to client device 302, as
for
example behind a common firewall or other security system 1106, and controlled
by
client processor 306. Server system 320 comprises an application server 1102
which can provide, for example interface applications suitable for use in
eliciting from
a user of client system 310 content data input for use in compiling document
output
data sets in accordance with the invention. Application server can also
control, or
-22-
7124138.1
00782-2167
CA 02571092 2006-12-13
help to control, any one or more of output device(s) 108 and form data store
processes 106.
[0096] In the example shown in Figure 11b, output server 102, 1104
controls
output device 108 and form data store 106 remotely, as for example in order to
control printing at a remote branch of an office, or in broadcast advertising
applications.
[0097] In the example shown in Figure 11c, output / application server
102,
1102, 1104 controls output device 108 remotely, while form data stores 106 are
both
controlled directly by the server 102, 1102, 1104, and remotely, as for
example
where remote form data store 106 is controlled by another entity, or behind a
separate security wall 1106.
[0098] The implementation of operating and control system processes, and
corresponding programming structures, suitable for use in implementing systems
and processes according to the invention using the various architectures
disclosed
herein, including those shown in Figures ha - 11c, will not trouble those
skilled in
the relevant arts, once they have been made familiar with this disclosure.
[0099] Figure 12 provides a further example of a system architecture 100
suitable for use in implementing the invention. In the embodiment shown,
client
system 310 comprises one or more client workstations 302 with associated
display(s) 110 and input device(s) 104, one or more printer(s) or other output
device(s) 108, and local form data store(s) 106, 380, communicatively linked
via
RLAN 340. Client system 310 is further linked to server system 320 via
corporate
WAN(s) 302, 1202, and branch WAN 302, 1204. Server system 320 comprises a
form data maintenance system 1210 comprising a form data store 106, 1212
adapted to serve as a back-up and/or authoritative version of form data used
in
compiling documents according to the invention, and a form data store server
1214
adapted for creation, maintenance, and other processing of form data stored
therein.
Thus for example output and/or application server 102 could be located
together in a
branch office of a business such as a bank, while creation, maintenance, etc.,
of
form data can be controlled at a corporate office or other secure location.
[00100] The architecture shown in Figure 12 is particularly useful for
providing,
among other benefits, safe and secure back-ups of form data stores 106 and
-23-
7124138.1
00782-2167
CA 02571092 2006-12-13
reduced data transfer and processing requirements. By providing multiple
instances
of form data stores 106, such architectures provide, for example, significant
benefits
in the form of reduced signal traffic over communications networks, and
reduction in
other data processing. For example, in order to optimize efficiency in data
flow via
corporate WAN(s) 1202 and branch WAN(s) 1204, shared templates compilable
using form data stored under the control of form data control system 1210 can
be
created and maintained using server 1214, and pushed at night or during other
non-
peak usage times to one or more branch form data stores 380 for rapid and
efficient
access during work periods. This can facilitate efficient maintenance and
update of
common form templates, as well as reduced demands on communications facilities
such as network components.
[00101] Another advantageous feature offered by the use of multiple form
data
stores as shown for example in Figure 12 is that a processor 102 accessing a
local
form data store 380 can, can be configured to, upon finding that a desired
template
or other desired form data is not present in the data store 380, or is out of
date,
access common or back-up data store 1212 to access a desired or more-current
version.
[00102] In the embodiment shown in Figure 12, communications between the
various components of system 100 may be carried out using any desired or
otherwise advantageous protocols, including hyper-text transfer protocol
(HTTP),
and compilation, output, and other processes can be implemented using Java,
XML,
and any other suitable programming systems.
[00103] A schematic diagram of a process for controlling output of
documents
according to the invention is shown in Figure 13. The process flow shown in
Figure
13 offers, among other advantages, inventive secure data communications built
on
existing communications protocols.
1001041 At 1 in Figure 13 an application server 102 is initialized using
secure
techniques such as known unique user identification codes and passwords or
dynamic secure keys (including for example RSA-type technology). The
application
server then executes an application adapted for gathering content data
intended for
output in documents prepared according to predetermined formats, using
previously-
-24-
7124138.1
00782-2167
CA 02571092 2006-12-13
defined form data, as described herein and as shown and explained in
connection
with, for example, Figure 4.
[00105] At 2 the server 102, having collected desired content data and it
being
desired to print one or more documents using such data, as described for
example in
connection with processes 200 and 200' of Figures 2a and 2b, initiates a
printing
session with the client system 302. The server 102 sends to the client system
302
signals representing a request to verify a key useful in completing
communications
using an encryption scheme (for example, a symmetric encryption scheme), such
as
those currently known in the art. The verification can, for example, be in the
form of
a unique user identification, to be compared by the server 102 with a key
maintained
by the server 102 and identified by the server 102 with the corresponding
client
system 302. The request signal can also serve a "heartbeat" or other
confirmatory
signal confirming that the relevant client system 302 is communicatively
operable.
[00106] At 3 the queried client system provides the requested key. Server
102
can determine whether the provided key corresponds to a corresponding key
maintained by the server 102. If corresponding client-held and server-held
keys are
confirmed, appropriate acknowledgements may be made. If corresponding keys are
not found, then, for example the server 102 can repeat the request, with
appropriate
warnings and notifications.
[00107] Where corresponding client- and server- keys are confirmed, at 4
the
server 102 can update a list of authorized client systems (i.e., a
"whitelist"), to ensure
that only the successfully-queried client can retrieve the key in future. The
server
102 can further provide the client system 302 with data such as a URL useable
for
retrieving content and/or form data. Having received such data, client system
302
can establish a secure HTTP or other suitable connection with the application
server
102 using, for example, an appropriately-configured servlet, together with any
other
data useful or desired for verifying or establishing synchronized keys.
[00108] At 5, appropriately-keyed encrypted data signals can be exchanged
by
the server 102 and client system 302. A unique user identification
corresponding to
the client system 302 can be embedded within or otherwise associated with
exchanged data records. Such data signals can represent, for example, requests
for
-25-
7124138.1
00782-2167
CA 02571092 2006-12-13
printer lists or lists of other suitable output devices 108 and status
information
relating to established output processes.
[00109] In cases such as those involving transfer of relatively large
document
output data sets, at 6 the server 102 can provide to the relevant client
system 302
control signals indicating that the server will store the document output data
set(s) in
a memory 308 such as a cache controlled by the server 102, together with
suitable
address and other information useful in locating and retrieving the stored
data set(s).
[00110] At 7 the authorized client system 302 can access the stored data
set(s)
and retrieve it for further output processing. At each retrieval step the
authority of
the client system 302 to access the data can be confirmed.
[00111] The invention further provides processes useful in developing
templates comprising form data records, the templates suitable for use in
compiling,
in conjunction with appropriate content data, document output data sets in
accordance with the invention. An example of such a process is shown in Figure
14.
100112] In the example shown in Figure 14, templates are created and
documents are processed using the XML protocol. At 1402 a document manager
develops a form using, for example, programming tools compatible with relevant
XML processes. Placeholders such as those shown at 614 in Figure 6b2 are
inserted into compilation instruction sets such as set 600 of Figure 6, and
the
template, including placeholders, is outputted as a coded instruction set such
as that
shown in Figure 6, which may for example be in the form of an XSL-FO object
(i.e.,
an XML dialect for expressing document formatting..
[00113] In a parallel or separate process, at 1410 a developer composes a
schema, or predetermined format, for a template to be used in outputting
documents,
the template comprising any desired form data records useful in causing a
document
outputted according to the invention to be printed in the desired
predetermined
format. Such templates may be constructed, for example, according to the XML
protocol and stored as XML Schema Definition (XSD) records in one or more
suitable form data store(s), or repository(ies), 106.
[00114] At 1406 the schema developed at 1410, 1412 and the schema
developed at 1402 are merged. The placeholders provided at 1402 can be
replaced
-26-
7124138.1
00782-2167
CA 02571092 2006-12-13
with output from 1410, 1412. The result can be stored in one or more data
stores
106 in the form of an XML Stylesheet Language Transformation (XSLT) document.
[00115] At 1416 a user of a processor 102 such as a client workstation 302
provides content data using, for example, and appropriately-configured
application
program such as that described in connection with Figure 4. The processor 102
can
execute a process such as that shown in Figure 7 to compile a document output
data
set. The document output data set can be provided as for example an XSL:FO
document.
[00116] At 1420 the document output data set compiled at 1416 can be
stored
in format-neutral form in one or more memory(ies) 308. If desired, a user can
specify one or more desired output formats (e.g., PCL, .pdf, .doc, .gif) and
at 1424
the document output data set can be suitably translated by a translation
engine into
the desired format(s). At 1424 the translated document output data set can be
provided to a desired output device and printed or otherwise output.
[00117] As will by understood by those skilled in the relevant arts,
Printer
Control Language (PCL) is an industry-standard page description language which
describes actions and commands to be executed by a printer or other output
device
in order to output a document in a prescribed manner. No additional software
or
hardware, other than the printer or other output device, is required to
translate a
PCL-compliant stream of data into the resultant print artifact.
[00118] One advantageous aspect of the invention is its use in upgrading
systems adapted for prior-art output control processes. An example of the
applicability of the invention in upgrading one such so-called "legacy" system
is
shown in Figure 15. In the embodiment shown, upgraded system 1500 comprises a
client system 302, one or more printing device(s) 108, legacy print
application 1502,
and legacy output server 1506. Legacy print application and legacy output
server
1506 are configured, for example, to print single documents using dedicated
content
data sets, without merging form and content data in accordance with the
invention.
However, by providing a suitably-adapted interface such as that shown in 5,
system
1500 can present to a user of client system 302 an option for printing of
pluralities of
documents using merged content and form data, as described herein. For
example, the client system 302 can be adapted to provide to a middleware
-27-
7124138.1
00782-2167
CA 02571092 2006-12-13
application executed thereon, or, for example on application server 1504, 102,
122,
data address information such as an Internet Protocol (IP) addresses to be
used in
conjunction with legacy output communications to control output processes.
[00119] Having received appropriately-identified address information,
middleware server 1504 can wrap or otherwise associate the legacy-format
output
data into reformatted data comprising the provided addresses. Such wrapped or
otherwise reformatted data can be returned to the client system 302 for use in
further
processing as described herein.
[00120] At the time of printing, the output server 102 can query the
client
system 302 to determine whether output control processes in accordance with
the
invention are to be used in conjunction with legacy applications. Upon receipt
of
data indicating a corresponding preference, the output server / middleware
application 102, 1504 can perform appropriate reformatting and addressing.
[00121] While the foregoing invention has been described in some detail
for
purposes of clarity and understanding, it will be appreciated by those skilled
in the
relevant arts, once they have been made familiar with this disclosure, that
various
changes in form and detail can be made without departing from the true scope
of the
invention in the appended claims. The invention is therefore not to be limited
to the
exact components or details of methodology or construction set forth above.
Except
to the extent necessary or inherent in the processes themselves, no particular
order
to steps or stages of methods or processes described in this disclosure,
including the
Figures, is intended or implied. In many cases the order of process steps may
be
varied without changing the purpose, effect, or import of the methods
described.
-28-
7124138.1
00782-2167