Hypertext and the Object Oriented Paradigm: Combining Concepts for a Better Medical Record Ilha, J. O. Center for Biomedical Informatics, State University of Campinas, P.O. Box 6005, Campinas, SP, 13081-970, Brazil. ILHA@CCVAX.UNICAMP.BR ABSTRACT The complexity of the medical record often leads to complex and unyielding solutions with respect to the user interface in automated systems, which are, more often than not, rejected by the common medical user. This paper explores the use of the hypertext approach as a viable user interface model for a knowledge base management system developed under the object oriented paradigm. It is demonstrated that the easy mapping of these two paradigms onto each other may facilitate the implementation of this user interface, adding flexibility and friendliness to the system. 1. Introduction The application of computers to the automation of medical records is almost as old as the computer itself. In fact, the first standard medical record was developed in Germany almost 30 years ago [1]. There are some systems which were developed more than 20 years ago, that are still active in several hundred installations around the world, as is the case of COSTAR [2]. However, the computer technology which is available today is much more sophisticated than that used at the time these systems were planned. They were either batch processed, with no direct interaction with medical personnel, or were already conversational, but with very limited and clumsy user interfaces. Thus, more recent efforts at developing institution-wide or departmental medical record systems have emphasized the implementation of modern concepts for user interfaces. It has been unequivocally shown that this approach brings many benefits: less data entry errors; a possibility of application of very flexible standardized protocols; but, mainly, the possibility of transforming the computer into an active partner in the diagnostic and therapeutic process, such as alerting physicians that some examinations have to be performed (e.g., as part of a standard diagnostic workup or therapeutic protocol); calculating health risks; flagging abnormal test results; indicating potentially harmful drug interactions, etc. [3] Despite the obvious advantages, there are many problems that one have to cope with, when trying to develop a system which could be of any real use to physicians, because health professionals, specially in developing countries, are by no means acquainted with the use of computers. A viable automated medical record system would require not only a set of functions which should be able to exploit the advantages of electronic data storage, but, above all, an user- friendly interface, with uniformity, flexibility and "intelligence"... It is clear to us that part of the rejection and/or fear of computers shown by health care professionals might come from the "ugly and dumb" interfaces employed until recently. What should be the main characteristics to be pursued in the development of an ideal system, from the point of view of the medical user ? A previous study of ours [4] has investigated in detail this question, and its findings could be summarized as follows: - Free text storage, with fields without fixed lengths; - flexible definition of the database schema, supporting redefinitions, exceptions, null values, conditional fields, etc.; - manipulation of temporal dimension as well as abstract concepts as "before", "after", "during", etc.; - permanent storage of information (with no deletion) with tracking of the valid data items at the present time; - dynamical evaluation of the importance of a data item, taking into account the relationships among data; - capability of alerting physicians to previously specified problems; such as measures to be taken, drug interactions, etc., i.e. with inbuilt quality assurance capabilities; - automatic filling of pre-defined fields such as dose calculations; - user friendly interface, including semi-natural query language, graphical capabilities, uniformity, ease of learning and tolerance to user errors. As we can see, there are many opportunities for the application of Artificial Intelligence techniques to the field of information management. There are many different approaches concerning this problem, as we can see in the current literature. Some authors are investigating the integration of different databases through a common user interface, using object oriented techniques [5]. Other researchers are investigating what is called Knowledge Base Management Systems (KBMSs) [6,7,8]. Our previous work has explored the application of KBMSs, taking into account a unifying formalism, the object oriented paradigm (and languages) as a framework for database storage and specification of the "intelligent" modules. In the same line we can find Schneider's work [9], which deals with some problems of using object-oriented programming systems to represent knowledge. Another good example of this aproach is the research described by Toraban [10]. Another line closely related with our current research interest is the arena of the object-oriented database management systems. Aproaches in this field comes from the use of the object-oriented model as an interface for a relational database [11,12], through the creation of pure object-oriented databases [13,14,15]. In the present work, we are concerned with the exploration of the hypertext approach as a more adequate interface for the use of KBMSs. We think that this is entirely feasible, due to the naturally object oriented characteristics of hypertext systems. Here is important to note the project conducted by Barsalow & Wiederhold [12], which also uses hypertext techniques for building the interface for a medical database system. We present a simple description of the object oriented proposal and explore where hypertext might contribute with advantage to such a scheme. 2. The Object Oriented Approach Object oriented systems [16,17] are characterized by the use of a unique entity for the representation and manipulation of data: the object. Each object belongs to a class, the place where one defines the properties owned by the object. Each class is part of a is-a hierarchy, in such a way that properties defined in a super-class are inherited by the class that is being defined. Each object can contain variables and methods (procedures), which are the framework for the specification of its properties and actions. So, one can construct complex structures by defining, in a new class, variables that belongs to other classes. In our approach, as proposed by Ishikawa and Tokoro [18], each object additionally contains a knowledge base, that is accessible by methods for adding knowledge, unifying clauses, etc... So, in this context, one has all the power one can find in semantic nets, frame oriented systems, as well as in logic based systems. Thus biomedical expert database systems have much to profit from using a object-oriented architecture [4,19]. Having in mind a medical record, every patient's data, notes or conclusions or measures taken by the physician are considered, in our system, as attributes of the patient. As one can imagine, each attribute is an object that belongs to a class, having its own properties like default values, consistence limits, applicability, as well as possible actions to be taken when they are manipulated. All the objects (attributes) pertaining to a patient are linked to each other by means of a ring structure. This approach guarantees a binary relationship between attributes and patient, yielding a flexible structure, where the absence of some attribute does not mean a purposeless allocation of a pre-defined storage space. As each attribute has its properties (from the class it belongs to) one can define meta-data (e.g. if is a informed or measured attribute), production rules (non-procedural knowledge), actions to be performed (procedural knowledge), in accordance with the present medical knowledge about the properties of that attribute or set of common attributes (if knowledge is specified in a super-class of the class of the attribute). This shows the capabilities of factoring knowledge that object-oriented approach permits. This can be used with great advantage when a big bulk of knowledge is involved, as is the case of Medicine, and particularly, of this system. We can also generalize the above mentioned "ring approach" to link each visit of a patient, each patient of the doctor, and, in the upper layer, each "object" physicians interact with (medical records, drug interaction tables, bibliographical databases, medical agendas, etc.) in the same conceptual framework. 3. The Role of Hypertext Although this framework is able to deliver so much power, it will only be appreciable if we construct a good interface. As we have mentioned, the most complex program will not be useful if physicians can't interact without fear or difficulty. The hypertext concept [20,21] has been proposed some time ago, but it was only recently that its popularity has increased, mainly due to the appearance of high resolution screens for personal computers and Apple's introduction of Hypercard, an user-friendly hypertext machine, and a suitable language (HyperTalk) to construct "hyperstacks". Hypertext is an approach to information management in which data is stored in a set of nodes connected by links. Nodes can contain text, graphics, audio, video or, even, executable code. In contrast with printed information (the traditional medium), where data is presented in a linear and inflexible way, usually coming from general topics to specific ones; hypertext promotes the "flow of reading" by association. That is, with one item in mind one can jump to another part of the text that is suggested by the association of thoughts, making the reader free to explore any information path in a document. As an example that involves hypertexts' multimedia capability, when reading a list of patient radiographs, the physician might be able to select and jump directly to the image of the selected x-ray, by clicking a mouse button over a diagnostic information icon or label. Usually, hypercard engines permit that the whole network of nodes can be additionally viewed through an interactive browser, in order to locate a node of interest ("navigation"), or by means of an inverted free-text index structure. It's quite evident how one might bring hypertext concepts to the object oriented approach described above, since they present nearly identical data models [22]. The set of text nodes linked to each other in a network can be considered as a special class of objects that stores a text and one or more links for other objects of the same class. While the object-oriented approach focus on defining classes and methods for the entities, and arranging them into well- structured hierarchies; hypermedia systems focus on larger entities (texts, documents, images, etc.), and the inter-entities references (links). Thus, interesting and powerful abstract hypertext engines might be constructed by merging the two approaches, particular in reference to medical database applications. For instance, taking into account our "ring structure", each attribute class to be defined is a sub-class of this "hypertext class" and uses one of the links to form the ring structure. Despite the obvious advantages of integrating images, sounds, etc. directly into the medical record, there are many other advantages of this combination. Although the ring structure commented above can be very useful for the organization of the information and also helpful for context sensitive recovery of information (due to the hierarchical organization of data), there are many occasions where is desirable to override this hierarchical recovery. Suppose you have a structure that groups data into categories like cardiovascular system, respiratory system, etc. and each one of these into history and physical examination. When you are reading information about the cardiovascular system of the patient and ask for physical examination data, it is almost certain that you want to inspect cardiovascular parameters. But, later on, you will probably want to correlate this data with respiratory parameters. In another context, when you are ordering some drug, it will probably be necessary to check out literature for undesired effects or pharmacokinetic predictions, etc. This kind of data recovery driven by association is the strength of the hypertext approach. Although all the data is there, in our ring structure, the direct capability of recovering it is not an intrinsic part of the model. It's a responsibility of the interface to provide a quick access method. Having in mind the same idea, it's possible to anticipate the most probable alternatives for information recovery that a physician will need. If we create associative links for these alternatives, this kind of query will be much more effective than making questions, even if they are done in natural or semi-natural language. In both circumstances described above, it is necessary to note that "links" have to be set by someone, which probably means, in most of the cases, by the system. Here is another point where Artificial Intelligence can be used: the heuristic determination of which links are to be created. In one related work, the "anticipation" of informational retrieval in a hypertext system is solved through the application of "belief networks" [23], which uses bayesian inference to predict the most valuable "nodes of information" that one might need when reading part of the text. A second work [24], begins by looking at queries made by the user. Based on the query, a transient hypergraph is constructed wich establishes all the records with the same atributes as the present one, creating nodes (links) to these related items, aimming at a hypertext based retrieval. Our current work explores the application of neural networks to make this kind of job. 4. Conclusions Due to the easy mapping of hypertext approach onto the object oriented paradigm, it would be feasible to construct a system with a uniform interface based on hypertext, supported by a object oriented structure. Hypertext adds to the medical record system flexibility for the manipulation of data and a much easier way for medical interaction. Several programming languages based on the object- oriented paradigm, such as C++, SmallTalk, etc.(not to mention object-oriented DBMSs) are now easily available for all classes of computers, and should be ideal tools for developing high-performance hypertext-based medical record engines, thus paving the road for a new generation of "intelligent" databases in Medicine [25]. We are currently working on the practical implementation of a object- oriented hypertext engine for microcomputers, for applications in intelligent medical database systems. 5. Acknowledgments The author thanks Dr. Renato M.E. Sabbatini for reviewing the English manuscript. 6. References [1] Wagner, G. O papel da Inform tica no progresso da Medicina. Rev. Bras. Inform. Sa£de, 1(4):1-7, 1988. [2] Blum, B.I. Ambulatory Care Systems. In: Clinical Information Systems, New York, Springer-Verlag, p.253-91, 1986 [3] Pryor, T.A. - The HELP medical record system. MD Comput., 5: 22, 1988. [4] Ilha, J.O. Analysis and Logical Characterization Of An Information System for Supporting Clinical Patient Databases According To The Paradigm Of Object-Oriented Programming Languages. Porto Alegre, Brazil: Federal University of Rio Grande do Sul, Dept. Computer Sciences. Masters Dissertation (in Portuguese), 1986. [5] Bertino, E. et alii. Integration of heterogeneous database applications through an object-oriented interface. Information Systems, 14(5):407-420, 1989. [6] Altenkrueger, D. E. KBMS: Aspects, Theory and Implementation. Information Systems, 15(1):1-7, 1990. [7] Greenes G. A. & Deibel, S. R. A. The DeSyGNER knowledge management architecture: a building block approach based on an extensible kernel. Artificial Intelligence in Medicine, 3(2):95-111, 1991. [8] Schmidt, J. W. & Costantino, T. Foundations of Knowledge Base Management. New York: Springer-Verlag, 1989. [9] Patel-Schneider, P. F. Practical, object based knowledge representation for knowledge-based systems. Information Systems, 15(1):9-19, 1990. [10] Tarabar, D. B. et alii. An object-oriented software architecture for the Explorer-2 Knowledge Management Environment. In: 13rd Annual Symposium on Computer Applications in Medical Care. Kingsland, L.C. (ed.). Piscataway: IEEE, 1989:93-97 [11] Barsalou, T. & Wiederhold, G. Complex objects for relational databases. Computer-Aided Design, 22(8):458-468, 1990. [12] Barsalou, T. & Wiederhold, G. A cooperative hypertext interface to relational databases. In: 13rd Annual Symposium on Computer Applications in Medical Care. Kingsland, L.C. (ed.). Piscataway: IEEE, 1989:383-387. [13] Kim, W. et alii. Object-oriented database support for CAD. Computer-Aided Design, 22(8):469-479, 1990. [14] Moss, J. E. B. Design of the Mneme Persistent Object Store. ACM Transactions on Information Systems, 8(2):103-139, 1990. [15] Caruso, M. & Sciore, E. The VISION object-oriented database management system. In: Advances in Database Programming Languages, Bancilhon, F. & Buneman, P. (Eds.). New York: ACM Press, 1990:147- 163. [16] Cox, B.J. Message/object: an evolutionary change. IEEE Software, 1(1):50-61, 1984. [17] Pascoe, G.A. Elements of object-oriented programming. Byte. 11(8):139-44, 1986. [18] Ishikawa, Y. & Tokoro, M. A concurrent object-oriented knowledge representation language Orient84/K: its features and implementation. Sigplan Notices, 21(11):232-41, 1986. [19] Barsalou, T. An object-based architecture for biomedical expert database systems. Comp. Meth. Prog. Biomed., 30(2-3):157-168, 1989. [20] Smith, J.B. & Weiss, S.F. An overview of hypertext. Comm. ACM, 31(7):816-9, 1988. [21] Gessner, R. Building a hypertext system. Dr. Dobb's Journal, 165:22-33, 1990. [22] Halasz, F. Reflections on Notecards: seven issues for the next generation of hypermedia systems. Comm. ACM, 31(7):836-855, 1988. [23] Frisse, M. E. & Cousins, S. B. Query by browsing: an alternative hypertext information retrieval method. In: 13rd Annual Symposium on Computer Applications in Medical Care. Kingsland, L.C. (ed.). Piscataway: IEEE, 1989:388-391. [24] Watters, C. & Shepherd, M. A. A transient hypergraph-based model for data access. ACM Transactions on Information Systems, 8(2):77- 102, 1990. [25] Sabbatini, R.M.E. New software technologies for database applications in clinical medicine. Abstr. XI Eur. Congr. Perinatal Medicine, Rome, Italy, April 10-13, 1988. Roma: CIC Ediz.Internaz., p.173, 1988. Published in: Proceed. 11th International Congress of the European Federation of Medical Informatics. London, Freund Publ., p. 712-715, 1993. (c) 1993 by Freund Publish. Co. Ltd., London