| Title | The Frame-based model of nursing care plans on the HELP system. |
| Publication Type | thesis |
| School or College | School of Medicine |
| Department | Biomedical Informatics |
| Author | Wang, Ping |
| Contributor | Tinker, Ann; Johnson, Dicky; Melville,Gary; Burkes, Marijo; Hinson, Debbi |
| Date | 1989-12 |
| Description | The computerized Nursing; care plan is an integral part of HELP Nursing; subsystem. The frame technology, which is a new architecture for implementing a knowledge driven hospital information system, has been used to computerize the Nursing; care plan on the HELP system. Different methods of data retrieval and storage have been introduced, tested and compared in terms of programming speed and structure. A general and flexible model called “the frame-based model†has been developed. The model is flexible enough to accommodate the change of the Nursing; care plan database and it could be change of the Nursing; care plan database and it could be a general model for other applications on the HELP system. The model is able to integrate HELP decision support functions sot that the expert knowledge can be used in the automation of the Nursing; care plan. |
| Type | Text |
| Publisher | University of Utah |
| Subject | Nursing; Care; Nursing; Diagnosis; Outcome and Process Assessment (Health Care); Patient Care Planning |
| Subject MESH | Data Collection; Decision Making; Expert Systems; Hospital Information Systems |
| Dissertation Institution | University of Utah |
| Dissertation Name | MS |
| Language | eng |
| Relation is Version of | Digital reproduction of "The Frame-based model of Nursing; care plans on the HELP system." Spencer S. Eccles Health Sciences Library. Print version of "The Frame-based model of Nursing; care plans on the HELP system." available at J. Willard Marriott Library Special Collection. RT2.5 1989 .W35. |
| Rights Management | © Ping Wang. |
| Format | application/pdf |
| Format Medium | application/pdf |
| Identifier | us-etd2,18906 |
| Source | Original: University of Utah Spencer S. Eccles Health Sciences Library (no longer available). |
| ARK | ark:/87278/s6pv711v |
| DOI | https://doi.org/doi:10.26053/0H-NGKD-MRG0 |
| Setname | ir_etd |
| ID | 193966 |
| OCR Text | Show THE FRAME·BASED MODEL OF NURSING CARE PLANS ON THE HELP SYSTEM By Ping Wang A thesis submitted to the faculty of The University of Utah in partial fulfillment of the requirements for the degree of Master of Science Department of Medical Informatics The University of Utah December 1989 Copyright © Ping Wang 1989 All Rights Reserved THE UNIVERSITY OF UTAH GRADUATE SCHOOL SUPERVISORY COMMITTEE APPROVAL of a thesis submitted by Ping Wang This thesis has been read by each member of the following supervisory committee and by majority vote has been found to be satisfactory. Chair: J/-/O-<67 ~. H!f.; 11-/3- 8J THE UNIVERSITY OF UTAH GRADUATE SCHOOL FIN AL READING APPROV AL To the Graduate Council of the University of Utah: I have read the thesis of Ping Wang in its final form and have found that (1) its format, citations and bibliographic style are consistent and acceptable; (2) its illustrative materials including figures, tables and charts are in place; and (3) the final manuscript is satisfactory to the supervisory committee and is ready for submission to The Graduate School. T~ Chair, Supervisory Committee Approved for the Major Departtnent Homer R. Warner Chair/Dean Approved for the Graduate Council B. aleDick Dean of The Graduate School ABSTRACT The computerized nursing care plan is an integral part of HELP nursing subsystem. The frame technology 9 which is a new architecture for implementing a knowledge driven hospital information system, has been used to computerize the nursing care plan on the HELP system. Different methods of data retrieval and storage have been introducted, tested and compared in terms of programming speed and structure. A general and flexible model called "the frame-based model" has been developed. The model is flexible enough to accommodate the change of the nursing care plan database and it could be a general model for other applications on the HELP system. The model is able to integrate HELP decision support functions so that the expert knowledge can be used in the automation of the nursing care plan. To My Parents TABLE OF CONTENTS Page ABS1RA.cr ............................ ...................................................................................... iv LIST OF FIGURES .................................................................................................... viii LIST OF TABLES .......................................................................................................... x ACKN"OWLEDGE~NTS ............................................................................................. xi Chapter I. 'INTRODUcrION ..................................................... ......................... ............. 1 The Nursing Care Plan ....................................................................... 1 Computerization ............. ... ........................... ....... .............................. 4 The IIELP System ............................................................................. 5 The IIELP Nursing Subsystem ........................................................ 9 The Research Goals ............................................................................ 11 II. COMPUTERIZED NURSING CARE PLANS ........................................... 13 Components .......................................................................................... 13 Functions ..... ....... ........... ......... ... .............. ........................ ........... ........... 14 Screen Presentation . 0 ••••••••••••••••••••••••••••••••••••• 0 •••••••••••••••••••••••••••••••••• 22 ITI. DEVELOPING THE FRA:ME-BASED MODEL ..................................... 27 The Frame-based Mod.el ................................................................. 27 Interaction with the Patient Database ...................................... 34 Structure of the PTXT Dictionary ................................................ 41 Variations on the Frame-based Model ............................. ........ 43 Decision Support Uses on the Frame-based Model............. 45 IV. RESULTS, DISCUSSIONS AND FUTURE WORK ............................... 50 Comparison of Different Methods ............................................... 50 Suggesting Nursing Diagnoses ...................................................... 54 Future Work and Conclusions ..................................................... 59 Appendices A. THE EDIT FRAl\1E FOR "PASSING l\1ETHOD" .................................... 60 B. THE EDIT'FRAME FOR "SEARCHING :METHOD" ............................... 66 REffiRE-N'" CBS ••.......•..............•..•.... t ••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••• t...... 76 vii LIST OF FIGURES Figure Page 1. The Nursing Process ....................................................................................... 3 2. Development of the Nursing Care Plans: From the Systems Theory Point of View ................................................................... 3 3 . The lIELP Nursing Subsystem ....... ...... ......................... ...... ................. .... 10 4. Five-step Process for Creating Nursing Care Plans ......................... 16 5. The Actions Index for Problem 1 .......................................................... 18 6. A Review Screen for a Specific Care Plan ............................................ 20 7 . Multiple Choice Window for Editing Outcomes ................................. 21 8. Nursing Care Plan Menu Flow Diagram ................................................ 24 9. Nursing Care Plan Problem List Menu .................................................. 25 10. Nursing Care Plan Edit Option Menu ...................................................... 26 11. Nursing Care Plan Problem Edit Menu .................................................. 26 12. The Frame-based Model for Computerized NCPs ............................. 28 1 3 The Structure of the Main Program ....................................................... 30 14. A Comparision of "Delete String" and "Inactivate" in Data Storage .................................................................................................. 32 15. Interaction between PAL and the Patient Database: Data Retrieval, Data Modification and Data Storage .............. ......... 35 16. The Search Criterion for Finding the Current Problems ............... 37 17. The Search Criterion for the Review Frame ...................................... 39 18. The Specific Search Criterion for an Edit Frame .............................. 40 1 9. Purely Hierarchical PTXT Structure ...................................................... 43 20. PTXT Constmt Stru.ctme ............................................................................ 43 21. An Example of the PTXT Constant Relation ....................................... 44 22. HELP Decision Frame for Nursing Diagnosis ...................................... 48 23. Decision Support Uses in the Frame-based Model ......................... 49 24. CPU Time Recorded for Edit Frames ..................................................... 52 25. Graphical Representation of the Timing Difference ........... ............ 56 ix LIST OF TABLES Table Page 1. Timing Data for Edit Frames ....................................................................... 53 2. Timing Comparision for Edit Frames ...................................................... 55 3. Suggested Nursing Diagnosis Data ............................................................. 58 ACKNOWLEDGEMENTS I am grateful to Dr. T. Allan Pryor for his guidance and support as my advisor and the unique research experience with which he has provided me. I also want to thank Dr. Peter J. Haug and Dr. Stan Huff for their helpful suggestions as my supervisory committee members. I also want to express my appreciation to Ann Tinker, Dickey Johnson, Gary Melville, Marijo Burkes and Debbi Hinson for their help in the development of this project. Acknowledgements are extended to the Department of Biophysics at LDS Hospital for providing the facilities required for this project. CHAPTER I INTRODUCTION The Nursjn& Care Plan The nursing care plan is an integral part of the nursing process defined by the American Nursing Association (ANA) and the Joint Commission on the Accreditation of Hospitals (lCAH) as assessment, planning, implementation and evaluation of nursing care (1). The nursing process is basically the scientific method of problem solving applied to nursing practice. It is used to identify patient problems, to plan and implement nursing care and to evaluate the results of care given. It is essential to the successful administration of nursing care. During this process, a nursing care plan is developed. The nursing process is a continuing cycle, as shown in Figure 1. Assessment is the first phase of the nursing process and the basis of the nursing care plan. It includes patient data collection, patient data analysis and nursing diagnosis. A nursing diagnosis describes an active or potential health problem and all the possible causes related to that problem. The planning phase begins with the nursing diagnosis and ends with the development of a nursing care plan that is based on the nursing 2 diagnosis. Implementation is the actual giving of nursing care, which is defined by the nursing care plan. The final but continuous phase of the nursing process is evaluation of the given care. Evaluation indicates which problems have been solved and which need to be reassessed and replanned. The nursing care plan, which is a practical way of putting the nursing process to work, would generally include the patient's problems, nursing care outcomes and actions. It is developed for a specific pati~nt and should not be so general that it could be applied to everyone with the same medical diagnosis. A nursing diagnosis is not the same as a medical diagnosis. The "cause" portion of a nursing diagnosis is usually not a medical diagnosis and is intended to give a direction to nursing actions. Some medical diagnoses as "causes," however, are of limited value in directing nursing care. Individuals react differently to illness and the care plan should reflect this individuality. The care plan gives a guide to the adequate flow of nursing care throughout the patient's stages of illness. It is quite clear that the development of nursing care plans is closely related to the nursing process. From the systems theory point of view, the nursing process can be characterized as a closed-loop system as shown in Figure 2. The nursing care plan is the output of the processor that includes assessment and planning while the input is patient data that are collected through assessment. The nursing care plan is then reintroduced as the input through a feedback mechanism that consists of r PATIENT" "' DATA \... ~ lINlPUJr ...... 4~ -I ASSESSMENT (1 ) (3) IMPLEMENTATION ~---- Figure 1. The Nursing Process. ASSESSMENT PLANNING J-lPlPJROCJESSOJR 3 r NURSING ""'" re- ,C ARE PLAN ~ OUTlPUT -H EVALUATION IMPLEMENTATION ~ Figure 2. Development of the Nursing Care Plan: From the Systems Theory Point of View. 4 implementation followed by evaluation for judging the results of nursing care. In this way, nursing care can be improved by comparing the outcomes of the care given with the expected outcomes. This analogy could be helpful for us to understand the generation of nursing care plans from an engineering point of view and also be beneficial to the automation of nursing care plans. As we can see, the nursing care plan is the key component of the nursing process. Clinical use of the nursing care plan has been recognized as an important aid for planning and providing quality patient care. The value of the nursing care plan has been reinforced by the lCAH, which requires that nursing care plans be used before a hospital can be accredited. Computerization Although the theory of the nursing care plan is scientifically sound, manual attempts to implement the nursing care plan have been generally unsuccessful (2-4). With the manual method, development of nursing care plans has met with low nursing compliance in fulfilling the JeAH requirement that each hospitalized patient have a current, active nursing care plan (5). The written care plan is often incomplete and outdated. It is found to be only a "token" of accepting the care plan concept. Because of the unsuccessful use of nursing care plans, a lot of· important patient care data could be lost ,which would otherwise be very useful in patient care, nursing education and research. 5 Any theory cannot be successfully translated into practice without an effective implementation method, so there is a need to find a powerful tool to assist in the implementation. With the development of computer applications in hospitals, the health care industry has been changed dramatically. Many procedures in hospitals have been computerized with the introduction of Hospital Information Systems. The development of a Nursing Information System as a part of an integrated Hospital Information System has also become a necessity because of the increasing complexity of nursing care. The computer revolution has allowed nursing care to be conducted in a more efficient and sophisticated manner. As an integral part of the Nursing Information System, computerized nursing care plans have been developed and used in more and more hospitals (6-8). It is evident that computerization has provided an effective method of putting the nursing care plan into practice. It offers as much structure and flexibility as required. The HELP System The HELP (H.ealth livaluation through Logical Processing) system is a comprehensive hospital information system for acquiring medical data and implementing decision support which has been developed for over 20 years at the LDS Hospital in Salt Lake City, Utah. It currently operates on a 10-processor Non-stop Tanden1 System with more than 600 terminals and 100 printers at LDS Hospital, which is a 550-bed tertiary care hospital serving 6 the needs of the intermountain west. The HELP system was designed to not only meet the needs of administrative, clinical and financial services, but also to provide decision-making capabilities. As one of the major objectives in the development of the HELP system, the system should be able to process medical decision logic (9). The decision logic should be modular, with control and interaction of modules determined by medical experts. Each decision module should be readily added to, modified and deleted so that the system is flexible and able to accommodate the changes of the patient database. Several unique tools were developed to fulfill this goal on the HELP system. The PTXT Dictionary The data dictionary is the "heart and soul" of a hospital information system and the foundation of all decision support methodologies (10). The PTXT (f,.ointer-to-I..eX ... I.) dictionary is the data dictionary on the HELP system. In any hospital information system, a computer needs access to a large amount of clinical data and medical knowledge in a form it can use. It is both easier and more economical for a computer to handle encoded data rather than natural text. PTXT is actually a data dictionary that links the English words and phrases along with their values to specific codes. These codes are used to store descriptions of patient care and medical knowledge rather than the actual text. Each data element is distinguished by a unique 8-byte code. The PTXT dictionary is used to encode descriptions 7 for computer storage and decode them for human understanding. The PTXT dictionary is organized in a hierarchical order from general to specific. The hierarchical structure allows a lower level item to "inherit" properties of the higher, more general classification to which it belongs without having to duplicate the information at each level. There are four different kinds of record structures used in the PTXT dictionary (11). Type 0 records are used for the fixed-size items. Type 1 records are used for the items with variable size and structure. Type 3 records are used in the decision-making logic of the HELP system. Type 7 records are used in transaction log file to assist in hospital information management functions. Most of the data items are coded in Type 1. Type 1 data are used for the variable kinds of data, which can vary in both number of components and form. The 8-bytes, which represent the hierarchical levels, are data class, data type, field code, level, noun, adjective, adverb and modifier. The highest level is known as data class, which corresponds to different types of patient data, e.g., Data Class 28 represents nursing data and Data Class 8 represents pharmacy data. Within each data class, there are field codes, each of which are subdivided into nouns, adjectives and adverbs. A level indicator is included in the code to specify the deepest level in the hierarchy. Another component of Type 1 data is the modifier field. There are two kinds of modifiers: data class modifiers (DCM) and field code modifiers (FCM). Data class modifiers can be used with any item in the data class. Field code 8 modifiers are specific to a certain field code within a data class. The PTXT Al1l1lication LanBuaBe The f.TXT A..pplication L.anguage (PAL) was originally designed as a report generator and has become the HELP system's database language that provides a relational view of the PTXT dictionary. PAL is a high level modular programming language. Many application programs on the HELP system have been written -in PAL because of its powerful capability of manipulating the patient database and handling screen interaction. The new version of PAL (PAL 18), which is still at the stage of development, is enhanced with numerous new features for accessing the patient database, using modern screen presentation technology for both display of results and acquisition of information from a terminal and using modular frame-based applications. A Tandem emulation program for PCs called PCTSCN has been developed. PCTSCN has incorporated a large library of C routines for menu and window manipulation. These C routines have been integrated into PAL 18. The HELP Frame Laniuaie The HELP frame language was designed as a special purpose interpreter to use the expert knowledge stored in a modular knowledge base. The knowledge is represented by frames that may be data acquisition, diagnosis, management, etc. Each frame is made up of various required and optional slots (12). All of the 9 HELP frames are compiled into PAL code before being executed on the HELP system. Thus, medical knowledge can be represented by using the HELP frame language, which can be easily accepted by nurses and physicians who may not be familiar with computer pro gramming. The HELP Nu[sjnK Subsystem A Nursing Information System can be defined as a computer system that collects, stores, processes, retrieves, displays and communicates timely information needed to do the following: 1) administer the nursing services and resources in a health care facility; 2) manage standardized patient care information for the delivery of nursing care; and 3) link the research resources and educational applications to nursing practice (13). The Nursing Information System, a subsystem of HELP, has been under development for the last several years at LDS Hospital (14). The goals of the Nursing Information System are to provide an efficient means of nursing care and to promote the nursing process through computerization. The Nursing Information System will have four integral parts including nursing care plans, charting, staffing and HELP functions as shown in Figure 3. By computerizing and intercorrelating these four integral parts, many of their functions can be automated. The nurse will be required to spend less time interpreting and recording patient data. The steps of the nursing process required by JeAH will be followed. HELP DECISION-MAKING FUNCTIONS Figure 3. The HELP Nursing Subsystem. 1 0 1 1 The Research Goals The computerized nursing care plan is one of the major parts of the HELP's nursing subsystem (15). The trade-off between the speed and structure of a computerized model is usually one of the key problems in developing hospital information systems. Based on the different ways of interactions with the patient database, and the different structures of the PTXT dictionary and the patient database, there could be several different methods of implementing the computerized nursing care plan on the HELP system. From the system point of view, the nursing care plan is one of the decision support applications on the HELP system (16) and it will be incorporated with other nursing applications such as nurse charting. Therefore, whether or not the nursing care plan is implemented efficiently will not only affect the nursing care plan itself but also the whole nursing information system. Besides, different hospitals could have different versions of the nursing care plan database, and the nursing care plan database could also be updated in the same hospital. It is clear that an effective and flexible model must be developed to implement the nursing care plan. The goals of this research project are to provide: 1) A flexible model of computerization for accommodating the change of the nursing care plan database. 2) An effective method of programming on the basis of the trade-off between speed and structure. 12 3) The modern window features for the nursing care plan on the HELP system. 4) A basis for automating the nursing care plan and the nursing process on the HELP system. In this research project, a frame-based model has been developed and different methods have been compared in terms of the speed and structure. As a initial study of automating the nursing care plans, HELP decision frames have been designed and integrated into the frame-based model for suggesting the nursing diagnoses. CHAPTER II COMPUTERIZED NURSING CARE PLANS Components A nursing care plan usually consists of several problems which are identified by nursing diagnosis. For each problem, there are causes related to that problem, expected outcomes and nursing actions. The nursing care plan database used in this project was developed at the LDS Hospital and is currently being used on the HELP system. The current nursing care plan on the HELP system was developed using a systems approach to patient problems. It consists of 16 problems that encompass the common abnormalities seen in acutely ill patients (7). These problems are: 1) Alteration in respiratory function; 2) Alteration in perfusion/cardiac output; 3) Alteration in fluid/electrolyte balance; 4) Alteration in neurological status; 5) Alteration in cardiac rhythm; 6) Alteration in patient comfort; 14 7) Alteration in elimination: bowel and bladder; 8) Infection/Wound management; 9) Impaired physical mobility; 10) Alteration in psychosocial states; 11) Alteration in nutrition; 12) Impaired coagulation status; 13) Knowledge deficit; 14) Self-care deficit/rehabilitation; 15) Cognitive-perceptual deficit; and 16) Female reproduction. The causes related to each problem were included to assist the nursing diagnosis. Associated expected outcomes and nursing actions were determined for each problem. Functions A computerized nursing care plan should be able to support two main functions: 1) Creating an initial care plan; and 2) Editing an existing care plan. A patient identification number or name should be entered first to either create an initial care plan or edit an existing care plan for a specific patient. The computerized nursing care plan is designed to allow the nurse to create or edit one problem of the care plan at a time. On the problem list menu, the nurse can choose to create a new problem, to review and edit an existing problem, to print out the care plan, to inactivate the care plan, or to switch to another patient. 1 5 Create an Initial Care Plan The creation of a new care plan is a five-step process as shown in Figure 4. The first step begins with the identification of specific patient problems. A problem list menu will be displayed on the screen to allow the nurse to choose from the 16 problems. Upon display of the problem list menu, a specific problem such as ALTERATION IN RESPIRATORY FUNCTION can be selected. The problem selected is considered to be an active problem unless it is flagged as a potential problem later by the nurse. The current problems are organized according to an anatomical systems approach. A revision will be made from the systems orientation to nursing diagnosis for problem identification. The second step in creating the care plan is the selection of the causes related to the problem identified in step 1. The third step is the identification of the expected outcomes for the patient. These goals are selected from a list of possible patient outcomes generated for each specific patient. The nurse may select all, some or none of the expected outcomes. If the nurse does not find an appropriate expected outcome in the list, one may be entered as free text to fit the needs of the specific patient. The fourth step is the selection of nursing action categories to be addressed for the identified problem. These categories of nursing actions are chosen from the actions index. The actions index was developed as a menu of nursing actions commonly Identifying patient problems NURSING CARE PLANS 1 6 Figure 4. Five-step Process for Creating Nursing Care Plans. . 1 7 addressed under a specific patient problem. It allows the nurse to identify the specific needs of the patient without reviewing actions not applicable to that patient. Figure 5 presents the actions index for problem 1: Alteration in respiratory function. It allows the nurse to select actions relevant to oxygen therapy without reviewing actions for ventilators. Once the nurse has selected an item listed under the actions index, the standards of care will be automatically selected for that action. The standards of care are to provide the minimal safe care for a patient given the identified problem. The final step is the selection of optional nursing actions necessary for the specific patient. Each actions index consists of two lists of actions. One is a list of standards of care, which is selected automatically as long as the actions index has been chosen for the patient. The other list is of optional actions which allow the nurse to individualize the care plan to the specific patient by selecting some or all of the actions. If the nurse chooses an action that has a numerical value associated with it, the specific values will be requested for that particular patient. In addition to the numerical value, free text entries may be selected to further individualize the care plans. After this process has been completed for each identified patient problem, a new problem is created. This process can be repeated to create other problems identified by the nurse for the care plans. 18 1. ASSESSMENT AND NURSING CARE 2. ARTIFICIAL AIRWAY/SECRETION MANAGEMENT 3. TRACHEOSTOMY/SECRETION MANAGEMENT 4. NATURAL AIRWAY/SECRETION MANAGEMENT 5. OXYGEN THERAPY 6. OXYGEN HOODS AND TENTS 7. CHEST TUBES 8. BRONCHODILATORS 9. VENTILATORS Figure 5. Actions Index for Problem 1. 19 Edit an Existina Care Plan After the nursing care plan has been created for a specific patient, it can be easily updated as the patient's condition changes. When an existing problem is selected upon the problem list menu, the selected problem along with the related causes, the expected outcomes and the nursing actions will be displayed on the screen for review. Figure 6 presents a review screen for an existing problem. The nurse can choose to edit that problem, delete strings, inactivate a resolved problem, change an active problem to potential or change a potential problem to active. Edit the Existing Problem For editing the problem, the nurse can choose to edit the causes, the expected outcomes and the actions. Each of these editing options has a multiple choice window that not only displays the items but also indicates which items have previously been selected as shown in Figure 7. An asterisk indicates a previously selected item. The nurse can select one or more of the items or deselect one or more existing items by simply entering the item number. The multiple choice window for editing the existing problem is basically the same as the one for creating a new problem. Delete Strings Sometimes the nurse may select items by mistake when creating or editing an existing problem, and may discover the 20 1. ALTERATION IN RESPIRATORY FUNCTION RELATED CAUSES: ACTIONS: 1. ATELECTASIS 1. ASSESS RETRACTION/ACCESSORY MUSCLE USE 2. PULMONARY EDEMA 3. PNEUMONIA 4. POST-ANESTHESIA EXPECTED OUTCOMES: 1. RESPIRATION REGULAR! UNLABORED 2. RESPIRATORY RATE WNL FOR PATIENT 3. ABGS WNL FOR PATIENT ON ROOM AIR OR SUPP OXYGEN 2. REPORT ABG VALUES ABNORMAL FOR PATIENT 3. ASSESS SECRETIONS FOR CHARACTER & VOLUME Q SHIFT 4. 24-HR SPUTUM COLLECTION STANDARDS OF CARES: 1. ASSESS ADEQUACY OF FLUID BALANCE 2. ASSESS BREATH SOUNDS Q SHIFT & PRN 3. EVALUATION RESP PATIERN 4. REPORT SIS HYPOXIA LAST NURSE TO UPDATE CARE PLAN: BURKES, MARIJO TIME INITIATED: 09/25/88 08:01 Figure 6. A Review Screen for a Specific Care Plan. 21 OUTCOMES: ALTERATION IN RESPIRATORY FUNCTION *1. RESPIRATIONS REGULARIUNLABORED. 2. RESPIRATORY RATE WNL FOR PATIENT. 3. SPONTANEOUS VENTILATION. 4. CHEST CLEAR PER AUSCULTATION. *5. CHEST EXPANSION SYMMETRICAL. 6. ABGS WNL FOR PATIENT ON ROOM AIR OR SUPP 02. 7. INDEPENDENTLY HANDLES SECRETIONS. 8. PERFORMS NECESSARY SELF-CARE ROUTINES. 9. COMMENT: (FREE TEXT ENTRY). Figure 7. Multiple Choice Window for Editing Outcomes. 22 mistakes only after reviewing that problem. In such a case, the nurse can choose to use the "delete strings" function, which will simply delete those strings from the patient database so that those mistakes can no longer be found as a part of the nursing care plan. Inactivate a Resolved Problem This function is chosen when the problem has been solved for a specific patient who previously had the problem. Change an Active Problem to Potential This function is used when an active problem becomes a potential problem. Change a Potential Problem to Active This function is used when a potential problem becomes an active problem. Screen Presentation As hospital information systems continue to increase in sophistication and complexity, so do the interface requirements that support user interaction. The human/computer interaction used in this computerized nursing care plan is basically menu-based interaction (17). The menu-based interaction is' initiated and controlled by the information system. The system presents the menus to the user and the user provides respons~s 23 to those menus. Figure 8 presents a menu flow diagram for the computerized nursing care plan. There are a problem list menu, an edit option menu, a problem edit menu and groups of multiple choice windows. The problem list menu as shown in Figure 9 presents the patient name and the patient identification number for the selected patient, a list of problems and other options. An asterisk indicates an active problem and a "P" indicates a potential problem. The nurse can select a problem by simply entering the problem number. As for the other options, the nurse can enter "s" for "switch to another patient", uP" for "print out the care plan", "I" for "inactivate the care plan" and "R" for "return to the main menu. Figure 1 0 shows the edit option menu and Figure 11 presents the problem edit menu. Figure 7 gives an example of the multiple choice window for editing the expected outcomes in problem 1. 24 • r PROBLEM LIST MENU " \.. ~ I I I I I SWITCH TO PRINTOUT RETURN TO ANOTHER PATIENT THE CARE PLAN THE MAIN MENU I I CREATE A REVIEW & EDIT INACTIVATE NEW PROBLEM AN OLD PROBLEM THE CARE PLAN I " • I REVIEW THE PROBLEM (CAUSE ) rl CAUSE 1 FRAME + FRAME \.. ~ ~ EDIT MENU ~ \... ~ ( aFJRTACMXEM :l HD ELETE STIR INGS I (.. .. PREODBIJT L EM) {a\..J TFRCAXMEM ~:l \.. ~ (~~l HIN ACTIVATE PROBLEM {ACTI~ 1 FRAME FRAME \.. ~ \.. ~ H POTENTIAL --> REAL I " RETURN TO RETURN TO H REAL --> POTENTIAL THE PROBLEM THE PROBLEM LIST MENU LIST MENU RETURN TO THE - PROBLEM LIST MENU Figure 8. Nursing Care Plan Menu Flow Diagram. *** PROBLEM LIST MENU *** PATIENT NAME: TEST. PAM BUG PATIENT NO. 50000025 * 1 . ALTERATION IN RESPIATORY FUNCTION. 2. ALTERATION IN PERFUSION/CARDIAC OUTPUT. 3. ALTERATION IN FLUID/ELECTROLYTE BALANCE. 4. ALTERATION IN NEUROLOGICAL STATUS. 5. ALTERATION IN CARDIAC RHYTHM. 6. ALTERATION IN COMFORT. P 7. ALTERATION IN ELIMINATION: BOWEL AND BLADDER. S. INFECTIONIWOUND MANAGEMENT. 9. IMPAIRED PHYSICAL MOBILITY. 10. ALTERATION IN PSYCHOSOICALSTATES. 11 . ALTERATION IN NUTRITION. 12. IMPAIRED COAGULATION STATUS. 13. KNOWLEDGE DEFICIT. 14. SELF·CARE DEFICIT/REHABILITATION. 15. COGNITIVE·PERCEPTUAL DEFICIT. 16. ALTERATION IN FEMALE REPRODUCTION. S· SWITCH TO ANOTHER PATIENT P - PRINT OUT THE CARE PLAN I -INACTIVATE THE CARE PLAN R • RETURN TO THE MAIN MENU SELECT ONE OF THE ABOVE: Figure 9. Nursing Care Plan Problem List Menu. 25 26 *** EDIT MENU *** 1. EDIT THE PROBLEM. 2. DELETE STRINGS. 3. INACTIVATE A RESOLVED PROBVLEM. 4. CHANGE A POTENTIAL PROBLEM TO REAL. 5. CHANGE A REAL PROBLEM TO POTENTIAL. 6 .••• RETURN TO THE PROBLEM LIST MENU. SE~CTONEOFTHEABOVE: I Figure 10. Nursing Care Plan Edit Option Menu. *** EDIT PROBLEM *** 1. EDIT CAUSES. 2. EDIT OUTCOMES. 3. EDIT ACTIONS. 4 .• -. RETURN TO THE PROBLEM LIST MENU. SELECT ONE OF THE ABOVE: I Figure 11. Nursing Care Plan Problem Edit Menu. CHAPTER III DEVELOPING THE FRAME·BASED MODEL The Frame-based Model The frame-based model is a new architecture for implementing a knowledge driven hospital information system such as the HELP system. In a frame-based application, all functional modules can be defined as separate frames. All the frames are compiled separately into a unified frame file, which is simply an object file library. This feature makes it very flexible to add a new function, to modify or to delete an old function. On the HELP system, a frame in the unified frame file is identified by a unique frame number consisting of four subitems which are data class, field code, frame number and a zero. For example, a frame number (28 1 200 0) represents a unique frame in the unified frame file. On the basis of the frame architecture, a frame-based model has been developed for computerizing nursing care plans on the HELP system as shown in Figure 12. PAL 18 was used as a programming language in developing this model. The basic model is composed of a main program, a review frame, an edit option frame, edit frames, the patient database and a knowledge base ,... " , REVIEW - FRAME - NCP MAIN PROGRAM PATIENT DATA BASE (NCP PTXT DICTIONARY) EDIT CONTROL FRAME KNOWLEDGE BASE EDITOR ""'l " " .. EDIT - FRAMES A~ Figure 12. The Frame-based Model for Computerized NCPs. 28 29 editor. Each frame can be designed and compiled independently. The patient data needed in one frame can be obtained by directly searching through the patient database, and can also be passed in as parameters from the main program or another frame. The functions of the main program include patient selection, presentation of the problem list menu and overall control of the whole program. Figure 13 illustrates the general structure of the main program. Within the main program, there are four subroutines which are: 1) select patient; 2) read patient; 3) problem list menu; and 4) old or new. The "select patient" subroutine will allow the nurse to choose a new patient or switch from one patient to another. The "read patient" subroutine retrieves the current nursing care plan data for the selected patient from the patient database so that the problems can be identified as active, potential or inactive. For a new patient, there is no existing nursing care plan and all of the problems are identified as inactive. The "problem list menu" subroutine presents a menu of the problems with the information about whether a problem is active, potential or inactive. The nurse can choose from the menu either to create a new problem or to review and edit an existing problem. The "old or new" subroutine will identify whether the selected problem is a new or an existing problem. If it is a new problem, the edit frames including the cause frame, the outcome frame and the action frame will be called in sequence for the nurse to create that new problem. If it 30 MAIN PROGRAM Figure 13. The Structure of the Main Pro gram. 31 is an old problem, the review frame will be called for the nurse to go over that old problem on the screen. The review frame is used to retrieve the information about the existing problem from the patient database and display the whole problem. This display would include problem causes, outcomes and actions, as well as the time when the problem was updated and the name of the nurse who last updated the problem on the screen for review purposes. The edit option frame is to provide the user with a menu of edit options including: 1) Edit the problem; 2) Delete strings; 3) Inactivate a resolved problem; 4) Change a potential problem to real; and 5) Change a real problem to potential. The "Edit the problem" function is subdivided into editing causes, editing outcomes and editing actions by calling the corresponding edit frames. The "delete strings" function is achieved by physically deleting the strings from the patient database and then storing the same deleted strings together with the phrase "deleted strings" in the patient database. To inactivate a resolved problem, the problem is stored with the string "This problem has been inactivated." Figure 14 gives a comparison of the two functions in terms of data storage. The difference is that the "delete strings" function will actually delete the strings from the patient database, while the "inactivate problem tt function will not. For a potential problem, it is stored with the string "This is a potential problem" and it is similar to the "inactivate problem" function. PROBLEM1 (2) PROBLEM1 (1) PROBLEM1 (2) PROBLEM1 (1) PROBLEM1 (2) STORED WITH DELETE STRINGS : PROBLEM1 (1) PROBLEM1 (2) STORED WITH "INACTIVE" PROBLEM1 (2) PROBLEM1 (1) Figure 14. A Comparison of "Delete String" and "Inactivate" in Data Storage. 32 33 Each problem has a corresponding edit module which consists of three edit frames, Le., the cause frame, the outcome frame and the action frame. Each of those frames is basically a multiple choice window that allows the nurse to edit the causes, the outcomes or the actions for the specific problem. Those edit frames can be used either to create a new problem or to edit an existing problem. The unique function of this multiple choice window is that it is able to present not only the items to be selected but also the information about which items have previously been selected. The knowledge base editor in the frame-based model is basically a knowledge tool which incorporates the decision support features of the HELP system, the modern screen presentation, the flexibility of modern expert systems in processing the expert knowledge and the ease of patient database access. It is used for generating the expert knowledge in a basic knowledge representation structure on the HELP system, which is the HELP language frame. This knowledge base editor allows the user not only to create windows, but also to interface the fields of the windows with the patient database and define decision support logic. The output of the editor is the HELP frames. Since all the knowledge frames are first compiled into PAL before execution, the effective PAL programs for those knowledge frames need to be developed first. The design of the knowledge base editor is based on those PAL pro grams that correspond to the HELP knowledge frames. 34 Two of the key problems in this frame-based model are: 1) Interaction with the patient database; 2) Structure of the PTXT dictionary. Interact jon with the Patjent Database A database language must have the capability of data retrieval, data modification and data storage. As a database language for the HELP system, the PTXT Application Language (PAL) has its unique feature to interact with the patient database, as shown in Figure 15. On the HELP system, retrieving data from the patient data base means searching through variable length data strings based on a given search criterion. When matching items are found, a data transformation from such a variable length data string into a relation with a fixed defined structure is performed. In a PAL program, a basic search criterion must be first defined in a PAL statement called "RELATION" before any search can be attempted. A "RELATION" consists of one or more "ITEMs. U After the "RELATION" is defined, the search can be triggered by a PAL statement called "BUILD." To limit the basic search criteria, the uBUILDu statement can be extended by appending additional conditions which need to be satisfied in order to put an entry in the "RELATION." The function $EXISTO and $COUNT() are defined to check the existence of a "RELATION" and the number of entries created during the search. As the program searches through the patienf s data strings, a match is defined to occur when a data 35 PATIENT .... DATA BASE .... PACK"CODES BUILD SA VE"CODES (Data Retrieval) (Data storage) .... MOVE"CODES ... RELATION ... -... BUFFER - MODIFICATIONS - PAL PROGRAM Figure 15. Interaction between PAL and Patient Database: Data Retrieval, Data Modification and Data storage. 36 string contains at least one "ITEM" defined in the "RELATION." The modification and storage can be done by using the PAL statement "DELETESTRING" and "MOVE"CODES BUFFER" and "PACKACODES" and "SAVEACODES." The nursing care plan is updated by the nurse as the patient's condition changes in the hospital. The care plan histories are stored in the patient data base sequentially based on time. In the frame-based model of the nursing care plan, there is a need to interact with the patient database in order to retrieve, modify the old nursing care plans and store the new nursing care plan in the patient database. One of the functions of the main program is to identify which problem is active, potential or inactive in the current nursing care plan for a particular patient so that the active and potential problems can be marked on the problem list menu. In order to do this, the program needs to search through the patient database to find the current care plan for the patient. This function is achieved by defining a "RELATION" called PROBLEM and a "BUILD," as shown in Figure 16. In the patient database of nursing care plans, a problem can not only be stored as active but also be marked as inactive or potential or deleted-string .. If the current problem is marked by "deleted strings," the same problem without "deleted strings" before the current problem should be found as the most current one. If a current problem is marked by "inactive," it means that this problem is inactivated at present and will be treated as a RELATION PROBLEMS; BEGIN ITEM TIME ITEM PROBLEM ITEM INACTIVE ITEM DEL I\STRING ITEM POTENTIAL END; BUILD PROBLEM STRINGTIME; CODE (28 1 1/16 * * * * *); CODE (28 1 0 4 * * * 1); CODE (28 1 0 4 * * * 11); CODE (28 1 0 4 * * * 6); WHERE $COUNT (PROBLEM) >=1 AND 37 NOT $EXIST (PROBLEM [$COUNT(PROBLEM)]. DEL I\STRING) FROM $NOW BACKTO *; Figure 16. The Search Criterion for Finding the Current Problems. 38 new problem later on. The search criterion in the main program is defined to find only the most current problems unmarked by "deleted strings" during the search. The problems that are found could be active, potential or inactive. Problems can then be identified as active, potential or inactive. In the review frame, a generic search criterion is defined for the search of the selected problem. The search criterion should be general enough for all of the patient problems including the related causes, the expected outcomes, the optional actions and the standard actions. A relation named "FIELD"CODE" and a corresponding "BUILD" are defined as shown in Figure 17. As for each edit frame, information must be provided about which items have previously been selected. One way to do this is to search the patient data base directly based on a specific search criteria within each edit frame. Figure 18 gives an example of defining a specific search criterion for one of the edit frames. In this way, the specific information needed in each edit frame can be obtained by simply making a specific search. This method can be named as a "searching" method. Another way to do this is to pass the information into each edit frame from the review frame in which a search has already been made. However, the search in the review frame is based on a generic search criterion that can be used to find all the problems. Even if the information is passed into each edit frame, it is still necessary to do some comparison between the generic "RELATION" and the specific RELATION FIELDACODE; BEGIN ITEM TIME 39 STRINGTIME; ITEM PROBLEM CODE(28 1 1/16 • • • • • ); ITEM CAUSE ITEM OUTCOME ITEM ACTION ITEM STANDARD ITEM INIT"ITEM ITEM INACTIVE ITEM POTENTIAL ITEM DELASTRING CODE(28 1 1/16 2/3 1 • .) SCALE(·); CODE(28 1 1/1 G 2/3 3 * *) SCALE(*); CODE(28 1 1/16 3 2 .) SCALE(·): END; CODE(28 1 1/16 3 4 .) SCALE(·): CODE(28 1 0 4·· ·2); CODE(28 1 0 4 * * * 6); CODE(28 1 0 4 * * * 6); COD E(28 1 0 4 • * • 11); BUILD FIELD"CODE WHERE $EXIST(FIELDACODE.PROBLEM) AND $COUNT(FIELDACODE)==1 AND $FC(FIELDACODE.PROBLEM)=I AND NOT $EXIST(FIELD"CODE.DEL ASTRING) FROM $NOW BACKTO .; Figure 17. The Search Criterion for the Review Frame. RELATION P10UTCOMES; BEGIN ITEM TIME STRINGTIME; ITEM 01 CODE(28 1 1 2 3 1 0 0); ITEM 02 CODE(28 1 1 2 3 6 0 0); ITEM 03 CODE(28 1 1 2 3 9 0 0); ITEM 04 CODE(28 1 1 2 3 11 0 0); ITEM 05 CODE(28 1 1 2 3 16 0 0); ITEM 06 CODE(28 1 1 2 3 21 0 0); ITEM 07 CODE(28 1 1 2 3 31 0 0); ITEM 08 CODE(28 1 1 2 3 36 0 0); ITEM 09 CODE(28 1 1 2 3 200 0 0); ITEM DEL"STRING CODE(28 1 0 4 0 0 0 11); END; BUILD P10UTCOMES UPDATE WHERE $COUNT(P10UTCOMES)=1 AND NOT $EXIST(DEL"STRING) FROM $NOW BACKTO *; Figure 18. The Specific Search Criterion for an Edit Frame. 40 41 "RELATION" to find the specific items. The second method is called a "passing" method. The advantage of the "searching" method is that the structure of the edit frame is very simple so that it is possible to develop a general purpose knowledge base editor to generate this kind of frame. The idea of using a knowledge base editor to generate the HELP frames corresponds with a goal of the HELP system. On the other hand, the structure of the "passing" method is more complex. It is difficult to have a general purpose knowledge base editor to generate the frames. In terms of the speed, the "passing" method could be faster than the "searching" method because there is no need to make another database search in each edit frame. Structure of the PTXT Dictionary The other key problem in the framed-base model is the structure of the PTXT dictionary. In the old structure of the PTXT dictionary, which is a purely hierarchical structure, different parent nodes cannot share the same child node. In the old PTXT dictionary structure of nursing care plans as shown in Figure 19, the causes, outcomes and actions of problem 1 are the subitems under problem 1. Those items cannot be shared by other types of patient data. However, in many cases, different types of patient data can have the same item. For the purely hierarchical structure of the PTXT dictionary, the same item has to be duplicated under the different types of patient data. This 42 will bring a lot of redundancy to the PTXT dictionary with the increase of the coded data. This is a disadvantage of a purely hierarchical database. Fortunately, PAL provides a relational view of the PTXT dictionary and the capability of using multiple data class data. With the introduction of the PTXT constant structure as shown in Figure 20, an item which belongs to one type of patient data can be shared by other types of patient data by simply defining that item as a PTXT constant. Figure 21 gives an example of a PTXT constant relation. The PTXT constant heading item CAUSES has the Data Class 201, while item Cl, C2 and C3 have the Data Class 202. The item Cl, C2 and C3 can be shared by the heading item CAUSES as well as other types of patient data. In this way, once an item has been defined in one type of patient data, it is no longer necessary to duplicate that item in other types of patient data. Thus, the redundancy in the PTXT dictionary can be reduced by using the PTXT constant model. variations on the frame-based Model In summary, the major difference among the different methods discussed above can be focused on the structure of the edit frames. By combining the ttpassingtt method and the "searching" method with the purely hierarchical structure data dictionary and the PTXT constant structure data dictionary, we have developed several different versions of the edit frames as follows: 43 NURSING CARE PLAN 1 I I PR()~1 -------------------------- PR()B#N I I I P1 CAUSE P1()UTOOME P1 ACTI()N ~ r1=l ~ C1 C2 Ck ()1 ()2 ()p A1 A2 Am Figure 19. Purely Hierarchical PTXT Structure. NURSING CARE PLAN P1 CAUSE P1 ()UTC()ME P1 ACTI()N CAUSE ()UTC()ME ACTI()N ~ ~ ~ C1 C2 Cx ()1 ()2 ()y A1 A2 Az Figure 20. PTXT Constant Structure. RELATION PROB1 ACAUSES; BEGIN ITEM TIME STRINGTIME; ITEM CAUSES CODE (201 1 1 4 11 0 0 1) PTXTACONST ANT; BEGIN ITEM C1 CODE (202 1 1 2 4 1 0 0); ITEM C2 CODE (202 1 1 2 9 1 0 0); ITEM C3 CODE (202 1 1 2 8 1 0 0); END; END; Figure 21. An Example of a PTXT Constant Relation. 44 45 1 ) the "passing" method and the purely hierarchical structure; 2) the "searching" method and the purely hierarchical structure; 3) the "searching" method and the PTXT constant structure; 4) the "searching" method and the combination of the purely hierarchical and the PTXT constant structure. The examples of those frames are presented in Appendices A and B. Decision Support Uses on the Frame.based Model The decision support in a hospital information system has almost become a necessity. Decision support requirement has come not only from the medical staff, but from the administrative and nursing staff as well. One decision support use is management decision support, which is the automatic generation of action-oriented decisions designed to improve the system state. The computerized nursing care plan is one of the decision support uses on the HELP system. The automation of the nursing care plan can be divided into two steps. The first step is the automatic generation of the nursing diagnoses for the care plan. The second step is the automatic generation of the expected outcomes and nursing actions. The approach to the nursing care plan is in the process of being changed from one of anatomical systems to that of diagnostic categories grouped under Functional Health Patterns. 46 The nursing care plan based on nursing diagnoses that are derived from actual patient data are more likely to be individualized and focused on the nurse's ability to assist the patient. The automation of the nursing care plan can help the nurse identify nursing diagnoses and generate better care plans. As an initial study of automating the nursing care plan, eleven HELP frames have been built to suggest the corresponding nursing diagnoses. Those nursing diagnoses are: 1 ) Thought Processes, Altered; 2) Bowel Elimination, Altered: Constipation; 3) Bowel Elimination, Altered: Diarrhea. 4) Urinary Elimination, Altered Patterns: Incontinence, Total; 5) Bowel Elimination, Altered: Incontinence; 6) Self-Care Deficit: Feeding; 7) Self-Care Deficit: Bathing/Hygiene; 8) Skin Integrity, Impaired; Potential; 9) Skin Integrity, Impaired; Actual; 10) Mobility, Impaired Physical; and 11) Activity Intolerance. Each nursing diagnosis has a corresponding decision frame. A decision frame consists of two parts. The first part searches the patient database to get the patient assessment data that are necessary to identify a specific nursing diagnosis. The second part is a group of rules that will conclude true or false for the nursing diagnosis based on the patient assessment data. For each nursing diagnosis, the rules have been set up by nursing experts. For 47 example, the rule for the nursing diagnosis of " Bowel Elimination, Altered; Diarrhea" is that if one or more of the symptoms such as liquid, loose and mucoid stool is presented, the nursing diagnosis of "Diarrhea" is concluded as true. Figure 22 gives an example of a decision frame for a specific nursing diagnosis. In this way, the expert knowledge can be used to assist the nurses to make their decisions. The decision frames can be integrated into the frame-based model as shown in Figure 23. TITLE: NURSING"DIAGNOSIS7 [28 : 1 : 807]; MESSAGE:; AUTHOR: 1-00000000 - PING WANG-I; MAINTENANCE:; FRAME TYPE: DIAGNOSIS; DESTINATION:; 48 VARIABLE DECLARATIONS: C AS AN EXPRESSION CONTAINING C1 WHICH IS 1-28 1 60 3 100 20 5 0--1 OR C2 WHICH IS 1-28 1 60 3 100 20 40 0--1 OR C3 WHICH IS 1-281 60310020 100--1 OR C4 WHICH IS 1-28 1 60 3 100 30 15 0--1 OR C5 WHICH IS 1-281 60310030 160--1 OR C6 WHICH IS 1-28 1 603 100 30 250--1 OR C7 WHICH IS 1-28 1 60 3 100 30 35 0--1 OR C8 WHICH IS 1-28 1 60 3 100 30 40 0--1 FROM NOW BACKTO 10 YEARS AGO; LOGIC: SEARCHC; IF EXIST{C) THEN CONCLUDE TRUE; ELSE CONCLUDE FALSE; Figure 22. HELP Decision Frame for Nursing Diagnosis REVIEW FRAME NCP MAIN PROGRAM DECISION FRAMES PATIENT DATA BASE (NCP PTXT DICTIONARY) 49 ... ... EDIT OPTION FRAME .... EDIT I--.....j-..,... FRAMES KNOWLEDGE BASE EDITOR Figure 23. Decision Support Uses in the Frame-based Model. CHAPTER IV RESUL TS, DISCUSSIONS AND FUTURE WORK ComparisoD of Different Methods One of the key problems in this frame-based model is the structure and speed of the edit frames. Different edit frames have been developed as mentioned in Chapter III. These edit frames are presented in Appendices A and B. Each edit frame consists of three functional parts, which are data acquisition, data display and data storage. In terms of the data acquisition, there is a "searching" method versus a "passing" method as discussed previously. One of the standards used to evaluate these edit frames is that the edit frames should be simple and general enough in structure so that a general knowledge base editor can be developed to generate those frames. The advantage of using the "searching" method is that the structure of the edit frames is very simple and is good for a general knowledge base editor. On the other hand, the structure of the "passing method" is much more complex (see Appendix A); and thus it is difficult to have a general knowledge base editor to generate such frames. Therefore, it is clear that the "searching" method is a better 51 choice for a general knowledge base editor than the "passing" method in terms of structure. In order to compare the different edit frames in terms of speed, timing experiments have been designed. For both the "passing" and "searching" methods, the experiments have been performed on the edit frames with different number of items in a RELATION. The number of the items used in the test ranged from 4 to 20. Each edit frame had also been tested with the different number of strings previously stored in the patient database and the nurnber of strings ranged from 2 to 20. The CPU time of the edit frames is shown in Figure 24. The CPU time recorded here is different from the actual user time, but they are closely related. Each edit frame with the same number of items and strings was tested 10 times. The average CPU time and its standard deviation were calculated based on the 10 repeated executions of each edit frame. The results are shown in Table 1. For example, if String#/ Item# = 16/20, the edit frame had 20 items in the RELATION, and it was tested when there were 16 current strings previously stored in the patient database. Tl represents the average CPU time for the "passing" method and S 1 represents the corresponding sample standard deviation. Similarly, T2 represents the average CPU time for the "searching" method with the purely hierarchical structure and S2 represents the corresponding sample standard deviation. T3 represents the average CPU time for the "searching" method with the PTXT constant structure and S3 represents the ~ \. ", Call Edit Frame (Passing Method) ..J --------- (pass and Compare r Multiple Choice '"' Window \.. ..) --------- ~, ( End ) CPU Time ~ .." Call Edit Frame (Searching Method) \.. ~ ----.---- Search r Multiple Choice '"" Window \... .;I --------- ~, ( End ) Figure 24. CPU Time Recorded for Edit Frames. 52 53 Table 1 Timing Data for Edit Frames String#/ltem# Passing Searching Searching with Pure Hierarchy with Pure Hierarchy with PTXT Constant T1 S1 T2 S2 T3 S3 20/20 0.392 0.0103 0.432 0.0042 0.828 0.0092 16/20 0.377 0.0106 0.416 0.0052 0.762 0.0103 12/20 0.359 0.0088 0.400 0.0067 0.706 0.0097 8/20 0.344 0.0070 0.388 0.0042 0.624 0.0117 4/20 0.331 0.0074 0.370 0.0047 0.566 0.0107 2/20 0.323 0.0082 0.366 0.0052 0.510 0.0105 20/16 0.360 0.0105 0.403 0.0082 0.654 0.0084 1 6/1 6 0.359 0.0110 0.399 0.0057 0.626 0.0097 1 2/1 6 0.345 0.0071 0.381 0.0057 0.594 0.0070 8/16 0.332 0.0063 0.368 0.0042 0.552 0.0103 4/16 0.315 0.0071 0.351 0.0032 0.517 0.0067 2/16 0.303 0.0048 0.341 0.0032 0.492 0.0092 20/12 0.317 0.0067 0.360 0.0067 0.569 0.0074 1 6/1 2 0.317 0.0067 0.356 0.0052 0.546 0.0107 1 2/1 2 0.316 0.0070 0.351 0.0032 0.525 0.0071 8/12 0.306 0.0070 0.341 0.0032 0.485 0.0071 4/12 0.291 0.0057 0.330 0.0067 0.461 0.0074 2/12 0.283 0.0048 0.315 0.0071 0.443 0.0095 20/8 0.299 0.0099 0.325 0.0053 0.509 0.0099 16/8 0.297 0.0048 0.322 0.0042 0.483 0.0082 12/8 0.297 0.0095 0.319 0.0032 0.457 0.0067 8/8 0.295 0.0085 0.315 0.0053 0.422 0.0063 4/8 0.273 0.0048 0.300 0.0000 0.381 0.0057 2/8 0.265 0.0053 0.290 0.0000 0.355 0.0085 20/4 0.266 0.0070 0.294 0.0052 0.393 0.0067 16/4 0.265 0.0071 0.284 0.0052 0.379 0.0074 12/4 0.264 0.0070 0.282 0.0042 0.364 0.0052 8/4 0.266 0.0070 0.280 0.0000 0.351 0.0058 4/4 0.262 0.0079 0.272 0.0042 0.331 0.0057 2/4 0.245 0.0053 0.270 0.0000 0.308 0.0080 54 corresponding sample standard deviation. Table 2 gives a comparison of the timing difference of those methods. D21 means the difference between T2 and Tl, Le., D21 = T2-Tl. Similarly, D32 = T3-T2 and D31 = T3-Tl. Figure 25 gives a graphical representation for the timing difference. As can be seen, the "passing" method was faster than other type of methods. The "searching" method with PTXT constant structure was slower than the "searchingll method with non-PTXT constant structure. The largest timing difference was less than 0.5 seconds. The difference, while significant, may in fact be within the requirements for the operational speed of the system. Basically, there are three versions of the edit frame for the "searching" method that can be used in the frame-based model. In terms of the structure of the PTXT dictionary, there are the purely hierarchical structure, the PTXT constant structure and a combination of the two. The purely hierarchical structure edit frame can be used in single type data applications because of its purely hierarchical structure. The PTXT constant structure and the combination structure edit frames can be used in the cases of multiple data class applications. SueeestjDe NursiDe DjaeDQSeS In order to evaluate the results of the nursing diagnoses suggested by the corresponding decision frames, 11 nursing diagnosis decision frames have been tested on numbers of patients so that each nursing diagnosis has 25 cases. The 55 Table 2 Timing Comparison for Edit Frames ~tring#lItem# T1 T2 T3 021 032 031 20/20 0.392 0.432 0.828 0.040 0.396 0.436 1 6/20 0.377 0.416 0.762 0.039 0.346 0.385 1 2/20 0.359 0.400 0.706 0.041 0.306 0.347 8/20 0.344 0.388 0.624 0.044 0.236 0.280 4/20 0.331 0.370 0.566 0.039 0.196 0.235 2/20 0.323 0.366 0.510 0.043 0.144 0.187 20/16 0.360 0.403 I 0.654 0.043 0.251 0.294 1 6/1 6 0.359 0.399 0.626 0.040 0.227 0.267 1 2/1 6 0.345 '0.381 0.594 0.036 0.213 0.249 8/16 0.332 0.368 0.552 0.036 0.184 0.220 4/16 0.315 0.351 0.517 0.036 0.166 0.202 2/16 0.303 0.341 0.492 0.038 0.151 0.194 20/12 0.317 0.360 0.569 0.043 0.209 0.252 1 6/1 2 0.317 0.356 0.546 0.039 0.190 0.229 1 2/1 2 0.316 0.351 0.525 0.035 0.174 0.209 8/12 0.306 0.341 0.485 0.035 0.144 0.179 4/12 0.291 0.330 0.461 0.039 0.131 0.170 2/12 0.283 0.315 0.443 0.032 0.128 0.160 20/8 0.299 0.325 0.509 0.026 0.184 0.210 16/8 0.297 0.322 0.483 0.025 0.161 0.186 12/8 0.297 0.319 0.457 0.022 0.138 0.160 8/8 0.295 0.315 0.422 0.020 0.107 0.127 4/8 0.273 0.300 0.381 0.027 0.081 0.108 2/8 0.265 0.290 0.355 0.025 0.065 0.090 20/4 0.266 0.294 0.393 0.028 0.096 0.124 16/4 0.265 0.284 0.379 0.019 0.095 0.114 12/4 0.264 0.282 0.364 0.018 0.082 0.100 8/4 0.266 0.280 0.351 0.014 0.071 0.085 4/4 0.262 0.272 0.331 0.010 0.059 0.069 2/4 0.245 0.270 0.308 0.025 0.038 0.063 56 Data from "Table 2" 0.500 -,----.,..----r-----..,.-----,..---...,...., 0.400 -iU J 8 c: 0.300 ! ! .... Q .... 021 ctn: 0.200 -m- 003312 E i= 0.100 0.000 +--....--+--.....--i----.---;.---r--+---....,...---:~ o 6 12 1 8 24 30 String#lItem# Horizontal Axis String#/ltem# Horizontal Axis String#/ltem# 1 20/20 16 8/12 2 16/20 17 4112 3 12120 18 2/12 4 8/20 19 20/8 5 4120 20 16/8 6 2120 21 1218 7 20/16 22 818 8 16/16 23 418 9 12116 24 218 10 8/16 25 20/4 11 4/16 26 16/4 12 2116 27 1214 13 20/12 28 814 14 16/12 29 414 15 12112 30 214 Figure 25. Graphical Representation of the Timing Difference. 57 suggested nursing diagnosis for each case was recorded and compared to the actual nursing charting. The true positive rate (TPR), false positive rate (FPR), true negative rate (TNR) and false negative rate (FNR) were calculated for each nursing diagnosis as shown in Table 3. The true negative rate and false positive rate cannot be computed for nursing diagnosis No. 8 and 10 because the numbers of true negative and false positive were both zero. As can be seen, the false positive rates were relatively small for all the nursing diagnoses. It can be concluded that the probability of mistakenly suggesting a nursing diagnosis is small by using these decision frames for the nursing diagnoses. The true positive rate for nursing diagnosis No.4, which is "Urinary Elimination, Altered Patterns; Incontinence, Total," was only 0.444. The rule for this nursing diagnosis is that if the symptom of "Incontinent" and/or "Adult diaper change" presents, the nursing diagnosis is concluded as true. Some cases resulted from the identification item "Adult diaper change" as a predictor of urinary incontinence. However, the patient had a Foley urine catheter in place so there would not have been an adult diaper on the patient for the possible occurrence of urine incontinence. So the wrong suggestion was resulted from inaccurate rules. For further improvement of the suggested nursing diagnoses, the rules for the nursing diagnoses can be modified based on the nurse knowledge and experience to achieve better results. This can be an ever-changing process as knowledge of the nursing 58 Table 3 Suggested Nursing Diagnosis Data Nursing Diagnosis No. TPR FNR TNR FPR 1 0.737 0.263 0.833 0.167 2 1.000 0.000 0.909 0.091 3 0.813 0.187 1.000 0.000 4 0.444 0.556 0.813 0.187 5 0.846 0.154 1.000 0.000 6 1.000 0.000 1.000 0.000 7 0.958 0.042 1.000 0.000 8 1.000 0.000 9 0.818 0.182 0.857 0.143 10 0.960 0.040 11 1.000 0.000 1.000 0.000 59 diagnoses is improved or a new nursing diagnosis comes up. However, the basic structure of the decision frame will remain the same. Future Work and Conclusions The HELP system has its unique decision-making capabilities in addition to general administrative and clinical functions. One goal in developing the HELP's Nursing Information System is the automation of the nursing care plans. On the basis of patient data and other necessary information, the system will be able to automatically generate suggested nursing care plans, which include nursing diagnosis, expected outcomes and nursing actions for a particular patient so that the nursing care plans will be generated much more efficiently. The frame-based design provides the flexibility of adding new functional modules, modifying the old functional modules and the foundation of automating the nursing care plan. The frame-based model integrates the three major functions of any information system, which are data retrieve, data modification and data storage and also provides HELP decision support functions. It is necessary to point out that although the frame-based model along with the edit frames is developed for computerizing the nursing care plans in this project, it could be a general model for many other applications on the HELP system. APPENDIX A THE EDIT FRAME FOR "PASSING METHOD" 1========================================================== 1 THE EDIT FRAME - "PASSING" METHOD 1========================================================== ?FREETEXT 100 SECTION P10UTCOME (28 1 2030); BEGIN PARAMETER RELATION FIELD"CODE; BEGIN ITEM TIME STRINGTIME; ITEM INACTIVE CODE(28 1 0 4 * * * 1); ITEM POT CODE(281 04 * * * 6): ITEM PROB CODE(2811/16 * * * * *); ITEM CAUSE CODE(2811/16 2131 * *) SCALE(*); ITEM OUTCOME CODE(2811/16213 3 * *) SCALE(*); ITEM STANDARD CODE(281 1/1634 *) SCALE(*); ITEM ACTION CODE(28 1 1/16 3 2 *) SCALE(*); ITEM INITATIME CODE(281 04* * * 2): END; PARAMETER VARIABLE NEW; VARIABLE DROSSO,L,NUMBER"OFAOUTCOMES; VARIABLE NULL CHAR[20), COUNT,NUMAANS,SELECT CHAR[30), ISSELECTED,FKEV,ST AT"WINDOW,P1 OUTCOMES; RELATION 01; BEGIN ITEM TIME STRINGTIME; ITEM 01 CODE(2811 231 00); END; RELATION 02; BEGIN ITEM TIME STRINGTIME; ITEM 02 CODE(2811 23600); END; RELATION 03; BEGIN ITEM TIME STRINGTIME; ITEM 03 CODE(2811 23900); END; RELATION 04; BEGIN ITEM TIME STRINGTIME; ITEM 04 CODE(2811 2311 00); END; RELATION 05; BEGIN ITEM TIME STRINGTIME; ITEM 05 CODE(2811 231600); END; 61 RELATION 06; BEGIN ITEM TIME STRING-riME; ITEM 06 CODE(28 1 1 2 3 21 00); END; RELATION 07; BEGIN ITEM TIME STRINGTIME; ITEM 07 CODE(2811 2331 00); END; RELATION 08; BEGIN ITEM TIME STRINGTIME; ITEM 08 CODE(28 1 1 2 3 36 ° 0); END; RELATION 09; BEGIN ITEM TIME STRINGTIME; ITEM 09 CODE(281 1 23200 ° 0) FREETEXT(80); END; ?NOLIST ?SOURCE "DATA PALVC LITERALS"; ?LlST ALLOCATE 01; ALLOCATE 02; ALLOCATE 03; ALLOCATE 04; ALLOCATE 05; ALLOCATE 06; ALLOCATE 07; ALLOCATE 08; ALLOCATE 09; 62 P10UTCOMES:=MCNEW(2,4,0,23,"OUTCOMES IN ALTERATION IN RESPIRATORY FUNCTION",COOKED+CURSORS+CENTER+BORDER+BD1,SELECT); IF NEW-1 THEN NUMBER"OF"OUTCOMES:-O ELSE NUMBER"OF"OUTCOMES:-$COUNT(FIELD"CODE.OUTCOME); L:-1; ISSELECTED:=O; IF L<-NUMBER"OF"OUTCOMES THEN BEGIN IF $ADJ(01.01)=SADJ(FIELD"CODE.OUTCOME[L]) THEN BEGIN ISSELECTED:=MCSELECTED; L:-L+1 ; END; END; MCITEM(P1 OUTCOMES, 1,1 ,O,"RESPIRATIONS REGULARIUNLABERED" ,0,01.01, NULL,1,ISSELECTED); ISSELECTED:-O; IF L<-NUMBER"OF~UTCOMES THEN BEGIN IF $ADJ(02.02)-$ADJ(FIELD"CODE.OUTCOME[L]) THEN BEGIN ISSELECTED:=MCSELECTED; L:-L+1 ; END; END; MCITEM(P1 OUTCOMES,2,2,0,"RESPIRATORY RATE WNL FOR PATRIENT" ,0,02.02,NULL, 1 ,ISSELECTED); ISSELECTED:=O; IF L<=NUMBER"OF"OUTCOMES THEN BEGIN IF $ADJ(03.03)=$ADJ(FIELD"CODE.OUTCOME[LJ) THEN BEGIN ISSELECTED:-MCSELECTED; L:-L+1 ; END; END; MCITEM(P10UTCOMES,3,3,O,"SPONTANEOUS VENTILATION",0,03.03, NULL,1,ISSELECTED); ISSELECTED:-O; IF L<-NUMBER"OF~UTCOMES THEN BEGIN IF $ADJ(04.04)-$ADJ(FIELD"CODE.OUTCOME[L]) THEN BEGIN ISSELECTED:-MCSELECTED; L:-L+1 ; END; END; MCITEM(P10UTCOMES.4,4,0,"CHEST CLEAR PER AUSCULTATION",0,04.04, NULL,1,ISSELECTED); ISSELECTED:=O; IF L<-NUMBER"OF"OUTCOMES THEN BEGIN IF $ADJ(05.05)-$ADJ(FIELD"CODE.OUTCOME[LJ) THEN BEGIN ISSELECTED:.MCSELECTED; L:=L+1 ; END; END; MCITEM(P10UTCOMES,5,5,0,"CHEST EXPANSION SYMMETRICAL ",0,05.05, NULL,1,ISSELECTED); ISSELECTED:-O; IF L<=NUMBER"OF"OUTCOMES THEN BEGIN IF $ADJ(06.06)-$ADJ(FIELD"CODE.OUTCOME[L]) THEN 63 BEGIN ISSELECTED:=MCSELECTED; L:=L+1 ; END; END; 64 MCITEM(P10UTCOMES,6,6,0,"ABGS MNL FOR PATIENT ON ROOM AIR OR SUPP 02" ,0,06.06,NULL, 1 ,ISSELECTED); ISSELECTED:=O; IF L<=NUMBER"OF"OUTCOMES THEN BEGIN IF $ADJ(07.07)-$ADJ(FIELDJ\CODE.OUTCOME[L]) THEN BEGIN ISSELECTED:=MCSELECTED; L:=L+1 ; END; END; MCITEM(P1 OUTCOMES,7,7 ,O,"INDEPENDENTL Y HANDLES SELF-CARE ROUTINES" ,0,07.07,NULL, 1 ,ISSELECTED); ISSELECTED:=O; IF L<=NUMBERJ\OF"OUTCOMES THEN BEGIN IF $ADJ(08.08)=$ADJ(FIELD"CODE.OUTCOME[L]) THEN BEGIN ISSELECTED:=MCSELECTED; L:=L+1 ; END; END; MCITEM(P10UTCOMES,8,8,0,"PERFORMS NECESSARY SELF-CARE ROUTINES",0,08.08.NULL.1,ISSELECTED); ISSELECTED:=O; IF L<=NUMBER"OF"OUTCOMES THEN BEGIN IF $ADJ(09.09)=$ADJ(FIELD"CODE.OUTCOME[L]) THEN BEGIN ISSELECTED:=MCSELECTED; L:=L+1 ; END; END; MCITEM(P1 OUTCOMES,9,9,0,"COMMENT:(FREE TEXT ENTRy)",0,09.09, NULL,1,ISSELECTED); FKEY:=KEYSET(ESCAPE,CSF4,CSF10); DROSSO:=FMCREAD(FKEY,0,P10UTCOMES,NULL,NUMJ\ANS); IF DROSSO<>13 THEN RETURN DROSSO; MCHIDE; IF $VAL(SELECT[1 ,1]) THEN MOVEJ\CODES BUFFER 01.01; IF $VAL(SELECT[1 ,2]) THEN MOVEJ\CODES BUFFER 02.02; IF $VAL(SELECT[1,3]) THEN MOVE"CODES BUFFER 03.03; IF $VAL(SELECT[1 ,4]) THEN MOVE"CODES BUFFER 04.04; IF $VAL(SELECT[1 ,5]) THEN MOVE"CODES BUFFER 05.05; IF $VAL(SELECT[1 ,6]) THEN MOVE"CODES BUFFER 06.06; IF $VAL(SELECT[1 ,7]) THEN MOVE"CODES BUFFER 07.07; IF $VAL(SELECT[1 ,8}) THEN MOVE"CODES BUFFER 08.08; IF $VAL(SELECT[1 ,9J) THEN MOVE"CODES BUFFER 09.09; END; 65 APPENDIXB THE EDIT FRAMES FOR "SEARCHING METHOD" 1=========================================-========-====--= I THE EDIT FRAME - "SEARCHING" METHOD I NON·PTXT CONSTANT MODEL 1========================================================== ?FREETEXT 100 SECTION P1 OUTCOME (28 1 303 0); BEGIN VARIABLE o ROSSO,L,NUMBER"OF"OUTCOMES ; VARIABLE NULL CHAR[20], COUNT,NUM"ANS,SELECT CHAR[30], ISSELECTED,FKEY ,ST AT"WINDOW,P1 OUTCOMES; RELATION PROB1"OUTCOMES; BEGIN ITEM TIME STRINGTIME; ITEM 01 CODE(281 1 231 00); ITEM 02 CODE(281 123600); ITEM 03 ·CODE(28 1 1 2 3 9 0 0); ITEM 04 CODE(281 1 23 11 00); ITEM 05 CODE(281 1 231600); ITEM 06 CODE(281 1 2321 00); ITEM 07 CODE(281 1 2331 00); ITEM 08 CODE(28 1 1 2 3 36 0 0); ITEM 09 CODE(281 12320000) FREETEXT(80); ITEM DEL"STRING CODE(281 04 00011); END; ?NOLIST ?SOURCE "DATA PALVC LITERALS"; ?LlST 1-------**-*- -S-P-E-C-I-F-IC-- "-B-U-I-L-D-" --T-O- F-I-N-D- -T-H-E- -O-U--T-C-O-M--E-S- -*-**- -------- 1====----------------------------=----=====-====--===----== BUILD PROB1"OUTCOMES FOR"UPDATE WHERE $COUNT(PROB1"OUTCOMES)=1 AND NOT $EXIST(PROB1"OUTCOMES.DEL"STRING) FROM $NOW BACK TO *; 1======-=====--=====================-=====-================ I *** MULTIPLE CHOICE WINDOW FOR EDITING THE OUTCOMES *** 1==========-===-===============-=====-----==-========-===== 67 P10UTCOMES:=MCNEW(2,4,0,9,"OUTCOMES IN ALTERATION IN RESPIRATORY FUNCTION",COOKED+CURSORS+CENTER+BORDER+BD1,SELECT); ISSELECTED:=O; IF $EXIST(PROB1"OUTCOMES.01) THEN ISSELECTED:=MCSELECTED: MCITEM(P1 OUTCOMES, 1,1 ,O,"RESPIRATIONS REGULARIUNLABERED" ,0, PROB1"OUTCOMES.01 ,NULL,1 ,ISSELECTED); ISSELECTED:=O; IF $EXIST(PROB1 AOUTCOMES.02) THEN ISSELECTED:=MCSELECTED; MCITEM(P10UTCOMES,2,2,0,"RESPIRATORY RATE WNL FOR PATRIENT",O, PROB1"OUTCOMES.02,NULL,1,ISSELECTED); ISSELECTED:=O; IF $EXIST(PROB1"OUTCOMES.03) THEN ISSELECTED:=MCSELECTED; MCITEM(P10UTCOMES,3,3,O,"SPONTANEOUS VENTILATION",O, PROB1 "OUTCOMES.03,NULL,1 ,ISSELECTED); ISSELECTED:.O; IF $EXIST(PROB1"OUTCOMES.04) THEN ISSELECTED:=MCSELECTED; MCITEM(P1 OUTCOMES,4,4,O,"CHEST CLEAR PER AUSCULTATION" ,0, PROB1"OUTCOMES.04,NULL,1,ISSELECTED); ISSELECTED:=O; IF $EXIST(PROB1"OUTCOMES.05) THEN ISSELECTED:=MCSELECTED; MCITEM(P10UTCOMES,5,5,0,"CHEST EXPANSION SYMMETRICAL",O, PROB1"OUTCOMES.05,NULL,1,ISSELECTED); ISSELECTED:=O; 68 IF $EXIST(PROB1"OUTCOMES.06) THEN ISSELECTED:=MCSELECTED; MCITEM(P10UTCOMES,6,6,0,"ABGS MNL FOR PATIENT ON ROOM AIR OR SUPP 02",0, PROB1 "OUTCOMES.06,NULL,1 ,ISSELECTED); ISSELECTED:=O; IF $EXIST(PROB1 "OUTCOMES.07) THEN ISSELECTED:=MCSELECTED; MCITEM(P1 OUTCOMES,7,7,0,"INDEPENDENTLY HANDLES SELF-CARE ROUTINES",O, PROB1 "OUTCOMES.07,NULL, 1,ISSELECTED): ISSELECTED:=O; IF $EXIST(PROB1 "OUTCOMES.OS) THEN ISSELECTED:.MCSELECTED; MCITEM(P10UTCOMES,8,8,0,"PERFORMS NECESSARY SELF-CARE ROUTINES" ,0, PROB1"OUTCOMES.08,NULL,1 ,ISSELECTED); ISSELECTED:-O; IF $EXIST(PROB1"OUTCOMES.09) THEN ISSELECTED:=MCSELECTED; MCITEM(P1 OUTCOMES,9,9,0,"COMMENT:(FREE TEXT ENTRY)",O, PROB1 "OUTCOMES.09,NULL,1 ,ISSELECTED): FKEY:=KEYSET(ESCAPE,CSF4,CSF10); DROSSO:.FMCREAD(FKEY,0,P10UTCOMES,NULL,NUM"ANS); IF DROSSO<>13 THEN RETURN DROSSO; MCHIDE; 1========================================================== I *** IF SELECTED, MOVE"CODES BUFFER *** 1========================================================== IF$VAL(SELECT[1,1]) THEN MOVE"CODES BUFFER PROB1"OUTCOMES.01; IF $VAL(SELECT[1,2]) THEN MOVEACODES BUFFER PROB1"OUTCOMES.02; IF $VAL(SELECT[1 ,3]) THEN MOVEACODES BUFFER PROB1"OUTCOMES.03; IF $VAL(SELECT[1,4]) THEN MOVEACODES BUFFER PROB1"OUTCOMES.04; IF $VAL(SELECT[1 ,5]) THEN MOVE"CODES BUFFER PROB1 "OUTCOMES.OS; IF $VAL(SELECT[1,6]) THEN MOVEACODES BUFFER PROB1"OUTCOMES.06; IF $VAL(SELECT[1 ,7]) THEN MOVE"CODES BUFFER PROB1 "OUTCOMES.07; IF $VAL(SELECT[1 ,8]) THEN MOVE"CODES BUFFER PROB1"OUTCOMES.08; IF $VAL(SELECT[1 ,9]) THEN MOVE"CODES BUFFER PROB1 "OUTCOMES.09; END; 69 1=======--==-----=-----------=-----------=---=-===-===-==== I THE EDIT FRAME -- "SEARCHING" METHOD I PTXT CONSTANT MODEL 1==-======================================================= ?FREETEXT 100 SECTION P10UTCOME (28 1 403 0); BEGIN VARIABLE DROSSO,L,NUMBER"OF"OUTCOMES; VARIABLE NULL CHAR[20], COUNT,NUM"ANS,SELECT CHAR[30], ISSELECTED,FKEY,STAT"WINDOW,P10UTCOMES; RELATION PROB1 "OUTCOMES; BEGIN ITEM TIME STRINGTIME; ITEM OUTCOMES CODE(2011 1 4 ° ° ° 1) PTXT"CONSTANT; BEGIN ITEM 01 ITEM 02 ITEM 03 ITEM 04 ITEM 05 ITEM 06 ITEM 07 ITEM 08 ITEM 09 END: CODE(28 1 1 23 1 ° 0); CODE(28 1 1 23 6 ° 0); CODE(281 1 239 00); CODE(28 1 1 2 3 11 ° 0); CODE(281 1 23 16 00); CODE(28 1 1 2 3 21 ° 0): CODE(28 1 1 2331 00): CODE(281 1 2336 00); CODE(28 1 1 2 3 200 ° 0) FREETEXT(80); ITEM DEL "STRING CODE(201 1 1 04 ° ° ° 11); END; ?NOLIST ?SOURCE "DATA PALVC LITERALS"; ?LlST 1===------------==-------------------==-===-======-=====-== .. - SPECIFIC "BUILD" TO FIND THE OUTCOMES .. - 1===-===---------==----=--===---=-=-=-==-================== BUILD PROB1 "OUTCOMES FOR"UPDATE WHERE $COUNT(PROB1 AQUTCOMES)=1 AND NOT $EXIST(PROB1 "OUTCOMES.DEL "STRING) FROM $NOW BACK TO -; 1=====-=-=========================================-======== *'** MULTIPLE CHOICE WINDOW FOR EDITING THE OUTCOMES *-* 1===========================--============================= 70 P10UTCOMES:-MCNEW(2,4,0,9,"OUTCOMES IN ALTERATION IN RESPIRATORY FUNCTION",COOKED+CURSORS+CENTER+BORDER+BD1,SELECT); ISSELECTED:-O; IF $EXIST(PROB1 "OUTCOMES.OUTCOMES.01) THEN ISSELECTED:=MCSELECTED; MCITEM(P1 OUTCOMES, 1,1 ,O,"RESPIRATIONS REGULARIUNLABERED" ,0, PROB1 "OUTCOMES.OUTCOMES.01 ,NULL,1 ,ISSELECTED); 71 ISSELECTED:=O; IF $EXIST(PROB1 "OUTCOMES .. OUTCOMES.02) THEN ISSELECTED:=MCSELECTED; MCITEM(P10UTCOMES,2,2,O,"RESPIRATORY RATE WNL FOR PATRIENT",O, PROB1 "OUTCOMES.OUTCOMES.02,NULL, 1,ISSELECTED); ISSELECTED:-O; IF $EXIST(PROB1 "OUTCOMES.OUTCOMES.03) THEN ISSELECTED:=MCSELECTED; MCITEM(P10UTCOMES,3,3,0,"SPONTANEOUS VENTILATION",O, PROB1 "OUTCOMES.OUTCOMES.03,NULL, 1 ,ISSELECTED); ISSELECTED:=O; IF $EXIST(PROB1 "OUTCOMES.OUTCOMES.04) THEN ISSELECTED:.MCSELECTED; MCITEM(P1 OUTCOMES,4,4,0,"CHEST CLEAR PER AUSCULTATION",O, PROB1 "OUTCOMES.OUTCOMES.04,NULL, 1 ,ISSELECTED); ISSELECTED:=O; IF $EXIST(PROB1 "OUTCOMES.OUTCOMES.OS) THEN ISSELECTED:=MCSELECTED; MCITEM(P10UTCOMES,5,5,O,"CHEST EXPANSION SYMMETRICAL",O, PROB1 "OUTCOMES.OUTCOMES.OS,NULL,1,ISSELECTED); ISSELECTED:=O; IF $EXIST(PROB1"OUTCOMES.OUTCOMES.06) THEN ISSELECTED:=MCSELECTED; MCITEM(P10UTCOMES,6,6,O,"ABGS MNL FOR PATIENT ON ROOM AIR OR SUPP 02",0,PROB1 "OUTCOMES.OUTCOMES.06,NULL, 1,ISSELECTED); ISSELECTED:=O; IF $EXIST(PROB1 "OUTCOMES.OUTCOMES.07) THEN ISSELECTED:=MCSELECTED; MCITEM(P1 OUTCOMES,7,7,0,"INDEPENDENTLY HANDLES SELF·CARE ROUTINES",O,PROB1 "OUTCOMES.OUTCOM ES.07,NULL,1,1 SSELECTED); ISSELECTED:=O; IF $EXIST(PROB1 "OUTCOMES.OUTCOMES.OB) THEN ISSELECTED:=MCSELECTED; MCITEM(P10UTCOMES,B,B,0,"PERFORMS NECESSARY SELF·CARE ROUTINES", 0,PROB1 "OUTCOMES.OUTCOMES.OB,NULL, 1 ,ISSELECTED); ISSELECTED:=O; IF $EXIST(PROB1 "OUTCOMES.OUTCOMES.09) THEN ISSELECTED:=MCSELECTED; MCITEM(P1 OUTCOMES,9,9,0,"COMMENT:(FREE TEXT ENTRY)",O, PROB 1 "OUTCOMES.OUTCOMES.09,NULL,1,ISSELECTED); FKEY:.KEYSET(ESCAPE,CSF4,CSF1 0); DROSSO:.FMCREAD(FKEY,0,P1 OUTCOMES,NULL,N UM"ANS); IF DROSSO<>13 THEN RETURN DROSSO; MCHIOE; I F NOT $VAL(SELECT[1 ,1]) THEN $EXIST(PROB1"OUTCOMES.OUTCOMES.01 ) ===FALSE; IF NOT $VAL(SELECT[1 ,2]) THEN $EXIST(PROB1"OUTCOMES.OUTCOMES.02):=FALSE; I F NOT $VAL(SELECT[1 ,3]) THEN $EXIST(PROB1 "OUTCOMES.OUTCOMES.03):=FALSE; IF NOT $VAL(SELECT[1,4]) THEN $EXIST(PROB1 "OUTCOMES.OUTCOMES.04):=FALSE; IF NOT $VAL(SELECT[1 ,5]) THEN $EXIST(PROB1 "OUTCOMES.OUTCOMES.05):=FALSE; I F NOT $VAL(SELECT[1 ,6]) THEN $EXIST(PROB1"OUTCOMES.OUTCOMES.06):=FALSE; IF NOT $VAL(SELECT[1 .7]) THEN $EXIST(PROB1"OUTCOMES.OUTCOMES.07)===FALSE; IF NOT $VAL(SELECT[1 ,8]) THEN $EXIST(PROB1"OUTCOMES.OUTCOMES.08):=FALSE; I F NOT $VAL(SELECT[1 ,9]) THEN $EXIST(PROB1"OUTCOMES.OUTCOMES.09):=FALSE; MOVE"CODES BUFFER PROB1 "OUTCOMES.OUTCOMES; END; 72 1======-========---=-=====---=-====-===-=-=========-====--= t THE EDIT FRAME - "SEARCHING" METHOD I COMBINATION MODEL 1============-==-========-====-====----------===--=--=-=-== ?FREETEXT 100 SECTION P10UTCOME (28 1 503 0); BEGIN VARIABLE DROSSO,L,NUMBERAOF"OUTCOMES; VARIABLE NULL CHAR[20], COUNT ,NUMAANS,SELECT CHAR[30], ISSELECTED,FKEY,STATAWINDOW,P10UTCOMES; RELATION PROB1"OUTCOMES; BEGIN ITEM TIME STRINGTIME; ITEM OUTCOMES CODE(201 1 1 40001) PTXTACONSTANT; BEGIN ITEM 01 ITEM 02 ITEM 03 ITEM 04 ITEM 05 END; CODE(28 1 1 23 1 00); CODE(28 1 1 236 0 0); CODE(281 1 23900); CODE(2811 2311 00); CODE(28·1 1 231600); ITEM 06 CODE(201 1 1 2321 00); ITEM 07 CODE(201 1 1 2331 0 0); ITEM 08 CODE(201 1 1 233600); ITEM 09 CODE(201 1 1 23200 0 0) FREETEXT(80); ITEM DELASTRING CODE(201 1 1 04000 11); END; ?NOLIST ?SOURCE "DATA PALVC LITERALS"; ?L.IST 1========-----------=-------------------===----=--=---===== *** SPECIFIC "BUILD" TO FIND THE OUTCOMES *** 1==---=---=====---=-=--==-=---=======-================-==== BUILD PROB1"OUTCOfv1ES FORAUPDATE WHERE $COUNT(PR081 AOUTCOMES)=1 AND NOT $EXIST(PROB1AOUTCOMES.DEL ASTRING) FROM $NOW BACK TO *; 1--*=**- M--U-L-T-I-P-L-E- -C-H-O--IC-E-- W--IN--D-O-W-- -F-O-R- -E-D-I-T-IN-=G =TH-E-- O--U-T-C-O--M-E-S-- *-*-* - 1------------=-=-------------------------------==--=------- 73 P10UTCOMES:=MCNEW(2,4,0,9,"OUTCOMES IN ALTERATION IN RESPIRATORY FUNCTION",COOKED+CURSORS+CENTER+BORDER+BD1,SELECT); ISSELECTED:.Q; IF $EXIST(PROB1AOUTCOMES.OUTCOMES.01) THEN ISSELECTED:=MCSELECTED; MCITEM(P1 OUTCOMES, 1,1 ,O,"RESPIRATIONS REGULARIUNLA8ERED",0, PROB1"'OUTCOMES.OUTCOMES.01 ,NULL,1 ,ISSELECTED); 74 ISSELECTED:-O; IF $EXIST(PROB1 "OUTCOMES .. OUTCOMES.02) THEN ISSELECTED:.MCSELECTED; MCITEM(P10UTCOMES,2,2,O,"RESPIRATORY RATE WNL FOR PATRIENT",O, PROB1 "OUTCOMES.OUTCOMES.02,NULL,1 ,ISSELECTED); ISSELECTED:=O; IF $EXIST(PROB1"OUTCOMES.OUTCOMES.03) THEN ISSELECTED:-MCSELECTED; MCITEM(P10UTCOMES,3,3,O,"SPONTANEOUS VENTILATION",O, PROB1"OUTCOMES.OUTCOMES.03,NULL,1,ISSELECTED); ISSELECTED:.O; IF $EXIST(PROB1"OUTCOMES.OUTCOMES.04) THEN ISSELECTED:=MCSELECTED; MCITEM(P1 OUTCOMES,4,4,O,"CHEST CLEAR PER AUSCULTATION",O, PROB1"OUTCOMES.OUTCOMES.04,NULL,1,ISSELECTED); ISSELECTED:=O; IF $EXIST(PROB1"OUTCOMES.OUTCOMES.05) THEN ISSELECTED:=MCSELECTED; MCITEM(P10UTCOMES,5,5,O,ltCHEST EXPANSION SYMMETRICAL",O, PROB1"OUTCOMES.OUTCOMES.05,NULL,',ISSELECTED); ISSELECTED:=O; IF $EXIST(PROB1"OUTCOMES.06) THEN ISSELECTED:-MCSELECTED; MCITEM(P10UTCOMES,6,6,O,"ABGS MNL FOR PATIENT ON ROOM AIR OR SUPP 02" ,O,PROB 1 "OUTCOMES.06,NULL,1,ISSELECTED); ISSELECTED:=O; IF $EXIST(PROB1"OUTCOMES.07) THEN ISSELECTED:=MCSELECTED; MCITEM(P1 OUTCOMES,7,7,O,ltINDEPENDENTLY HANDLES SELF-CARE ROUTINES",O,PROB1"OUTCOMES.07,NULL,1,ISSELECTED); ISSELECTED:=O; IF $EXIST(PROB1"OUTCOMES.08) THEN ISSELECTED:=MCSELECTED; MCITEM(P10UTCOMES,8,8,O,"PERFORMS NECESSARY SELF-CARE ROUTINES", O,PROB1"OUTCOMES.08,NULL,1,ISSELECTED); ISSELECTED:=O; IF $EXIST(PROB1"OUTCOMES.09) THEN ISSELECTED:=MCSELECTED; MCITEM(P1 OUTCOMES,9,9,O,"COMMENT:(FREE TEXT ENTRY)",O, PROB1"OUTCOMES.09,NULL,1,ISSELECTED); FKEY:-KEYSET(ESCAPE,CSF4,CSF10): DROSSO:=FMCREAD(FKEY,O,P10UTCOMES,NULL,NUM"ANS); IF DROSSO<> 13 THEN RETURN DROSSO; MCHIDE; I F NOT $VAL(SELECT[1,1]) THEN $EXIST(PROB1"OUTCOMES.OUTCOMES.01 ):-FALSE; IF NOT $VAL(SELECT[1 ,2]) THEN $EXIST(PROB1 AOUTCOMES.OUTCOMES.02):=FALSE; I F NOT $VAL(SELECT[1 ,3]) THEN $EXIST(PROB1 AOUTCOMES.OUTCOMES.03):-FALSE; I F NOT $VAL(SELECT[1 ,4]) THEN $EXIST(PROB1 AOUTCOMES.OUTCOMES.04):-FALSE; I F NOT $VAL(SELECT[1 ,5]) THEN $EXIST(PROB1 AOUTCOMES.OUTCOMES.05):-FALSE; MOVEACODES BUFFER PROB1 "OUTCOMES.OUTCOMES; IF $VAL(SELECT[1 ,6]) THEN MOVEACODES BUFFER PROB1 AOUTCOMES.06; IF $VAL(SELECT[1 ,7]) THEN MOVEACODES BUFFER PROB1 AOUTCOMES.07; IF $VAL(SELECT[1 ,8]) THEN MOVEACODES BUFFER PROB1 AOUTCOMES.08; IF $VAL(SELECT[1 ,9]) THEN MOVEACODES BUFFER PROB1 AOUTCOMES.09; END; 75 REFERENCES 1. YURA, H. and WALSH, M., "The Nursing Process: Assessing, Planning, Implementing, Evaluating." Fifth Edition, Appleton Century Crofts, New York,1988. 2. KELLY, N. C. Nursing care plans. Nursing Outlook 14( 15), 61-64 (1966). 3. LITTLE, D. and CARNEVALI, D. Nursing care plans: Let's be practical about them. Nursing Forum 6(1), 61-76 (1976). 4. STEVENS, B. J. Why won't nurses write nursing care plans? Journal of Nursing Administration 11, 91-92 (1972). 5. BRENNAN, B. The nursing care plan: Computerized, professionalized, utilized. IEEE, 556-560 (1983). 6. CROSLEY, J. M. Computerized nursing care planning utilizing nursing diagnosis. IEEE, 642-645 (1984). 7. CENGIZ, M., RANZENBERGER, J., JOHNSON, D., KILLPACK, A., LUMKINS, R., and PRYOR, T. A. Design and implementation of computerized nursing care plans. Symposium on Computer Applications in Medical Care (SCAMC) 10, 561-564 (1983). 8. WRIGHT, C. A. and SHRADER, J. A. Development of computerized nursing care plans in the ambulatory setting. Symposium on Computer Applications in Medical Care (SCAMC) 11, 810-814 (1988). 77 9. PRYOR, T. A., GARDNER, R. M., CLAYTON, P. D. and WARNER, H. R. The HELP system. Symposium on Computer Applications in Medical Care (SCAMC) 11,19-27 (1982). 10. HUFF, S. M., CRAIG, R. B., GOULD, B.L. CASTAGNO, D.L. and SMILAN, R.E. A medical data dictionary for decision support applications. AT &T - Proprietary. 11. BERTHELSEN, C. L. Introduction to PTXT. Unpublished. Dept. of Biophysics, LDS Hospital,1988. 12. The HELP Frame Manual. Dept. of Biophysics, LDS Hospital,1988. 13. SABA V. K. Nursing information systems. IN "MEDINFO 1986," pp.579-584. 14. JOHNSON, D., RANZENBERGER, J. and PRYOR, T. A. Nursing application on the HELP system. IEEE, 703-708 (1984). 15. DEBORAH, K. H. and CAROL, B. Corporate standards for nursing care: An integral part of a computerized care plan. Computers in Nursing 7, 141-146 (1988). 16. PRYOR, T. A. Development of decision support systems. Unpublished. Dept. of Medical Informatics, University of Utah, 1988. 17. ARTHUR, J. D., A descriptive/prescriptive model for menu-based interaction. Int. J. Man-Machine Studies, 19-32 (1986). |
| Reference URL | https://collections.lib.utah.edu/ark:/87278/s6pv711v |



