Medical information query system

A query system is provided for retrieving information from a medical information system, or its databases. A user interactive query wizard facilitates creation of query scripts for retrieval of information from the medical information system. Queries may be performed across a set of patients, hospitals or clinical resources. Query results are presented via an output device, such as a computer display. These results may be exported to other applications, such as known office or desktop applications, or other systems, such as database systems.

FIELD OF THE INVENTION

The inventive concepts relate to network computer systems and methods. More specifically, the present invention relates to systems and methods for creating, customizing and performing queries of medical data, such as patient, resource, or hospital data.

BACKGROUND

When an individual is admitted as a patient into a hospital, certain information about the patient must be acquired and made available to various members of the hospital staff. Such information includes, for example, the patient's identity, address, age and occupation, next of kin, medical history, conditions for which treatment is sought, preexisting conditions, and any medical insurance information.

During a patient's stay in a hospital, written information relating to his medical history, doctors' and nurses' observations and remarks, laboratory reports, diagnoses, doctors' orders, prescriptions and other notes by the medical team, including doctors, nurses, technicians, orderlies and the like, become part of the patient's file. Patients with chronic conditions or who are frequently hospitalized may have numerous files of substantial size which contain important historic, as well as current, information. The information that is necessary to provide a complete picture of the patient includes, for example, the patient's vital signs, fluid balance, respiratory function, blood parameters, electrocardiograms, x-rays, CT scans, MRI data, laboratory test results, diagnoses, prognoses, evaluations, admission and discharge notes, and patient registration information. This information originates from a variety of sources, including the patient, doctors, nurses, monitors connected to the patient, testing laboratories, the patient's medical records, and hospital administration records.

A massive amount of information about the patient is therefore generated in a relatively short time. Increasingly, this information is automatically recorded or manually entered into a computer-based medical information system. Critical care environments, such as hospital intensive care units, trauma units, emergency rooms and the like, are filled with state-of the-art electronic equipment for monitoring of patients. Such systems include a plurality of patient monitoring devices that record information related to the patient's status. These systems may also capture information about the medical resources being consumed.

Furthermore, many hospitals have changed the way in which patients are billed for services. In the past, patients were typically billed on the basis of days hospitalized. With recent changes in health care management and practice, patients are now more likely to be billed on the basis of treatments received. Greater efficiency in the treatment of patients is therefore emphasized. As a consequence, hospitals now scrutinize the effect of a treatment on a patient more closely, with increased monitoring, observation and recordation of the patient's responses to treatment. The burden of entry of the increased amount of information that must be recorded about a patient has been reduced by increased automation.

Commonly owned U.S. Pat. No. 6,322,502 B1 entitled Medical Information System provides an example of a system for obtaining data and information from and about patients in a hospital, and making it immediately and selectively accessible to various members of the medical team in a hospital in accordance with the functions performed by those members. This information may be displayed, at least in part, on screen in a flowsheet. To date, systems and methods for the automated robust query of such data and information are not provided, but could be extremely useful. For example, the ability to search across a plurality of patients with respect to a given set of parameters would provide a useful analytical tool for clinicians and administrators. Searches based on hospital or clinical resources would also help analyze and improve efficient distribution and usage of such resources.

SUMMARY OF THE INVENTION

In accordance with the present invention, a system and method are provided that enable the creation, customization, and performance of queries (or searches) of information collected, obtained, or stored in a medical information system. The results of such queries assist clinicians in their research, analysis, treatment, resource utilization, and quality assurance activities. A query wizard tool is provided for retrieving information from a medical information system, or its databases. Queries may be performed across a set of patients, hospitals or clinical resources. Query results are presented via an output device, such as a computer display. These results may be exported to other applications, such as known office or desktop applications, or other systems, such as database systems. Among other things, the query wizard tool facilitates creation of scripts for retrieval of information from the medical information system.

A typical medical information system in a clinic, hospital, or other medical facility may be a networked computer system that collects, stores, analyzes and manages a variety of types of data referred to as “patient data”. Patient data may include dynamically changing data. Examples of dynamically changing patient data that may be monitored include a patient's heart rate, temperature, blood pressure, respiration rate, electrical brain activity, chemical balance or composition. Patient data may also include relatively static data, such as prior or current medical conditions, diagnosis, prognosis, statistics, and so on for one or more stays for each of a plurality of patients. These types of patient data are referred to as parameters, which may be grouped together as sets of related attributes. Many other types of patient data (or parameters) known in the art may also be collected or monitored. An account management system may be included as part of the medical information system, or it may be interfaced with the medical information system. The account management system typically stores patient account information, including patient name, address, telephone number, insurance information, billing and payment information, and the like, as static data.

Given the inclusion of dynamically changing patient data, monitors to collect in real-time or near real-time patient data during a patient's stay is also typically provided. Monitoring is typically accomplished, to some degree, using bedside units (BSUs), which are devices included in or configured to interface with the medical information system and posted proximate to the patient. BSUs may include output mechanisms such as display screens, printers, audible alarms, communication ports or some combination thereof, and input devices such as key pads, key boards, input ports, probes, sensors, cameras, recorders or interfaces to other data sources.

In accordance with the present invention, a query system is integral with or interfaced to the medical information system. The query system interfaces with the medical information system and various patient monitoring systems and devices. The monitoring systems and devices make data available to the query system (via the medical information system) for retrieving data according to the query script. The query system may include or may be configured for access by any of a variety of devices, such as a desktop computer, workstation, laptop, personal digital assistant (PDA), telephone, server, or other network enabled device or programs, modules or components of such devices. That is, in accordance with various embodiments, query scripts may be defined, queries may be launched, or query results may be provided to or accessed by any of the above devices.

The query system includes a query wizard that provides a user interface for the creation, running and analysis of queries and query results. The query wizard includes logic and instructions necessary for establishing a graphical user interface for user devices (e.g., a desktop computer, workstation, PDA, and so on), generating and defining query scripts, processing inputs and outputs, and interfacing with other relevant devices and programs (e.g., operating systems, desktop applications, and so on). The query wizard may include program code distributed across various devices, e.g., arranged in a client-server architecture, or implemented in other manners known in the art. Preferably, the query wizard generates a user interface in a Web browser context and implements commonly available and known Web browser features, such as radio buttons, toolbars, drop-down lists, menus, text entry fields, graphical linking and so on.

Using the query wizard, queries are created by constructing a user (e.g., clinician or administrator) defined script that utilizes patient data. The algorithm embodied in the script is comprised of query attributes and related parameters, which form parameter-based tests or conditions to be met. As an example, a statement may be defined as “if temperature>100 degrees, then . . . ”. Depending on the script, processing of patient data according to one or more statements returns certain results. The results may be provided on a display in a grid or table format, or they may be output in other forms, such as graphical plots or charts, audible speech or tones, dynamic video, of some combination thereof. Queries may be saved and attached to or embedded within other queries.

A set of filters may be defined and applied selectively to query attributes. For example, at least four types of filters may be applied to a given attribute: time, text, numeric, and checkbox. The time filter allows a user to apply specific time values to the selected query attribute(s). The text filter allows the user to include or exclude text values with or from the query. The numeric filter allows the user to include or exclude numeric values with or from the query and allows the application of statistical functions to filter data. The checkbox filter allows the user to apply “yes” or “no” values to query attributes.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

A system and method in accordance with the present invention facilitate the creation, customization, and performance of queries (or searches) of information collected, obtained, or stored in a medical information system. The results of such queries assist clinicians in their research, analysis, treatment, resource utilization, and quality assurance activities. A query tool or wizard generates an interface for creating queries and retrieving information from a medical information system, or its databases. Through the query wizard a user can define a query by writing a script that indicates the types of attributes and parameters to be searched. Queries may be performed across a set of patients, hospitals or clinical resources. Query results are presented via an output device, such as a computer display. These results may be exported to other applications, such as known office or desktop applications, or other systems, such as database systems.

In the preferred form, a query system is used in conjunction with a medical information system, such as that described in U.S. Pat. No. 6,322,502B1. The medical information system may include or be used in conjunction with a clinical system that is used for administering clinical trials. In the preferred form, the medical information system includes bedside devices and systems (collectively “bedside units” (BSUs)) for patient monitoring and care. The medical information system provides a means for monitoring patients and collecting, storing, and maintaining patient data. Patient data may include a combination of relatively static and dynamically changing information related to a patient. Relatively static patient data may include the patient's name, address, and insurance information, as well information regarding the patient's medical history and prior care, diagnosis, prognosis, treatment and related information. Dynamically changing patient data may include a patient's heart rate, temperature, blood pressure, respiration rate, electrical brain activity, and chemical balance or composition.

The present invention may be implemented within the architecture depicted inFIG. 1A, as one possible embodiment. In this embodiment, a medical information system110comprises several workstations connected to a set of servers (not shown) via a network115. The workstations and servers may be local, remote, or some combination thereof to each other. The medical information system110serves as the collector and maintainer of patient data, in a database system112. The medical information system110includes a plurality of BSUs140that monitor patient status and collect patient data. In the preferred form, the BSUs also couple to network115. Network115is depicted as a local area network (LAN) for simplicity. However, the present invention is not limited in this manner. Network115may by a LAN, wide area network (WAN), virtual private network (VPN), the Internet, World Wide Web or some combination thereof.

FIG. 1Ashows a query system120in accordance with the present invention linked to medical information system110via network115. There may additionally, or alternatively, be provided a wireless network link135between query system120and medical information system110. The query system120may include its own database system122for storing information and data related to the queries (e.g., query scripts, algorithms, filter information and data) as well as results related data. In other embodiments, the query system120may be hosted on the same servers, workstations and computers as the medical information system110and may share at least a portion of database112. Query system120and medical information system110may access, or may be accessed by, one or more remote systems130, with their own database systems132, for data access, exchange, or maintenance. For example, such remote systems130may include wired or wireless computers, servers, cellular telephones, pagers, personal digital assistants, e-mail devices, or other network, Web or Internet enabled systems or devices configured to create and launch queries and additionally, or alternatively, to receive query results. In the preferred embodiment, the query system120includes a query wizard125that facilitates the creation of query scripts using a scripting language, e.g., VB Script, although other programming languages may be used. In the preferred embodiment, a script is a VB Script function.

One embodiment of a query method in accordance with the present invention is depicted in the flowchart180ofFIG. 1B. In this form, a user defines a question in step182, selects initial query options in step184, names and categorizes the query in step186, selects the attributes and filters to be applied to the query in step188, and may then execute the query in step190.

FIG. 2Aillustrates an embodiment of a query wizard main screen200in accordance with the present invention. The query wizard main screen200facilitates the creation and launching of queries and presentation of query results. The query wizard main screen200comprises an icon toolbar202, which contains icons for creating, saving, running, and sorting queries. The query wizard main screen200includes three tabs that facilitate creating queries and viewing results: Query Wizard, Script, and Results. These tabs reveal corresponding windows and panes having certain information and functionality associated therewith.

A New Query (NQ) icon is used to create a new query and a Save Query (SQ) icon saves the current query, i.e., the query that is open in the query wizard composition window230. As part of the save function, the user is prompted to name the query. If the name typed already exists, the user will be prompted to type an alternative name. The query may be saved to the database chosen by user and is displayed in the Saved Queries folder of initial query options pane220, which also includes a set of predefined attributes (e.g. Patients). A saved query can be retrieved from the database in which it was saved. A Saved Query Filter (SQF) icon allows a user to filter the display of saved queries.

A Delete Query (DQ) icon allows a user to delete its own query, but it is not possible to delete queries created by other users, in the preferred embodiment. An Attributes Filter (AF) icon causes the display or hiding of query attributes that were not used in the current query. A Change Database (CD) icon allows a user to select the database of another department from a list of databases. A database is usually named for the department to which it corresponds and is listed by department name in the query wizard125. The database list includes online and archived offline databases, providing they are a part of a master list of accessible databases. Note that, in the preferred embodiment, changing databases selection may require authentication of the user, e.g., login via entry of a valid username and password, if access to that database is controlled.

An Export Query (EQ) icon allows a user to place its query results into another applications, e.g., a Microsoft Office™ application. (Note, Microsoft Office™, Word™, Excel™ and Access™ are trademarks of Microsoft Corporation, Redmond, Wash.). The Export Query icon is enabled only if there were results returned by the query. A Run Query (RQ) icon allows a user to run the query. A query may run for several minutes if the database is large and the requested information is distributed over numerous tables, query attributes, databases or systems. In one form, the query results are displayed in a grid in the Results pane250(seeFIG. 2C). A Stop (S) icon is enabled during the processing of a query, e.g., while the results are being written to the Results pane250.

Selection of a Sort by Query Category (SC) icon causes the display of saved queries by Query Category. Selection of a Sort by User Name (SN) icon causes the display of saved queries by name of the user that created them. An Open note (ON) icon appears in the toolbar202after a Notes query has been run. The Open note icon allows a user to open a note (‘read-only’) of a Notes query. An Export all notes (EN) icon also appears in the icon toolbar202after a Notes query has been run. This icon is selected to export all the notes of the Notes query results page to an editable Microsoft Word™ document.

A Query Filter (QF) icon facilitates display of a query setup pane260. The query setup pane260comprises several selection mechanisms. For example, a Display Fields area262provides a list of fields for selection by the user. Selected display fields are entered into query fields area264; these are the fields to be displayed in the Query Results pane250when the query is run. The user may also define a name for its query from Query Name area266and choose a category from Query Category268. Setup pane260is discussed in greater detail below, with regard to building a query.

A Query Wizard window210is comprised of two panes, an initial query options pane220and the composition pane230. An Initial Query Options tree222is included in the initial query options pane220and a query attributes tree232is included in the query attributes pane230. Initial query options are selected and “dragged” from the Initial Query Options tree222to composition pane230to yield the query attributes tree232. The setup pane260is also included in query wizard screen210, and includes different user selectable filter options.

The initial query options pane220is a source to help define the type of query to be performed by dragging an option into the composition pane230. For example, a Patients query type retrieves data from the medical information system110patient files and discharge forms, known in the art. A Signals query type retrieves data from the medical information system110flowsheet. A User Attributes query type retrieves data from the medical information system110user list. A Parameter Attributes query type retrieves data from a parameter properties form. An Orders query type retrieves data from an order list, with some additional data from an order entry form. An Order components details query type retrieves data on specific order parameters. A Notes query type retrieves data from the Notes module of the query wizard. A Problems query type retrieves data from a problem list, or database.

Selection of the Script tab causes presentation of a Script pane240, shown inFIG. 2B. The Script pane240includes VB script that represents the query that was created from the Query Wizard window210. The script in Script pane240may also be used as a part of a MS Word™ or Excel™ template that produces a table similar to the one displayed in Results pane250, shown inFIG. 2C. Results pane250includes the results of the query created in the composition pane230, after it is run. In this example, the results are displayed in a table that includes columns with details from the display fields selected for the query from setup pane260.

Building a Query

At a top level, the procedure for building a query includes of the following steps: (1) defining a query (i.e., the “first” and “second” part of the user's question); (2) dragging and dropping the appropriate options from Initial Query Option tree222into the composition pane230; (3) naming the query and choosing an appropriate Query Category in setup pane260; (4) defining the display fields; and (5) defining the query attributes and setting the appropriate filters. After the query is built, the user may continue by: (6) running the query; and (7) saving the query and/or export the query results. This process is depicted in the flowchart200ofFIG. 1B.

At a more detailed level, queries may be built step-by-step starting from the query wizard main screen200shown inFIG. 2A. A new query may be created according to the following steps:

Step 1: In this step, the user defines a query. The initial task in the query building process is the formulation of a query question. That is, the user must determine what it is that the user wants to know and exactly what type of results information is required. As an example (i.e., Example 1), suppose the user wants to know: “Which patients have had heart rate values between 150 and 250?” And, a definition of the required results information is “Display a list of patients that will include patient name and hospital number.” Formulation of this query for query wizard125would be “Retrieve a list of patients (names+hospital numbers) with heart rate values greater than 149 and less than 251 with their Heart Rate values displayed.”

Step 2: In the second step, the user selects the desired initial query options by dragging and dropping the appropriate options from the Initial Query Option tree222ofFIG. 2Ainto the composition pane230, both of query wizard window210. The initial query option is selected to reflect the first part of the original question, which in Example 1 was “Which patients . . . ?”. Once dropped into composition pane230, a corresponding attributes tree232for the Patients query option is presented. For example, the attributes tree includes patient related attributes, such as Admission time, Admission weight, Admitted by. Therefore, continuing Example 1, since the user asked a question about “which patients”, the Patients option213is selected and dragged into the composition pane230.

Step 3: In the third step, the user names the query and chooses an appropriate query category. To accomplish this, the user enters a query name in the Query name field266of the setup pane260. In the preferred form, by default, the name of the option selected from the Initial Query Options tree222is written into the Query name field266, but can be overwritten by the user. Preferably, the user defined query name describes the contents of the query being created. Continuing with Example 1, assuming the category Patients has been selected, the user enters a user defined query name “HR150-250” into Query name field266.

To simplify the process of saving and finding queries, they must be saved in an existing query category. Referring toFIG. 2A, the user selects a query category from the Query category drop-down list268. In the preferred form, the Query category drop-down list268may include a variety of categories, put the “Patient” category is shown as a representative category inFIG. 2A. Otherwise, the user can create a new category. To create a new category, the user can select the button269corresponding to the Query Category field268; which causes a Customize Query Categories window to be presented. This window includes a text entry field for entering and saving a new category name.

Step 4: In this step, the user selects the display fields for the query results. The display fields will dictate the determination and presentation of the query results. When the results are provided in a table or grid format, as is shown inFIG. 2C, the selected display fields become the names of the columns that will appear in the results table. Otherwise, the query results may be provided in other graphical, textual, audio or video forms, or some combination thereof.

Referring toFIG. 2A, the user can choose desired display fields from the Display field area262of the setup pane260. To accomplish this, the user selects a desired display field (e.g., Patient name) and then selects the right arrow button (i.e., “>”), which causes the selected display field to be represented in the query fields area264. In this manner, display fields may be selectively chosen, one-by-one. Otherwise, the user may select the double-arrow button (i.e., “>>”) to have all the display fields represented in the query fields area264, in one action. To deselect display fields the user can select the display field from query fields area264to be removed and click the appropriate return arrow buttons (i.e., “<” or “<<”). Once all desired display fields are represented in the query fields area264, the user selects the Apply button of setup pane260to associate the selected display fields with the query name. The query name and the display fields are then represented in the composition pane230. Continuing Example 1, the user defines the Patient Name and Hospital Number display fields. And, the query attributes tree has a heading comprising the query name and display fields, i.e., Hear Rate 150-250 (Patient name, MR number). “MR” indicates a specific medical facility.

Step 5: In this step, the user defines or selects the query attributes and sets the appropriate filters. This step relates to the second part of the original question (i.e., in Example 1: “ . . . heart rate values between 150 and 250?”). The requested parameters or attributes (e.g., Heart Rate) are represented in the medical information system database122. Selecting the query attributes is accomplished by first choosing the appropriate attribute from the query attributes tree232. As mentioned above, query attributes tree232includes attributes that are related to the option (e.g., Patients) initially selected from the Initial Query Options tree222, and includes the heading Heart Rate 150-250 (Patient name, MR number).

As also mentioned above, query attributes tree232includes, Sets of attributes not particularly related to the initially selected query option. The Sets, may be represented as expandable folders or trees of attributes that are, for the most part, not found in the portion of the query attributes tree232related to the selected initial query option. When a Set is selected, it expands to a query attributes tree (or sub-tree) comprised of attributes for the given Set. In the embodiment ofFIG. 2A-2D, the attributes represented in the query attributes tree232are predefined and vary depending on the selected initial query option.

If the user's desired attributes, given the user's question, are attributes related to the query option selected from the Initial Query Options tree222, then the user selects the desired attribute(s) from the query attributes tree232of the composition pane230. If not already open, filter pane270is opened to facilitate the selection and definition of filters related to the selected attribute, as discussed below. The filter pane may be opened by selection of the Query Filter icon of toolbar202.

If the desired attributes are related to an option not initially selected from the Initial Query Options tree222, then the user selects the attribute Set that includes the desired attributes from the end of the query attribute list232. Selecting the attribute Set reveals a new query attribute tree or subtree. In order to use the Display fields of the selected Set, the user selects the Set and proceeds in selecting and applying query results fields as described with respect to Step 4 above. That is, the contents and choices of the Display fields area264are context sensitive with respect to the chosen attribute Set in the composition pane230. From the presented query attribute tree232the user selects a desired query attribute to be applied to the user's named query. Again, the user can open the filter pane270using the Query Filter icon.

In addition to use of the Query Filter icon, the query wizard can be configured to automatically render filter pane270upon selection of an attribute from composition window230. Filter pane270is used to select attribute parameters and comprises a Parameter category drop-down list272, a Parameters list274, and a selected parameter area276. Selection of a parameter category yields a list of related parameters in Parameters list274. Those parameters in Parameters list274are eligible for selection into selected parameters area276, and then for application to the query attribute. As is shown inFIG. 2D, a parameter category CVS is selected and a related parameter 1,2 HR is also selected.

Again, continuing Example 1, the user can chose and apply attributes and related parameter to have heart rate values returned by the query. To accomplish this, the user conducts the following steps:

1. Select the Signals Set query option from the query attribute list232.

2. From the Display fields area262revealed for the Signals Set query option, select Value (not shown).

3. Select the Heart Rate attribute from query attribute tree232.

4. In the filter pane270, select the parameter category from the Parameter Category drop-down list272that contains the Heart Rate is a parameter.

5. Select the HR parameter from the scrollable Parameters list274.

As discussed above, for each selected attribute, filters can be defined and applied. Filter types vary depending on the query attribute chosen. In the preferred embodiment there are four filter types available: time, text, numeric, and checkbox. A different filter form is revealed for each filter type, providing mechanisms that allow the user to define and apply the filter. The time filter type allows a user to apply relative time values to its query (for example, before or after), as is shown in the time filter pane310ofFIG. 3A. The text filter type allows a user to include or exclude text values with or from its queries (for example, equals or is like), as is shown in text filter pane320ofFIG. 3B. The numeric filter type allows a user to include or exclude relative numeric values to its queries (for example, equals to, greater than or less than), as is shown in the numeric filter pane ofFIG. 3C. As discussed in greater detail below, statistical functions can be applied to numeric type filters using the statistical functions buttons332. The checkbox filter allows a user to apply Yes or No values to query attributes, as is shown in checkbox filter pane340ofFIG. 3D.

A user may combine several filter options by using the And or Or selection which appear within the filter pane270. Additionally, other filters may be defined for specific attributes, such as a Problem Number filter type for the Problems initial query option. To set a filter, the user completes the filter forms ofFIGS. 3A,3B,3C, and/or3D and then selects the Apply button. These steps are repeated for every additional query attribute that the user wishes to filter for its query. To clear a set filter the user selects the attribute item from the query attribute tree232, which reveals the filter forms310,320,330, and340. The user then selects the Clear button in the appropriate filter form. To view only the attributes being used in the query, click the query Attributes Filter icon from the toolbar202.

Continuing with Example 1, to filter heart rate values, click the Value query attribute (not shown) under the Heart Rate 150-250 (Patient name, MR number) of query attributes tree232. The numeric filter330ofFIG. 3Cis set as follows: (1) In the Greater than field, enter149and choose Beats Per Minute from the units drop-down list334; (2) In the Is less than field, enter251and choose Beats Per Minute from the drop-down list; (3) Select the AND option; and (4) Click Apply, a numeric filter indicator (e.g., 1,2) appears in bold text next to the selected query attribute in the composition window230(seeFIG. 2Afor examples). The query is now fully defined and can be run by selecting the Run Query icon.

As another example (i.e., an Example 2) a user may ask the questions “Which patients have received Dopamine at a dosage of less than 3 Mg/Kg/Min and when?” This query may be defined as follows: (1) Select the Patients option from Initial Query Options list222and drag it to the composition window230; (2) Enter a name for the query in the Query name field of setup pane260; (3) Select the Query category from the drop-down list268; (4) Select the following display fields for the query: Patient Name and MR number; (5) Click Apply; (6) Select the attribute Set containing Orders information from the end of the query attributes tree232of composition window230; (7) Select the following display fields for the Orders Set: Rate, Start time, End time, and Planned time; (8) Select the appropriate query attribute(s): To query the database for this specific dosage of Dopamine, select the Main substance query attribute from the query attribute tree232; (9) The Order Parameter category field272(seeFIG. 2D) then shows all the main substance categories; (10) Select the Orders Parameter category that contains Dopamine; (11) Select Dopamine from the Orders Parameters list274and click the right arrow to move it to the Selected orders parameters list278; and (12) Click Apply. In response, the Dopamine attributes appear in the Main substance tree232.

To filter the Dopamine rate values: (1) Select the Rate attribute from Main substance tree232; (2) To set the filter choose the Query Filter icon from icon toolbar202, which reveals the filter panes ofFIGS. 3A,3B.3C, and3D; (3) Enter 3 in the Is less than field of the numeric filter pane330and choose Mg/Kg/Min from the drop-down list; and (4) Click Apply. In response, the filter icon appears in bold text next to the selected query attribute.

Order parameters in the query system120depend upon the customization of the database being queried, e.g., medical information system database122. For example, a user can query Albumin as an ingredient as well as a main substance or a mixed solution. Should the user have any problems locating the substance to be queried, a search for the substance in a medical information order entry form (known in the art), or database, can be conducted using the query wizard125.

Once defined, as discussed above, a query can be run by actuating the Run Query icon of icon toolbar202(seeFIG. 2A). Results are viewed in Results pane240.

Queries can also be saved by selecting the Save Query icon of icon toolbar202. Once saved, the query is available in the Saved Queries folder of the Initial Query Options tree222. The user can filter the display of the saved queries by clicking the Saved Query Filter display options in the icon toolbar202. By filtering the display of saved queries, it is meant that a subset of the saved queries can be culled from the full set of saved queries.

As previously mentioned, query results can be exported to other applications, e.g., to a Microsoft Word™ or Excel™ file or to a Microsoft Access™ database. The results may then be further processed, if desired. To export query results:

1. Select the Export Query icon to open the Export Query dialog box400ofFIG. 4.

2. Choose one of the three Microsoft Office™ applications from the application icon buttons402of dialog box400.a) To export to Word™ or Excel™, select the appropriate Word™ or Excel™ icon from dialog box400and then select the Ok button404. The query results appear in the appropriately formatted document.b) To export to Access™, select the Access™ icon. Then, select the browse (or “ . . . ”) button406. Browse to and select one existing Access™ databases (i.e., files with a “mdb” extension). Otherwise, type the name of an existing or new table for storing the results in text entry field408and then select the Ok button404. After exporting the query, it may be printed from the application to which it was exported.

Using the query wizard125, a user can build complex queries by combining multiple queries. To accomplish this, the user can add one or more saved queries to a query under composition in the composition window230ofFIG. 2A. For instance, the user can:

1. Select the New Query icon from icon toolbar202.

2. Drag an option from the Initial Query Options tree222to the composition window230.

3. Define and name the new query, as previously described.

4. Drag a saved query from the Initial Query Options tree222over the Sets (not shown) in the composition window230; the compatible Sets will be highlighted.

5. Drop the saved query in one of the compatible Sets.

The user is then presented with the option of attaching or embedding the saved query to or in the new query. Attaching the query creates a link between the saved query and the new query. Any changes that are made to the saved query will directly influence the new query. Embedding the query adds a copy of the saved query to the new query. Whenever changes to an attached query are made, the query will automatically be updated. Changes made to an embedded query will not affect the previously saved version of the embedded query.

In accordance with the present invention, beyond the functions that enable the creation, running, and saving queries, statistics functions may also be included. Preferably, the query wizard125includes an option for using three levels of statistical functions. The first level enables a user to perform statistical functions or calculations upon the query results. The second level enables a user to apply statistical filters as a part of the query. The statistical calculations apply to all values. And, the third level lets a user define the group of values or the sample of patients on which the user wants to perform the statistical calculations.

Statistical Functions. A display statistical functions utility allows a user to make statistical calculations based on the results of the query (such as average Heart Rate (HR) for a specific patient). This function may also be used to display the results of a statistical function applied to all values (for example, the average HR for all patients). In the case of our Example 1, for patients with HR between 150-250, the display statistical functions utility enables one to add the average age of these patients to the display fields, for example. To display statistical functions:

1. Choose the Display fields262(seeFIG. 5A) intended for use with the statistical calculation.

2. Select a function from the Statistical Functions drop-down list502associated with the Display fields list262.

3. Select the central arrow504to move the display field to the window display fields pane264.

Other typical statistical functions known in the art may also be defined and included.

Statistical Filters. The numeric filter pane330ofFIG. 3Cincludes statistical functions, which a user can choose from the drop-down list of the statistics button334beside each field of a filter. This filtering function enables the user to view values above or below the average, min/max values, and so forth. The user can, for example, use this statistical filter to display all patients who have had HR above average by using the statistical functions key334, inFIG. 3C. In the preferred form, the Statistical Function filters (e.g., average value) are calculated from the entire database upon which the user is working. However, the display statistical function is calculated only for the results of the query.

To apply statistical function filters: (1) select the statistics button332beside the desired field (e.g., Greater than, Less than, etc.) in the numeric filter pane330; (2) choose the required statistical function filter from the drop-down list presented; the statistical function filter appears in the field besides the statistics button332and the units field334disappears; and (3) select the Apply button.

Statistical Function Set. The Statistical function set allows a user to perform statistical calculations only on selected groups of values, such as values without error or validated values. Any filter applied to this set defines the sample on which the statistical calculations are performed. Referring toFIG. 5B, in the Patients512initial query option, every definition in the Statistical function set514determines the relevant sample of patients. For instance, defining Age>60 as a Statistical function set will determine which patients are used for the query Height>AVG(Height). The average will be the average height of patients over 60 years old.

Setting a Statistical function set is done as any other set: (1) Select the Statistical function set. An additional query attribute tree opens, as part of the existing query attributes tree, containing the same attributes as the initial query option being worked on; (2) Select the desired query attribute from the new query attributes tree; (3) Set the required filters, as previously discussed; and (4) Select the Apply button.

If the user builds a query that looks for HR>AVG (HR) in the statistical function filter, and define HR>100 in the Statistical function set, the average HR in this query will be calculated only from those HR signals that are greater than 100. However, if the user defines the Statistical function set as HR>100, and then build a query that looks for HR>90 and HR<110, the user will still see values under 100, since the Statistical function set only defines the sample for statistical functions, not for all types of queries. In addition, when the user defines the Statistical function set for a specific parameter, it will only affect the statistical calculations of that parameter. Thus, defining HR>100 as a Statistical function set will have no affect on the query BP>AVG(BP).

Time-Related Parameters. The time-related parameters function allows querying of signals and orders that have a relationship in time, e.g., within the same time frame. The time-related attribute defines the point or period in time on which the whole query is based.

As an Example 3, to find the Blood Pressure values at around the time the Heart Rate was over 150:

1. Under Parameters set (not shown), which is located with the other Sets found at the end of the query attributes tree, choose Parameters.

2. In the filter pane270, select the Parameter category that contains the Blood Pressure parameter.

3. Select the Blood Pressure parameter.

4. Under Time related parameters, choose Parameters.

5. In the filter pane270, select the Parameter category that contains the Heart Rate parameter.

6. Select the Heart Rate parameter. The HR value appears in the composition window230.

7. Highlight the Value query attribute from Display field262(seeFIG. 5). A numeric filter pane330is rendered in the filter pane270.

8. Define HR>150 in the numeric filter pane330.

9. Highlight the Grace period query attribute. A grace period filter600ofFIG. 6appears in filter pane270.

10. Enter a grace period of 5 minutes forward and backwards.

This query will look for blood pressure values from 5 minute before and after each value of HR greater then 150.

As an Example 4, to find out how much Potassium was given during the hour following a lab result of K+<3.5. Define parameter K+under the Time related attribute as K+<3.5, with a grace period of 1 hour forward. The query will look for the amount of potassium given during the hour following that lab result.

While the foregoing has described what are considered to be the best mode and/or other preferred embodiments, it is understood that various modifications may be made therein and that the invention or inventions may be implemented in various forms and embodiments, and that they may be applied in numerous applications, only some of which have been described herein. As used herein, the terms “includes” and “including” mean without limitation. It is intended by the following claims to claim any and all modifications and variations that fall within the true scope of the inventive concepts.