A portion of the disclosure of this patent document contains material which is subject tocopyright protection. The copyright owner has no objection to the facsimile reproduction by any one of the patent disclosure, as it appears in the Patent and Trademark Office patent files or records, but otherwise reserves all copyright rightswhatsoever.
BACKGROUND OF THE INVENTION
The present invention relates to document generation systems and, more particularly to a system incorporating user-modifiable document templates or "boiler-plates", a database including information to be placed into "holes" within a particulardocument template, and a computing device which combines the particular document template with relevant information stored in the database to form a document.
Traditionally, the practice of dictating and transcribing has been used to record information related to interviews, personal reminders, thoughts on a subject, and drafts or letters of other documents. In the service industries, such asconsulting, legal and medical fields, professionals have been increasingly burdened by the need to document every encounter with clients or patients. This is particularly true in the medical field where physicians must record information about eachpatient office visit, diagnosis, suggested treatment and prescription given. In addition to recording patient information, physicians must fill out forms for submission to insurance companies and provide information to regulatory agencies. To gatherand produce all of this information, physicians must spend a significant portion of their work day dictating the needed information for each record or form. Further, a physician must maintain a staff to transcribe the information into reports and tofill out required forms.
A physician typically dictates a report on each patient encounter which, subsequently, must be typed by a transcriber. The process is time consuming and repetitive. For this reason, shortcuts are often taken causing reports to be incomplete. As a result, potential legal and insurance problems as well as reduced quality of patient care can occur. Using traditional manual methods of record keeping, patient data is not readily available for fast and easy review. A patient's medical recordcannot be easily combined with other reports or other patient data for analysis and reporting.
In response to the above-mentioned needs and problems encountered in the medical field, the present invention was developed. The present invention automates the documentation process by providing a computer-based documentation systemincorporating a relational database with a multi-document word processor, preferably within a menu-driven, graphic window environment. The documentation system utilizes previously defined document templates or "boiler-plates" to manage patient reportingand includes a user interface for use in selecting phrases to be inserted in the template. Preferably, the system will further comprise a graphics engine for display of graphical expressions of selection analysis.
For instance, an initial exam conducted by an orthopedic surgeon will contain many basic elements common to all patients, but response to the exam will vary for each patient. A report to be input can contain any number of variable responses, andeach variable within the input report can offer any number of different options from which to choose. In addition, a physician can personalize the report, modifying or creating new documents to suit a particular situation. Further, while generating aparticular document, a physician can customize the document by inserting words into the generated document through the use of the integrated word processor.
In an alternative embodiment, the physician can avoid directly using the documenting system by utilizing printed checklists. After a checklist has been filled out by a physician, another individual can generate the desired documents from itemschecked off on the checklist.
The data input into the documenting system is electronically stored for possible future use in reporting and/or analysis. The future uses may include graphical analysis via the graphics engine, cost accounting, time reporting and other desireddocument generation.
It will be appreciated by those familiar with the art that such a document generation system can be utilized in a plurality of environments including medical, legal, government, insurance and other service or document generating environments. Inthe legal field, simple contracts, licenses or agreements could be drafted in this manner. In the government, routine status reports, procurement requests or inspection reports could be produced by such a system. In the insurance field, insuranceapplications could be processed, policies maintained, or claim reports prepared. These and other possible areas of use of the present invention will become apparent after reading the following detailed description.
SUMMARY OF THE INVENTION
A document generation system is provided for enhancing or replacing the dictation and transcription process. More particularly, a computer-based documentation system is provided which processes document templates in conjunction with pre-definedcharacter strings to generate user-defined reports or documents. Each document template is composed of "boiler plate" text and "holes". A system and method are described for controlling, via a relational database, the selection of pre-defined characterstrings to be inserted into document template "holes". A second method is described for inserting user-defined or concatenated character strings into selected document template "holes".
According to another aspect of the document generating system, a computer-based documentation system is described in which the contents of a relational database are used to generate user-defined reports. The database described consists of aplurality of document templates, including option-text variables for use in filling the "holes" in each template, a plurality of variable records for storing pre-defined character strings to replace the option-text variables in the document templates anda selection data file for storing pointers to the selected character strings. A system and method are described for controlling, via document processing means, the selection of pre-defined character strings to be replace the option-text variables in adocument template and for controlling, via document generating means, the generation of a document from pointers in the selection data file.
In addition, a branching function is described, for use within the document processing means, in which selection of a first character string to replace a first option-text variable in a document template will automatically cause a branch to asecond set of character strings which can be used to replace a second option-text variable. A character string selected from this second set of character strings is then appended to the first string and the resulting character string is used to replacethe first option-text variable. The method described permits almost unlimited levels of branching.
BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 is a diagram showing one embodiment of the document generation system.
FIGS. 2a-2c illustrate data structures within different embodiments of relational databases useful in a document generation system according to the present invention.
FIGS. 3a-3b, 4a-4b and 5a-5b are tables illustrative of some of the data structures used in embodiments of three relational databases useful in a document generation system according to the present invention.
FIG. 6 is a table illustrative of an alternate option-text data file useful in the embodiments shown in FIGS. 2a-2c.
FIGS. 7a and 7b are general block diagrams of embodiments of relational databases used in multi-user document generation systems according to the present invention.
FIG. 8 is a drawing depicting a preferred embodiment menu driven, graphical window environment.
FIG. 9 is a drawing representative of a screen display of a document template editing window for creating and editing a document template.
FIG. 10 is a drawing showing one embodiment of an option-text record editing window used for entering and editing character strings for use in replacing option-text variables, an example of an option-text list.
FIG. 11 is a drawing of a screen display of a patient variable selection window useful for selecting subject matter variable for use in a document template.
FIG. 12 is a drawing illustrative of a graphical approach to entering patient information.
FIG. 13 is a drawing illustrative of a screen display useful for associating user-entered character strings with an option-text variable.
FIG. 14 is a drawing illustrative of an alternate screen display useful for entering option-text note strings for use in an option-text variable.
FIG. 15 is a drawing showing a screen display for one embodiment of a method for combining several previously defined document templates to form a new document template.
FIG. 16 is a general block diagram illustrative of the formation of a document from data stored in a document template, patient data file, option-text file and selection data file.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
In the following Detailed Description of the Preferred Embodiments, reference is made to the accompanying Drawings which form a part hereof, and in which is shown by way of illustration specific embodiments in which the invention may bepracticed. It is to be understood that other embodiments may be utilized and structural changes may be made without departing from the scope of the present invention.
FIG. 1 is a diagram of one embodiment of a document generation system. Document generation system 1 comprises a computing device 10, a relational database 2 and a multi-document word processor 6. In an alternate embodiment, document generationsystem 1 further comprises a graphics engine 4 which can be used to analyze data stored within relational database 2. In a second alternate embodiment, document generation system 1 further comprises a printer 8 for printing documents generated by system1.
In the preferred embodiment, computing device 10 comprises an electronic display 14, a data processing device 16, a keyboard 18 and an electronic storage device 20. Storage device 20 is a nonvolatile storage device used for storing informationwithin relational database 2. Electronic storage device 20 can be any device capable of storing data for long periods of time. For example, electronic storage device 20 could be a floppy disk drive, Bernoulli hard drive, Winchester hard disk, analogtape drive, digital tape drive, optical disk drive. It will be appreciated by those in the art that new or improved electronic storage devices can be utilized by the present invention as they become available for use.
In an alternate embodiment, computing device 10 further comprises pointing device 12. In that embodiment, pointing device 12 is used as an alternative input device within document generation system 1. Pointing device 12 may comprise a mouse,trackball, light pen, bar-code scanner or digitizing pad.
Document generation system 1 automates the documentation process by combining the editing power of multi-document word processor 6 with the flexible storage of relational database 2, preferably within a menu-driven, graphic window environment. Documentation system 1 utilizes previously defined document templates composed of "boiler-plate" text and information "holes" to manage patient reporting and includes a user interface for use in selecting phrases to be inserted into "holes" in thetemplate.
Document templates can be created by the user to produce a variety of reports. The user will first design a document. He or she will then assess the document to determine the text that will change from document to document and the text thatwill remain static across all documents. Static text becomes the boiler-plate of the document template; varying text is replaced by option-text variables or "holes".
In the preferred menu-driven, graphic window environment of system 1, a document template is created and edited within a pop-up window. In that environment, a pop-up window appears for the document template to be created and the user then entersthe static text and "holes" necessary to define the document template.
In the preferred embodiment, static text is entered through keyboard 18; a "hole" or option-text variable is generated by selecting a special function key. In that embodiment, at the "hole" location in the document template, the embodiment, atthe "hole" location in the document template, the user depresses the special function key reserved for entering option-text variables. A option-text control menu then appears and the user selects the "New" selection to create an option-text variable. Upon selection, an option-text editing pop-up window appears and the user can enter phrases to be used to replace the option-text variable in the generated document. When all appropriate phrases are entered, the user exits the option-text pop-up window. Computing device 10 then saves an option-text record containing the phrases entered and places a unique variable identifier associated with the option-text record in the document template at the hole location. The user then resumes entering text intothe document template. When all text and variables have been entered, the document template is complete and the user saves the template to nonvolatile memory. In the preferred embodiment, document templates are stored as ASCII files.
To use the document template, a user will select the type of report to be generated. The document template associated with that report is retrieved from nonvolatile memory and computing device 10 begins to evaluate each "hole" in the template. Evaluation consists of scanning the document template for variable identifiers. When computing device 10 finds the first variable identifier in the document template being evaluated, it lists the phrases contained in the option-text record associatedwith that variable identifier. The user then selects one or more of the phrases displayed, the selection(s) are recorded and computing device 10 moves to the next variable identifier. When all variables have been evaluated, a document can be generated.
In the preferred embodiment, variable identifiers are integer numbers surrounded by angle brackets (e.g. <101>). This format simplifies the variable search algorithm.
In the preferred embodiment of documentation system 1, a plurality of pre-defined document templates may also be provided. When the user wishes to generate a document from a pre-defined template, he or she calls up the document template for thatdocument and fills in the "holes" in the template. The text used to fill the "holes" is then saved to storage device 20 where it can be used to generate the desired document.
Relational databases are used advantageously to manage the document templates and the phrases used to replace variables in the templates for documents generated within document generation system 1. A relational database comprises a series ofdata structures containing information linked through common fields. These structures are presented to the user as a collection of tables, each with one or more columns and zero or more unique rows. Relational database 2 uses these structures to store,retrieve and manipulate character strings used to fill "holes" in the document template. These data structures are also used to store user responses captured during document creation and to store relatively static information such as patientinformation. The preferred embodiment of document generation system 1 is implemented with a relational database implemented using a B-tree model. Database manipulation is performed through program calls to executable functions provided by a programcalled B-Tree Filer 5.0 marketed by TurboPower Software of Scotts Valley, Calif. B-Tree Filer 5.0 handles the mechanics of storing, retrieving and indexing records and templates in database 2. Those skilled in the art will recognize that documentgeneration system 1 could be implemented through other data tree structures, or even through the use of look-up tables, without departing from the scope of the present invention.
One embodiment of a relational database 2 for use in a document generation system 1 will be explained in connection with FIGS. 2A, 3A and 3B. FIG. 2A illustrates a relational database 2 comprising one or more document templates 22, anoption-text file 24 and a selection data file 26. Document template 22 comprises one or more text strings 28 and one or more option-text variables 30. Option-text variables 30 are the "holes" in document template 22. A document is generated fromdocument template 22 by replacing each option-text variable 30 with a character string 34.
One embodiment of option-text data file 24 is illustrated in the table shown in FIG. 3A. Option-text data file 24 comprises option-text data records 36 in which are stored a plurality of character strings 34. Each record 36 corresponds to aspecific option-text variable 30 in document template 22. Character strings 34 are strings formed from a unique option-text variable identifier 37 is used to associate a record 36 with its option-text variable 30. This permits the use of an option-textvariable 30 in more than one document template 22. Each record 36 contains N cells 38 (in a typical system N=19); each cell can contain up to one character string 34. Character strings 34 are accessed via their cell address. They are not limited inlength.
One embodiment of a selection data file 26 which can be used with database 2 of FIG. 2A is illustrated in the table shown in FIG. 3B. Selection data file 26 comprises a selection data record 40 associated with each option-text variable indocument template 22. Each selection data record 40 is identified by a document identifier 42 and a variable identifier 37. Each record 40 stores a pointer 46 to a cell 38 of the option-text record 36 associated with the variable identifier 37. Thepointers 46 provide access to character strings selected from option-text data records 36 during creation of a document.
In the preferred graphical environment, document generation system 1 is implemented as a menu-based document generation system which links each option-text variable 30 in a document template 22 to its associated option-text data record 36. Insuch an embodiment the plurality of character strings 34 stored in record 36 are displayed for user selection in the form of a menu. Each option-text variable 30 in the document template 22 points at a predetermined menu. During document processing,each option-text variable 30 is evaluated. If a character string associated with the variable 30 has not been yet selected, system 1 displays the menu associated with the variable 30. The user then selects one or more of the character strings selectedso that it can be used to replace that particular variable 30 in the document. A similar menuing system could be implemented on an alphanumeric screen display.
The menuing approach offers some advantages in the generating of a document. The user is given all available choices and can select the appropriate choice using a pointing device 12 during document processing. When a document is generated, theone or more character strings 34 selected for each variable 30 in a document template 22 replace their respective variables 30.
The data structures defined in FIGS. 2A, 3A and 3B contain information sufficient to generate an individual document for each document template.
A second embodiment of a relational database 2 for use in a document generation system 1 will be explained in connection with FIGS. 2B, 4A and 4B. FIG. 2B illustrates a relational database 2 comprising one or more document templates 48, anoption-text data file 24, a patient data file 150 and a selection data file 152. Document template 48 comprises one or more text strings 28, one or more option-text variables 30 and one or more subject matter variables 154. A document 156 (shown inFIG. 16) is generated from document template 48 by replacing each option-text variable 30 with a character string from option-text data file 24 and replacing each subject matter variable 154 with a character string 158 from patient data file 150.
In one embodiment of the document generation system 1 of FIG. 2B, option-text data file 24 is structured as in FIG. 4A. In that embodiment, a separate patient data file 150 is created. That patient data file 150 is illustrated in the tableshown in FIG. 4A. Patient data file 150 comprises patient data records 160 in which are stored a plurality of character strings 158. Each record 160 corresponds to a specific subject matter variable 154 in document template 48. A unique subject mattervariable identifier 162 is used to associate a record 160 with its subject matter variable 154. This permits the use of a subject matter variable 154 in more than one document template 48. As in option-text data file 24, character strings 158 ofpatient data records 160 are accessed via their cell address.
One embodiment of a selection data file 152 which can be used with database 2 of FIG. 2B is illustrated in the table shown in FIG. 4B. Selection data file 152 comprises a selection data record 40 associated with each subject matter variable 154in document template 48. Each selection data record 164 is identified by a document identifier 166, a variable identifier 163 and a subject matter identifier 162. Each record 164 stores a selection indicator 170 which points to either a cell withineither option-text data record 36 or patient data record 160, depending of the type of variable. Variable identifier 163 may point either to an option-text data record 36 (OVT[x]) or to a patient data record 160 (PV[y]) depending on the type of variablebeing replaced.
Patient data file 150 contains information about specific patients. The patient data information may include specific information about a particular patient such as name, address, etc. Patient data records 160 provide a mechanism for storingpatient information in a central location accessible to different document templates 48 and even to different users. It should be obvious that a data structure similar to patient data file 150 can be implemented for any subject matter which wouldbenefit from a central storage approach.
The data structures of FIGS. 2B, 4A and 4B contain information sufficient to generate individual documents identified by patient and document type. In an alternate embodiment, documents generated from the same document template 48 for the samepatient or subject matter can be differentiated by adding a date entry to the selection data records 64 in selection data file 52.
A third embodiment of a relational database 2 for use in a document generation system 1 will be explained in connection with FIGS. 2C, 5A and 5B. FIG. 2C illustrates a relational database 2 comprising one or more document templates 48, anoption-text data file 24, a patient data file 150, an option-text note data file 180, a report log 182, a date stamp function 184 and a selection data file 186. The embodiment shown in FIG. 2c adds two additional data structures (option-text note datafile 180 and report log 182) to those structures defined in FIG. 2b. In addition, FIG. 2c adds a date stamp function 184 that permits the identification of records by date and time.
In one embodiment of the document generation system 1 of FIG. 2C, option-text data file 24 is structured as in FIG. 3A and patient data file 150 is structured as in FIG. 4A. In that embodiment, a separate option-text note data file 180 and aseparate report log 182 are created.
In one embodiment (not shown), option-text note data file 180 comprises option-text note data records 191 in which are stored a single user-defined text note character string. Each record 191 corresponds to a specific option-text variable 30, aspecific patient, a specific document template 48 and a specific date. To do this, each option-text note data record comprises an option-text variable identifier 37, a subject matter identifier 162, a document identifier 166 and a text note date entry195.
The means for forming an option-text note must be part of option-text record 36. In the preferred embodiment, a special option-text note option function is placed in one of the cells 38 of record 36. During document processing, option functionis displayed along with the other entries of record 36. When function is selected a window opens for free text entry of the option-text note.
In the above embodiment, option-text note processing can be designed such that, when a user chooses to enter an option-text note character string, a screen is displayed so that string can be entered by the user. The length of the characterstring entered is then measured. If the length of the option-text note character string is below a threshold, the string is stored directly in selection data file 186. If the length of the string is at or above the threshold, the string is stored inoption-text note data record 191.
One embodiment of a report log 182 is illustrated in the table shown in FIG. 5a. Report log 182 comprises one or more report log records 198 in which are stored a record of the date a report was created and the patient for whom the report wascreated. Each report log record comprises a document identifier 166, a patient identifier 162 and a date entry 196. Report logs permit the user to maintain reports for the same patient generated from the same template.
One embodiment of a selection data file 186 which can be used with database 2 of FIG. 2C is illustrated in the table shown in FIG. 5B. Selection data file 186 comprises a selection data record 192 associated with each subject matter variable 154in document template 48. Each selection data record 192 is identified by a document identifier 166, a variable identifier 163, a subject matter identifier 162 and a date entry 196. Each record 192 stores a selection indicator 194 which points to eithera cell 38 of the option-text data record 36 associated with variable identifier 163 or a cell 161 of the patient data record 160 associated with the variable identifier 163 and subject matter identifier 168. Variable identifier 163 may point either toan option-text data record 36 (OVT[x]) or to a patient data record 160 (PV[y]) depending on the type of variable being replaced.
The data structures of FIG. 2c contain information sufficient to generate individual documents identified by patient, document type and the date the document was created.
An alternate embodiment of the option-text data file 24 shown in FIGS. 2a-2c is described in connection with the tabular illustration of an option-text data file 200 shown in FIG. 6. Option-text data file 200 adds a branching function to datafile 24. Option-text data file 200 comprises option-text data records 202 in which are stored a plurality of character strings 34. Each record 202 corresponds to a specific option-text variable 30 in document template 22 or 48. A unique option-textvariable identifier 204 is used to link a record 202 with its associated option-text variable 30. This permits the use of an option-text variable 30 in more than one document template 22 or 48.
In the embodiment shown in FIG. 6, each record 202 comprises N string cells 205 (in a typical system N=19) and N branching option cells 206. Each string cell 205 can contain up to one character string 34 and, like the embodiment shown in FIG.3a, character strings 34 are accessed via their cell address and are not limited in length. In addition, each string cell is associated with a separate branching cell (in the example shown in FIG. 6, B[1] is the branching cell for S[1], B[2] is thebranching cell for S[2], and so on).
In operation, (looking at FIG. 6) when a document creator wishes to offer a branch on a particular character string 34, he or she edits option-text data record 202 and associates that character string 34 with a second option-text identifier 204. (For example, to associate an identifier 204 with a character string stored in cell S[2], store identifier 204 in cell B[2].) When a user processes a document template containing the option-text variable 30 associated with that record 202, dataprocessing device 16 displays the character strings S[1-N] contained in record 202. If the user selects the character string stored in S[2], the system branches so that the variable 30 associated with the second option-text identifier 204 can beevaluated. The character string selected during the second variable evaluation is then appended to the branching character string. In the previous example, the selected character string would be appended to the character string stored in S[2].
In yet another embodiment, a multi-user system partitions relational database 2 into a plurality of parts. Typical databases 2' for a multi-user system are shown generally in FIGS. 7a and 7b. The embodiments shown in FIGS. 7a and 7b aredescribed in connection with selected data structures of FIG. 2c.
Relational database 2' comprises user-specific document templates 48, option-text data records 36 and selection data records 192. In the example given in FIG. 7a, information in patient data file 150 is stored such that more than one user canaccess patient information. In addition, a date stamp function 184 may be placed such that it is accessible to many users. In such an embodiment, each user may have access to the shared information in patient data file 150 for use in generatinguser-specific documents 210 and may define specific document templates 48 incorporating available data in a manner which seems appropriate for the particular document 210 desired. For instance, such a multi-user system might be used in a hospital orclinic wherein a variety of different types of physicians are using document generation system 1. An orthopedic surgeon and a gynecologist probably would not want to have the same document template 48 for describing an office visit; however, bothphysicians may need to incorporate specific patient data including name, age, address, date of birth and insurance provider into a particular report document. Significant cost savings and efficiency can be achieved by sharing this information betweenvarious individuals utilizing document generation system 1. At the same time, it is typically necessary to provide flexibility within the document generation system 1 to allow custom documents or reports to be generated for a particular situation. As aresult, relational database 2' preferably is partitioned into user-specific data and sharable data. Such a configuration can be utilized across a local area network comprising a plurality of computing devices 10 connected to a relational database 2'which has user-specific and sharable portions of data.
In an alternate embodiment of a multi-user relational database 2', as is illustrated generally in FIG. 7b, sharable data coverage has been expanded to include option-text data file 24' and document templates 48'. Such a system would permitflexible sharing of document templates 48' and their associated option-text data records 36'.
In yet another alternate embodiment of multi-user relational database 2' (not shown), a system could be constructed in which each user has a private option-text file and a private document template file. Each user would also have access to apublic option-text file and a public document template file. Such a system would provide a balance between access to user-specific document templates and templates for generating general usage documents.
The computing device 10, in combination with the multi-document word processor 6 and relational database 2, provides a user interface for utilizing the document templates 22 and 48 to generate a document. The multi-document word processor 6provides an editing environment for making user modifications to the text strings 28, to the character strings 34 of option-text data records 36 and to the character strings 158 of patient data records 160. Interaction of the electronic display 14, dataprocessing device 16 and keyboard 18 provide a selecting function for selecting at least one character string 34 from the plurality of character strings 34 associated with a particular option-text variable 30. This selecting function may be accomplishedby depressing key actuators on keyboard 18. In an alternative embodiment, movement of a pointing device 12 in combination with electronic display 14 accomplish the selecting function. Similar interaction provides a selecting function for selecting atleast one character string 158 from the plurality of character strings 158 associated with a subject matter variable 154.
The elements of the user interface further combine to provide a document generation function which generates a document in which variables 30 and 154 are replaced by character strings obtained from pointer information stored in selection datarecords 40, 164 or 192.
Security access to stored data preferably is provided by the document generation system 1. Security access may be provided by distinguishing between each user's data and reports through the use of a user name. In the preferred embodiment, theuser name is comprised of the first and last name of a user followed by an optional security password. The first and last name are combined to form a pointer to a storage location within relational database 2 which can typically be accessed by a useronly after entering his or her first and last name as well as a security password.
The preferred embodiment document generation system 1 further includes a contextual help function in which operating instructions for use of the document generation system 1 can be displayed on electronic display 14 or printed to printer device8.
FIG. 8 is a drawing depicting a preferred embodiment menu-driven, graphical windowing environment. This windowing environment of document generation system 1 supports both text and graphics operation modes. A user can choose between the twodifferent modes of operation. In either mode of operation, the appearance and functionality of the document generation system remains substantially consistent. The only limitation is that the use of an alternative embodiment graphics engine typicallyis not available in text mode operation.
The preferred graphics window environment 50 is divided into three areas. The areas include a top window section 52 which preferably displays the date, time, product name and main menu selections. Top window section 50 includes pop-up windows53 which appear when one of the main menu selections is activated. Pop-up window 53 includes a listing of the sub-menu selections 51 associated with the activated main menu selection.
Window environment 50 further includes a middle window section 54 where documents, graphics and dialogue windows can be displayed and manipulated. The graphics window environment 50 further includes a bottom window section 56 which displaysstatus information for such things as the word processor 6, a generated report, particular selections of report and patients, and keyboard choices.
The operation of document generation system 1 will be explained using the data structures described in connection with the multi-user system shown in FIG. 7a.
One of the first steps in using the document generation system 1 is to create a document template 48. One embodiment of a template editing window 58 for creating and editing a user-modifiable document template 48 is shown in FIG. 9. User-modifiable document template 48 comprises one or more option-text variables 30 embedded in text. (In the embodiment shown, option-text variable identifiers 37 are integers starting at 101. A unique integer is associated with each variable 30employed by a user.)
In the preferred embodiment document generation system 1, a plurality of different documents 156, or reports, can be generated for different needs. For example, a physician will probably create a separate report for initial visits and forfollow-up visits by a particular patient as well as a separate report for writing a prescription.
During the process of creating a document template 48, a user typically defines the contents of option-text data records 36 associated with each option-text variable used. FIG. 10 is a drawing showing one embodiment of an option-text recordediting window 60 used for entering and editing character strings 34 in a data record 36. In the embodiment shown in FIG. 10, window 60 displays the contents of the option-text data record 36 being edited. A user can add, delete or modify characterstrings 34 within option-text record 36 through the use of word processor 6. (In the example shown in FIG. 10, character strings 62 or 64 may be selected by the user during document processing in order to insert the selected string into documenttemplate 48.) By selecting different character strings 34 within record 36, a user can customize a particular report for a particular patient corresponding to a particular office visit. For example, document template 48 can be combined with theselection of character string 62 to form a document stating "patient came in complaining of fatigue, . . . ".
In the preferred embodiment, the user interface provides combination operators which can be used to select more than one character string 34 from within an option-text data record 36. For example, if the user selects combination operator 66, theuser interface will prompt the user to select two character strings 34. The selected character strings 34 will then be combined to replace the variable 30 associated with record 36 when a document is generated. In the example shown in FIG. 10, theselection of combination operator 66 followed by the selection of strings 62 and 64 would cause system 1 to replace the associated variable 30 with the phrase "fatigue and loss of appetite".
Another typical step in utilizing the document generation system 1 is the entering of patient data into patient data records 160 of a patient data file 150. FIG. 11 is a drawing showing one embodiment of a patient variable selection window 68useful for selecting subject matter variables 154 to be used in a document template 48. Each subject matter variable 154 is associated with a patient data record 160 of patient data file 150.
In the preferred embodiment, patient information stored in data file 150 can be utilized by a plurality of users through the selection of particular subject matter variables 154 within window 68. Variables 154 selected are inserted into documenttemplate 48 at the point where the call to the window 68 function was initiated.
In one embodiment of the present document generation invention, patient specific information is entered into a patient data entry window 70 as shown in FIG. 12. By using patient data entry window 70, the user interface typically will prompt theuser for various patient specific information such as last name, first name, middle initial, home phone and health insurance company ID number. After a user enters this information into window 70, each piece of patient information can be stored inrelational database 2 in the appropriate patient data record 160. Subsequently, such information can be retrieved by all users for use in generating a document 156.
After creating suitable document templates 48 and entering patient information into patient data records 160, a user can generate a set of selection data records 186 which can be stored in selection data file 186. To create a particular set ofselection data records 192, a user will first select a particular patient for which a report is to be generated. Shown in FIG. 8 is a preferred embodiment menu from which to choose the option of specifying a particular patient. A user may select the"choose patient from list" selection 51 from the sub-menu selections 51 displayed in pop-up window 53. As a result of such a selection, preferred computer device 10 will display another menu from which to choose a particular patient for generating areport. After the user selects a particular patient from the menu, the user typically will select a "single report" selection 51 within pop-up window 53 in order to designate a particular report document which is to be generated for this particularpatient. Upon selecting "single report", a window including a menu of possible document templates 48 which can be used to generate a document will be shown. A user will then typically select the particular document template 48 which is to be used inconjunction with the selected patient. Subsequently, the selected document template 48 will be shown on electronic display 14 for review by user. Data processor 16 preferably will prompt the user to select particular character strings 34 within theoption-text data records 36 associated with option-text variables found in the selected document template 48. An example of such a document template 48 is shown in FIG. 9, and an associated example option-text data record 36 is shown within option-textrecord editing window 60 of FIG. 10. Data processor 16 typically will prompt the user to select one of the character strings 62 or 64 displayed in window 60 before allowing the user to generate a report.
FIG. 13 is a drawing showing one embodiment of an option-text record selection window 74 used for selecting one of the plurality of entries in an option-text record 36. In the example shown in FIG. 13, option-text record 36 comprises two specialfunction entries 69 and 71. When a user selects special function entry 69 from window 74, system 1 automatically replaces the variable 30 associated with record 36 with the current date. When a user selects special function entry 71, system 1automatically generates a text entry window 73 that can be used to enter a single line of data of up to 27 characters. That line of data is then stored in the selection indicator section of the selection data record 192 associated with record 36 forsubsequent use in generating a document derived from the selection data record 192.
In another embodiment (not shown), entry 71 is replaced with an option-text note option function as described previously. When a user selects option-text note option function, system 1 automatically generates a text note entry window 73' asshown in FIG. 14 that can be used to enter up to six full pages of text. That text is then stored in option-text note data file 180 as described in the discussion accompanying FIGS. 2C, 5A and 5B. Option-text notes are useful. They provide a mechanismfor the user to customize a report for a particular situation when, for example, the character strings 34 provided with data record 36 are not appropriate for a particular situation or when a user desires to add additional information into the report atthat particular point.
After a user has selected replacement strings for all of the option-text variables 30 within a document template 48, he or she can electronically store the resulting selection data records 192 in electronic storage device 20.
In addition, a user may choose to generate a document 156. Shown in FIG. 16 is a diagram showing a preferred embodiment procedure for generating a document in a system similar to that shown in FIG. 2b. A typical generated document 156 isderived from a data structure 48 in combination with option-text data file 24, selection data file 152 and patient data file 150. Data preferably is inserted into data structure 48 at the points occupied by option-text variables 30 and subject mattervariables 154. In particular, option-text variables 30 are replaced with character strings from the appropriate option-text data record 36 or, if appropriate, from the option-text note associated with record 36. Subject matter variables 154 arereplaced with character strings obtained from the appropriate patient data record.
After generating a document 156, document generation system 1 can display a generated document on the electronic display 14 of computing device 10 and/or output the generated document to printer 8.
FIG. 15 is a drawing showing an alternative preferred embodiment example of selecting several previously defined document templates 48 to form a new document template 72. It may be desirable to generate a complete patient report includingseveral separate reports. For instance, a complete patient report document might include a report document template 48 for "an initial visit," "lab results," and "follow-up" for ease of data entry and subsequent document generation these separatedocument templates 48 may be combined into a single document template 72. As a result, a plurality of different multiple document template definitions 72 may be generated for specific needs. Shown in FIG. 15, multiple document template definitions 72normally will include several document template definitions 48. A user can define the order in which each document template 48 will appear in multiple document template definition 72. After a user has selected each of these desired document templates22 in a particular order, a multiple document template definition 72 preferably can be stored on electronic storage device 20. Subsequently, multiple document storage definition 72 is typically selected by a user for use with a particular patient in asimilar manner as was used to select a document template 48.
In an alternative embodiment, document generation system 1 can generate a checklist document including indicia of character strings 34 to be chosen within an option-text data record 36 for a particular document template 48. A printed copy of thechecklist document can be utilized by a user to indicate preferred character strings 34 to be included in a generated document for a particular patient at a particular time. For example, a user might use a medical check-up checklist document to selector indicate particular information on an office visit by a patient. Such information might include measured weight of the patient during the office visit, new height or weight, symptoms of illness shown by the patient, diagnosis of an illness, andprescribed treatment of the illness. Subsequently, the same or a different user of the documentation generation system may enter the information indicated on the check sheet document to generate a report on the office visit by the patient.
As stated earlier, in one alternate embodiment, the document generation system 1 shown in FIG. 1 further comprises graphics engine 4. The graphics engine 4 is an option preferably provided within the document generation system 1 which allowsvisual analysis of data stored within the relational database 2, including analysis of selection data records 40, 164 or 192 and patient data records 160. Data is displayed on electronic display 14 in various forms within windows on the screen. Theforms may include the following graph types:
3-D Bar
Line
Area Fill
Pie
Histogram
The graphics engine 4 allows a user to manipulate a graph in a wide variety of ways. Each data item has its own graphics definition, thereby allowing a mixture of graph types to be displayed simultaneously on the same graph. For example, agraph could contain a line of data overlaying a series of 3-D bars.
Preferred computer device 10 further includes a graphics editing mode of operation in which almost every aspect of a graph can be modified by user, including graph type, color, style, hatching, exploded pie pieces, x-axis and y-axis value rangesas well as number of points. In such an embodiment, the definition of the graph typically is stored by the electronic storage device 20 as an option-graphic image definition.
Preferred document template 48 further comprises an option-graphic variable for electronically storing a plurality of user-definable option-graphic image definitions. Such a computer device 10 typically further includes a selection function forselecting an option-graphic image definition within an option-graphic record associated with the option-graphic field. Subsequently, a document may be generated comprising the selected option-graphic image definition.
The document generation system 1 further preferably includes an analysis mode of operation in which data processor 16 can analyze electronically stored indicia of documents to produce graphs, tables or patient billing reports. Such analysis mayinclude analysis of types of procedures performed and the results obtained. Analysis programs can sort on the selection indicators in selection data records to produce charts comparing the type of procedure and its result to other procedures. Inaddition, practice trends can be easily analyzed.
In another embodiment, patient billing reports may be based upon selections made within option-text records 36 within one or more document templates 48 related to a particular patient. For example, a bill could be generated for an office visitby analyzing the time spent with the patient indicated by a selection within an option-text field as well as the diagnosis made and the treatment prescribed. In addition, a brief description of the services provided could be incorporated into thebilling document by deriving particular information from the electronic analysis of the selection data corresponding to a particular patient.
Although the present invention has been described and illustrated with a certain degree of particularity, it is understood that the present disclosure of embodiments has been made by way of example only and that numerous changes in thearrangement and combination of parts as well as steps may be resorted to by those skilled in the art without departing from the spirit and scope of the present invention as claimed. For example, the document generation system could be utilized by otherprofessionals such as attorney's, accountants, psychologists, dentists and consultants. Each of these professionals may find significant cost savings and increased efficiency by utilizing a document generation system similar to the previously describedpreferred embodiments.
* * * * *