WO1991008538A1 - Document management and production system - Google Patents

Document management and production system Download PDF

Info

Publication number
WO1991008538A1
WO1991008538A1 PCT/US1990/006827 US9006827W WO9108538A1 WO 1991008538 A1 WO1991008538 A1 WO 1991008538A1 US 9006827 W US9006827 W US 9006827W WO 9108538 A1 WO9108538 A1 WO 9108538A1
Authority
WO
WIPO (PCT)
Prior art keywords
document
objects
content
production system
logical
Prior art date
Application number
PCT/US1990/006827
Other languages
French (fr)
Inventor
Robert Mckee Smith
David M. T. Ting
Marvin Mendelssohn
Jan H. Boer
Original Assignee
Eastman Kodak Company
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Eastman Kodak Company filed Critical Eastman Kodak Company
Priority to JP91501513A priority Critical patent/JPH04503881A/en
Publication of WO1991008538A1 publication Critical patent/WO1991008538A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/123Storage facilities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/131Fragmentation of text files, e.g. creating reusable text-blocks; Linking to fragments, e.g. using XInclude; Namespaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99941Database schema or data structure
    • Y10S707/99944Object-oriented database structure
    • Y10S707/99945Object-oriented database structure processing
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99941Database schema or data structure
    • Y10S707/99948Application of database or data structure, e.g. distributed, multimedia, or image

Definitions

  • the invention relates to the field of computer-based document management, and in particular to an integrated system for creating, distributing, producing and managing various types of multi-component documents. Description of the Related Art
  • a typical word processing system permits entry and modification of text to occur on a host-connected terminal prior to generation of hard-copy output.
  • a user may perform a variety of merge, copy and transfer operations within a document or among several documents in a straightforward and efficient manner.
  • automated publishing systems have replaced fully manual and typesetting procedures, permitting interactive page composition and formatting.
  • embedded layout or formatting commands are entered by the user along with text, graphic or image information, and implemented by the system.
  • Word processing and automated publishing systems may reside in a single terminal, be distributed on a time-share basis or contained in a number of network-linked microcomputers.
  • a system designed for such sophisticated applications must support an elaborate file structure capable of discriminating among users and tracking the progress of procedural operations, allow access to discrete document portions in order to maximize the number of users who may simultaneously work on a document, and facilitate modular construction of complex documents with considerable flexibility.
  • the system must also be compatible with an array of external application software packages that is sufficient to support document assembly and output.
  • the present invention exploits a class of computer programming that utilizes an "object-oriented" approach to document production.
  • object-oriented system data is stored in self-contained programmatic structures that also contain procedures for manipulating the data.
  • the procedures need not reside in the same area of memory as the data, nor need the routines specifying the procedures be replicated in each object. Rather, the object may comprise only a set of pointers to data and procedural files that can be shared by many objects.
  • the invention uses objects to represent documents as collections of logical components (such as chapters of a book or sections of a newspaper) which may be combined and physically mapped onto a page-by-page layout when sufficient content has been introduced to make this operation meaningful.
  • the use of object-oriented environments in the field of document manipulation is not new.
  • Patent No. 4,739,477 and U.S. Patent No. 4,723,209 describe an object-oriented document system that allows multiple data sets to be assigned to a single displayable area of a document.
  • word processing systems sometimes represent documents as a series of logical segments that contain information in order to facilitate formatting into pages. See, e.g., U.S. Patent No. 4,539,653, which describes a formatting scheme in which pages are divided into named regions referred to as "logical pages"; a user may assign text or graphics to these regions by means of embedded commands contained in the text data stream.
  • the invention decomposes a document into logical components, which are stored as discrete "objects" in an object-oriented computational environment. Stored objects are organized, accessed and manipulated through a database management system (DBMS).
  • DBMS database management system
  • the DBMS provides a coherent, consistent encoding of object content, object attributes and inter-object relationships.
  • the objects are assembled into an integrated whole when the document is to be physically produced, i.e. printed or displayed electronically or electronically transmitted.
  • objects contain "content,” i.e. basic information-bearing constituents such as text, image, voice or graphics.
  • Objects may also contain further data (“attributes”) specifying (a) logical or physical relationships to other objects or to the document as a whole, (b) characteristics relating to the appearance of the content, or (c) access restrictions.
  • attributes For example, a check may be divided into the simple logical objects “check number,” “payee,” “payor,” “amount,,” “signature,” and “account number”.
  • the content of the logical object “check number” will be the representative characters, but this object might also contain a layout attribute indicating that it is to be placed at the upper-left-hand corner of the check document.
  • a character font may also be specified.
  • an object can contain procedures that store, send, delete, modify and display the object.
  • Objects in a document may be hierarchically related to one another, such that one object may draw some or all of its content and/or attributes from another object or objects. This permits objects to be reused, resulting in efficient memory utilization.
  • an advertisement may be stored as an object, but incorporate a stock photograph stored as a second object. That photograph may be accessed by other objects within the document, and in other documents.
  • Objects may also be classified according to class, permitting multiple objects to inherit the same set of characteristics and attributes. For example, a document object may be subclassified as a check document, and all check documents may contain the same set of content objects.
  • Folders can themselves be represented as objects, when this level of generality is appropriate, and collected into bundles referred to generically as "folders". Folders, too, can be represented as objects. (Hereinafter, the terms “folder object” and “document object” will refer to the folder or document itself, rather than the objects contained therein.)
  • Layout objects are broadly classified as “logical” and “layout” objects.
  • a logical object defines the relationship between different portions of content, as well as between documents.
  • Layout objects specify the physical distribution of content within the object, and define physical locations on a page or within a document.
  • Layout objects may include page sets (e.g. sections of a newspaper or periodical); pages; frames, which represent regions within a page; and blocks, which represent subregions.
  • Separating physical layout from logical relationship permits coordination of work activity among a large number of users, because user access can be limited to appropriate document elements and requests for document components prioritized to prevent simultaneous access.
  • the invention can control access based on a work-flow model of document assembly, wherein a user's ability to make modifications or additions is contingent on the occurrence of a previous event.
  • a document object contains pointers to content objects(which themselves contain the basic information-bearing constituents) , as well as to logical objects and layout objects. Examples of logical objects are "First News Story” or “First News Story Photo” . Examples of layout objects are "Page One” or a dimensional specification of a portion of Page One.
  • Logical objects can contain attributes specifying locational preferences within the document, but these are not evaluated until logical objects are mapped into layout objects during pagination.
  • Document objects may also contain attributes relating to the appearance of various fields within the document (e.g. different font types for different portions of a page) ; alternatively, these can be maintained within the content objects.
  • Objects are created, organized and accessed by means of an object-oriented DBMS.
  • the current embodiment of the invention can utilize any of a number of general-purpose DBMS, appropriately supplemented to facilitate object-oriented operation.
  • the selected DSMS is structured according to the particular system application so that a basic set of "native" or standard objects will be available to the users.
  • the DBMS should also accommodate new objects defined by users and integrate them within the existing framework.
  • Objects are organized within the DBMS by type (e.g. Page Set) and by name identifier
  • the information contained in a content object may be stored within the DBMS or external to the DBMS; in the latter case the DBMS contains a pointer to the memory address of the content.
  • the user obtains information about objects and accesses objects through a variety of utility programs integrated within or callable by the system. These access the DBMS directly and provide editing, display and output functions which are appropriate to the particular system application. Indeed, the DBMS is most appropriately viewed as a kernel, to which access is accorded to various application packages. For example, users of a document management system may need only simple text editing capabilities that permit input and modification of text, composition functions to format text, and fonts to specify output of text on typesetters and other output devices; by contrast, publishing systems can require sophisticated image processing and graphics capabilities, as well as integration of output arising from multiple sources.
  • Objects of the present invention are configured so as to require values for a consistent set of parameters, thereby facilitating interface with a variety of application programs, input devices and output devices. So long as the application program is equipped to provide values for these parameters, interaction with discrete objects can occur.
  • Direct communication between the user and the DBMS may take place in Structured Query Language (SQL) .
  • SQL Structured Query Language
  • This standard language interfaces most easily with DBMS systems. More commonly, content is retrieved from the DBMS by an application program (e.g. an editor) through the system's input/output system, and the user interacts with the application program only. Application programs typically feature menu-driven or command-driven interfaces which are more convenient to use than SQL. After the user's session with the application program has been completed, the modified content is passed back to the DBMS for storage.
  • the DBMS maintains immediate supervisory control over retrieval and storage of files.
  • Access to objects can be selectively restricted by insertion of appropriate "access" attributes within such objects.
  • the user's attempts to gain access to an object will depend on fulfillment of the criteria specified in the attribute.
  • an access attribute can require a proper user identification or terminal location.
  • the DBMS can be configured to scan this attribute of an object prior to retrieval, and refrain from returning the object unless a match is detected.
  • access can depend on a sequence of procedures that must be performed on the desired object or related objects.
  • the content of a newspaper story might not be available for layout until the author's supervising editor has approved the text.
  • access to or manipulation of the corresponding object must be restricted pending completion of this prerequisite operation.
  • This state-transition model of object manipulation can be extended to encompass not only preconditions for object access, but post-conditions as well. For example, modification of an object may be restricted until the DBMS has been given an acknowledgment of the object's receipt by an application.
  • Status attributes can also be included within objects to record the performance of procedures on the objects, and the access attribute of the desired object can be set to evaluate the status attributes of its own object or a related object. So long as the application program or DBMS retrieval routines have been configured to respond appropriately to status and access attributes, the user retains complete flexibility to design work-flow procedures and/or personnel restrictions.
  • the invention partes the content and classification of a document component from its physical location. Accordingly, the process of building a document depends largely on its organizational priorities. "Content-driven" documents are composed of logical components that exhibit a consistent physical layout pattern. An office letter can be extremely content-driven, in that its logical components always fall within precisely describable physical locations on the printed document. A less extreme example might be a literary novel with sequential chapters; although the exact lengths of chapters may vary, their sequential physical organization remains consistent. Other documents are "layout-driven,” meaning that physical appearance is accorded first priority over content.
  • An example might be a catalogue, wherein the arrangement and relative sizing of items on a page can be different for each page of the catalogue, while the content may well be standardized or provided to the user by an outside source.
  • the invention is capable of accommodating both types of document creation strategies, as discussed below.
  • the invention may also be utilized in environments where various procedures are performed on documents over time by different work units; such applications are referred to as "work-flow processing".
  • work groups or departments discharge tasks that require examination or modification of documents kept in files and/or archives or which are created during the work; examples of organizations that make use of work-flow processing are insurance claims processing departments or advertising organizations.
  • the documents, with work requests, are routed to appropriate personnel within a department, processed, and then returned to storage or to another work group for further processing.
  • the path followed by a particular folder or set of folders may be determined by the individuals working on them or may follow a preplanned course.
  • an application agent onto the DBMS.
  • the application agent follows a set of rules to route objects to appropriate personnel at the proper time or pursuant to external command, and to perform autonomously on objects those procedures amenable to automated discharge.
  • the application agent can also provide status reports relating to various objects within the DBMS. However, if the work-flow path is simple enough, an appropriately chosen set of status and access attributes attached to the relevant objects may be sufficient.
  • the DBMS is also configured to provide the proper utility programs to personnel in various work groups, and provide access to another work group's system where appropriate.
  • Fig. 1 depicts the basic hierarchical organization of objects according to the present invention, in the context of a book consisting of sequential chapters;
  • Fig. 2 illustrates the computational modules comprising the present invention
  • Fig. 3 details the nomenclature and basic hierarchical organization of objects in the present embodiment of the invention.
  • Fig. 4 illustrates the physical structures corresponding to the layout objects contained in the present embodiment of the invention.
  • the invention utilizes an object-oriented database.
  • the existing embodiment of the invention employs INGRES, a relational database marketed by Relational Technology, Inc., augmented by a series of additional software modules that support object-oriented operation. With these additional modules, any DBMS capable of distributed implementation and, preferably, providing an SQL interface can be used advantageously.
  • the invention accommodates simultaneously both the content-driven and layout-driven strategies of document creation. This is accomplished by maintaining a computational distinction between logical objects and layout objects.
  • Figure 1 schematically depicts logical and layout objects in the organization hereinabove described. The particular example depicted in Figure 1 is a book containing sequential chapters. Logical objects, which appear on the left side of the drawing, represent the conceptual organization of the book.
  • Layout objects which appear on the right, represent physical divisions of the document. Logical objects remain separate from layout objects until mapped thereon by document manager 16.
  • Document manager 16 is typically a supervisory computer program which creates a tentative initial version based on layout parameters, content object attributes and the content itself, although the necessary operations may be performed manually if necessary. All objects may contain attributes and "bindings," which are attributes that specify computational procedures; these procedures are called and executed, either by a properly configured application program or by the input/output system, upon the occurrence of conditions specified as part of the attribute.
  • Content objects are hierarchically subordinate to logical objects, but their attributes may influence layout objects by specifying placement parameters.
  • Figure 2 illustrates the basic organization of the invention.
  • a user seeking to construct a content-driven document would enter content and attributes through an application program 21 into native or user-defined content objects, which collectively describe the logical document.
  • DBMS 27 maintains the organization of all objects and controls access thereto, but all communication with DBMS 27 is performed through input/output system 23 (described below) .
  • the user would similarly enter basic layout parameters (such as margins and justifications) into the layout objects.
  • the objects are submitted to document manager 16, which generates final layout parameters based on those already provided by the user, the set of logical objects and the amount of content.
  • the author of an interoffice memorandum bearing a standard format might specify a style of header, its page position, the contents of header subobjects (such as the addressee and date), and the content of the memorandum itself.
  • Document manager 16 produces an appropriately formatted version of the memorandum based on these values.
  • the paginated memorandum is then sent to input/output system 23.
  • input/output system 23 converts the document into a text stream for output onto a suitable viewing device.
  • the user has the ability to alter format and/or content as desired, and send the document to other output devices.
  • the author of a layout-driven document could enter precise values for the layout objects, thereby defining a physical structure into which content may be loaded.
  • This structure is ordinarily displayed to the viewer prior to entry of content.
  • the designer of a single- or multi-page advertisement might specify a set of borders, angular rotation of specific portions of text, the location of an image within a page and a color model (which establishes the method of encoding the color of each data element) .
  • the user could enter text directly into the allowed layout spaces, lengthening, shortening or altering the fonts as necessary to accommodate the layout.
  • Complex documents such as newspapers are both content-driven and layout driven to various degrees, depending on editorial proclivity and the particular locations within the newspaper. In such circumstances, additional software support mediates the elaborate relationship among content size, content attributes and layout objects.
  • Content objects contain raw data that may be decoded by appropriate output devices. Such data may take the form of floating-point values, fixed-point numbers, alphanumeric characters, byte strings, binary values, or similar primitive elements.
  • data of an image typically consists of a series of pixel encodings.
  • a standardized series of attributes is also associated with each object; these attributes are interpreted by the various components of the invention as necessary. Attributes such as color model, resolution, position and decoding procedures, stored as part of an image object, provide necessary output information to input/output system 23. Text object attributes relating to output include style commands, fonts and typesetter driver functions. All objects carry a name and classification, which is utilized by DBMS 27 to facilitate access and linkage between attributes and objects.
  • Document objects and folder objects consist primarily of pointers and attributes.
  • Document object pointers specify the logical and layout objects associated with a particular document; when the document has been fully composed, all content objects are bound to layout objects. Multiple layout objects (such as portions of corresponding pages in different versions of a newspaper) can share the same content objects.
  • the hierarchically superior folder object pointers specify documents.
  • objects are output to external devices by input/output system 23, a computational module which obtains objects from DBMS 27 and arranges the content in display order.
  • An input/output system suitable for use with the present invention is described in copending application Serial No. 446,975 filed contemporaneously herewith and incorporated herein by reference.
  • Input/output system 23 merges and translates these objects into a linear list of output commands to drive one or more of output devices 25.
  • the user is provided with one or more utility programs 21 to assist with composition, which consists of content entry, modification, pagination and style choices.
  • the primary utility program for most applications relates to text processing and layout modification, and is referred to as the "text subsystem: .
  • the text subsystem consists of a sophisticated word processing system that allows entry of text characters, style and format commands which determine the physical layout and appearance of characters, and graphic shapes; such systems are well-known in the art.
  • the word processor should be equipped with word-wrap and hyphenation features.
  • the text subsystem supports an interactive, interleaved process model that facilitates imaging and positioning of text characters as they will appear in the visual output of the system.
  • Input/output system 23 facilitates visual imaging or "mock-up" (i.e. dummy renditions) of these objects, the appearance of which may be specified by an attribute.
  • the text subsystem calculates the physical size of the text block, and permits characters to be positioned within graphical shapes and set onto baselines within columns or within blocks.
  • the typeset version When the typeset version is finalized, the text subsystem formats the content into a multi-byte description of each text character.
  • Information concerning the relationship of text characters to one another are stored as attributes bound to text objects. These attributes and embedded encodings are interpreted by input/output system 23, where they are translated into commands that will drive the particular output device chosen.
  • a second utility program, useful in publishing applications, is the "image subsystem".
  • This utility program facilitates input of image data for designation by the DBMS as an object and user manipulation of the entered image.
  • the image subsystem formats the completed image into pixel values and associated attributes that are interpreted by input/output system 23.
  • Image input may be accomplished in a number of ways, e.g. through a conventional optical scanner, which digitally encodes tonal values of a flat image passed beneath an electronic detector, or through communication channels of equipment capable of encoding a subject in pixel format.
  • the application program that interacts with the input device is responsible for furnishing values for the invention's set of image attributes.
  • the image subsystem operates on images resident in system memory. Editing functions permit the user to access .and modify the position, color and density of image pixel values.
  • a suitable image processing system should also be capable of point manipulation, as well as manipulation (e.g. rotation, cropping and scaling, and color modification) of an image component or the entire image. Again, such systems are known and readily available to those skilled in the art.
  • Output of an image by input/output system 23 requires retrieval of the actual data representing the final image or image rendition, translation of this data and associated image attributes into display data, and transmission to the selected output device.
  • a particularly useful application of the present invention is in an integrated newspaper publishing environment. This complex application draws heavily on the system's power to accommodate large numbers of users simultaneously adding or modifying content or layout constraints; multiple document versions that contain much of the same content; and intricate, recursive relationships among layout, content and independent user choice.
  • a dally newspaper contains two basic categories of content: stories and advertisements. Each category may consist of one or more data types (i.e. text, image or graphics).
  • Large newspapers are typically printed in more than one version owing to geographical and timing constraints, many advertisers wish to target particular geographical zones rather than the entire circulation of the newspaper, necessitating a variety of geographically based versions. Such versions may also vary in news content.
  • the content of stories derives from the contributions of numerous participants at varying levels of responsibility. Access privileges for these participants may be restricted to a single story maintained as a logical object, or can include numerous stories and/or layout objects. In addition, work flow or "copy flow" requirements can dictate that specific procedural sequences take place on certain objects during content entry or composition.
  • the different versions of a newspaper may be considered members of a folder, with each version representing a separate document.
  • Each version is organized into logical and layout objects, which share content objects with other versions.
  • Organization of the content into layout objects may be performed manually or by use of a suitable Document Manager software package.
  • DAL routines add object-oriented features to a relational DBMS. Without the DAL routines, object components would remain as loosely linked data structures, forcing application programs to contend with complex storage and retrieval pathways.
  • the object-oriented DBMS permits simple retrieval by means of direct query-type requests. DAL routines therefore provide the utility functions necessary to mediate between application programs and a generic relational DBMS.
  • the relational portion of the DBMS organization consists of two tables, the Object and Attribute ("O/A") Table and the Relationship and Property ("R/P”) Table.
  • O/A Object and Attribute
  • R/P Relationship and Property
  • the organization of each of these tables can take numerous forms.
  • the O/A table relates objects to associated attributes.
  • One valid representational schema defines rows and/or columns as object attributes, with each entry in the table consisting of the identifier of an object and pointers to the data structure of the object.
  • the data structure contains attributes affixed to the object.
  • the rows (or columns) can specify objects with the columns (or rows) specifying attributes; entries then consist of on/off conditions.
  • O/A table Another function of the O/A table is to maintain the inheritance characteristics of objects.
  • Each entry in the table can further include an object identifier field, in which are stored identifiers of the objects to which the specified attribute is linked; alternatively, this information can be retrieved from the R/P table directly.
  • object identifier field in which are stored identifiers of the objects to which the specified attribute is linked; alternatively, this information can be retrieved from the R/P table directly.
  • object identifier field in which are stored identifiers of the objects to which the specified attribute is linked; alternatively, this information can be retrieved from the R/P table directly.
  • Either structure permits inheritance of attributes among hierarchically related objects. Accordingly, storing the identifier of the "parent" object is sufficient to link the list to subordinate "offspring" objects. For example, attributes relating to a physical page will apply to physical sections of that page as well, unless otherwise specified in a different list linked to such physical sections.
  • the R/P table establishes hierarchical and other specified relationships (such as page location and placement) among objects, as well as classification ("property") data such as whether a content object is a story or an advertisement.
  • Property data can also specify characteristics associated with a particular relationship, such as a scaling factor that varies depending on where the object is to be placed, one valid representational schema defines rows as relationships and columns as properties, with each table entry consisting of the identifier of the object. Because the entire set of relationships would be extensive (and result in numerous empty spaces in the table, since a particular relationship may exist for only one object), the size of the table may be reduced by assigning a separate table to each object.
  • the resulting R/P tables then consist of rows specifying object properties, columns specifying relationships, and entries consisting of on/off conditions.
  • a content object's scaling factor may differ depending on where the object is placed, i.e. with which layout object it is associated.
  • one property of the linkages between the content object and various layout objects would be scale, the value of which might vary with each linkage.
  • dal_trk_alloc allocate a memory block sufficient to contain object and all subobjects specified therein. This DAL accepts input of the desired object and the lowest-level subobject to be retrieved. If no lower-level object is specified, all subobjects are assumed. Allocation is performed by sequentially retrieving object filenames from the data structures of the desired object and linked subobjects, determining the length of each (by reference to DBMS record data), and creating a memory block sufficient to contain all of the designated object files.
  • dal_trk_dealloc Deallocate the memory block I Q created by dal_trk_alloc.
  • dal_trk_outp retrieve the specified object and subobject files. Like dal_trk_alloc, this DAL accepts input of the desired object and the lowest-level subobject to be retrieved. If no l ..b. lower-level object is specified, all subobjects are assumed.
  • dal_trk_obj Find and return all links between parent and child objects of a specified object. This DAL parses the R/P table to obtain the names of hierarchically superior and inferior objects, 20 as well as properties associated with the relationship.
  • dal_trk_attr Find and return all attributes linked to a specified object. This DAL parses the O/A table to retrieve the list of attributes associated with a particular object. As an example of its use, an editing application program would use an object's presentation attributes to create an appropriately formatted display list of the object content once it has been paginated.
  • dal_trk_objnames Find and return a list of
  • this DAL will retrieve a list of all versions of the document (specifying publication, date, zones and editions) . If the page level is chosen, a list of all
  • this DAL parses the set of tables for objects specifying the correct number of inferior or superior objects.
  • dal_trk_fndpg Find and return the object name of a single logical or physical page of a newspaper based on specified values for version and page number in that version by retrieving the object name associated with the page in the O/A table.
  • dal_trk_who retrieve a list of users permitted to access a given physical or logical page. This DAL evaluates the locking attribute of an object with respect to specified conditions, permitting access to be accorded on the basis of identity or completion of appropriate procedural sequences, ii.
  • DAL Routines Page Assembly
  • the following DAL routines assemble objects corresponding to a physical page after the elements have been composed, placed and made ready, thereby encapsulating page-related objects and associated output routines into an output-ready physical page.
  • physical pages can be moved or output as unified constructs, because all necessary components have been linked to that page.
  • the layout DAL creates or collects story elements (such as text blocks, pictures or graphic images) and specifies their locations within an existing or newly created layout object on a physical page.
  • Layout element creation precedes entry of content in a "layout-driven" mode of document assembly; in a "content-driven” mode, layout objects are created around the entered content.
  • dal_assign_elt Create a story element or associate an existing story element with a layout object at a specified position. If the story element is to be created, a new logical object identifier and data structure are entered into the O/A table, and the DAL accepts entry of content. If the story has already been created, the identifier of the object is used.
  • the next hierarchically superior object is the physical page, and positional information is presumed to relate thereto.
  • the entered content will extend the width of a standard column.
  • a layout object of sufficient size is then created by appropriate entries in the O/A table, and linked to the entered content by an appropriate entry in the R/P table.
  • This DAL requires provision of the following data: a. Publication b. Edition c. Zone d. Section e. Page number f. Story name g. Story element name h. Name of parent object i. X and Y coordinates of placement with respect to upper left corner of parent object j.
  • Folio DALs obtain the information necessary to output the folio components of a page based on characteristics specified by the user.
  • these DALs and their associated functions are as follows: dal_get_folio-names: Allocate memory space for data structure, access folio table and retrieve set names for user-specified folios.
  • dal_get_folio-set retrieve from database all folios suitable for user-specified position (right side, left side, or both sides of page), and allocate an array of data structures to contain data relating to each qualified folio; enter user-specified information into data structures; return address of array and count of data structures within array.
  • Each data structure contains the following elements: a.
  • folio set b. Folio name for one folio of the set c. Horizontal size d. Vertical size e. Horizontal location (left side, right side, both sides of page) f. Vertical location (in page coordinates) g. Pages where folio is to appear dal_get_folio-row: Extract data relating to a particular user-specified folio by parsing the O/A table, enter the data into one of the data structures set up by dal-get_folio_set, and return the memory address of that data structure.
  • the object retrieval DAL specifies the content portions of a page and placement thereon, objects can include logical objects or portions thereof (which are themselves objects created during the pagination process, when objects too big for placement on a single page are divided into smaller units), such as the part of a story allocated to a particular physical page, or another physical page object.
  • dal_get_object retrieve or create the object specified by name, clipped to the boundary set during pagination. Because objects are stored as files containing both data and length information, this DAL returns different forms of data depending on the object type (logical or physical) and the length of its associated content data. The allowed permutations are:
  • Object hierarchically superior to a physical page e.g. a section: only object itself returned.
  • Object hierarchically subordinate to a physical page object and subobjects other than those linked to one or more additional physical pages returned; the unreturned subobjects remain to be paginated and thereby allocated to individual pages.
  • Each data structure created by dal_get_object contains the following generic set of elements, to the extent known, to facilitate output: a. object name b. List of siblings (i.e. other objects linked to the same hierarchically superior (parent) object, e.g. page set and root with respect to a page) ; c. List of parent (page set and root) objects; different roots may specify different page sets. For example, two different newspaper versions may share many of the same pages, but specify unique pages as well. d. List of offspring (subobjects) e. Type code f. X and Y coordinates with respect to parent g. X and Y coordinates with respect to physical page h. Width of object on physical page i. Height of object on physical page j. Horizontal scaling k. Vertical scaling 1. Rotation m. Status (for locking; indicates whether object available for retrieval) n. Color mask o. Content encoding format (for output) p. Full operating system path to content file
  • DAL dal_get obj permits the user to enter values for these attributes when the object type is specified. iii. DAL Routines: Output Monitoring
  • Output monitoring DALs create and update data structures that specify the current status of an "output job," the set of display or output instructions that describe the document to the extent defined.
  • Job data represents a snapshot of progress made to output a document, as well as a limited.historical record of content retrieval and modification.
  • DALs are as follows: dal-create_outjob: Enter a unique, algorithmically determined ID and time values into the job data structure.
  • dal_update_outjob Update contents of an existing output job data structure specified by the caller, to include information provided by the caller.
  • dal-showme_outjob Display contents of data structure relating to specified job.
  • the system provides for definition of the following logical objects, based on typical newspaper organization: 1.
  • the logical root (which specifies the publication, date, zones and editions).
  • Logical pages e.g. first page of Business
  • Page position (e.g. top-right, center). Page position can also be specified as an attribute of an object.
  • Content objects which include: a. Story elements (e.g. text, pictures) b. Advertisement elements c. Generic folio (defines a content block with associated page position); d. Generic jump box (maintains coordination between multiple pieces of a single story or story element without the need for absolute page numbers)
  • the content objects hierarchical subsets of the logical objects, point to memory locations containing display data.
  • a content object may contain text, image or graphic content.
  • Several logical objects (e.g. stories in different versions)can point to the same content object.
  • Layout objects include:
  • the layout root (which holds the newspaper name and points to the page sets and/or pages).
  • Pages. Frames, which are rectangular areas entirely contained within a page.
  • Ad Stack Dynamic object which specifies all locations of the physical paper which have been assigned to advertisements. This object is built by parsing the R/P table for advertisement-type objects (the same function could be performed by searching the type attributes of all content objects associated with layout objects to identify advertisement-type objects), and so will expand and contract in size as advertisement objects are created and deleted. Because this object specifies all component content objects, the user may lock the entire set of advertisement objects with a single lock command to the Ad Stack object.
  • Instantiated folio physical object containing content defined in associated generic folio.
  • Instantiated jump box physical object generated from associated generic jump boxes.
  • Page furniture contains generic, user-specified content that is placed on each page of the physical paper.
  • Each version of the newspaper will contain its own set of logical and layout objects, and draw from its own unique content objects and those shared by other versions.
  • the system initially loads a default set of objects with associated sets of default attributes. These objects and attributes may be altered, and new ones created, by user command (using the dal_get_obj DAL) .
  • the physical structures to which layout objects correspond are depicted in Figure 4.
  • a section 30 is composed of pages 32.
  • the page labeled 34 is "Page 1" of this section.
  • a single large frame 36 is illustrated, this frame containing a number of blocks 38.
  • the content 40 of any particular block can consist of text, image, graphics or combinations thereof. Content objects and their associated attributes are mapped into blocks 38 during pagination.
  • a key feature of the invention is its ability to present the viewer with a logical document or a physical (layout) document.
  • the user may view the content and logical divisions of the publication.
  • the combination of named objects and full-text searching in the DBMS permits collection of material that is thematically related, or related in some other way (such as by author or the presence of a particular attribute) .
  • the physical appearance of the newspaper in its current stage of layout may be viewed.
  • the logical view might be important to a writer editing the text of a story or group of related stories, while artists designing the magazine section would be more interested in the layout view.
  • This feature arises naturally from the organization of the document into logical and layout data structures, which are managed through a DBMS.
  • the user or application program interacts with the DBMS to obtain the appropriate content and layout objects, which ar.e interpreted by the input/output system and transformed into visual output.
  • the most general logical object is the logical root, which is the source of all logical divisions within the document.
  • the logical root contains the following attributes:
  • Descriptor Body a. Object identifier b. Subordinate object list c. Presentation attributes d. User-readable comments (can also be read by application program if appropriately configured) e. Bindings (names of bound computational procedures) f. User-visible name g. Presentation style h. Layout style i. Property attributes j . Version Attributes k. Management status attributes 1. Lock Definition m. Layout directives Presentation attributes for the logical root include generalized formatting parameters that affect all document versions. Version attributes specify special characteristics associated with the different versions of the newspaper. Basic management status attributes indicate whether the object is defined, and if so whether the object is complete or incomplete.
  • the lock definition determines access privileges directly, and may be turned on or off by an application program that has been configured to respond to user-specified management status attributes .
  • Character Attributes for text content, describe characteristics of each character [e.g. graphic rendition, font] and spacing among characters)
  • Color Model 9 Color Table (set of values used to compensate for special color characteristics associated with input or output device)
  • a content object can consist of text, image or graphic content, as well as combinations thereof. For example, a story may contain body text, a headline and associated photographs. Content can be entered into the system by keyboard terminals, telecommunication links, direct scanning or other external sources. Content objects contain data similar to other content objects, with certain exceptions. First, no subordinate object attribute is included. Second, content may be inserted into the content-object data structure itself, or specified by a filename or memory address corresponding to the content. Third, the presentation attributes determine appearance with greatest specificity; just how much more specific these presentation attributes will be as compared to those associated with more general objects depends on the publishing environment and user choice.
  • Logical pages are typically resolved into physical pages only when a sufficient amount of the content is known, and defined only when they are necessary to place material.
  • a content object may be linked to a particular logical page or section by designating that content object as a subordinate object. If content is directed only to sections (i.e., content objects are linked directly to sections rather than to logical pages or page positions), no logical pages or page position objects will be necessary, and pagination will be largely unconstrained by logical organization. Alternatively, frequent use of page position objects that specify content will largely determine pagination.
  • a loosely defined locational attribute e.g.
  • a page position provides only general guidance to a layout object regarding the content of that location; however, page positions may also be described in absolute coordinates, which would thereby specify layout.
  • the user can also insert of placement information into the layout directive attribute of a content object (instead of creating a specific page position object) to direct pagination, with appropriate configuration of the Document Manager, priority values can be verification purposes) g. outside bleed margin h. Inside bleed margin i. Top bleed margin j . Bottom bleed margin k. Number of news columns 1. Width of news columns m. Gutter widths n. Number of classified ad columns (if any) o. Width of classified ad column p. Number of retail ad columns q. Width of retail ad column r. Vertical text grid spacing 7. Bindings
  • Pages are also broken down into discrete rectangular areas called frame objects, which are themselves composed of rectangular block objects.
  • Frame and block objects may be rotated by one degree increments within the areas defined by .the superior objects.
  • Frames and blocks may also extend beyond page boundaries in order to permit imaging content over multiple pages.
  • Frame and block objects contain attributes similar to page objects, with the following additions:
  • the input/output system accepts these parameters and performs the actual operations as it prepares the content for output. . If an area of the frame lies outside the superior object's defined area, that outlying area will be clipped by the input/output system. Blocks can overlay each other and may be scaled. If an area of the block lies outside a superior object's defined area, that outlying area will be clipped. c) Pagination
  • the newspaper is most advantageously composed in a manner that allows gradual definition of its contents, followed by a definition of its layout, followed by interactive stages of redefinition of both content and layout until a version of the paper is imaged. Interaction may take place on a distributed basis, and may be accomplished manually or by means of support software, i.e. a Document Manager.
  • pagination may be accomplished by numerous different means, any implementation must balance the following set of constraints: (1) organization of layout objects, to the extent specified; (2) existing layout objects that have already been assigned content; (3) the hierarchy of logical objects specifying various content objects; and (4) the size of content objects, which may individually or collectively exceed the logical locations to which they have been assigned.

Abstract

An object-oriented document management and production system in which documents are represented as collections of logical components, or ''objects'' that may be combined and physically mapped onto a page-by-page layout. Stored objects are organized, accessed and manipulated through a database management system. At a minimum, objects contain basic information-bearing constituents such as text, image, voice or graphics. Objects may also contain further data specifying appearance characteristics, relationships to other objects, and access restrictions.

Description

DOCUMENT MANAGEMENT AND PRODUCTION SYSTEM Field of the Invention
The invention relates to the field of computer-based document management, and in particular to an integrated system for creating, distributing, producing and managing various types of multi-component documents. Description of the Related Art
Document composition, assembly and production is today often accomplished in an automated environment. A typical word processing system, for example, permits entry and modification of text to occur on a host-connected terminal prior to generation of hard-copy output. A user may perform a variety of merge, copy and transfer operations within a document or among several documents in a straightforward and efficient manner.
Likewise, automated publishing systems have replaced fully manual and typesetting procedures, permitting interactive page composition and formatting. Typically, embedded layout or formatting commands are entered by the user along with text, graphic or image information, and implemented by the system. Word processing and automated publishing systems may reside in a single terminal, be distributed on a time-share basis or contained in a number of network-linked microcomputers.
The majority of present-day document processing systems are directed solely to the task of creating and editing documents. However, many users require integration of various program applications in order to merge their outputs. In response to this need, a number of multiple-function programs have recently emerged. These programs combine several applications, such as word processing, data processing and spreadsheet operations, into a single integrated system. Function integration and multi-user capabilities, however, do not necessarily automate the process of producing complex documents, where the difficult aspects of document creation lie in coordinating the efforts of a large number of creative participants, generating text that is not readily produced by conventional data processing application software or shepherding an evolving document through a series of sequential procedures. A system designed for such sophisticated applications must support an elaborate file structure capable of discriminating among users and tracking the progress of procedural operations, allow access to discrete document portions in order to maximize the number of users who may simultaneously work on a document, and facilitate modular construction of complex documents with considerable flexibility. The system must also be compatible with an array of external application software packages that is sufficient to support document assembly and output.
The present invention exploits a class of computer programming that utilizes an "object-oriented" approach to document production. In an object-oriented system, data is stored in self-contained programmatic structures that also contain procedures for manipulating the data. The procedures need not reside in the same area of memory as the data, nor need the routines specifying the procedures be replicated in each object. Rather, the object may comprise only a set of pointers to data and procedural files that can be shared by many objects. The invention uses objects to represent documents as collections of logical components (such as chapters of a book or sections of a newspaper) which may be combined and physically mapped onto a page-by-page layout when sufficient content has been introduced to make this operation meaningful. The use of object-oriented environments in the field of document manipulation is not new. U.S. Patent No. 4,739,477 and U.S. Patent No. 4,723,209 describe an object-oriented document system that allows multiple data sets to be assigned to a single displayable area of a document. Furthermore, word processing systems sometimes represent documents as a series of logical segments that contain information in order to facilitate formatting into pages. See, e.g., U.S. Patent No. 4,539,653, which describes a formatting scheme in which pages are divided into named regions referred to as "logical pages"; a user may assign text or graphics to these regions by means of embedded commands contained in the text data stream. The latter reference does not disclose an object-oriented system for mediating between logical and layout document components, and neither reference is directed toward an integrated system of document production wherein documents are organized into DBMS-managed objects and gradually assembled in response both to user commands and programmed procedures. Description of the Invention A. Objects of the Invention
Accordingly, it is an object of the present invention to provide a novel system for creating, distributing, producing and managing various types of complex documents.
It is another object of the invention to support coordinated, multiple user access to various components of complex documents.
It is a further object of the invention to maintain individual document components as discrete units that may be accessed selectively and combined by the user or by means of external programming. It is another object of the invention to provide a general platform which may be customized to suit a variety of publishing, case management and document handling applications.
It is yet another object of the invention to provide an object-oriented, data-base-centered computational environment for the storage, modification, organization and retrieval of documents. B. Summary of the Invention
The invention decomposes a document into logical components, which are stored as discrete "objects" in an object-oriented computational environment. Stored objects are organized, accessed and manipulated through a database management system (DBMS). The DBMS provides a coherent, consistent encoding of object content, object attributes and inter-object relationships. Ultimately, the objects are assembled into an integrated whole when the document is to be physically produced, i.e. printed or displayed electronically or electronically transmitted. At a minimum, objects contain "content," i.e. basic information-bearing constituents such as text, image, voice or graphics. Objects may also contain further data ("attributes") specifying (a) logical or physical relationships to other objects or to the document as a whole, (b) characteristics relating to the appearance of the content, or (c) access restrictions. For example, a check may be divided into the simple logical objects "check number," "payee," "payor," "amount,," "signature," and "account number". The content of the logical object "check number" will be the representative characters, but this object might also contain a layout attribute indicating that it is to be placed at the upper-left-hand corner of the check document. A character font may also be specified. In addition to attribute data, an object can contain procedures that store, send, delete, modify and display the object. Objects in a document may be hierarchically related to one another, such that one object may draw some or all of its content and/or attributes from another object or objects. This permits objects to be reused, resulting in efficient memory utilization. For example, an advertisement may be stored as an object, but incorporate a stock photograph stored as a second object. That photograph may be accessed by other objects within the document, and in other documents. Objects may also be classified according to class, permitting multiple objects to inherit the same set of characteristics and attributes. For example, a document object may be subclassified as a check document, and all check documents may contain the same set of content objects.
Documents can themselves be represented as objects, when this level of generality is appropriate, and collected into bundles referred to generically as "folders". Folders, too, can be represented as objects. (Hereinafter, the terms "folder object" and "document object" will refer to the folder or document itself, rather than the objects contained therein.)
Objects are broadly classified as "logical" and "layout" objects. A logical object defines the relationship between different portions of content, as well as between documents. Layout objects specify the physical distribution of content within the object, and define physical locations on a page or within a document. Layout objects may include page sets (e.g. sections of a newspaper or periodical); pages; frames, which represent regions within a page; and blocks, which represent subregions.
Separating physical layout from logical relationship permits coordination of work activity among a large number of users, because user access can be limited to appropriate document elements and requests for document components prioritized to prevent simultaneous access. In addition, the invention can control access based on a work-flow model of document assembly, wherein a user's ability to make modifications or additions is contingent on the occurrence of a previous event.
Prior art systems are limited in terms of multiple-user support, despite the growing importance of distributed operations in the publishing industry. This advantage of the invention is particularly suited to publications that are generated by teams of specialized personnel, some responsible for various aspects of physical appearance and others primarily concerned with content. Delaying complete merger of both content and layout until actual production permits non/conflicting priority requests to be implemented automatically, while reserving editorial resources for the more difficult allocation decisions. A document object contains pointers to content objects(which themselves contain the basic information-bearing constituents) , as well as to logical objects and layout objects. Examples of logical objects are "First News Story" or "First News Story Photo" . Examples of layout objects are "Page One" or a dimensional specification of a portion of Page One. Logical objects can contain attributes specifying locational preferences within the document, but these are not evaluated until logical objects are mapped into layout objects during pagination. Document objects may also contain attributes relating to the appearance of various fields within the document (e.g. different font types for different portions of a page) ; alternatively, these can be maintained within the content objects. Objects are created, organized and accessed by means of an object-oriented DBMS. The current embodiment of the invention can utilize any of a number of general-purpose DBMS, appropriately supplemented to facilitate object-oriented operation. The selected DSMS is structured according to the particular system application so that a basic set of "native" or standard objects will be available to the users. The DBMS should also accommodate new objects defined by users and integrate them within the existing framework. Objects are organized within the DBMS by type (e.g. Page Set) and by name identifier
(e.g. Business Section). The information contained in a content object may be stored within the DBMS or external to the DBMS; in the latter case the DBMS contains a pointer to the memory address of the content.
The user obtains information about objects and accesses objects through a variety of utility programs integrated within or callable by the system. These access the DBMS directly and provide editing, display and output functions which are appropriate to the particular system application. Indeed, the DBMS is most appropriately viewed as a kernel, to which access is accorded to various application packages. For example, users of a document management system may need only simple text editing capabilities that permit input and modification of text, composition functions to format text, and fonts to specify output of text on typesetters and other output devices; by contrast, publishing systems can require sophisticated image processing and graphics capabilities, as well as integration of output arising from multiple sources. Objects of the present invention are configured so as to require values for a consistent set of parameters, thereby facilitating interface with a variety of application programs, input devices and output devices. So long as the application program is equipped to provide values for these parameters, interaction with discrete objects can occur.
Direct communication between the user and the DBMS, when appropriate, may take place in Structured Query Language (SQL) . This standard language interfaces most easily with DBMS systems. More commonly, content is retrieved from the DBMS by an application program (e.g. an editor) through the system's input/output system, and the user interacts with the application program only. Application programs typically feature menu-driven or command-driven interfaces which are more convenient to use than SQL. After the user's session with the application program has been completed, the modified content is passed back to the DBMS for storage. The DBMS maintains immediate supervisory control over retrieval and storage of files.
Access to objects can be selectively restricted by insertion of appropriate "access" attributes within such objects. The user's attempts to gain access to an object will depend on fulfillment of the criteria specified in the attribute. For example, an access attribute can require a proper user identification or terminal location. The DBMS can be configured to scan this attribute of an object prior to retrieval, and refrain from returning the object unless a match is detected.
In addition to characteristics of the user, access can depend on a sequence of procedures that must be performed on the desired object or related objects. As an example, the content of a newspaper story might not be available for layout until the author's supervising editor has approved the text. Thus, access to or manipulation of the corresponding object must be restricted pending completion of this prerequisite operation. This state-transition model of object manipulation can be extended to encompass not only preconditions for object access, but post-conditions as well. For example, modification of an object may be restricted until the DBMS has been given an acknowledgment of the object's receipt by an application. Status attributes can also be included within objects to record the performance of procedures on the objects, and the access attribute of the desired object can be set to evaluate the status attributes of its own object or a related object. So long as the application program or DBMS retrieval routines have been configured to respond appropriately to status and access attributes, the user retains complete flexibility to design work-flow procedures and/or personnel restrictions.
As noted previously, the invention.separates the content and classification of a document component from its physical location. Accordingly, the process of building a document depends largely on its organizational priorities. "Content-driven" documents are composed of logical components that exhibit a consistent physical layout pattern. An office letter can be extremely content-driven, in that its logical components always fall within precisely describable physical locations on the printed document. A less extreme example might be a literary novel with sequential chapters; although the exact lengths of chapters may vary, their sequential physical organization remains consistent. Other documents are "layout-driven," meaning that physical appearance is accorded first priority over content. An example might be a catalogue, wherein the arrangement and relative sizing of items on a page can be different for each page of the catalogue, while the content may well be standardized or provided to the user by an outside source. The invention is capable of accommodating both types of document creation strategies, as discussed below.
The invention may also be utilized in environments where various procedures are performed on documents over time by different work units; such applications are referred to as "work-flow processing". In a typical work-flow environment, work groups or departments discharge tasks that require examination or modification of documents kept in files and/or archives or which are created during the work; examples of organizations that make use of work-flow processing are insurance claims processing departments or advertising organizations. The documents, with work requests, are routed to appropriate personnel within a department, processed, and then returned to storage or to another work group for further processing. The path followed by a particular folder or set of folders may be determined by the individuals working on them or may follow a preplanned course.
In such contexts, it may become necessary to superimpose a computer program—referred to as an "application agent"—onto the DBMS. The application agent follows a set of rules to route objects to appropriate personnel at the proper time or pursuant to external command, and to perform autonomously on objects those procedures amenable to automated discharge. The application agent can also provide status reports relating to various objects within the DBMS. However, if the work-flow path is simple enough, an appropriately chosen set of status and access attributes attached to the relevant objects may be sufficient.
The DBMS is also configured to provide the proper utility programs to personnel in various work groups, and provide access to another work group's system where appropriate. C. Brief Description of the Drawings
The foregoing and other and further objects of the invention will be understood more readily from the following detailed description of the invention and the present embodiment, when taken in conjunction with the accompanying drawings, in which:
Fig. 1 depicts the basic hierarchical organization of objects according to the present invention, in the context of a book consisting of sequential chapters;
Fig. 2 illustrates the computational modules comprising the present invention;
Fig. 3 details the nomenclature and basic hierarchical organization of objects in the present embodiment of the invention; and
Fig. 4 illustrates the physical structures corresponding to the layout objects contained in the present embodiment of the invention. D. Detailed Description of the Invention 1) System Components
Ideally, the invention utilizes an object-oriented database. However, the existing embodiment of the invention employs INGRES, a relational database marketed by Relational Technology, Inc., augmented by a series of additional software modules that support object-oriented operation. With these additional modules, any DBMS capable of distributed implementation and, preferably, providing an SQL interface can be used advantageously. As hereinabove noted, the invention accommodates simultaneously both the content-driven and layout-driven strategies of document creation. This is accomplished by maintaining a computational distinction between logical objects and layout objects. Figure 1 schematically depicts logical and layout objects in the organization hereinabove described. The particular example depicted in Figure 1 is a book containing sequential chapters. Logical objects, which appear on the left side of the drawing, represent the conceptual organization of the book. Layout objects, which appear on the right, represent physical divisions of the document. Logical objects remain separate from layout objects until mapped thereon by document manager 16. Document manager 16 is typically a supervisory computer program which creates a tentative initial version based on layout parameters, content object attributes and the content itself, although the necessary operations may be performed manually if necessary. All objects may contain attributes and "bindings," which are attributes that specify computational procedures; these procedures are called and executed, either by a properly configured application program or by the input/output system, upon the occurrence of conditions specified as part of the attribute. Content objects are hierarchically subordinate to logical objects, but their attributes may influence layout objects by specifying placement parameters.
Figure 2 illustrates the basic organization of the invention. In a simple system comprising no automated-assistance programming, a user seeking to construct a content-driven document would enter content and attributes through an application program 21 into native or user-defined content objects, which collectively describe the logical document.
Alternatively, the user may add or modify content directly through DBMS 27 using SQL commands. DBMS 27 maintains the organization of all objects and controls access thereto, but all communication with DBMS 27 is performed through input/output system 23 (described below) . Next, the user would similarly enter basic layout parameters (such as margins and justifications) into the layout objects. When the user has entered all available content and layout parameters, the objects are submitted to document manager 16, which generates final layout parameters based on those already provided by the user, the set of logical objects and the amount of content. As a simple example, the author of an interoffice memorandum bearing a standard format might specify a style of header, its page position, the contents of header subobjects (such as the addressee and date), and the content of the memorandum itself. Document manager 16 produces an appropriately formatted version of the memorandum based on these values. The paginated memorandum is then sent to input/output system 23. In this example, input/output system 23 converts the document into a text stream for output onto a suitable viewing device. The user has the ability to alter format and/or content as desired, and send the document to other output devices.
Alternatively, the author of a layout-driven document could enter precise values for the layout objects, thereby defining a physical structure into which content may be loaded. This structure is ordinarily displayed to the viewer prior to entry of content. For example, the designer of a single- or multi-page advertisement might specify a set of borders, angular rotation of specific portions of text, the location of an image within a page and a color model (which establishes the method of encoding the color of each data element) . When the format has been satisfactorily determined, the user could enter text directly into the allowed layout spaces, lengthening, shortening or altering the fonts as necessary to accommodate the layout. Complex documents such as newspapers are both content-driven and layout driven to various degrees, depending on editorial proclivity and the particular locations within the newspaper. In such circumstances, additional software support mediates the elaborate relationship among content size, content attributes and layout objects. 2) Object Management
Content objects contain raw data that may be decoded by appropriate output devices. Such data may take the form of floating-point values, fixed-point numbers, alphanumeric characters, byte strings, binary values, or similar primitive elements. For example, the data of an image typically consists of a series of pixel encodings. A standardized series of attributes is also associated with each object; these attributes are interpreted by the various components of the invention as necessary. Attributes such as color model, resolution, position and decoding procedures, stored as part of an image object, provide necessary output information to input/output system 23. Text object attributes relating to output include style commands, fonts and typesetter driver functions. All objects carry a name and classification, which is utilized by DBMS 27 to facilitate access and linkage between attributes and objects.
Document objects and folder objects consist primarily of pointers and attributes. Document object pointers specify the logical and layout objects associated with a particular document; when the document has been fully composed, all content objects are bound to layout objects. Multiple layout objects (such as portions of corresponding pages in different versions of a newspaper) can share the same content objects. The hierarchically superior folder object pointers specify documents. As shown in Figure 2, objects are output to external devices by input/output system 23, a computational module which obtains objects from DBMS 27 and arranges the content in display order. An input/output system suitable for use with the present invention is described in copending application Serial No. 446,975 filed contemporaneously herewith and incorporated herein by reference. Input/output system 23 merges and translates these objects into a linear list of output commands to drive one or more of output devices 25.
As noted above, the user is provided with one or more utility programs 21 to assist with composition, which consists of content entry, modification, pagination and style choices. The primary utility program for most applications relates to text processing and layout modification, and is referred to as the "text subsystem: . The text subsystem consists of a sophisticated word processing system that allows entry of text characters, style and format commands which determine the physical layout and appearance of characters, and graphic shapes; such systems are well-known in the art. The word processor should be equipped with word-wrap and hyphenation features.
After text input, modification and storage, the text subsystem supports an interactive, interleaved process model that facilitates imaging and positioning of text characters as they will appear in the visual output of the system. Input/output system 23 facilitates visual imaging or "mock-up" (i.e. dummy renditions) of these objects, the appearance of which may be specified by an attribute. In complex typesetting applications, the text subsystem calculates the physical size of the text block, and permits characters to be positioned within graphical shapes and set onto baselines within columns or within blocks. When the typeset version is finalized, the text subsystem formats the content into a multi-byte description of each text character. Information concerning the relationship of text characters to one another are stored as attributes bound to text objects. These attributes and embedded encodings are interpreted by input/output system 23, where they are translated into commands that will drive the particular output device chosen.
A second utility program, useful in publishing applications, is the "image subsystem". This utility program facilitates input of image data for designation by the DBMS as an object and user manipulation of the entered image. The image subsystem formats the completed image into pixel values and associated attributes that are interpreted by input/output system 23.
Image input may be accomplished in a number of ways, e.g. through a conventional optical scanner, which digitally encodes tonal values of a flat image passed beneath an electronic detector, or through communication channels of equipment capable of encoding a subject in pixel format. The application program that interacts with the input device is responsible for furnishing values for the invention's set of image attributes.
The image subsystem operates on images resident in system memory. Editing functions permit the user to access .and modify the position, color and density of image pixel values. A suitable image processing system should also be capable of point manipulation, as well as manipulation (e.g. rotation, cropping and scaling, and color modification) of an image component or the entire image. Again, such systems are known and readily available to those skilled in the art. Output of an image by input/output system 23 requires retrieval of the actual data representing the final image or image rendition, translation of this data and associated image attributes into display data, and transmission to the selected output device. III. Description of an Illustrative Embodiment
A particularly useful application of the present invention is in an integrated newspaper publishing environment. This complex application draws heavily on the system's power to accommodate large numbers of users simultaneously adding or modifying content or layout constraints; multiple document versions that contain much of the same content; and intricate, recursive relationships among layout, content and independent user choice. A dally newspaper contains two basic categories of content: stories and advertisements. Each category may consist of one or more data types (i.e. text, image or graphics). Large newspapers are typically printed in more than one version owing to geographical and timing constraints, many advertisers wish to target particular geographical zones rather than the entire circulation of the newspaper, necessitating a variety of geographically based versions. Such versions may also vary in news content. In addition, the length of time required for distribution to various areas necessitates several press runs in order for the newspaper to reach near and far-away areas simultaneously. Each successive press run, or "edition," will contain some fresher news than the previous run; however, advertising will not ordinarily change over editions that are distributed within the same geographical zone. Consequently, the different versions of a daily newspaper will share many common features of content, but include different content and layout characteristics as well.
The content of stories derives from the contributions of numerous participants at varying levels of responsibility. Access privileges for these participants may be restricted to a single story maintained as a logical object, or can include numerous stories and/or layout objects. In addition, work flow or "copy flow" requirements can dictate that specific procedural sequences take place on certain objects during content entry or composition.
The different versions of a newspaper may be considered members of a folder, with each version representing a separate document. Each version is organized into logical and layout objects, which share content objects with other versions. Organization of the content into layout objects may be performed manually or by use of a suitable Document Manager software package. a) Database Organization The present embodiment of the invention uses an ordinary relational DBMS supplemented by a set of special commands and functions—referred to as Data Access Library (DAL) routines—to maintain encapsulation of objects. In essence, DAL routines add object-oriented features to a relational DBMS. Without the DAL routines, object components would remain as loosely linked data structures, forcing application programs to contend with complex storage and retrieval pathways. By contrast, the object-oriented DBMS permits simple retrieval by means of direct query-type requests. DAL routines therefore provide the utility functions necessary to mediate between application programs and a generic relational DBMS.
The relational portion of the DBMS organization consists of two tables, the Object and Attribute ("O/A") Table and the Relationship and Property ("R/P") Table. The organization of each of these tables can take numerous forms. Essentially, the O/A table relates objects to associated attributes. One valid representational schema defines rows and/or columns as object attributes, with each entry in the table consisting of the identifier of an object and pointers to the data structure of the object. The data structure contains attributes affixed to the object. Alternatively, the rows (or columns) can specify objects with the columns (or rows) specifying attributes; entries then consist of on/off conditions.
Another function of the O/A table is to maintain the inheritance characteristics of objects. Each entry in the table can further include an object identifier field, in which are stored identifiers of the objects to which the specified attribute is linked; alternatively, this information can be retrieved from the R/P table directly. Either structure permits inheritance of attributes among hierarchically related objects. Accordingly, storing the identifier of the "parent" object is sufficient to link the list to subordinate "offspring" objects. For example, attributes relating to a physical page will apply to physical sections of that page as well, unless otherwise specified in a different list linked to such physical sections.
The R/P table establishes hierarchical and other specified relationships (such as page location and placement) among objects, as well as classification ("property") data such as whether a content object is a story or an advertisement. Property data can also specify characteristics associated with a particular relationship, such as a scaling factor that varies depending on where the object is to be placed, one valid representational schema defines rows as relationships and columns as properties, with each table entry consisting of the identifier of the object. Because the entire set of relationships would be extensive (and result in numerous empty spaces in the table, since a particular relationship may exist for only one object), the size of the table may be reduced by assigning a separate table to each object. The resulting R/P tables then consist of rows specifying object properties, columns specifying relationships, and entries consisting of on/off conditions.
Either structure permits attributes and object properties to be invoked only when appropriate in terms of a particular relationship. For example, a content object's scaling factor may differ depending on where the object is placed, i.e. with which layout object it is associated. In this case, one property of the linkages between the content object and various layout objects would be scale, the value of which might vary with each linkage. i. DAL Routines: Tracker
A group of DALs collectively referred to as "Tracker" performs memory allocation and deallocation functions -related to object retrieval. dal_trk_alloc: allocate a memory block sufficient to contain object and all subobjects specified therein. This DAL accepts input of the desired object and the lowest-level subobject to be retrieved. If no lower-level object is specified, all subobjects are assumed. Allocation is performed by sequentially retrieving object filenames from the data structures of the desired object and linked subobjects, determining the length of each (by reference to DBMS record data), and creating a memory block sufficient to contain all of the designated object files. dal_trk_dealloc: Deallocate the memory block IQ created by dal_trk_alloc. dal_trk_outp: Retrieve the specified object and subobject files. Like dal_trk_alloc, this DAL accepts input of the desired object and the lowest-level subobject to be retrieved. If no l ..b. lower-level object is specified, all subobjects are assumed. dal_trk_obj : Find and return all links between parent and child objects of a specified object. This DAL parses the R/P table to obtain the names of hierarchically superior and inferior objects, 20 as well as properties associated with the relationship. dal_trk_attr: Find and return all attributes linked to a specified object. This DAL parses the O/A table to retrieve the list of attributes associated with a particular object. As an example of its use, an editing application program would use an object's presentation attributes to create an appropriately formatted display list of the object content once it has been paginated. dal_trk_objnames: Find and return a list of
30 all logical or layout object names at a specified level. For example, if the root level is chosen, this DAL will retrieve a list of all versions of the document (specifying publication, date, zones and editions) . If the page level is chosen, a list of all
•35 pages (logical or physical) is retrieved. Should the R/P table be configured on an object-by-object basis, this DAL parses the set of tables for objects specifying the correct number of inferior or superior objects. dal_trk_fndpg: Find and return the object name of a single logical or physical page of a newspaper based on specified values for version and page number in that version by retrieving the object name associated with the page in the O/A table. dal_trk_who: Retrieve a list of users permitted to access a given physical or logical page. This DAL evaluates the locking attribute of an object with respect to specified conditions, permitting access to be accorded on the basis of identity or completion of appropriate procedural sequences, ii. DAL Routines: Page Assembly The following DAL routines assemble objects corresponding to a physical page after the elements have been composed, placed and made ready, thereby encapsulating page-related objects and associated output routines into an output-ready physical page. After application of these DALS, physical pages can be moved or output as unified constructs, because all necessary components have been linked to that page. The layout DAL creates or collects story elements (such as text blocks, pictures or graphic images) and specifies their locations within an existing or newly created layout object on a physical page. Layout element creation precedes entry of content in a "layout-driven" mode of document assembly; in a "content-driven" mode, layout objects are created around the entered content. dal_assign_elt: Create a story element or associate an existing story element with a layout object at a specified position. If the story element is to be created, a new logical object identifier and data structure are entered into the O/A table, and the DAL accepts entry of content. If the story has already been created, the identifier of the object is used.
If no layout object is identified, the next hierarchically superior object is the physical page, and positional information is presumed to relate thereto. The entered content will extend the width of a standard column. Using default settings, a layout object of sufficient size is then created by appropriate entries in the O/A table, and linked to the entered content by an appropriate entry in the R/P table. This DAL requires provision of the following data: a. Publication b. Edition c. Zone d. Section e. Page number f. Story name g. Story element name h. Name of parent object i. X and Y coordinates of placement with respect to upper left corner of parent object j. Content (if no object specified) Folio DALs obtain the information necessary to output the folio components of a page based on characteristics specified by the user. In the present embodiment, these DALs and their associated functions are as follows: dal_get_folio-names: Allocate memory space for data structure, access folio table and retrieve set names for user-specified folios. dal_get_folio-set: Retrieve from database all folios suitable for user-specified position (right side, left side, or both sides of page), and allocate an array of data structures to contain data relating to each qualified folio; enter user-specified information into data structures; return address of array and count of data structures within array. Each data structure contains the following elements: a. Name of folio set b. Folio name for one folio of the set c. Horizontal size d. Vertical size e. Horizontal location (left side, right side, both sides of page) f. Vertical location (in page coordinates) g. Pages where folio is to appear dal_get_folio-row: Extract data relating to a particular user-specified folio by parsing the O/A table, enter the data into one of the data structures set up by dal-get_folio_set, and return the memory address of that data structure.
The object retrieval DAL specifies the content portions of a page and placement thereon, objects can include logical objects or portions thereof (which are themselves objects created during the pagination process, when objects too big for placement on a single page are divided into smaller units), such as the part of a story allocated to a particular physical page, or another physical page object. dal_get_object: Retrieve or create the object specified by name, clipped to the boundary set during pagination. Because objects are stored as files containing both data and length information, this DAL returns different forms of data depending on the object type (logical or physical) and the length of its associated content data. The allowed permutations are:
Physical page: object and all subobjects returned.
Object hierarchically superior to a physical page (e.g. a section): only object itself returned. Object hierarchically subordinate to a physical page: object and subobjects other than those linked to one or more additional physical pages returned; the unreturned subobjects remain to be paginated and thereby allocated to individual pages.
Each data structure created by dal_get_object contains the following generic set of elements, to the extent known, to facilitate output: a. object name b. List of siblings (i.e. other objects linked to the same hierarchically superior (parent) object, e.g. page set and root with respect to a page) ; c. List of parent (page set and root) objects; different roots may specify different page sets. For example, two different newspaper versions may share many of the same pages, but specify unique pages as well. d. List of offspring (subobjects) e. Type code f. X and Y coordinates with respect to parent g. X and Y coordinates with respect to physical page h. Width of object on physical page i. Height of object on physical page j. Horizontal scaling k. Vertical scaling 1. Rotation m. Status (for locking; indicates whether object available for retrieval) n. Color mask o. Content encoding format (for output) p. Full operating system path to content file
(included for flexibility, to support some applications) q. ID of virtual display(s) containing the page r. ID of virtual disρlay(s) containing subobjects s. ID of window(s) on virtual display(s) containing the page t. ID of window(s) on virtual display(s) containing subobjects u. ID of viewρort(s) on virtual display(s) containing the page v. ID of viewport(s) on virtual diεplay(s) containing subobjects The foregoing set of elements has been chosen to support the wide variety of editorial application programs typically associated with newspaper publication. Obviously, fewer or more specialized elements could be substituted according to usage requirements. Furthermore, the data structures associated with different types of objects in the present embodiment have additional elements associated therewith, in the form of attributes. The DAL dal_get obj permits the user to enter values for these attributes when the object type is specified. iii. DAL Routines: Output Monitoring
Output monitoring DALs create and update data structures that specify the current status of an "output job," the set of display or output instructions that describe the document to the extent defined. Job data represents a snapshot of progress made to output a document, as well as a limited.historical record of content retrieval and modification. These DALs are as follows: dal-create_outjob: Enter a unique, algorithmically determined ID and time values into the job data structure. dal_update_outjob: Update contents of an existing output job data structure specified by the caller, to include information provided by the caller. dal-showme_outjob: Display contents of data structure relating to specified job. b) Objects
Referring now to Figure 3, the system provides for definition of the following logical objects, based on typical newspaper organization: 1. The logical root (which specifies the publication, date, zones and editions).
2. Logical sections (the Business Section being depicted in Figure 3).
3. Logical pages (e.g. first page of Business) .
4. Page position (e.g. top-right, center). Page position can also be specified as an attribute of an object.
5. Stories 6. Advertisements
7. Content objects, which include: a. Story elements (e.g. text, pictures) b. Advertisement elements c. Generic folio (defines a content block with associated page position); d. Generic jump box (maintains coordination between multiple pieces of a single story or story element without the need for absolute page numbers) The content objects, hierarchical subsets of the logical objects, point to memory locations containing display data. A content object may contain text, image or graphic content. Several logical objects (e.g. stories in different versions)can point to the same content object. Layout objects include:
1. The layout root (which holds the newspaper name and points to the page sets and/or pages).
2. Page sets, which correspond to newspaper sections.
3. Pages. 4. Frames, which are rectangular areas entirely contained within a page.
5. Blocks, which are rectangular areas contained within a frame. 6. Ad Stack: Dynamic object which specifies all locations of the physical paper which have been assigned to advertisements. This object is built by parsing the R/P table for advertisement-type objects (the same function could be performed by searching the type attributes of all content objects associated with layout objects to identify advertisement-type objects), and so will expand and contract in size as advertisement objects are created and deleted. Because this object specifies all component content objects, the user may lock the entire set of advertisement objects with a single lock command to the Ad Stack object.
7. News Hole: Dynamic object which specifies all locations of the physical paper which have been assigned to stories, and is organized in a manner similar to Ad Stack.
8. Instantiated folio: physical object containing content defined in associated generic folio.
9. Instantiated jump box: physical object generated from associated generic jump boxes.
10. Page furniture: contains generic, user-specified content that is placed on each page of the physical paper.
Each version of the newspaper will contain its own set of logical and layout objects, and draw from its own unique content objects and those shared by other versions. In operation, the system initially loads a default set of objects with associated sets of default attributes. These objects and attributes may be altered, and new ones created, by user command (using the dal_get_obj DAL) . The physical structures to which layout objects correspond are depicted in Figure 4. A section 30 is composed of pages 32. The page labeled 34 is "Page 1" of this section. A single large frame 36 is illustrated, this frame containing a number of blocks 38. The content 40 of any particular block can consist of text, image, graphics or combinations thereof. Content objects and their associated attributes are mapped into blocks 38 during pagination. A key feature of the invention is its ability to present the viewer with a logical document or a physical (layout) document. In the former case, the user may view the content and logical divisions of the publication. Moreover, the combination of named objects and full-text searching in the DBMS permits collection of material that is thematically related, or related in some other way (such as by author or the presence of a particular attribute) . In the latter case, the physical appearance of the newspaper in its current stage of layout may be viewed. The logical view might be important to a writer editing the text of a story or group of related stories, while artists designing the magazine section would be more interested in the layout view. This feature arises naturally from the organization of the document into logical and layout data structures, which are managed through a DBMS. The user or application program interacts with the DBMS to obtain the appropriate content and layout objects, which ar.e interpreted by the input/output system and transformed into visual output.
The most general logical object is the logical root, which is the source of all logical divisions within the document. The logical root contains the following attributes:
1. Object Type Specification (object properties)
2. Descriptor Body a. Object identifier b. Subordinate object list c. Presentation attributes d. User-readable comments (can also be read by application program if appropriately configured) e. Bindings (names of bound computational procedures) f. User-visible name g. Presentation style h. Layout style i. Property attributes j . Version Attributes k. Management status attributes 1. Lock Definition m. Layout directives Presentation attributes for the logical root include generalized formatting parameters that affect all document versions. Version attributes specify special characteristics associated with the different versions of the newspaper. Basic management status attributes indicate whether the object is defined, and if so whether the object is complete or incomplete.
However, the user can define additional attributes in order to specify procedural status conditions necessary for access. The lock definition determines access privileges directly, and may be turned on or off by an application program that has been configured to respond to user-specified management status attributes .
All other logical objects (with the exception of content objects, as discussed below) contain a similar structure; however, the presentation attributes describe visual appearance with greater specificit :
1. Type of Coding (text, image or graphics)
2. Character Attributes (for text content, describe characteristics of each character [e.g. graphic rendition, font] and spacing among characters)
3. Word Attributes (spacing, justification, hyphenation, kerning)
4. Image Attributes (resolution, antialiasing, etc.) 5. Graphics Attributes (color and rendition values)
6. Background Color
7. Foreground Color
8. Color Model 9. Color Table (set of values used to compensate for special color characteristics associated with input or output device)
10. Grid Align (for layout objects)
11. Embedded (dummy) Representation 12. External Reference (for content objects, filename or memory address of content)
A content object can consist of text, image or graphic content, as well as combinations thereof. For example, a story may contain body text, a headline and associated photographs. Content can be entered into the system by keyboard terminals, telecommunication links, direct scanning or other external sources. Content objects contain data similar to other content objects, with certain exceptions. First, no subordinate object attribute is included. Second, content may be inserted into the content-object data structure itself, or specified by a filename or memory address corresponding to the content. Third, the presentation attributes determine appearance with greatest specificity; just how much more specific these presentation attributes will be as compared to those associated with more general objects depends on the publishing environment and user choice.
Logical pages are typically resolved into physical pages only when a sufficient amount of the content is known, and defined only when they are necessary to place material. A content object may be linked to a particular logical page or section by designating that content object as a subordinate object. If content is directed only to sections (i.e., content objects are linked directly to sections rather than to logical pages or page positions), no logical pages or page position objects will be necessary, and pagination will be largely unconstrained by logical organization. Alternatively, frequent use of page position objects that specify content will largely determine pagination. As a loosely defined locational attribute (e.g. upper-right) of a content object, a page position provides only general guidance to a layout object regarding the content of that location; however, page positions may also be described in absolute coordinates, which would thereby specify layout. The user can also insert of placement information into the layout directive attribute of a content object (instead of creating a specific page position object) to direct pagination, with appropriate configuration of the Document Manager, priority values can be verification purposes) g. outside bleed margin h. Inside bleed margin i. Top bleed margin j . Bottom bleed margin k. Number of news columns 1. Width of news columns m. Gutter widths n. Number of classified ad columns (if any) o. Width of classified ad column p. Number of retail ad columns q. Width of retail ad column r. Vertical text grid spacing 7. Bindings
Pages are also broken down into discrete rectangular areas called frame objects, which are themselves composed of rectangular block objects. Frame and block objects may be rotated by one degree increments within the areas defined by .the superior objects. Frames and blocks may also extend beyond page boundaries in order to permit imaging content over multiple pages. Frame and block objects contain attributes similar to page objects, with the following additions:
1. Position (in page coordinates, relative to page origin)
2. Dimensions
3. User-readable comments 4. Bindings
5. Rotation angle
6. User-visible name
7. Color Model
8. Border characteristics 9. Rotation angle
10. Scaling factor
The input/output system accepts these parameters and performs the actual operations as it prepares the content for output. . If an area of the frame lies outside the superior object's defined area, that outlying area will be clipped by the input/output system. Blocks can overlay each other and may be scaled. If an area of the block lies outside a superior object's defined area, that outlying area will be clipped. c) Pagination
The newspaper is most advantageously composed in a manner that allows gradual definition of its contents, followed by a definition of its layout, followed by interactive stages of redefinition of both content and layout until a version of the paper is imaged. Interaction may take place on a distributed basis, and may be accomplished manually or by means of support software, i.e. a Document Manager. Although pagination may be accomplished by numerous different means, any implementation must balance the following set of constraints: (1) organization of layout objects, to the extent specified; (2) existing layout objects that have already been assigned content; (3) the hierarchy of logical objects specifying various content objects; and (4) the size of content objects, which may individually or collectively exceed the logical locations to which they have been assigned. The terms and expressions which have been employed are used as terms of description and not of limitation, and there is no intention, in the use of such terms and expressions, of excluding any equivalents of the features shown and described or portions thereof, but it is recognized that various modifications are possible within the scope of the invention claimed.

Claims

WHAT IS CLAIMED:
1. A document management and production system capable of representing a plurality of documents as discrete components, said system comprising: a) a storage unit comprising a plurality of data locations; b) means for storing in said locations, for each document, i) a plurality of hierarchically related logical component data structures each of which specifies attributes and/or content of a logical component of the document and/or at least one designation of a subordinate logical component data structure of the document; and ii) a plurality of hierarchically related layout component data structures each of which specifies attributes and/or content of a layout component of the document and/or at least one designation of a subordinate layout component data structure of the document; and c) means for retrieving and modifying the components of said data structures according to the hierarchical relationships specified therein.
2. The document management and production system of claim 1 wherein a plurality of said data structures can specify the same content by specifying the identical logical component data structure which itself specifies that content.
3. A document management and production system capable of representing a plurality of documents as discrete components, said system comprising: a) a storage unit comprising a plurality of data locations; b) means for storing in said locations, for each document, i) a plurality of hierarchically related logical component data structures each of which specifies attributes and/or content of a logical component of the document and/or at least one designation of a subordinate logical component data structure of the document, whereby said designation results in inheritance of any attributes of the specifying logical component data structure by the subordinate logical component data structure; and
(ii) a plurality of hierarchically related layout component data structures each of which specifies attributes and/or content of a layout component of the document and/or at least one designation of a subordinate layout component data structure of the document, whereby said designation results in inheritance of any attributes of the specifying layout component data structure by the subordinate layout component data structure; and c) means for retrieving and modifying the components of said data structures according to the hierarchical relationships specified therein.
4. The document management and production system of claim 1 wherein said attributes specify the appearance of the content associated with said data structure.
5. The document management and production system of claim 4 wherein said attributes further specify access restrictions associated with said data structure and/or the content associated therewith.
6. The document management and production system of claim 1 wherein said attributes further indicate the location of executable computer code.
7. The document management and production system of claim 1 wherein said logical component data structure attributes specify location and position within the document, thereby facilitating mapping of logical component data structures that specify content to layout component data structures.
8. The document management and production system of claim 1 wherein said logical document components comprise logical sections and pages.
9. The document management and production system of claim 8 further comprising logical page positions.
10. The document management and production system of claim 9 further comprising a logical root, logical stories and logical advertisements.
11. The document management and production system of claim 8 further comprising content elements.
12. The document management and production system of claim 11 wherein said content elements comprise story elements, advertisement elements, folios and jump boxes.
13. The document management and production system of claim 1 wherein said layout document components comprise page sets and pages.
14. The document management and production system of claim 13 further comprising frames and blocks.
15. The document management and production system of claim 14 further comprising a layout root, an ad stack, a newshole, folios, jump boxes and page furniture.
16. The document management and production system of claim 3 wherein said attributes and relationships are specified by means of first and second tables, said first table relating data structures to associated attributes and said second table establishing relationships among objects.
17. The document management and production system of claim 1 wherein said processor means perfor s said storing, retrieving and modifying operations by executing object-oriented commands in conjunction with a relational database.
18. The document management and production system of claim 17 wherein said object-oriented commands include memory allocation and deallocation functions related to object retrieval.
19. The document-management and production system of claim 18 wherein said object-oriented commands further include page assembly functions that encapsulate page-related objects and associated output routines .
20. The document management and production system of claim 19 wherein said object-oriented commands further include output monitoring functions that create and update data structures that specify the current status of the set of display or output instructions that describe the document to the extent paginated.
PCT/US1990/006827 1989-12-06 1990-11-28 Document management and production system WO1991008538A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP91501513A JPH04503881A (en) 1989-12-06 1990-11-28 Document management and creation system

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US446,937 1989-12-06
US07/446,937 US5181162A (en) 1989-12-06 1989-12-06 Document management and production system

Publications (1)

Publication Number Publication Date
WO1991008538A1 true WO1991008538A1 (en) 1991-06-13

Family

ID=23774375

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US1990/006827 WO1991008538A1 (en) 1989-12-06 1990-11-28 Document management and production system

Country Status (4)

Country Link
US (1) US5181162A (en)
EP (1) EP0462242A1 (en)
JP (1) JPH04503881A (en)
WO (1) WO1991008538A1 (en)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0524072A1 (en) * 1991-07-17 1993-01-20 Bull S.A. Method for page layout of structured documents
EP0635794A2 (en) * 1993-07-20 1995-01-25 Canon Kabushiki Kaisha Document processing apparatus and method
US5475805A (en) * 1991-08-09 1995-12-12 Fuji Xerox Co., Inc. Layout and display of structured document having embedded elements
NL1000701C2 (en) * 1995-06-30 1996-12-31 Oce Nederland Bv Device and method for extracting articles from a document.
EP0770963A3 (en) * 1995-10-19 1998-04-15 Fuji Xerox Co., Ltd. Structured data and document processing apparatus and method
WO2002025483A1 (en) * 2000-09-22 2002-03-28 Vizion Factory E-Learning A/S Electronic document system
EP2024865A2 (en) * 2006-04-21 2009-02-18 Omega Blue, Inc. Automatic authoring and publishing system
US8245133B2 (en) 2005-04-21 2012-08-14 Prototype Industries, Inc. Automatic authoring and publishing
US20230014904A1 (en) * 2021-07-16 2023-01-19 SparkCognition, Inc. Searchable data structure for electronic documents

Families Citing this family (453)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5557515A (en) * 1989-08-11 1996-09-17 Hartford Fire Insurance Company, Inc. Computerized system and method for work management
JP2745794B2 (en) * 1990-08-24 1998-04-28 富士ゼロックス株式会社 Document processing device
US5434962A (en) * 1990-09-07 1995-07-18 Fuji Xerox Co., Ltd. Method and system for automatically generating logical structures of electronic documents
US5247661A (en) * 1990-09-10 1993-09-21 International Business Machines Corporation Method and apparatus for automated document distribution in a data processing system
US5276869A (en) * 1990-09-10 1994-01-04 International Business Machines Corporation System for selecting document recipients as determined by technical content of document and for electronically corroborating receipt of document
US5295256A (en) * 1990-12-14 1994-03-15 Racal-Datacom, Inc. Automatic storage of persistent objects in a relational schema
US5291583A (en) * 1990-12-14 1994-03-01 Racal-Datacom, Inc. Automatic storage of persistent ASN.1 objects in a relational schema
JPH0783412B2 (en) * 1991-02-12 1995-09-06 富士ゼロックス株式会社 Recording device management system
US5390354A (en) * 1991-03-15 1995-02-14 Itt Corporation Computerized directory pagination system and method
US5455903A (en) * 1991-05-31 1995-10-03 Edify Corp. Object oriented customer information exchange system and method
JPH0511682A (en) * 1991-07-04 1993-01-22 Matsushita Electric Ind Co Ltd Learning device
CA2048039A1 (en) * 1991-07-19 1993-01-20 Steven Derose Data processing system and method for generating a representation for and random access rendering of electronic documents
US5241624A (en) * 1991-10-03 1993-08-31 International Business Machines Corporation Method for determining a user selected group of data objects for the propagation of attribute values
US5388255A (en) * 1991-12-19 1995-02-07 Wang Laboratories, Inc. System for updating local views from a global database using time stamps to determine when a change has occurred
JPH05197734A (en) * 1992-01-17 1993-08-06 Mitsui Eng & Shipbuild Co Ltd Data processing system
US5459739A (en) * 1992-03-18 1995-10-17 Oclc Online Computer Library Center, Incorporated Merging three optical character recognition outputs for improved precision using a minimum edit distance function
JP3666888B2 (en) * 1992-04-29 2005-06-29 キヤノン株式会社 Color processing apparatus and method
US5499329A (en) * 1992-04-30 1996-03-12 Ricoh Company, Ltd. Method and system to handle context of interpretation in a document processing language
JPH0812632B2 (en) * 1992-04-30 1996-02-07 インターナショナル・ビジネス・マシーンズ・コーポレイション Information system and information method
US5448691A (en) * 1992-04-30 1995-09-05 Ricoh Company, Ltd. Method and apparatus for processing page selection in a document processing language
US7735003B1 (en) 1992-07-15 2010-06-08 Apple Inc. Computer system integrating different data types into single environment
US6154756A (en) * 1992-07-15 2000-11-28 Apple Computer, Inc. Computer system integrating different data types into a single environment
JPH0652161A (en) * 1992-08-03 1994-02-25 Fuji Xerox Co Ltd Method and device for processing document
GB2270242A (en) * 1992-08-29 1994-03-02 Ibm A method of editing for an object oriented computer system
US6005560A (en) * 1992-10-01 1999-12-21 Quark, Inc. Multi-media project management and control system
AU5294293A (en) * 1992-10-01 1994-04-26 Quark, Inc. Publication system management and coordination
JPH06236367A (en) * 1992-11-12 1994-08-23 Ricoh Co Ltd Control method for word processor
US5511196A (en) * 1992-11-17 1996-04-23 International Business Machines Corporation Method and system in a data processing system for the enhancement of relationships between reference objects in an object oriented environment and a data object outside an object oriented environment
FR2698977B1 (en) * 1992-12-03 1994-12-30 Alsthom Cge Alcatel Multimedia information system.
US5530864A (en) * 1992-12-23 1996-06-25 Taligent Command object system for an object-oriented software platform
US5550563A (en) * 1992-12-23 1996-08-27 Taligent, Inc. Interaction framework system
US5434965A (en) * 1992-12-23 1995-07-18 Taligent, Inc. Balloon help system
US5315703A (en) * 1992-12-23 1994-05-24 Taligent, Inc. Object-oriented notification framework system
US5551055A (en) * 1992-12-23 1996-08-27 Taligent, Inc. System for providing locale dependent user interface for presenting control graphic which has different contents or same contents displayed in a predetermined order
WO1994015286A1 (en) * 1992-12-23 1994-07-07 Taligent, Inc. Object oriented framework system
US6259446B1 (en) 1992-12-23 2001-07-10 Object Technology Licensing Corporation Menu state system
US5390325A (en) * 1992-12-23 1995-02-14 Taligent, Inc. Automated testing system
CA2147380C (en) * 1992-12-23 2000-07-18 Object Technology Licensing Corporation Atomic command system
US5579223A (en) * 1992-12-24 1996-11-26 Microsoft Corporation Method and system for incorporating modifications made to a computer program into a translated version of the computer program
US5649131A (en) * 1992-12-30 1997-07-15 Lucent Technologies Inc. Communications protocol
WO1994017481A1 (en) * 1993-01-22 1994-08-04 Taligent, Inc. Business card system
AU6081994A (en) * 1993-01-22 1994-08-15 Taligent, Inc. Flexible system
US5394523A (en) * 1993-01-22 1995-02-28 Taligent, Inc. Polymorphic graphic device
CA2135522A1 (en) * 1993-01-22 1994-08-04 Object Technology Licensing Corporation Flexible network system
US5428718A (en) * 1993-01-22 1995-06-27 Taligent, Inc. Tessellation system
US5479487A (en) * 1993-02-11 1995-12-26 Intervoice Limited Partnership Calling center employing unified control system
US5519862A (en) * 1993-02-26 1996-05-21 Taligent, Inc. Concurrent processing apparatus with incremental command objects
JPH08509824A (en) * 1993-02-26 1996-10-15 タリジェント インコーポレイテッド Collaborative work system
JPH06250895A (en) * 1993-02-26 1994-09-09 Fujitsu Ltd Structured data base system
US5848184A (en) * 1993-03-15 1998-12-08 Unisys Corporation Document page analyzer and method
US5369766A (en) * 1993-03-25 1994-11-29 Taligent, Inc. Object-oriented loader system with support for different load formats
CA2135517A1 (en) * 1993-03-25 1994-09-29 Patrick Delaney Ross Multi-level interrupt system
US5485373A (en) * 1993-03-25 1996-01-16 Taligent, Inc. Language-sensitive text searching system with modified Boyer-Moore process
US7043407B2 (en) * 1997-03-10 2006-05-09 Trilogy Development Group, Inc. Method and apparatus for configuring systems
US5459865A (en) * 1993-04-05 1995-10-17 Taligent Inc. Runtime loader
WO1994023379A1 (en) * 1993-04-05 1994-10-13 Taligent, Inc. Font selection system
AU5989494A (en) * 1993-04-05 1994-10-24 Taligent, Inc. Text input font system
US6496793B1 (en) * 1993-04-21 2002-12-17 Borland Software Corporation System and methods for national language support with embedded locale-specific language driver identifiers
AU6018694A (en) * 1993-04-26 1994-11-21 Taligent, Inc. Text transliteration system
US5432948A (en) * 1993-04-26 1995-07-11 Taligent, Inc. Object-oriented rule-based text input transliteration system
US5832220A (en) * 1993-04-30 1998-11-03 International Business Machines Corp. Automatic settting of an acknowledgement option based upon distribution content in a data processing system
US5812862A (en) * 1993-05-10 1998-09-22 Apple Computer, Inc. Computer-human interface system for compound documents
WO1994027229A1 (en) * 1993-05-10 1994-11-24 Apple Computer, Inc. Computer-human interface system which manipulates parts between a desktop and a document
WO1994027228A1 (en) * 1993-05-10 1994-11-24 Apple Computer, Inc. System for automatically determining the status of contents added to a document
CN1113395A (en) * 1993-06-03 1995-12-13 塔里根特公司 Place object display system
WO1994029803A1 (en) * 1993-06-03 1994-12-22 Taligent, Inc. Place object system
US5544302A (en) * 1993-06-03 1996-08-06 Taligent, Inc. Object-oriented framework for creating and using container objects with built-in properties
US5524190A (en) * 1993-06-04 1996-06-04 Taligent, Inc. Command object logging system for restoring documents
US5542002A (en) * 1993-06-11 1996-07-30 Western Litho Plate & Supply Co. Method and apparatus for automatically inspecting a lithographic plate and reading its folio
US5471568A (en) * 1993-06-30 1995-11-28 Taligent, Inc. Object-oriented apparatus and method for scan line conversion of graphic edges
US5487145A (en) * 1993-07-09 1996-01-23 Taligent, Inc. Method and apparatus for compositing display items which minimizes locked drawing areas
US5455951A (en) * 1993-07-19 1995-10-03 Taligent, Inc. Method and apparatus for running an object-oriented program on a host computer with a procedural operating system
US6684261B1 (en) 1993-07-19 2004-01-27 Object Technology Licensing Corporation Object-oriented operating system
US5404529A (en) * 1993-07-19 1995-04-04 Taligent, Inc. Object-oriented interprocess communication system interface for a procedural operating system
CA2155357C (en) * 1993-07-19 2001-12-18 David R. Anderson Dynamic linking system
US5519867A (en) * 1993-07-19 1996-05-21 Taligent, Inc. Object-oriented multitasking system
US5379432A (en) * 1993-07-19 1995-01-03 Taligent, Inc. Object-oriented interface for a procedural operating system
US5473777A (en) * 1993-07-19 1995-12-05 Moeller; Christopher P. Wrapper for enabling an object otented application to maintain virtual memory using procedural function calls
JPH0744535A (en) * 1993-07-27 1995-02-14 Matsushita Electric Ind Co Ltd Document processing device
US5471675A (en) * 1993-07-27 1995-11-28 Taligent, Inc. Object oriented video framework system
CA2147847C (en) * 1993-07-27 2002-06-11 John Peterson Object-oriented rendering system
US5396626A (en) * 1993-08-04 1995-03-07 Taligent, Inc. Object-oriented locator system
US5479589A (en) * 1993-08-04 1995-12-26 Taligent, Inc. Object-oriented system for selecting a graphic image on a display
US5379430A (en) * 1993-08-04 1995-01-03 Taligent, Inc. Object-oriented system locator system
US5621434A (en) * 1993-08-11 1997-04-15 Object Technology Licensing Corp. Cursor manipulation system and method
US5586236A (en) * 1993-08-11 1996-12-17 Object Technology Licensing Corp. Universal color look up table and method of generation
US5566278A (en) * 1993-08-24 1996-10-15 Taligent, Inc. Object oriented printing system
US5481666A (en) * 1993-08-25 1996-01-02 Taligent, Inc. Object-oriented navigation system
US5500929A (en) * 1993-08-30 1996-03-19 Taligent, Inc. System for browsing a network resource book with tabs attached to pages
US5428744A (en) * 1993-08-30 1995-06-27 Taligent, Inc. Object-oriented system for building a graphic image on a display
US5453933A (en) * 1993-09-08 1995-09-26 Hurco Companies, Inc. CNC control system
US5504887A (en) * 1993-09-10 1996-04-02 International Business Machines Corporation Storage clustering and packing of objects on the basis of query workload ranking
WO1995008147A1 (en) * 1993-09-13 1995-03-23 Taligent, Inc. Object-oriented audio record/playback system
US5388264A (en) * 1993-09-13 1995-02-07 Taligent, Inc. Object oriented framework system for routing, editing, and synchronizing MIDI multimedia information using graphically represented connection object
US5511002A (en) * 1993-09-13 1996-04-23 Taligent, Inc. Multimedia player component object system
WO1995008148A1 (en) * 1993-09-13 1995-03-23 Taligent, Inc. Multimedia data routing system
US5390138A (en) * 1993-09-13 1995-02-14 Taligent, Inc. Object-oriented audio system
AU6121094A (en) 1993-09-13 1995-04-03 Taligent, Inc. Object-oriented video system
US5553217A (en) * 1993-09-23 1996-09-03 Ricoh Company, Ltd. Document layout using tiling
US5485568A (en) * 1993-10-08 1996-01-16 Xerox Corporation Structured image (Sl) format for describing complex color raster images
US5583977A (en) * 1993-10-21 1996-12-10 Taligent, Inc. Object-oriented curve manipulation system
US5438512A (en) * 1993-10-22 1995-08-01 Xerox Corporation Method and apparatus for specifying layout processing of structured documents
US5522025A (en) * 1993-10-25 1996-05-28 Taligent, Inc. Object-oriented window area display system
US5455854A (en) * 1993-10-26 1995-10-03 Taligent, Inc. Object-oriented telephony system
DE69403664T2 (en) * 1993-10-29 1998-01-02 Taligent Inc GRAPHIC EDITOR TRADE SYSTEM
EP0727076B1 (en) * 1993-11-02 1997-10-22 Taligent, Inc. Object-oriented graphic system and method
US5428722A (en) * 1993-11-05 1995-06-27 Taligent, Inc. Object-oriented painter maker
US6040838A (en) * 1993-11-05 2000-03-21 Obejct Technology Licensing Corporation Graphic state processing
US5537526A (en) * 1993-11-12 1996-07-16 Taugent, Inc. Method and apparatus for processing a display document utilizing a system level document framework
WO1995015524A1 (en) * 1993-12-02 1995-06-08 Taligent, Inc. Method and apparatus for displaying hardware dependent graphics in an object-oriented operating system
US5530799A (en) * 1993-12-17 1996-06-25 Taligent Inc. Rendering cache in an object oriented system
US5548726A (en) * 1993-12-17 1996-08-20 Taligeni, Inc. System for activating new service in client server network by reconfiguring the multilayer network protocol stack dynamically within the server node
AU6702594A (en) 1993-12-17 1995-07-03 Taligent, Inc. Object-oriented distributed communications directory service
US5499343A (en) * 1993-12-17 1996-03-12 Taligent, Inc. Object-oriented networking system with dynamically configurable communication links
US5594921A (en) * 1993-12-17 1997-01-14 Object Technology Licensing Corp. Authentication of users with dynamically configurable protocol stack
US5515508A (en) * 1993-12-17 1996-05-07 Taligent, Inc. Client server system and method of operation including a dynamically configurable protocol stack
US5548723A (en) * 1993-12-17 1996-08-20 Taligent, Inc. Object-oriented network protocol configuration system utilizing a dynamically configurable protocol stack
US5491800A (en) * 1993-12-20 1996-02-13 Taligent, Inc. Object-oriented remote procedure call networking system
WO1995017714A1 (en) * 1993-12-21 1995-06-29 Taligent, Inc. Automatic hardware configuration
US5546595A (en) * 1993-12-21 1996-08-13 Taligent, Inc. Object-oriented system using objects representing hardware devices, physical connectors and connections between the physical connectors for configuring a computer
US5680624A (en) * 1993-12-21 1997-10-21 Object Licensing Corporation Object oriented interrupt system
US5548779A (en) * 1993-12-21 1996-08-20 Taligent System for providing system services for a device to a client using stack definition and stack description of a stack having top, intermediate, and bottom service objects
US5566346A (en) * 1993-12-21 1996-10-15 Taligent, Inc. System for constructing hardware device interface software systems independent of operating systems including capability of installing and removing interrupt handlers
US5574915A (en) * 1993-12-21 1996-11-12 Taligent Object-oriented booting framework
US5371884A (en) * 1993-12-21 1994-12-06 Taligent, Inc. Processor fault recovery system
AU7511794A (en) * 1993-12-22 1995-07-10 Taligent, Inc. Input methods framework
US5524200A (en) * 1993-12-30 1996-06-04 Taligent, Inc. Object-oriented non-rectilinear viewing framework
US5555368A (en) * 1993-12-30 1996-09-10 Taligent Object-oriented multi-tasking view framework
US5465362A (en) * 1993-12-30 1995-11-07 Taligent, Inc. Object-oriented view-system for displaying information in a windowing environment
US5615326A (en) * 1993-12-30 1997-03-25 Taligent, Inc. Object-oriented viewing framework having view grouping
US5544301A (en) * 1993-12-30 1996-08-06 Taligent, Inc. Object-oriented view layout system
AU7872494A (en) * 1993-12-30 1995-07-17 Taligent, Inc. Object-oriented view coordinate space system
US5524199A (en) * 1993-12-30 1996-06-04 Taligent Object-oriented view system with background processing of update request
WO1995018413A1 (en) * 1993-12-30 1995-07-06 Taligent, Inc. Object-oriented view hierarchy framework
US5832219A (en) 1994-02-08 1998-11-03 Object Technology Licensing Corp. Distributed object networking service
US5764973A (en) * 1994-02-08 1998-06-09 Enterworks.Com, Inc. System for generating structured query language statements and integrating legacy systems
US5787440A (en) * 1994-03-10 1998-07-28 Crossties Software Corp. Object oriented architecture with bidirectional linking of relationships between objects
JPH09510567A (en) * 1994-03-21 1997-10-21 オブジェクト テクノロジー ライセンシング コーポレイション Document proxy framework
US5664183A (en) * 1994-04-19 1997-09-02 International Business Machines Corporation Application of groupware to ISO 9000 registration via facilitated work sessions
EP0702309A1 (en) 1994-06-24 1996-03-20 Aarhuus Stiftsbogtrykkerie S.M.B.A. A computerized image displaying system, a data carrying medium for use in a computerized displaying system, and a method of displaying images
US5680563A (en) * 1994-07-25 1997-10-21 Object Technology Licensing Corporation Object-oriented operating system enhancement for filtering items in a window
US5715381A (en) * 1994-08-08 1998-02-03 Xerox Corporation Method of creating and managing packages, including multiple documents, in a printing system
JP3534331B2 (en) * 1994-08-09 2004-06-07 ゼロックス コーポレイション How to build multi-segment print jobs from a variety of local and remote sources using a network interface
US5912666A (en) * 1994-08-23 1999-06-15 Object Technology Licensing Corp. Object-oriented global cursor tool
US5504892A (en) * 1994-09-08 1996-04-02 Taligent, Inc. Extensible object-oriented file system
US5519818A (en) * 1994-09-19 1996-05-21 Taligent, Inc. Object-oriented graphic picking system
US5678039A (en) * 1994-09-30 1997-10-14 Borland International, Inc. System and methods for translating software into localized versions
US5655130A (en) * 1994-10-14 1997-08-05 Unisys Corporation Method and apparatus for document production using a common document database
EP0707248A1 (en) * 1994-10-14 1996-04-17 Siemens Aktiengesellschaft Method for activating or deactivating parts of a program by means of views, controlled by program attributes, preferably for automation systems based on state graphs
US5619708A (en) * 1994-10-25 1997-04-08 Korteam International, Inc. System and method for generating database input forms
CA2202614A1 (en) * 1994-10-25 1996-05-02 Taligent, Inc. Object-oriented system for servicing windows
US5628004A (en) * 1994-11-04 1997-05-06 Optima Direct, Inc. System for managing database of communication of recipients
US5666503A (en) * 1994-11-14 1997-09-09 Xerox Corporation Structured image (SI) image editor and method for editing structured images
US5652884A (en) * 1994-11-14 1997-07-29 Object Technology Licensing Corp. Method and apparatus for dynamic update of an existing object in an object editor
US5630131A (en) * 1994-11-14 1997-05-13 Object Technology Licensing Corp. Method and apparatus for importing and exporting archive files for a graphical user interface
US5613122A (en) * 1994-11-14 1997-03-18 Object Technology Licensing Corp. Object-oriented operating system
US5845303A (en) * 1994-12-06 1998-12-01 Netpodium, Inc. Document processing using frame-based templates with hierarchical tagging
US5553282A (en) * 1994-12-09 1996-09-03 Taligent, Inc. Software project history database and method of operation
US5752245A (en) * 1994-12-09 1998-05-12 Object Technology Licensing Corporation Object-oriented system for configuration history management with a project workspace and project history database for draft identification
US5659735A (en) * 1994-12-09 1997-08-19 Object Technology Licensing Corp. Object-oriented system for program version and history database management system for various program components
DE19549870B4 (en) * 1994-12-22 2010-06-17 Apple Inc., Cupertino Creating representation of scene for display on graphical output - invoking object drawing sub-system with identification of object stored in memory, and identification of renderer for use in drawing object into scene
DE19549849B4 (en) * 1994-12-22 2008-09-04 Apple Inc., Cupertino Creating representation of scene for display on graphical output - invoking object drawing sub-system with identification of object stored in memory, and identification of renderer for use in drawing object into scene
AU4471496A (en) * 1994-12-22 1996-07-10 Apple Computer, Inc. Three-dimensional graphics rendering system
US6243172B1 (en) * 1995-01-18 2001-06-05 Varis Corporation Method and system for merging variable text and images into bitmaps defined by a page description language
US5729665A (en) * 1995-01-18 1998-03-17 Varis Corporation Method of utilizing variable data fields with a page description language
JPH08249317A (en) * 1995-03-08 1996-09-27 Toshiba Corp Document providing method, document providing device, and document requesting device
JPH11504451A (en) 1995-04-24 1999-04-20 アスペクト・ディベロップメント・インコーポレイテッド Modeling objects suitable for database structures, translating into relational database structures, and performing fluid searches on them
US5734883A (en) 1995-04-27 1998-03-31 Michael Umen & Co., Inc. Drug document production system
US5740455A (en) * 1995-05-16 1998-04-14 Apple Computer, Inc. Enhanced compound document processing architectures and methods therefor
US5664208A (en) * 1995-05-16 1997-09-02 Apple Computer, Inc. Methods and apparatuses for seamless compound document processing
US5953733A (en) * 1995-06-22 1999-09-14 Cybergraphic Systems Ltd. Electronic publishing system
US5713045A (en) * 1995-06-29 1998-01-27 Object Technology Licensing Corporation System for processing user events with input device entity associated with event producer which further links communication from event consumer to the event producer
US5860073A (en) * 1995-07-17 1999-01-12 Microsoft Corporation Style sheets for publishing system
US6199082B1 (en) * 1995-07-17 2001-03-06 Microsoft Corporation Method for delivering separate design and content in a multimedia publishing system
US5701170A (en) * 1995-07-27 1997-12-23 Western Litho Plate & Supply Co. System for automatically exposing and labeling a plurality of lithographic plates
US6449660B1 (en) 1995-07-31 2002-09-10 International Business Machines Corporation Object-oriented I/O device interface framework mechanism
US5813020A (en) * 1995-07-31 1998-09-22 International Business Machines Corporation Method and system for dynamic presentation parameter override during document interchange
US5717922A (en) * 1995-07-31 1998-02-10 International Business Machines Corporation Method and system for management of logical links between document elements during document interchange
US6112253A (en) * 1995-10-12 2000-08-29 International Business Machines Corporation Object-oriented method maintenance mechanism that does not require cessation of the computer system or its programs
US5754841A (en) * 1995-10-20 1998-05-19 Ncr Corporation Method and apparatus for parallel execution of user-defined functions in an object-relational database management system
US5794250A (en) * 1995-10-20 1998-08-11 Ncr Corporation Method and apparatus for extending existing database management system for new data types
US6085223A (en) * 1995-10-20 2000-07-04 Ncr Corporation Method and apparatus for providing database information to non-requesting clients
US5930786A (en) 1995-10-20 1999-07-27 Ncr Corporation Method and apparatus for providing shared data to a requesting client
US5864843A (en) * 1995-10-20 1999-01-26 Ncr Corporation Method and apparatus for extending a database management system to operate with diverse object servers
US5689698A (en) * 1995-10-20 1997-11-18 Ncr Corporation Method and apparatus for managing shared data using a data surrogate and obtaining cost parameters from a data dictionary by evaluating a parse tree object
US6546406B1 (en) 1995-11-03 2003-04-08 Enigma Information Systems Ltd. Client-server computer system for large document retrieval on networked computer system
US5740362A (en) * 1995-11-06 1998-04-14 International Business Machines Corporation Management of network distributed agents in a distributed computing environment
US5787245A (en) * 1995-11-13 1998-07-28 Object Technology Licensing Corporation Portable debugging service utilizing a client debugger object and a server debugger object
US5778230A (en) * 1995-11-13 1998-07-07 Object Technology Licensing Corp. Goal directed object-oriented debugging system
US5812850A (en) * 1995-11-13 1998-09-22 Object Technology Licensing Corp. Object-oriented symbolic debugger using a compiler driven database and state modeling to control program execution
US5815653A (en) * 1995-11-13 1998-09-29 You; Lawrence L. Debugging system with portable debug environment-independent client and non-portable platform-specific server
US6158045A (en) * 1995-11-13 2000-12-05 Object Technology Licensing Corporation Portable debugging services utilizing a client debugger object and a server debugger object with flexible addressing support
US5956479A (en) * 1995-11-13 1999-09-21 Object Technology Licensing Corporation Demand based generation of symbolic information
US6298476B1 (en) 1995-12-04 2001-10-02 International Business Machines Corporation Object oriented software build framework mechanism
US5790132A (en) * 1995-12-07 1998-08-04 Object Technology Licensing Corp. Image rendering system with extensible mechanism for providing visual user feedback when an image graphic is selected
US5768505A (en) * 1995-12-19 1998-06-16 International Business Machines Corporation Object oriented mail server framework mechanism
US5822580A (en) * 1996-01-19 1998-10-13 Object Technology Licensing Corp. Object oriented programming based global registry system, method, and article of manufacture
US6144967A (en) * 1996-01-25 2000-11-07 International Business Machines Corporation Object oriented processing log analysis tool framework mechanism
JP3622313B2 (en) * 1996-01-29 2005-02-23 株式会社日立製作所 Document management system
US6173286B1 (en) * 1996-02-29 2001-01-09 Nth Degree Software, Inc. Computer-implemented optimization of publication layouts
US6167409A (en) * 1996-03-01 2000-12-26 Enigma Information Systems Ltd. Computer system and method for customizing context information sent with document fragments across a computer network
US6016498A (en) * 1996-03-04 2000-01-18 Bakke; Stephen Peter Object oriented architecture with bidirectional linking of relationships between objects
US5893109A (en) * 1996-03-15 1999-04-06 Inso Providence Corporation Generation of chunks of a long document for an electronic book system
US6006239A (en) * 1996-03-15 1999-12-21 Microsoft Corporation Method and system for allowing multiple users to simultaneously edit a spreadsheet
US6785690B1 (en) * 1996-03-18 2004-08-31 Hewlett-Packard Development Company, L.P. Method and system for storage, retrieval, and query of objects in a schemeless database
US5805796A (en) * 1996-03-27 1998-09-08 Dell Usa, Lp System architecture for implementing modular diagnostics
US6003007A (en) 1996-03-28 1999-12-14 Dirienzo; Andrew L. Attachment integrated claims system and operating method therefor
US9619841B2 (en) 1996-03-28 2017-04-11 Integrated Claims Systems, Llc Systems to assist in the creation, transmission, and processing of health insurance claims
US6434739B1 (en) 1996-04-22 2002-08-13 International Business Machines Corporation Object oriented framework mechanism for multi-target source code processing
US6081798A (en) * 1996-04-24 2000-06-27 International Business Machines Corp. Object oriented case-based reasoning framework mechanism
US5778378A (en) * 1996-04-30 1998-07-07 International Business Machines Corporation Object oriented information retrieval framework mechanism
JP3601183B2 (en) * 1996-05-14 2004-12-15 富士ゼロックス株式会社 Structured document processing device, structured document processing method, database system
JP3605941B2 (en) * 1996-05-20 2004-12-22 富士ゼロックス株式会社 Document structure creation device and document structure creation method
US5877768A (en) 1996-06-19 1999-03-02 Object Technology Licensing Corp. Method and system using a sorting table to order 2D shapes and 2D projections of 3D shapes for rendering a composite drawing
US6091408A (en) * 1997-08-13 2000-07-18 Z-Axis Corporation Method for presenting information units on multiple presentation units
US5915252A (en) * 1996-09-30 1999-06-22 International Business Machines Corporation Object oriented framework mechanism for data transfer between a data source and a data target
US6029182A (en) * 1996-10-04 2000-02-22 Canon Information Systems, Inc. System for generating a custom formatted hypertext document by using a personal profile to retrieve hierarchical documents
US6104874A (en) * 1996-10-15 2000-08-15 International Business Machines Corporation Object oriented framework mechanism for order processing including pre-defined extensible classes for defining an order processing environment
US5937189A (en) * 1996-11-12 1999-08-10 International Business Machines Corporation Object oriented framework mechanism for determining configuration relations
US5740279A (en) * 1996-11-26 1998-04-14 Xerox Corporation Cluster dot halftoning system
US5970498A (en) * 1996-12-06 1999-10-19 International Business Machines Corporation Object oriented framework mechanism for metering objects
US6151623A (en) * 1996-12-13 2000-11-21 International Business Machines Corporation Agent activity report via object embedding
US6065026A (en) * 1997-01-09 2000-05-16 Document.Com, Inc. Multi-user electronic document authoring system with prompted updating of shared language
US5767978A (en) * 1997-01-21 1998-06-16 Xerox Corporation Image segmentation system
US5859955A (en) * 1997-01-21 1999-01-12 Xerox Corporation Stochastically clustered dot halftoning system
US6041312A (en) * 1997-03-28 2000-03-21 International Business Machines Corporation Object oriented technology framework for accounts receivable and accounts payable
US5936860A (en) * 1997-03-28 1999-08-10 International Business Machines Corporation Object oriented technology framework for warehouse control
US5987423A (en) * 1997-03-28 1999-11-16 International Business Machines Corporation Object oriented technology framework for order processing
AU749431B2 (en) * 1997-04-09 2002-06-27 Next Information Technology Co. Ltd. Method for automatically formatting a document according to data object type
US6014637A (en) * 1997-04-30 2000-01-11 International Business Machines Corporation Object oriented framework mechanism for fulfillment requirements management
US6298357B1 (en) * 1997-06-03 2001-10-02 Adobe Systems Incorporated Structure extraction on electronic documents
US5893106A (en) * 1997-07-11 1999-04-06 International Business Machines Corporation Object oriented server process framework with interdependent-object creation
JP2002509630A (en) * 1997-07-14 2002-03-26 クオーク,インコーポレイテッド Multimedia project management and control system
US6487568B1 (en) * 1997-07-18 2002-11-26 Tesseron, Ltd. Method and system for flowing data to an arbitrary path defined by a page description language
US7302438B1 (en) 1997-07-18 2007-11-27 Tesseron Ltd. Method and system for flowing data to an arbitrary path defined by a page description language
US6513152B1 (en) 1997-07-23 2003-01-28 International Business Machines Corporation Object oriented framework mechanism for customization of object oriented frameworks
US6378002B1 (en) 1997-08-05 2002-04-23 International Business Machines Corporation, Object oriented server process framework with implicit data handling registry for remote method invocations
JPH1153168A (en) 1997-08-07 1999-02-26 Matsushita Graphic Commun Syst Inc Document preparing device with voice information and method used with the same
US7263527B1 (en) * 1997-08-11 2007-08-28 International Business Machines Corporation Grouping selected transactions in account ledger
US6052670A (en) * 1997-08-29 2000-04-18 International Business Machines Corporation Object oriented framework mechanism for an electronic catalog
JP3381567B2 (en) * 1997-09-05 2003-03-04 凸版印刷株式会社 Editing device
US6016495A (en) * 1997-09-19 2000-01-18 International Business Machines Corporation Object-oriented framework mechanism for providing persistent storage
US7076784B1 (en) 1997-10-28 2006-07-11 Microsoft Corporation Software component execution management using context objects for tracking externally-defined intrinsic properties of executing software components within an execution environment
US6134594A (en) 1997-10-28 2000-10-17 Microsoft Corporation Multi-user, multiple tier distributed application architecture with single-user access control of middle tier objects
US6272086B1 (en) 1997-11-18 2001-08-07 International Business Machines Corporation Low cost tamper-resistant method for write-once read many (WORM) storage
US7069453B1 (en) * 1997-11-24 2006-06-27 Xerox Corporation Paper document satchels
US6088679A (en) * 1997-12-01 2000-07-11 The United States Of America As Represented By The Secretary Of Commerce Workflow management employing role-based access control
US6038567A (en) * 1998-02-19 2000-03-14 Microsoft Corporation Method and system for propagating object properties in a desktop publishing program
US5991516A (en) * 1998-04-30 1999-11-23 Xerox Corporation Print image data middle-ware
US6430538B1 (en) 1998-04-30 2002-08-06 Enterworks Workflow management system, method and medium with personal subflows
US6442563B1 (en) 1998-04-30 2002-08-27 Enterworks Workflow management system, method, and medium that morphs work items
TW420777B (en) * 1998-05-29 2001-02-01 Bridgewell Inc A query method of dynamitic attribute database management
WO1999066425A1 (en) * 1998-06-19 1999-12-23 Atex Media Solutions, Inc. Data management system
US6067531A (en) * 1998-07-21 2000-05-23 Mci Communications Corporation Automated contract negotiator/generation system and method
JP3828290B2 (en) * 1998-07-24 2006-10-04 富士通株式会社 Document management device and computer-readable recording medium recording program for causing computer to function as document management device
US6442620B1 (en) 1998-08-17 2002-08-27 Microsoft Corporation Environment extensibility and automatic services for component applications using contexts, policies and activators
JP3460597B2 (en) * 1998-09-22 2003-10-27 日本電気株式会社 Compound document management system, compound document structure management method, and recording medium storing compound document structure management program
US6202201B1 (en) 1998-09-23 2001-03-13 Netcreate Systems, Inc. Text object compilation method and system
US6314415B1 (en) * 1998-11-04 2001-11-06 Cch Incorporated Automated forms publishing system and method using a rule-based expert system to dynamically generate a graphical user interface
US7315979B1 (en) 1998-11-09 2008-01-01 Tesseron Ltd. Method and system for dynamic flowing data to an arbitrary path defined by a page description language
US6304340B1 (en) 1998-11-18 2001-10-16 Xerox Corporation Composite halftone screens with stochastically distributed clusters or lines
US6502113B1 (en) 1998-11-23 2002-12-31 John E. Crawford Negotiation manager incorporating clause modification and markers for tracking negotiation progress
US6237003B1 (en) * 1998-11-30 2001-05-22 Platinum Technology Ip, Inc. Method and apparatus for supporting dynamic run-time object definition in a relational database management system
US6487665B1 (en) 1998-11-30 2002-11-26 Microsoft Corporation Object security boundaries
US6385724B1 (en) 1998-11-30 2002-05-07 Microsoft Corporation Automatic object caller chain with declarative impersonation and transitive trust
US6574736B1 (en) 1998-11-30 2003-06-03 Microsoft Corporation Composable roles
US6477539B1 (en) * 1998-12-22 2002-11-05 Nortel Networks Limited Method and apparatus for interfacing a manager and a plant
US6453241B1 (en) * 1998-12-23 2002-09-17 Rosetta Inpharmatics, Inc. Method and system for analyzing biological response signal data
US6473892B1 (en) * 1998-12-31 2002-10-29 Harland Financial Solutions, Inc. Data driven, dynamic language document assembly system
US7257767B1 (en) 1999-02-09 2007-08-14 Carden Jr William T System and method for publishing documents
US6748455B1 (en) 1999-02-23 2004-06-08 Microsoft Corporation Object connectivity through loosely coupled publish and subscribe events with filtering
US6829770B1 (en) 1999-02-23 2004-12-07 Microsoft Corporation Object connectivity through loosely coupled publish and subscribe events
AU4328000A (en) 1999-03-31 2000-10-16 Verizon Laboratories Inc. Techniques for performing a data query in a computer system
US8275661B1 (en) * 1999-03-31 2012-09-25 Verizon Corporate Services Group Inc. Targeted banner advertisements
US8572069B2 (en) 1999-03-31 2013-10-29 Apple Inc. Semi-automatic index term augmentation in document retrieval
CA2371742A1 (en) * 1999-04-24 2000-11-02 Hijk A process for improving print quality of a document created utilizing internet-type network applications
US7979382B2 (en) 1999-05-04 2011-07-12 Accenture Global Services Limited Component based information linking during claim processing
US7013284B2 (en) * 1999-05-04 2006-03-14 Accenture Llp Component based interface to handle tasks during claim processing
US7617240B2 (en) 1999-05-04 2009-11-10 Accenture Llp Component based task handling during claim processing
US7263655B1 (en) 1999-05-21 2007-08-28 Thomson Scientific Inc. System and method for publishing manuscripts
AU5281800A (en) * 1999-05-21 2000-12-12 Scholarone, Inc. System and method for publishing manuscripts
US6674540B1 (en) 1999-05-24 2004-01-06 Hewlett-Packard Development Company, L.P. Assembling and printing compound documents
US7079712B1 (en) * 1999-05-25 2006-07-18 Silverbrook Research Pty Ltd Method and system for providing information in a document
US7539937B2 (en) * 1999-05-25 2009-05-26 Silverbrook Research Pty Ltd Periodical distribution via a computer network
EP1194872A1 (en) * 1999-06-11 2002-04-10 CCI Europe A/S (Stibo A/S) A content management computer system for managing publishing content objects
US6655284B1 (en) 1999-06-28 2003-12-02 Casio Computer Co., Ltd. Customer terminal apparatus and information distribution server
TW473696B (en) 1999-06-29 2002-01-21 Casio Computer Co Ltd Printing apparatus and printing method
US7039863B1 (en) 1999-07-23 2006-05-02 Adobe Systems Incorporated Computer generation of documents using layout elements and content elements
US6718363B1 (en) 1999-07-30 2004-04-06 Verizon Laboratories, Inc. Page aggregation for web sites
GB9918731D0 (en) * 1999-08-10 1999-10-13 G A Information Systems Ltd Data control and processing system
US20020002563A1 (en) * 1999-08-23 2002-01-03 Mary M. Bendik Document management systems and methods
US20020069214A1 (en) * 1999-12-02 2002-06-06 Smith John M. Document services architecture
JP2001223875A (en) * 2000-02-04 2001-08-17 Fuji Photo Film Co Ltd Method and system for generating print data
US7240067B2 (en) * 2000-02-08 2007-07-03 Sybase, Inc. System and methodology for extraction and aggregation of data from dynamic content
US6697821B2 (en) * 2000-03-15 2004-02-24 Süccesses.com, Inc. Content development management system and method
US7689906B2 (en) * 2000-04-06 2010-03-30 Avaya, Inc. Technique for extracting data from structured documents
US6775678B1 (en) * 2000-04-11 2004-08-10 Microsoft Corporation Data structure and method of storing a digital document
US8042041B1 (en) * 2000-05-05 2011-10-18 Pitney Bowes Software Inc. Method and apparatus for pipelined processing of data
US6912525B1 (en) 2000-05-08 2005-06-28 Verizon Laboratories, Inc. Techniques for web site integration
US7864346B2 (en) * 2000-05-16 2011-01-04 Xerox Corporation Apparatus and method for describing, planning and automatically programming complex finishing tasks
FR2828307B1 (en) * 2000-05-18 2004-10-22 Il System PROCESS FOR THE ESTABLISHMENT OF A DATABASE RELATING TO THE INFORMATION CONTAINED IN A DOCUMENT
JP2004509383A (en) * 2000-05-31 2004-03-25 ファーストトラック システムズ インコーポレイテッド Clinical trial management system and method
US6874124B2 (en) * 2000-05-31 2005-03-29 Fujitsu Limited Electronic document processing system and electronic document processors
US6581060B1 (en) * 2000-06-21 2003-06-17 International Business Machines Corporation System and method for RDBMS to protect records in accordance with non-RDBMS access control rules
AU2001278575A1 (en) * 2000-07-28 2002-02-13 Glaxo Group Limited Document management and publication using reusable packages and components
US20040220815A1 (en) * 2000-08-18 2004-11-04 Johanne Belanger Apparatus and method for the compilation, assembly, and distribution of product documentation and associated information
US6671687B1 (en) * 2000-09-29 2003-12-30 Ncr Corporation Method and apparatus for protecting data retrieved from a database
EP1203661A3 (en) * 2000-11-01 2007-10-24 Eastman Kodak Company Method and interface for assembling books
US7139977B1 (en) * 2001-01-24 2006-11-21 Oracle International Corporation System and method for producing a virtual online book
US20020165883A1 (en) * 2001-02-26 2002-11-07 Xerox Corporation Electronic document management system
US7925513B2 (en) * 2001-03-15 2011-04-12 Versata Development Group, Inc. Framework for processing sales transaction data
US20030018481A1 (en) * 2001-03-15 2003-01-23 Cheng Zhou Method and apparatus for generating configurable documents
US7958024B2 (en) * 2001-03-15 2011-06-07 Versata Development Group, Inc. Method and apparatus for processing sales transaction data
US7908304B2 (en) * 2001-03-15 2011-03-15 Versata Development Group, Inc. Method and system for managing distributor information
US8117313B2 (en) * 2001-03-19 2012-02-14 International Business Machines Corporation System and method for adaptive formatting of image information for efficient delivery and presentation
US6910051B2 (en) * 2001-03-22 2005-06-21 International Business Machines Corporation Method and system for mechanism for dynamic extension of attributes in a content management system
US20020152245A1 (en) * 2001-04-05 2002-10-17 Mccaskey Jeffrey Web publication of newspaper content
US8762837B1 (en) * 2001-04-09 2014-06-24 Critical Technologies, Inc. System and methodology for the storage and manipulation of documents
DE10125110A1 (en) 2001-05-23 2002-12-12 Building Systems Ges Fuer Syst Data processing device
US6725217B2 (en) 2001-06-20 2004-04-20 International Business Machines Corporation Method and system for knowledge repository exploration and visualization
US7904326B2 (en) * 2001-06-29 2011-03-08 Versata Development Group, Inc. Method and apparatus for performing collective validation of credential information
US7146524B2 (en) * 2001-08-03 2006-12-05 Isilon Systems, Inc. Systems and methods for providing a distributed file system incorporating a virtual hot spare
US7685126B2 (en) 2001-08-03 2010-03-23 Isilon Systems, Inc. System and methods for providing a distributed file system utilizing metadata to track information about data stored throughout the system
US20040205493A1 (en) * 2001-08-08 2004-10-14 Simpson Shell S. Web based imaging application that creates customized content based on user selections
US20030167271A1 (en) * 2001-08-28 2003-09-04 Wolfram Arnold RDO-to-PDF conversion tool
US8041739B2 (en) * 2001-08-31 2011-10-18 Jinan Glasgow Automated system and method for patent drafting and technology assessment
US7120699B2 (en) * 2001-09-20 2006-10-10 Ricoh Company, Ltd. Document controlled workflow systems and methods
US7171468B2 (en) * 2001-11-10 2007-01-30 Kabushiki Kaisha Toshiba System and method for accessing a document management repository
US6938048B1 (en) 2001-11-14 2005-08-30 Qgenisys, Inc. Universal task management system, method and product for automatically managing remote workers, including automatically training the workers
US7155400B1 (en) 2001-11-14 2006-12-26 Qgenisys, Inc. Universal task management system, method and product for automatically managing remote workers, including automatically recruiting workers
US6859523B1 (en) 2001-11-14 2005-02-22 Qgenisys, Inc. Universal task management system, method and product for automatically managing remote workers, including assessing the work product and workers
US20040205572A1 (en) * 2002-02-19 2004-10-14 Wendell Fields Systems and methods for providing information in a computer network
JP4072375B2 (en) * 2002-04-19 2008-04-09 キヤノン株式会社 Document management server, control method and program for document management server
AU2003238886A1 (en) * 2002-05-23 2003-12-12 Phochron, Inc. System and method for digital content processing and distribution
US7356458B1 (en) 2002-06-27 2008-04-08 Electronic Data Systems Corporation Multi-language correspondence/form generator
US7010746B2 (en) * 2002-07-23 2006-03-07 Xerox Corporation System and method for constraint-based document generation
US20040034613A1 (en) * 2002-07-23 2004-02-19 Xerox Corporation System and method for dynamically generating a style sheet
US7937421B2 (en) 2002-11-14 2011-05-03 Emc Corporation Systems and methods for restriping files in a distributed file system
KR20030014188A (en) * 2002-12-02 2003-02-15 매직캅 주식회사 Tool for controlling a drawing-up status of a documents relevant to the police affairs
JP4136634B2 (en) * 2002-12-10 2008-08-20 キヤノン株式会社 Document processing apparatus and method
WO2004057457A1 (en) * 2002-12-19 2004-07-08 Matsushita Electric Industrial Co., Ltd. Print control device and print control method
US20040135805A1 (en) * 2003-01-10 2004-07-15 Gottsacker Neal F. Document composition system and method
US8126742B2 (en) 2003-05-09 2012-02-28 Accenture Global Services Limited Automated assignment of insurable events
US20050289461A1 (en) * 2003-05-23 2005-12-29 Manoel Amado System and method for digital content processing and distribution
US8504380B2 (en) * 2003-06-05 2013-08-06 Medidata Solutions, Inc. Assistance for clinical trial protocols
EP1494128A1 (en) * 2003-06-30 2005-01-05 Sap Ag Method and system for creating a book text structure
US20050050021A1 (en) * 2003-08-25 2005-03-03 Sybase, Inc. Information Messaging and Collaboration System
US7236982B2 (en) * 2003-09-15 2007-06-26 Pic Web Services, Inc. Computer systems and methods for platform independent presentation design
US20050068582A1 (en) * 2003-09-30 2005-03-31 Ferlitsch Andrew R. Systems and methods for providing printing with document indicia
GB2407677A (en) * 2003-10-31 2005-05-04 Hewlett Packard Development Co Post-rendering document space based on rules
US20050132274A1 (en) * 2003-12-11 2005-06-16 International Business Machine Corporation Creating a presentation document
US9378187B2 (en) * 2003-12-11 2016-06-28 International Business Machines Corporation Creating a presentation document
US20050132271A1 (en) * 2003-12-11 2005-06-16 International Business Machines Corporation Creating a session document from a presentation document
US20050132273A1 (en) * 2003-12-11 2005-06-16 International Business Machines Corporation Amending a session document during a presentation
US7457817B2 (en) * 2003-12-12 2008-11-25 Oracle International Corporation Versioning in an integration platform
US7209933B2 (en) * 2003-12-12 2007-04-24 Oracle International Corporation Object versioning
US7571380B2 (en) * 2004-01-13 2009-08-04 International Business Machines Corporation Differential dynamic content delivery with a presenter-alterable session copy of a user profile
US8499232B2 (en) * 2004-01-13 2013-07-30 International Business Machines Corporation Differential dynamic content delivery with a participant alterable session copy of a user profile
US7430707B2 (en) 2004-01-13 2008-09-30 International Business Machines Corporation Differential dynamic content delivery with device controlling action
US7890848B2 (en) 2004-01-13 2011-02-15 International Business Machines Corporation Differential dynamic content delivery with alternative content presentation
US20050183011A1 (en) * 2004-02-12 2005-08-18 International Business Machines Corporation Method and apparatus for managing modification of content in a document
US7827239B2 (en) * 2004-04-26 2010-11-02 International Business Machines Corporation Dynamic media content for collaborators with client environment information in dynamic client contexts
US7519683B2 (en) * 2004-04-26 2009-04-14 International Business Machines Corporation Dynamic media content for collaborators with client locations in dynamic client contexts
US7831906B2 (en) * 2004-04-26 2010-11-09 International Business Machines Corporation Virtually bound dynamic media content for collaborators
EP1603072A1 (en) * 2004-06-02 2005-12-07 CCS Content Conversion Specialists GmbH Process and apparatus for analysing the structure of a document
DE102004027157B3 (en) * 2004-06-03 2005-04-28 Siemens Ag Data processing network for medical and clinical applications has configuration server and data processing devices with installed applications configured via configuration data provided by server
US20050278198A1 (en) * 2004-06-09 2005-12-15 Darren Huxol Methods and systems for managing a portfolio of insurance products
US7149995B2 (en) * 2004-06-25 2006-12-12 Intel Corporation Graphical interface to layout processing components and connections
US8185814B2 (en) * 2004-07-08 2012-05-22 International Business Machines Corporation Differential dynamic delivery of content according to user expressions of interest
US7921362B2 (en) * 2004-07-08 2011-04-05 International Business Machines Corporation Differential dynamic delivery of presentation previews
US7487208B2 (en) * 2004-07-08 2009-02-03 International Business Machines Corporation Differential dynamic content delivery to alternate display device locations
US7519904B2 (en) * 2004-07-08 2009-04-14 International Business Machines Corporation Differential dynamic delivery of content to users not in attendance at a presentation
US9167087B2 (en) 2004-07-13 2015-10-20 International Business Machines Corporation Dynamic media content for collaborators including disparate location representations
US7426538B2 (en) 2004-07-13 2008-09-16 International Business Machines Corporation Dynamic media content for collaborators with VOIP support for client communications
US20060112131A1 (en) * 2004-07-14 2006-05-25 Strike Friday, Inc. Story rewriting system
US20060026503A1 (en) * 2004-07-30 2006-02-02 Wireless Services Corporation Markup document appearance manager
US7664751B2 (en) 2004-09-30 2010-02-16 Google Inc. Variable user interface based on document access privileges
US7603355B2 (en) 2004-10-01 2009-10-13 Google Inc. Variably controlling access to content
US8051425B2 (en) 2004-10-29 2011-11-01 Emc Corporation Distributed system with asynchronous execution systems and methods
US8055711B2 (en) 2004-10-29 2011-11-08 Emc Corporation Non-blocking commit protocol systems and methods
US8238350B2 (en) 2004-10-29 2012-08-07 Emc Corporation Message batching with checkpoints systems and methods
EP1836584A4 (en) * 2004-11-16 2009-05-06 Zalag Corp Display/layout methods and apparatuses including content items and display containers
US7757166B2 (en) * 2004-12-10 2010-07-13 Jostens, Inc. System and method for yearbook creation
US20060136438A1 (en) * 2004-12-20 2006-06-22 Mcchrystal Peter S Process server array for processing documents and document components and a method related thereto
US7730067B2 (en) * 2004-12-30 2010-06-01 Microsoft Corporation Database interaction
US7720887B2 (en) * 2004-12-30 2010-05-18 Microsoft Corporation Database navigation
US7818672B2 (en) * 2004-12-30 2010-10-19 Microsoft Corporation Floating action buttons
US20060174114A1 (en) * 2005-01-24 2006-08-03 Rosbury Steven L Method for exchanging contract information between negotiating parties
US7940929B1 (en) * 2005-11-23 2011-05-10 Beyondcore, Inc. Method for processing documents containing restricted information
US10176338B2 (en) 2005-11-23 2019-01-08 Salesforce.Com Secure distributed storage of documents containing restricted information, via the use of keysets
US10127130B2 (en) 2005-03-18 2018-11-13 Salesforce.Com Identifying contributors that explain differences between a data set and a subset of the data set
US7697156B2 (en) * 2005-04-28 2010-04-13 Xerox Corporation Systems and methods for highlighting print jobs in a print queue
JP2006343933A (en) * 2005-06-08 2006-12-21 Sony Corp Data processing method, electronic equipment, and program
US20070061742A1 (en) * 2005-08-26 2007-03-15 Brooks Geoffrey S Method, system, and program product for graphical authoring
EP1770620A3 (en) * 2005-09-19 2007-11-28 Sap Ag Method for modelling processing procedures
US7917474B2 (en) * 2005-10-21 2011-03-29 Isilon Systems, Inc. Systems and methods for accessing and updating distributed data
US7551572B2 (en) 2005-10-21 2009-06-23 Isilon Systems, Inc. Systems and methods for providing variable protection
US7788303B2 (en) 2005-10-21 2010-08-31 Isilon Systems, Inc. Systems and methods for distributed system scanning
US7797283B2 (en) 2005-10-21 2010-09-14 Isilon Systems, Inc. Systems and methods for maintaining distributed data
US7933786B2 (en) * 2005-11-01 2011-04-26 Accenture Global Services Limited Collaborative intelligent task processor for insurance claims
JPWO2007058207A1 (en) * 2005-11-15 2009-05-07 株式会社東芝 Content management system and management method thereof
US20070156716A1 (en) * 2005-12-29 2007-07-05 Bare Said Generic draft mechanism for business objects
US7848261B2 (en) * 2006-02-17 2010-12-07 Isilon Systems, Inc. Systems and methods for providing a quiescing protocol
US7756898B2 (en) * 2006-03-31 2010-07-13 Isilon Systems, Inc. Systems and methods for notifying listeners of events
US7882058B1 (en) * 2006-04-20 2011-02-01 Xfi Corporation Method and apparatus for business resource automation
US8539056B2 (en) 2006-08-02 2013-09-17 Emc Corporation Systems and methods for configuring multiple network interfaces
US7899800B2 (en) 2006-08-18 2011-03-01 Isilon Systems, Inc. Systems and methods for providing nonlinear journaling
US7953704B2 (en) * 2006-08-18 2011-05-31 Emc Corporation Systems and methods for a snapshot of data
US7590652B2 (en) * 2006-08-18 2009-09-15 Isilon Systems, Inc. Systems and methods of reverse lookup
US7752402B2 (en) 2006-08-18 2010-07-06 Isilon Systems, Inc. Systems and methods for allowing incremental journaling
US7882071B2 (en) * 2006-08-18 2011-02-01 Isilon Systems, Inc. Systems and methods for a snapshot of data
US7680842B2 (en) * 2006-08-18 2010-03-16 Isilon Systems, Inc. Systems and methods for a snapshot of data
US7680836B2 (en) * 2006-08-18 2010-03-16 Isilon Systems, Inc. Systems and methods for a snapshot of data
US7822932B2 (en) * 2006-08-18 2010-10-26 Isilon Systems, Inc. Systems and methods for providing nonlinear journaling
US7676691B2 (en) * 2006-08-18 2010-03-09 Isilon Systems, Inc. Systems and methods for providing nonlinear journaling
US8286029B2 (en) 2006-12-21 2012-10-09 Emc Corporation Systems and methods for managing unavailable storage devices
US7593938B2 (en) * 2006-12-22 2009-09-22 Isilon Systems, Inc. Systems and methods of directory entry encodings
US7509448B2 (en) 2007-01-05 2009-03-24 Isilon Systems, Inc. Systems and methods for managing semantic locks
US20080178069A1 (en) * 2007-01-22 2008-07-24 Stallings Richard W Content Authoring System and Method
AU2008209447B2 (en) * 2007-01-23 2013-01-17 Jostens, Inc. Method and system for creating customized output
US7779048B2 (en) 2007-04-13 2010-08-17 Isilon Systems, Inc. Systems and methods of providing possible value ranges
US8966080B2 (en) 2007-04-13 2015-02-24 Emc Corporation Systems and methods of managing resource utilization on a threaded computer system
US7900015B2 (en) * 2007-04-13 2011-03-01 Isilon Systems, Inc. Systems and methods of quota accounting
US7882068B2 (en) 2007-08-21 2011-02-01 Isilon Systems, Inc. Systems and methods for adaptive copy on write
US7949692B2 (en) 2007-08-21 2011-05-24 Emc Corporation Systems and methods for portals into snapshot data
US7966289B2 (en) * 2007-08-21 2011-06-21 Emc Corporation Systems and methods for reading objects in a file system
US8515786B2 (en) * 2008-02-22 2013-08-20 Accenture Global Services Gmbh Rule generation system adapted for an insurance claim processing system
US8478769B2 (en) * 2008-02-22 2013-07-02 Accenture Global Services Limited Conversational question generation system adapted for an insurance claim processing system
US20090217146A1 (en) * 2008-02-22 2009-08-27 Eugene Goldfarb Page navigation generation system for a customizable application
US7949636B2 (en) * 2008-03-27 2011-05-24 Emc Corporation Systems and methods for a read only mode for a portion of a storage system
US7953709B2 (en) * 2008-03-27 2011-05-31 Emc Corporation Systems and methods for a read only mode for a portion of a storage system
US7870345B2 (en) 2008-03-27 2011-01-11 Isilon Systems, Inc. Systems and methods for managing stalled storage devices
US7984324B2 (en) 2008-03-27 2011-07-19 Emc Corporation Systems and methods for managing stalled storage devices
US20090307274A1 (en) * 2008-06-06 2009-12-10 Microsoft Corporation Delayed merge
WO2009155368A1 (en) * 2008-06-17 2009-12-23 Jostens, Inc. System and method for yearbook creation
JP4561905B2 (en) * 2008-08-20 2010-10-13 コニカミノルタビジネステクノロジーズ株式会社 Information processing program, information processing method, and information processing apparatus
US20110185353A1 (en) * 2010-01-27 2011-07-28 Jack Matthew Mitigating Problems Arising From Incompatible Software
US8381108B2 (en) * 2010-06-21 2013-02-19 Microsoft Corporation Natural user input for driving interactive stories
US9176933B2 (en) * 2011-10-13 2015-11-03 Microsoft Technology Licensing, Llc Application of multiple content items and functionality to an electronic content item
US9069743B2 (en) 2011-10-13 2015-06-30 Microsoft Technology Licensing, Llc Application of comments in multiple application functionality content
US8560933B2 (en) * 2011-10-20 2013-10-15 Microsoft Corporation Merging and fragmenting graphical objects
US10796232B2 (en) 2011-12-04 2020-10-06 Salesforce.Com, Inc. Explaining differences between predicted outcomes and actual outcomes of a process
US10802687B2 (en) 2011-12-04 2020-10-13 Salesforce.Com, Inc. Displaying differences between different data sets of a process
US9189761B1 (en) * 2012-05-17 2015-11-17 Emc Corporation Action flow client framework
US9935996B2 (en) 2013-02-28 2018-04-03 Open Text Sa Ulc Systems, methods and computer program products for dynamic user profile enrichment and data integration
US10015273B2 (en) 2014-07-29 2018-07-03 Open Text Sa Ulc Extensible provider connection systems, methods and architecture
US9779063B1 (en) * 2013-03-15 2017-10-03 Not Invented Here LLC Document processor program having document-type dependent interface
US10445391B2 (en) 2015-03-27 2019-10-15 Jostens, Inc. Yearbook publishing system
US10564794B2 (en) 2015-09-15 2020-02-18 Xerox Corporation Method and system for document management considering location, time and social context
CA3013322A1 (en) * 2016-02-02 2017-08-10 ActiveWrite, Inc. Document collaboration and consolidation tools and methods of use
WO2020008301A1 (en) * 2018-07-05 2020-01-09 Open Text Sa Ulc Systems and methods for communication flow modeling
CN113515544B (en) * 2021-06-23 2022-02-15 金蝶软件(中国)有限公司 Data attribute query method and data attribute query device
US11888793B2 (en) 2022-02-22 2024-01-30 Open Text Holdings, Inc. Systems and methods for intelligent delivery of communications

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4539653A (en) * 1983-04-11 1985-09-03 International Business Machines Corporation Formatting text/graphics using plural independent formatting mechanisms
US4959769A (en) * 1983-10-03 1990-09-25 Wang Laboratories, Inc. Structures and methods for representing and processing documents
US4723211A (en) * 1984-08-30 1988-02-02 International Business Machines Corp. Editing of a superblock data structure
US4723210A (en) * 1984-08-30 1988-02-02 International Business Machines Corp. Superblock structure in a multiple in a data editor
US4723209A (en) * 1984-08-30 1988-02-02 International Business Machines Corp. Flow attribute for text objects
US4739477A (en) * 1984-08-30 1988-04-19 International Business Machines Corp. Implicit creation of a superblock data structure
US4713754A (en) * 1984-10-09 1987-12-15 Wang Laboratories, Inc. Data structure for a document processing system
US4899136A (en) * 1986-04-28 1990-02-06 Xerox Corporation Data processor having a user interface display with metaphoric objects
US4811199A (en) * 1987-05-08 1989-03-07 Kuechler William L System for storing and manipulating information in an information base
US4953080A (en) * 1988-04-25 1990-08-28 Hewlett-Packard Company Object management facility for maintaining data in a computer system
US4969093A (en) * 1988-06-30 1990-11-06 International Business Machines Corporation Method of data stream construct management utilizing format shells and shell fragments
US4989132A (en) * 1988-10-24 1991-01-29 Eastman Kodak Company Object-oriented, logic, and database programming tool with garbage collection

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
Computer, vol. 21, no. 1, January 1988, (New York, NY, US), J.H. Schilchter et al.: "Foliopub: A publication management system", pages 61-69 *
IEEE International Conference on Communications '86, Toronto, Canada, 22-25 June 1986, Conference Record volume 3 of 3, IEEE, W. Horak et al.: "Document editing and entry based on the office document architecture standard ecma 101", pages 1520-1524 *
Siemens Forschungs- und Entwicklungsberichte, vol. 12, no. 1, 1983, Springer-Verlag, (W}rzburg, DE), W. Horak et al.: "Techniques for preparing and interchanging mixed text-image documents at multifunctional workstations ", pages 61-69 *
Siemens Forschungs- und Entwicklungsberichte, vol. 12, no. 1, 1983, Springer-Verlag, (Würzburg, DE), W. Horak et al.: "Techniques for preparing and interchanging mixed text-image documents at multifunctional workstations", pages 61-69 *

Cited By (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2679353A1 (en) * 1991-07-17 1993-01-22 Bull Sa PROCESS FOR LAYING UP STRUCTURED DOCUMENTS.
EP0524072A1 (en) * 1991-07-17 1993-01-20 Bull S.A. Method for page layout of structured documents
US5459827A (en) * 1991-07-17 1995-10-17 Bull S.A. Layout method for structured documents
US5475805A (en) * 1991-08-09 1995-12-12 Fuji Xerox Co., Inc. Layout and display of structured document having embedded elements
EP1047002A3 (en) * 1993-07-20 2002-06-19 Canon Kabushiki Kaisha Document processing apparatus and method
EP0635794A2 (en) * 1993-07-20 1995-01-25 Canon Kabushiki Kaisha Document processing apparatus and method
EP0635794A3 (en) * 1993-07-20 1995-10-18 Canon Kk Document processing apparatus and method.
US5778398A (en) * 1993-07-20 1998-07-07 Canon Kabushiki Kaisha Document processing to permit sharing of content by plural documents
EP1047002A2 (en) * 1993-07-20 2000-10-25 Canon Kabushiki Kaisha Document processing apparatus and method
USRE42509E1 (en) 1993-07-20 2011-06-28 Canon Kabushiki Kaisha Document processing to permit sharing of content by plural documents
NL1000701C2 (en) * 1995-06-30 1996-12-31 Oce Nederland Bv Device and method for extracting articles from a document.
EP0753833A1 (en) 1995-06-30 1997-01-15 Océ-Nederland B.V. Apparatus and method for extracting articles from a document
EP0770963A3 (en) * 1995-10-19 1998-04-15 Fuji Xerox Co., Ltd. Structured data and document processing apparatus and method
WO2002025483A1 (en) * 2000-09-22 2002-03-28 Vizion Factory E-Learning A/S Electronic document system
US8245133B2 (en) 2005-04-21 2012-08-14 Prototype Industries, Inc. Automatic authoring and publishing
EP2024865A2 (en) * 2006-04-21 2009-02-18 Omega Blue, Inc. Automatic authoring and publishing system
EP2024865A4 (en) * 2006-04-21 2012-04-18 Omegablue Inc Automatic authoring and publishing system
US20230014904A1 (en) * 2021-07-16 2023-01-19 SparkCognition, Inc. Searchable data structure for electronic documents

Also Published As

Publication number Publication date
JPH04503881A (en) 1992-07-09
EP0462242A1 (en) 1991-12-27
US5181162A (en) 1993-01-19

Similar Documents

Publication Publication Date Title
US5181162A (en) Document management and production system
US7461332B2 (en) Automatic layout of content in a design for a medium
US5895476A (en) Design engine for automatic reformatting for design and media
US5895477A (en) Design engine for automatic layout of content
US5903902A (en) Design engine with tree and component structure
EP0925542B1 (en) Automatic layout and formatting of content for a design in a medium
EP0136710B1 (en) Data structure in a document processing system
US6826727B1 (en) Apparatus, methods, programming for automatically laying out documents
RU2419856C2 (en) Various types of formatting with harmonic layout for dynamically aggregated documents
CA2669479C (en) Generating end-user presentations from structured data
US20020049702A1 (en) System and method for creating customized documents for cross media publishing
US20010051962A1 (en) Presentation customization
US20030101416A1 (en) Creating XML documents
US7337394B2 (en) Digital content production system and digital content production program
US20050243368A1 (en) Hierarchical spooling data structure
WO1999066425A1 (en) Data management system
CN110869924A (en) Method and apparatus for generating a customized digital file having variable data
US20020144226A1 (en) Digital content production system and digital content production program
CN111783407A (en) Electronic form creating system
US20130031085A1 (en) Docbase management system and implenting method thereof
JPH087674B2 (en) Tree generation system and method
Quint et al. Grif: An interactive environment for TEX
US20020040373A1 (en) Integrated media management and processing system
Hoppe et al. Document Processing
Hüser et al. The hypermedia presentation composer: a tool for automatic hyperdocument delivery

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): JP

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): AT BE CH DE DK ES FR GB GR IT LU NL SE

WWE Wipo information: entry into national phase

Ref document number: 1991901189

Country of ref document: EP

WWP Wipo information: published in national office

Ref document number: 1991901189

Country of ref document: EP

WWW Wipo information: withdrawn in national office

Ref document number: 1991901189

Country of ref document: EP