A system and a method for generating a document and maintaining the integrity of the document includes compiling a superset of data into a data heap from multiple data sources, where the data heap corresponds to a start date and one or more clients. The system generates the document using content elements, which are created using the compiled data, and embeds the content elements into the document. The document then is accessible through an associated software application. The data heap is saved and attached to the document. When the document is modified or edited in any manner, the system automatically saves the modified document as a new version. Additionally, the data heap is synchronized to the associated document and, therefore, is regenerated and saved as a new version along with the modified document.

Patent
   8732567
Priority
Sep 16 2005
Filed
Aug 10 2011
Issued
May 20 2014
Expiry
Apr 14 2026
Extension
210 days
Assg.orig
Entity
Large
0
163
currently ok
1. A computer-implemented method for generating and maintaining a user-modifiable document, comprising the steps of:
storing a plurality of content elements and a data map in a computer-readable memory wherein the plurality of content elements are data graphic files;
receiving a start date and one or more client identifiers;
receiving a document type;
querying at least one external data source for data in accordance with the data map, wherein the data corresponds to the received start date and the received one or more client identifiers;
generating an updatable data heap, wherein the updatable data heap is a compilation of the data acquired in the querying step;
storing the updatable data heap in a computer-readable memory; generating a data hierarchy from the data in the updatable data heap, the data hierarchy having a root node corresponding to the start date, one or more first child nodes corresponding to the one or more client identifiers, and one or more attribute nodes for each child node containing associated business data;
receiving a selection of at least one content element from the plurality of content elements;
generating a user-modifiable document in accordance with the received document type, wherein the user-modifiable document incorporates the selected at least one content element;
delivering the generated user-modifiable document to a destination;
automatically saving the updatable data heap as a data heap file each time the data heap is updated;
automatically saving the user-modifiable document, separate from the updatable data heap, each time the user-modifiable document is modified; and
attaching the data heap file to the generated user-modifiable document as an xml document.
7. A computer-readable memory storing computer code for implementing a method of generating and maintaining a user-modifiable document, wherein the computer code comprises:
code for a first storage step of storing a plurality of content elements and a data map in a computer-readable memory wherein the plurality of content elements are data graphic files;
code for a first reception step of receiving a start date and one or more client identifiers;
code for a first reception step of receiving a document type;
code for a query step of querying at least one external data source for data in accordance with the data map, wherein the data corresponds to the received start date and the received one or more client identifiers;
code for a first generation step of generating an updatable data heap, wherein the updatable data heap is a compilation of the data acquired in the querying step;
code for a second storage step of storing the updatable data heap in a computer-readable memory;
code for a second generation step of generating a data hierarchy from the data in the updatable data heap, the data hierarchy having a root node corresponding to the start date, one or more first child nodes corresponding to the one or more client identifiers, and one or more attribute nodes for each child node containing associated business data;
code for a third reception step of receiving a selection of at least one content element from the plurality of content elements;
code for a third generation step of generating a user-modifiable document in accordance with the received document type, wherein the generated user-modifiable document incorporates the selected at least one content element;
code for a delivery step of delivering the generated user-modifiable document to a destination;
code for a first save step of automatically saving the updatable data heap as a data heap file;
code for a second save step of automatically saving the user-modifiable document, separate from the updatable data heap; and
code for a first attachment step of attaching the updatable data heap file to the generated user-modifiable document as an xml document.
2. The computer-implemented method of claim 1, wherein the querying step comprises utilizing the data map to determine which of the at least one external data source contains data that corresponds to the received start date and the received one or more client identifiers.
3. The computer-implemented method of claim 1, wherein the step of generating the updatable data heap is in accordance with a set of instructions contained within the data map.
4. The computer-implemented method of claim 1, further comprising the steps of:
accessing the generated user-modifiable document through an associated software application;
modifying unstructured content within the generated user-modifiable document, wherein a modified user-modifiable generated document is produced; and
saving the modified generated document as a new version of the generated document.
5. The computer-implemented method of claim 1, further comprising the steps of:
accessing the generated user-modifiable document through an associated software application;
modifying the selected at least one content element incorporated in the generated user-modifiable document, wherein a modified generated user-modifiable document is produced;
generating a new data heap, wherein the new data heap is an updated version of the updatable data heap;
generating a new data hierarchy from the data in the new data heap, the new data hierarchy having a root node corresponding to the start date and one or more first child nodes corresponding to the one or more client identifiers;
saving the modified generated user-modifiable document as a new version of the generated user-modifiable document;
saving the new data heap as a new version of the updatable data heap file; and
attaching the new version of the data heap file to the modified generated user-modifiable document.
6. The computer-implemented method of claim 5, wherein a modification to the generated user-modifiable document that involves a content element is identified with a flag in data associated with that content element.
8. The computer-readable memory storing computer code of claim 7, further comprising:
code for an access step of accessing the generated user-modifiable document through an associated software application;
code for a modification step of modifying unstructured content within the generated user-modifiable document, wherein a modified user-modifiable generated document is produced; and
code for a third save step of saving the modified generated user-modifiable document as a new version of the generated user-modifiable document.
9. The computer-readable memory storing computer code of claim 7, further comprising:
code for an access step of accessing the generated user-modifiable document through an associated software application;
code for a modification step of modifying the at selected least one content element incorporated in the generated user-modifiable document, wherein a modified generated user-modifiable document is produced;
code for a fourth generation step of generating a new data heap, wherein the new data heap is an updated version of the updatable data heap;
code for a fifth generation step of generating a new data hierarchy from the data in the new data heap, the new data hierarchy having a root node corresponding to the start date and one or more first child nodes corresponding to the one or more client identifiers;
code for a third save step of saving the modified generated user-modifiable document as a new version of the generated user-modifiable document;
code for a fourth save step of saving the new data heap as a new version of the updatable data heap file; and
code for a second attachment step of attaching the new version of the updatable data heap file to the modified generated user-modifiable document.

1. Field of the Invention

The present invention relates generally to a system and a method for generating computer-accessible documents from a plurality of data sources and maintaining the integrity of the documents.

2. Related Art

It is common when generating a business document, such as a text file or presentation slides, to draft, review, and revise the document multiple times before a final document is produced. Often, such a document includes data imported from multiple sources and multiple applications external to the document. Typically, the importation of data into a document is performed manually, once a user has located the relevant data. Generating a document that requires a large volume of data to be imported, such as, for example, presentation slides in which data from multiple sources are compiled, can take weeks, sometimes even months, to produce depending on the size of the document.

Additionally, because a document often is edited and revised multiple times before a final document is produced, changes between each version of the document are lost when a new version is not created for each time the document is modified. If multiple users have access to the document, maintaining the integrity of the document becomes increasingly difficult. Accordingly, a need exists for an improved way of automating the creation of documents that utilize external or imported data, and for an improved means of maintaining the integrity of such documents in order to reduce the time and human error often associated with documents made through the collaborative efforts of multiple users.

The present invention provides a system and a method that compiles and assembles data from multiple sources and generates documents using structured elements that incorporate the compiled data. Maintenance of each generated document is controlled by the system through automatic “versioning” or version creation for modifications made to the generated document. By automating the compilation of relevant data for a document and maintaining each document's integrity through automatic versioning, the time and human error associated with generating documents using data from multiple data sources are reduced significantly.

According to the invention, the system includes a content building application, referred to herein as a content builder, multiple application program interfaces (APIs) to interface with multiple data sources, a catalog of predefined structured elements or content elements, and a data map. The system also includes sets of instructions and templates for generating different types of documents using the content builder, such as, for example, slides for a PowerPoint™ presentation, or a portable document format (PDF) document. A content element is a collection of data structured into a type of display that is embedded into the document by the content builder. The content elements may be grouped into categories, such as, for example, corporate financial data, risk exposure data, and credit profitability data. Each content element includes a data type, such as, for example, a chart or a graph, and data gathered from a compilation or superset of data retrieved by the system from multiple data sources, referred to herein as a data heap. Each content element also includes instructions for locating and retrieving the associated data from within a data heap generated by the system, and instructions for formatting and presenting the content element within the document.

As mentioned above, a data heap is a collection of data retrieved by the system from multiple data sources. When the system is generating a document, the data heap is maintained in a temporary memory that is accessible by the content builder. The data heap is created using a hierarchical structure, similar to structures associated with an extensible markup language (XML) document. Once the content builder has generated the document, the system may save the associated data heap, for example, as an XML document, and attaches the saved data heap file to the generated document. The system also includes a user interface, such as an Internet Web page.

The content builder uses a data map to retrieve data from multiple data sources. The data map includes the locations of the data from the multiple data sources and instructions for generating a data heap. The data map also assists in creating a content element because the data map contains the layout of the data within the data heap. Thus, the content builder accesses the data map to determine where data relevant to each content element is located within the data heap.

According to an embodiment of the present invention, a method for generating a document and maintaining the integrity of the document is provided. The method includes steps for a user accessing a system according to the present invention via a user interface, such as, for example, a Web page. The user is prompted to select a type of document to be created and to input a beginning date or start date for the system to retrieve data. The user also is prompted to input one or more clients, for example, by name, by category, or by group, in order for the system to retrieve data associated with the clients.

Upon receiving the user inputs, the system queries multiple data sources from within the user's organization or external to the user's organization for all data corresponding to the inputted clients and generated no earlier than the start date inputted by the user. To locate the data, the system uses a data map to retrieve the pertinent data from the corresponding data sources. The system then generates a data heap, which is a superset of all the data corresponding to the inputted start date and clients. The system formats the data heap using a hierarchical structure, with the inputted start date serving as a root node or element and the inputted clients following as child nodes descending from the root node (the inputted start date). Descending from each client are attribute nodes containing associated business data. Each attribute may have a name, a value, a data source identifier, a date and time stamp corresponding to the date and time the system retrieved the data, and one or more flags characterizing the data associated with each attribute.

The system then outputs a list of content elements to the user. The user selects which content elements are to be present in the generated document. Because each content element is, in essence, a data graphic file, the user may instruct the system to generate a document with “built in” or embedded graphics, such as, for example, spreadsheets, tables, charts, and other pictorial and/or graphical presentations of data. Since each content element is created using data retrieved from multiple data sources, the content builder replaces the typical process of manually searching for and retrieving data from multiple data sources, and then manually creating spreadsheets, tables, charts, and other presentations of the data.

The system receives the selected content elements and generates or builds the document using the content builder. For each selected content element, the content builder references the data map to locate the relevant data. The content builder then creates each selected content element according to the instructions associated with each content element. The system then generates the document according to the stored predefined templates and embeds the selected content elements.

The system saves the generated document and outputs it to the user according to user-inputted instructions. Additionally, the system saves the data heap associated with the document, preferably as an XML document, and attaches it to the document. In doing so, the system provides a “snapshot” of all the possible data provided to the user at the time the document was created. The user then may access the document through an applicable business, commercial, or other application in order to add, remove, or modify unstructured content, such as, for example, the text or the page layout of the document. Once the user has modified the document, the system automatically saves the document as a new version. Thus, the integrity of the document is maintained automatically by the system, which reduces human error typically associated with document revisions.

Alternatively, the user may wish to revise one or more content elements in the document. To do so, the user accesses the system via the user interface, and opens the document using the system. The system displays the content elements and the associated data previously selected by the user to generate the document. The user may view each content element and the respective data in aggregate form. The user also may view the respective data of each content element in detail. Optionally, the system generates a new data heap to provide the user with the most up-to-date data associated with the clients previously selected by the user. At this point, the user may modify the content elements in the document, may add and/or remove content elements, or may instruct the system to generate an entirely new document. Modifications involving content elements are flagged within the data of the content elements. Once the user completes the modifications, the content builder regenerates the document and automatically saves the regenerated document as a new version. Additionally, the system automatically saves the regenerated data heap as a new version of the original data heap and attaches the regenerated data heap file to the new version of the document. The system maintains synchronicity between the document and the associated data heap in order to allow a user to view all the relevant data available at the time each version of the document was created. By automatically generating new versions of both the document and the data heap, the system maintains the integrity of the document without requiring manual intervention.

Thus, the system significantly reduces time and human error associated with generating documents that utilize large amounts of data from multiple data sources spread throughout a corporation.

The documents referred to herein may be of any type, including but not limited to test, presentation, multimedia, etc. Preferably, the documents are business documents with financial data.

The present invention will be more readily understood from the detailed description presented below considered in conjunction with the attached drawings, of which:

FIG. 1 illustrates a document-generation system, according to an embodiment of the present invention; and

FIG. 2 is a flow chart describing a processing flow of a method for generating a document and maintaining document integrity, according to an embodiment of the present invention.

FIG. 1 illustrates an arrangement of a system 101 for automating the generation of business documents according to an embodiment of the present invention. The system 101 includes a content building application 102, or content builder, and a repository 103 that contains a data map 113, a catalog of content elements 114, and one or more document templates 115. The system 101 also includes one or more APIs 105, 106, 107, which allow the system 101 to interface with multiple sources of data, such as, for example, a Microsoft Access™ database 108, an SQL database 109, or some other database 110. A user may utilize the system at a workstation 111 and access the system 101 through a user interface 112, such as a Web page. A data heap 104 is maintained in a temporary computer-readable memory within the system 101 while the content builder 102 is used to create a document. Although not shown, the system 101 includes a standard microprocessor for executing the content building application and other software applications and routines discussed below.

FIG. 2 illustrates a method for automating the generation of documents according to an embodiment of the present invention. The steps of the method need not be taken in the sequence illustrated, and some steps may be implemented essentially simultaneously. In step S201, a user, such as, for example, the user 111, accesses the system 101 via the user interface 112. For example, if the system is a Web-based system, the user 111 accesses the system 101 through a Web page. The user 111 may enter login information, such as a user identification number and a password. Once the user 111 has accessed the system 101, the user 111 is prompted to select a type of document to be generated, such as a presentation, a word processing (text) document, or a PDF document. The user 111 also is prompted to enter a start date and one or more client identifiers. Clients may be identified individually as well as identified by one or more groups or categories. For example, the user 111 may wish for the system 101 to retrieve all data relevant to clients in the oil and gas industry beginning from the end of the first quarter in 2002. Thus, at step S201, the user 111 enters a start date of 03312002 and an alphanumerical identifier for oil and gas clients.

At step S202, the system 101 receives the user inputs and queries multiple data sources, such as the databases 108, 109, 110, for data corresponding to the inputted date and client identifiers. The system 101 utilizes the data map 113 to determine which databases contain the appropriate data. The data map 113 is pre-constructed by a system administrator and includes the locations of data within a corporation. Thus, the system 101 may determine that data sources 108, 109, 110 may hold all of the data corresponding to the inputted date and client identifiers and retrieves the data from data sources 108, 109, 110 using the applicable APIs 105, 106, 107.

Upon retrieving the corresponding data via the APIs 105, 106, 107, the system 101 creates and stores a data heap 104 in a computer-readable memory, which temporarily stores all of the retrieved data. The data heap 104 is structured according to a set of instructions included in the data map 113. The data map 113 instructs the system 101 to generate the data heap 104 using a hierarchical structure. The inputted start date is at the top of the hierarchy and serves as the root node of the hierarchical structure. Each inputted client (child node) then descends directly from the root node, i.e., the inputted start date. Descending from each child node are data nodes containing all of the data retrieved for each client. These data nodes are referred to herein as attribute nodes. An attribute node may contain the following information: a name, a value, a data source identifier, a date and/or time stamp corresponding to the date and time the attribute was retrieved by the system 101, and one or more flags characterizing the data of the attribute. Thus, the data heap 104 contains all of the data associated with the inputted client identifiers, which has a date no earlier than the start date inputted by the user 111.

At step S203, the system 101 outputs the content elements 114 maintained in the repository 103 to the user 111. The user 111 selects the content elements to be included in the document and instructs the system 101 to build the document. At step S204, the content building application 102 generates the document using the document templates 115 stored in the repository 103. The content building application 102 then generates each selected content element by first locating the corresponding data within the data heap 104 according to the data map 113. Because the data heap 104 is structured according to instructions provided in the data map 113, the location of any data for any content element is found within the data map 113. Additionally, the content building application 102 formats the content element according to instructions stored within the content element. The system 101 then embeds the formatted content elements into the document.

At step S205, the system 101 saves the document and saves the data heap 104 as an XML document. Thus, the system maintains a “snapshot” image of the data heap used to generate the associated document. The system 101 then transmits the document to a destination according to user-inputted instructions.

At step S206, the user 111 may access the document using a business, commercial, or other software application that corresponds to the type of the document created. Preferably, although not required, only one user may access and edit the document at any given time in order to maintain the integrity of the document. For example, if the system 101 generated slides for a presentation, the user 111 may access the document using a presentation software application, such as Microsoft PowerPoint™. Upon doing so, the user 111 may add, remove, and/or edit any unstructured content of the document, where unstructured content is content that is not associated with a content element. Once the user 111 is finished working and attempts to exit the document, the system 101 automatically saves the revised document as a new version. Thus, no content is lost between versions of the document.

At step S207, the user 111 may revise the content elements within the document by accessing the document using the system 101 via the user interface 112. The system 101 provides a list of the content elements presently embedded in the document and the data underlying each content element. Additionally, the system 101 generates a new version of the original data heap 104 associated with the document, so that the user 111 has the most recent data available. The user 111 then may add or remove content elements, and/or may modify the document entirely. In each content element that is removed or modified, the content building application 102 flags the fact within the data of the associated content element.

Once the user 111 completes the modifications to the document, the content building application 102 generates a modified document and prompts the system 101 to save the modified document as a new version of the original document. The content building application 102 also prompts the system to save the new version of the data heap 104 as an attachment. Thus, the system 101 provides an updated “snapshot” image of all the data available to the user 111 while the user 111 was modifying the document. The system 101 then outputs the modified document and the associated data heap file to one or more destinations as instructed by the user 111.

While the present invention has been described with respect to what is presently considered to be the preferred embodiment(s), it is to be understood that the invention is not limited to the disclosed embodiment(s). To the contrary, the invention is intended to cover various modifications and equivalent arrangements included within the spirit and scope of the appended claims. The scope of the following claims is to be accorded the broadest interpretation so as to encompass all such modifications and equivalent structures and functions.

Gralnick, Samuel L., Hill, Thomas H.

Patent Priority Assignee Title
Patent Priority Assignee Title
3872448,
5159687, Nov 14 1989 KASE SYSTEMS, INC , A CORP OF GA Method and apparatus for generating program code files
5168444, Nov 15 1989 Teknekron Transportation Systems Shipment system including processing of document images
5202986, Sep 28 1989 Bull HN Information Systems Inc. Prefix search tree partial key branching
5278982, Dec 23 1991 INTERNATIONAL BUSINESS MACHINES CORPORATION A CORPORATION OF NY Log archive filtering method for transaction-consistent forward recovery from catastrophic media failures
5313616, Sep 18 1990 88OPEN CONSORTIUM, LTD Method for analyzing calls of application program by inserting monitoring routines into the executable version and redirecting calls to the monitoring routines
5347518, Dec 21 1990 International Business Machines Corporation Method of automating a build verification process
5455946, May 21 1993 International Business Machines Corporation Method and means for archiving modifiable pages in a log based transaction management system
5471613, Dec 17 1990 International Business Machines Corporation Tree structure representation of an SQL clause
5471629, Dec 19 1988 Hewlett-Packard Company Method of monitoring changes in an object-oriented database with tuned monitors
5630173, Dec 21 1992 Apple Inc Methods and apparatus for bus access arbitration of nodes organized into acyclic directed graph by cyclic token passing and alternatively propagating request to root node and grant signal to the child node
5701471, Jul 05 1995 Oracle America, Inc System and method for testing multiple database management systems
5748878, Sep 11 1995 Freescale Semiconductor, Inc Method and apparatus for analyzing software executed in embedded systems
5752034, Jan 15 1993 Texas Instruments Incorporated Apparatus and method for providing an event detection notification service via an in-line wrapper sentry for a programming language
5758061, Dec 15 1995 T & L PLUM LLC Computer software testing method and apparatus
5764972, Feb 01 1993 Sun Microsystems, Inc Archiving file system for data servers in a distributed network environment
5774553, Nov 21 1996 CITIBANK N A Foreign exchange transaction system
5784557, Dec 21 1992 Apple Inc Method and apparatus for transforming an arbitrary topology collection of nodes into an acyclic directed graph
5787402, May 15 1996 CITIGROUP GLOBAL MARKETS, INC Method and system for performing automated financial transactions involving foreign currencies
5828883, Mar 31 1994 THE CHASE MANHATTAN BANK, AS COLLATERAL AGENT Call path refinement profiles
5832523, Aug 30 1995 Kabushiki Kaisha Toshiba Archiving device and data file server using data file recorded in division over recording media
5835770, Jun 19 1990 International Business Machines Corporation User inquiry facility for task status in a distributed system
5845293, Aug 08 1994 Microsoft Technology Licensing, LLC Method and system of associating, synchronizing and reconciling computer files in an operating system
5872976, Apr 01 1997 ALLEN SYSTEMS GROUP, INC Client-based system for monitoring the performance of application programs
5907846, Jun 07 1996 Hewlett Packard Enterprise Development LP Method and system for accessing relational databases using objects
5920719, Nov 06 1995 Apple Inc Extensible performance statistics and tracing registration architecture
5970496, Sep 12 1996 Microsoft Technology Licensing, LLC Method and system for storing information in a computer system memory using hierarchical data node relationships
5978477, Nov 21 1996 Ricoh Company Limited Automatic and transparent document archiving
6009405, Aug 01 1996 COMPANY INTERNATIONAL BUSINESS MACHINES CORPORATION; International Business Machines Corporation Ensuring atomicity for a collection of transactional work items in a workflow management system
6012087, Jan 14 1997 NETMIND TECHNOLOGIES, INC Unique-change detection of dynamic web pages using history tables of signatures
6014671, Apr 14 1998 GOOGLE LLC Interactive retrieval and caching of multi-dimensional data using view elements
6026237, Nov 03 1997 International Business Machines Corporation System and method for dynamic modification of class files
6029002, Oct 31 1995 Rocket Software, Inc Method and apparatus for analyzing computer code using weakest precondition
6029175, Oct 26 1995 Teknowledge Corporation Automatic retrieval of changed files by a network software agent
6058393, Feb 23 1996 International Business Machines Corporation Dynamic connection to a remote tool in a distributed processing system environment used for debugging
6065009, Jan 20 1998 International Business Machines Corporation Events as activities in process models of workflow management systems
6081808, Oct 25 1996 International Business Machines Corporation Framework for object-oriented access to non-object-oriented datastores
6108698, Jul 29 1998 SAP America, Inc Node-link data defining a graph and a tree within the graph
6125390, Apr 05 1994 Intel Corporation Method and apparatus for monitoring and controlling in a network
6138112, May 14 1998 Microsoft Technology Licensing, LLC Test generator for database management systems
6138158, Apr 30 1998 UNWIRED PLANET IP MANAGER, LLC; Unwired Planet, LLC Method and system for pushing and pulling data using wideband and narrowband transport systems
6145121, Apr 17 1997 Washington, University of; UNIVERISTY OF WASHINGTON Trace based method for the analysis, benchmarking and tuning of object oriented databases and applications
6163776, Mar 23 1998 Software Tree, Inc. System and method for exchanging data and commands between an object oriented system and relational system
6167534, Nov 24 1995 IBM Corporation Load test system and method
6188400, Mar 31 1997 International Business Machines Corporation Remote scripting of local objects
6226652, Sep 05 1997 International Business Machines Corp. Method and system for automatically detecting collision and selecting updated versions of a set of files
6237143, Sep 17 1998 Unisys Corp. Method and system for monitoring and capturing all file usage of a software tool
6243862, Jan 23 1998 Unisys Corporation Methods and apparatus for testing components of a distributed transaction processing system
6256635, May 08 1998 Apple Inc Method and apparatus for configuring a computer using scripting
6263121, Sep 16 1998 Canon Kabushiki Kaisha Archival and retrieval of similar documents
6266683, Jul 24 1997 JPMORGAN CHASE BANK, N A Computerized document management system
6269479, Nov 30 1998 Unisys Corporation Method and computer program product for evaluating the performance of an object-oriented application program
6279008, Jun 29 1998 Sun Microsystems, Inc; BAAN DEVELOPMENT, B V ; BAAN DEVELOPMENT, B V - 50% Integrated graphical user interface method and apparatus for mapping between objects and databases
6301701, Nov 10 1999 VERSATA, INC Method for computer-assisted testing of software application components
6311320, Dec 07 1998 NetApp, Inc Alterable scripting tool and method
6311327, Mar 02 1998 SHENZHEN XINGUODU TECHNOLOGY CO , LTD Method and apparatus for analyzing software in a language-independent manner
6336122, Oct 15 1998 International Business Machines Corporation Object oriented class archive file maker and method
6356920, Mar 09 1998 X-Aware, Inc Dynamic, hierarchical data exchange system
6381609, Jul 02 1999 Lucent Technologies Inc. System and method for serializing lazy updates in a distributed database without requiring timestamps
6385618, Dec 22 1997 SUN MICROSYSTEMS, INC - 50%; BAAN DEVELOPMENT, B V - 50%; BAAN DEVELOPMENT, B V -50%; BAAN DEVELOPMENT, B V -50% Integrating both modifications to an object model and modifications to a database into source code by an object-relational mapping tool
6397221, Sep 12 1998 International Business Machines Corp. Method for creating and maintaining a frame-based hierarchically organized databases with tabularly organized data
6405209, Oct 28 1998 TERADATA US, INC Transparent object instantiation/initialization from a relational store
6411957, Jun 30 1999 ARM Limited System and method of organizing nodes within a tree structure
6418446, Mar 01 1999 TWITTER, INC Method for grouping of dynamic schema data using XML
6418448, Dec 06 1999 METHOD AND APPARATUS FOR PROCESSING MARKUP LANGUAGE SPECIFICATIONS FOR DATA AND METADATA USED INSIDE MULTIPLE RELATED INTERNET DOCUMENTS TO NAVIGATE, QUERY AND MANIPULATE INFORMATION FROM A PLURALITY OF OBJECT RELATIONAL DATABASES OVER THE WEB
6418451, Jun 29 1999 Unisys Corporation Method, apparatus, and computer program product for persisting objects in a relational database
6446062, Dec 23 1999 Bull HN Information Systems Inc. Method and apparatus for improving the performance of a generated code cache search operation through the use of static key values
6449623, Sep 04 1998 Lucent Technologies Inc, Method and apparatus for detecting and recovering from data corruption of a database via read logging
6453310, Oct 26 1998 Microsoft Technology Licensing, LLC Installable schema for low-overhead databases
6456995, Dec 31 1998 International Business Machines Corporation SYSTEM, METHOD AND COMPUTER PROGRAM PRODUCTS FOR ORDERING OBJECTS CORRESPONDING TO DATABASE OPERATIONS THAT ARE PERFORMED ON A RELATIONAL DATABASE UPON COMPLETION OF A TRANSACTION BY AN OBJECT-ORIENTED TRANSACTION SYSTEM
6467052, Jun 03 1999 ZHIGU HOLDINGS LIMITED Method and apparatus for analyzing performance of data processing system
6477540, Dec 22 1999 TERADATA US, INC Method and apparatus for using Java as a stored procedure language and as an embedded language on a client
6490581, May 24 2000 GOOGLE LLC System and method for providing an object-oriented interface to a relational database
6502095, Sep 09 1999 Lucent Technologies Inc. Timestamp-based system and method for serializing lazy updates in a distributed database
6502101, Jul 13 2000 Microsoft Technology Licensing, LLC Converting a hierarchical data structure into a flat data structure
6502104, Nov 08 1999 International Business Machines Corporation System message objects for communicating between an application and a database management system
6532467, Apr 10 2000 SAS INSTITUTE, INC Method for selecting node variables in a binary decision tree structure
6535894, Jun 01 2000 Oracle America, Inc Apparatus and method for incremental updating of archive files
6539337, Jun 15 2000 TELEDYNE SCIENTIFIC & IMAGING, LLC Embedded diagnostic system and method
6539383, Nov 08 1999 International Business Machines Corporation Communication and interaction objects for connecting an application to a database management system
6539397, Mar 31 2000 International Business Machines Corporation Object-oriented paradigm for accessing system service requests by modeling system service calls into an object framework
6539398, Apr 30 1998 International Business Machines Corporation Object-oriented programming model for accessing both relational and hierarchical databases from an objects framework
6557039, Nov 13 1998 JPMORGAN CHASE BANK, N A System and method for managing information retrievals from distributed archives
6564048, Dec 18 1996 Sony Corporation Radio communication system and method and mobile communication terminal device
6571249, Sep 27 2000 Siemens Aktiengesellschaft Management of query result complexity in hierarchical query result data structure using balanced space cubes
6574640, Aug 17 1999 International Business Machines Corporation System and method for archiving and supplying documents using a central archive system
6578129, Jul 24 1998 Interuniversitaire Micro-Elektronica Centrum Optimized virtual memory management for dynamic data types
6591260, Jan 28 2000 Red Hat, Inc Method of retrieving schemas for interpreting documents in an electronic commerce system
6601075, Jul 27 2000 GOOGLE LLC System and method of ranking and retrieving documents based on authority scores of schemas and documents
6633578, May 07 1998 ONKYO KABUSHIKI KAISHA D B A ONKYO CORPORATION Transmission interface unit in transmission system
6651076, May 19 1999 CABLYNX, INC Archive computer system and method for storage and retrieval of records
6665086, Nov 21 1996 Ricoh Silicon Valley, Inc. Automatic and transparent archiving of documents and document information
6678705, Nov 16 1998 AT&T Corp. System for archiving electronic documents using messaging groupware
6681380, Feb 15 2000 GOOGLE LLC Aggregating constraints and/or preferences using an inference engine and enhanced scripting language
6691139, Jan 31 2001 VALTRUS INNOVATIONS LIMITED Recreation of archives at a disaster recovery site
6697835, Oct 28 1999 GOOGLE LLC Method and apparatus for high speed parallel execution of multiple points of logic across heterogeneous data sources
6701514, Mar 27 2000 Accenture Global Services Limited System, method, and article of manufacture for test maintenance in an automated scripting framework
6711594, Dec 20 1999 Dai Nippon Printing Co., Ltd. Distributed data archive device and system
6714219, Dec 31 1998 Microsoft Technology Licensing, LLC Drag and drop creation and editing of a page incorporating scripts
6763384, Jul 10 2000 International Business Machines Corporation Event-triggered notification over a network
6880010, Sep 10 1999 International Business Machines Corporation Methods, systems, and computer program products that request updated host screen information from host systems in response to notification by servers
6918013, Jul 16 2001 Oracle International Corporation System and method for flushing bean cache
6920467, Nov 26 1993 Canon Kabushiki Kaisha Avoiding unwanted side-effects in the updating of transient data
6934934, Aug 30 1999 Oracle International Corp Method and system for software object testing
6938072, Sep 21 2001 International Business Machines Corporation Method and apparatus for minimizing inconsistency between data sources in a web content distribution system
6980984, May 16 2001 CONSONA ERP, INC ; CONSONA CORPORATION Content provider systems and methods using structured data
7010757, Jan 12 2001 Viavi Solutions Inc Method and apparatus for launching computer applications
7191392, Mar 23 2000 INNOVATIVE WORKFLOW ENGINEERING, INC DBA VIRPACK System and method for the creation of virtual information packages
7231598, Sep 18 2003 Microsoft Technology Licensing, LLC User interface for editing documents containing markup language
7376642, Mar 30 2004 Microsoft Technology Licensing, LLC Integrated full text search system and method
7480856, May 02 2002 Intel Corporation System and method for transformation of XML documents using stylesheets
20020007287,
20020029228,
20020038226,
20020038320,
20020049666,
20020065695,
20020083034,
20020091702,
20020116205,
20020143774,
20020144101,
20020178439,
20020188765,
20030014421,
20030018666,
20030027561,
20030046313,
20030050931,
20030065644,
20030069975,
20030070158,
20030088593,
20030117446,
20030121008,
20030126151,
20030131007,
20030140045,
20030140308,
20030145047,
20030149934,
20030163603,
20030167266,
20030167445,
20030177118,
20030177341,
20030191849,
20030200459,
20030217033,
20030217083,
20030218633,
20040060006,
20040122872,
20040153972,
20050027658,
20050039107,
20050060345,
20050065987,
20060120353,
20060161485,
WO246980,
WO9503586,
WO9634350,
/
Executed onAssignorAssigneeConveyanceFrameReelDoc
Aug 10 2011JPMORGAN CHASE BANK, N.A.(assignment on the face of the patent)
Date Maintenance Fee Events
Nov 15 2017M1551: Payment of Maintenance Fee, 4th Year, Large Entity.
Oct 21 2021M1552: Payment of Maintenance Fee, 8th Year, Large Entity.


Date Maintenance Schedule
May 20 20174 years fee payment window open
Nov 20 20176 months grace period start (w surcharge)
May 20 2018patent expiry (for year 4)
May 20 20202 years to revive unintentionally abandoned end. (for year 4)
May 20 20218 years fee payment window open
Nov 20 20216 months grace period start (w surcharge)
May 20 2022patent expiry (for year 8)
May 20 20242 years to revive unintentionally abandoned end. (for year 8)
May 20 202512 years fee payment window open
Nov 20 20256 months grace period start (w surcharge)
May 20 2026patent expiry (for year 12)
May 20 20282 years to revive unintentionally abandoned end. (for year 12)