Visual Strategies for Querying Databases - Semantic Scholar

4 downloads 2492 Views 29KB Size Report
visual tool may therefore help to access the database, without the dependency ... working with it, since the amount of technical knowledge required for running ...
Visual Strategies for Querying Databases C.Batini, T. Catarci

M. F. Costabile

S. Levialdi

Dipartimento di Informatica e Sistemistica Istituto di Scienze dell'Informazione Dipartimento di Scienze dell'Informazione Università di Roma "La Sapienza" Università di Bari Università di Roma "La Sapienza" Via Salaria 113, 00198 Roma, Italy Via Amendola 173, 70126 Bari, Italy Via Salaria 113, 00198 Roma, Italy

Abstract A number of interfaces, based on different techniques which better exploit the human senses, have been recently suggested and implemented so enlarging the bandwith of the man-machine communication channel. The availability of graphical devices at low cost has given rise to a large diffusion of visual interfaces. The database field is particularly suited for such interfaces mainly because the database is often queried by a casual user, who may not be conversant with conventional query languages. The use of a visual tool may therefore help to access the database, without the dependency on the native language and the limitations imposed by the specific application area. In this paper we concentrate on the querying strategies developed in existing visual query systems (VQS) by defining a suitable taxonomy and analyzing how these systems can be compared against such a taxonomy.

1.

Preliminaries

The effective use of different complex application programs is strongly hindered by the required knowledge of operational modes, the user technical background, the information on both the system application domain and its interaction mechanisms. Currently, a casual user of a system is generally discouraged from working with it, since the amount of technical knowledge required for running any program generally needs a long learning time or an on-line tutor. Recently, a number of interfaces based on different techniques which better exploit the human senses have been suggested and implemented so enlarging the bandwith of the man-machine communication channel. As an example, tentatives have been made to create interfaces based on the use of natural language, both in the form of textual dialogue and of speech interpretation and synthesis. Moreover, the availability of graphical devices at low cost has given rise in the last years to a large diffusion of interfaces using visual techniques. The well known advantages of using images instead of text come up to be particularly relevant in man-machine interaction. As a further advantage, the visual approach attracts the user attention and stimulates a full coverage of all the available system facilities. Currently the possibility of using visual elements like forms, diagrams, icons or, more simply, drawings, is increasing in the context of general purpose programming languages. In [25] the expression visual programming refers to any system which allows the user to program in bi-(or multi)dimensional modality. Visual programming includes visual languages, a subclass of which is that of visual query languages, dealing with a particular kind of objects, i.e. data in databases. Systems including such languages and their environments are called visual query systems (VQS). The database field is one of the most promising application areas of visual languages, since the database is often queried by a casual user, who may not be conversant with query programming languages such as SQL [15]. The use of a visual

tool may help to access the database, without the dependency on the native language and the limitations imposed by the application area. Several factors influence the effective use of a VQS, as extensively discussed in [3]. The most significant factors from the point of view of the user are: 1) the models adopted to describe data and query operations performed on them, e.g. we may adopt the Entity Relationship model [7] as data model and select/traversal operations as query model; 2) the representation chosen to display a model instance, e.g. we may decide to represent the object employee either with an icon or with a rectangle containing a textual label; at the same time we may represent the select operator either by clicking the mouse or by touching the screen; 3) the interaction strategies tsuggesting how the system should be used in order to formulate the proper query. In this paper we will concentrate on the interaction strategies by defining a suitable taxonomy and analyzing how presently available VQS can be compared against such a taxonomy. Only a few VQS, among those proposed in the leterature, will be referred in this paper in order to motivate the chosen classification criteria. For a more detailed survey of VQS see [3]. The VQS proposed so far provide the user with different modalities for interacting with the database; we will distinguish between one-shot and stepwise modalities. The former is adopted by systems working on simple application domains, when it is immediate to conceive the final expression of a simple query in terms of the available information shown on the screen, i.e. the whole schema is contained in one display. For general applications, on the other hand, query synthesis may need different steps. The stepwise modality tries to simplify the overall approach by focusing on three different steps required for expressing the query: 1) Understanding. The goal of this phase is the precise definition of the fragment of the schema involved in the query. Generally, the schema is much richer than the subset of concepts needed by the query to find the result: the first step corresponds to the identification of concepts that are useful for the query. The result of this phase is the query subschema. 2) Query formulation. The query subschema is a static representation of concepts involved in the query. Such concepts can be manipulated in several ways, according to the available query operators. The goal of query formulation is to formally express the operands involved in the query, with their related operators. 3) Testing. The goal of testing is to verify that the query expression precisely matches the user intention. Some systems allow to iterate between the different steps as well as to combine both modalities according to the query. In Section 2, 3 and 4 several strategies provided for each of the above steps are presented, while the conclusions and open problems are deferred to Section 5.

2.

Strategies for Understanding the Reality of Interest

The interaction strategies facilitating the user understanding of the database domain may be classified into three main groups: 1) topdown, 2) browsing and 3) schema simplification as shown in Table 2.1. A further subdivision of each group is also included as well as the references to systems belonging to the different classes.

(a)

Table 2.1: Strategies for understanding in VQS Understanding the reality of interest may be a complex task when the schema is made of hundreds or thousands of concepts: what is needed is a mechanism to present the schema with varying amounts of detail controllable by the users. This may be achieved by means of a top-down approach, where general aspects of the reality are perceived first, and then specific details are introduced; such specific details are provided in existing systems by different means: 1. Selective zoom. In this case the schema is unique, and the concepts are layered in terms importance levels; the schema can be graphically examined at several levels of abstraction, so that only objects above a specified importance rank are made visible. The user can also graphically edit the schema, so that irrelevant objects can be removed from the screen. In Figure 2.1 we see an example session in GUIDE [38]; the schema represents the Current Population survey, and contains comprehensive data on individuals, families and households. The entity person is the "focus" concept; in Figure 2.1a only concepts with highest detail level (level 1) are represented, appearing in the schema at a given distance (radius 5) from person. Figure 2.1b shows the schema with detail level set at 3 and radius 4. 2. Iterative refinements. In this case the system provides for each schema a library of top-down refinements. Each refinement can be obtained from the previous one by means of primitive transformations, applied to atomic objects, resulting in more detailed structures. Top-down browsing may be used for selecting either specific objects or complete schemas and navigating up and down among the different levels of the schema, in order to better locate the desired concepts. An example of this strategy appears in [3]. 3. Hierarchical zoom. In this case the schema is also unique, but the objects may be examined at different levels of detail. An example of hierarchical zoom is presented in ESCHER [37]. In this case the data model directly reflects the structure of objects through an extended nested relational model in which four basic types of attribute values are defined: (multi)sets, lists, tuples and atomic values at an arbitrary depth of nesting. Starting from the flat tables of the classical relational database systems, ESCHER allows the aggregation of objects according to their contextual relation. A visual interface allows the user to display the nested tables at several levels of detail..

(b) Figure 2.1: Selective zoom in GUIDE (from [38]) 4. Dialogue-based approach. In [11] the understanding process is based on a user-system dialogue. Such a system uses the universal relation approach, whose main problem is query disambiguation, that is the translation of an incomplete query into a completely specified one. This corresponds to the selection of the portion of the database (i.e. the attributes) that is relevant to the user query. For this reason, the strategy proposed in [11] consists of a sequence of user decisions about the relevance (or not) of an attribute with respect to his query interpretation: if the attribute is considered relevant, it is included in the target list. Another well established technique for learning about the information content of a schema is browsing. Browsing is essentially a viewing technique, aimed at gaining knowledge about the database; in principle, it can handle both schemas and instances in a homogeneous way, without any distinction. The main hypothesis is that the user has only a minor knowledge about the database and the interaction techniques; furthermore, he accesses the system without having any predefined goal. Within this hypothesis, the user starts the interaction by examining a concept and its neighbourhood (adjacent concepts can be considered as a first level of explanation of the examined concept); then, a new element is selected by the user from neighbour concepts to be the current one and its neighbourhood is also shown: this process proceeds iteratively. Thus, an incremental enhancement of the user knowledge is obtained by exploring logically adjacent concepts. Browsing may be specialized into the following cases: 1. Intensional browsing. It is performed on the intension of the database, i.e. on the conceptual schema. The approach, followed for example in QBD* [2], corresponds to metaquerying the schema structure by: a) asking for all existing paths connecting

two concepts and specifying conditions on the length of the path and/or the presence of particular concepts; b) asking for all the concepts which possess one or more properties; c) given a group of concepts, selecting all their neighbour concepts. 2. Extensional browsing. It is performed on the extension of the database. Two different approaches may be pointed out: the former, presented for example in G + [22], consists in showing the occurrences of the database as vertices of a graph, where edges represent existing links between such occurrences. represent existing links between such occurrences. The latter, adopted for example in VILD [21], starts from the intensional schema of the database, selects an object, and browses its instances. Then, it is possible to have multiple occurring attributes, that may be independently scrolled within an object. Finally, the instances of two objects linked by a relationship may be simultaneously scrolled, in order to show always consistent information. A particular kind of browsing is provided by LID (Living In the Database)[17]. In fact, the user lives inside a single EntityRelationship tuple, and sees the database from the perspective of that tuple. Starting a session, the user first selects an entity and chooses, within a list of all entity tuples, the tuple where he wants to reside (called the current tuple); the system then shows the relationships in which such tuple participates as well as the related entities. When a tuple from a linked entity is selected, it becomes the new current one and the display changes according to this new perspective. 3. Mixed browsing. In this case the browsing activity may be performed on both the intensional and the extensional part of the database. An example is the KIWI User Interface [13], where the introduction of three models (internal model, interaction model, display model) to represent the information allows to overcome some possible drawbacks of the browsing paradigms (e.g., inefficiency, "short-sighted" navigation). In particular, the interaction model partitions each object neighbourhood into homogeneous subsets, defining suitable structures to ease the presentation of and the interaction with the object descriptions. Browsing may also be performed by some iconic systems. For example, MEDIABENCH [33] is an iconic system using natural image icons, that may dynamically change either their shape or other characteristics. MEDIABENCH considers three types of browsing: overview, content, and structure browser. The overview browser offers to the user a general idea of the database providing a categorization of object icons using different windows and dimension. The content browser helps a user to grasp the content of the objects previously selected using the overview browser (see Figure 2.2). The goal of this browser is to access and visualize object contents to allow fast user understanding. The structure browser displays the relationships between database objects.

Figure 2.2: Mixed browsing in MEDIABENCH (from [33]) An alternative approach to top-down refinement and browsing is schema simplification. The idea here is to "bring the schema close to the query"; this is done by building a user view, which results from aggregations and transformations of concepts of the original schema. While in the top-down approach it is possible to locate concepts that exactly match the initial schema (at different levels of abstraction), in the schema simplification approach the

user may build a proper view of the schema which can be in principle not isomorphic to any detail level of the original schema. In the approach followed in QBD*, the target model exactly matches the initial data model. In other approaches (e.g. GORDAS [16].) the target model is different from the initial model, in order to produce a better query representation.

3. Strategies for Query Formulation The successive phase in the process of extracting information from the database is the expression of the query. Table 3.1 provides a comparison of query systems based on strategies for query formulation.

Table 3.1: Strategies for query formulation in VQS In the top-down strategy the query is defined by firstly specifying the concepts of interest (at the intensional level), and subsequently restricting the set of instances by expressing conditions on their properties. Two different approaches may be found in the literature: 1. Global navigation followed by local inspection. In this approach, the user first navigates in the database, in order to select the concepts involved in the query, and then specifies the query procedural characteristics. An example is OQL [1], in which a query is expressed by first browsing a diagram of object classes, and then selecting the intensional pattern of interest (the classes and their associations). At this point, extensional patterns are selected: the extensional patterns are the possible instantiations of the intensional pattern, depending on the concrete instance values. 2. Intension followed by extension. In this approach the user first specifies the objects involved in the query, and subsequently selects the required instances. An example of this approach is shown in Figure 3.1, taken from R2 [18]. The starting point is a set of nested relations, each one represented by a tree. The user initially chooses one or two starting trees (only one tree, the Student tree, in Figure 3.1a). Several pruning operations can be performed on the trees, for example applying a projection operation. In the example, the attributes name and addresses are selected, the system computes the new instance and shows the resulting tree on the screen. After the user has entered a name for the new relation, the result with that name is represented on the screen and its instance (see Figure 3.1c) contains the answer to the user query. A second strategy for query formulation is called bottom-up. In this case the query is formulated by splitting the problem into elementary subproblems, and then obtaining the final query as the composition of partial results. Several query paradigms may be grouped under this common definition, their difference being in the method followed both for tackling the elementary

subproblems and for composing the partial results. Two different approaches are outlined in the sequel:

The query strategy called inside-outside has the characteristic of concentrating on a concept (or a group of concepts) and moving from it in order to reach other concepts of interest. We may classify the strategies according to the type of underlying graph that may be followed 1. Connected hierarchical graph. In this case the user focuses the attention on a concept, then the system builds a hierarchical view of the database with the selected concept as root. In Figure 3.3 an example of query formulation in GORDAS is presented. The query is: "Display the names of all students who took the course CS144". Course is selected as root concept; the choice of the root determines the direction of reference for the involved relationships, namely sections of a course and attendant students of a section. Relationship attributes are assigned to the entity at the lower level in the hierarchy. Then, the user provides conditions for the entity to be selected. First, conditions on the attributes of the root entity are specified, and, later on, those involving related entities. When all simple conditions have been supplied, they are displayed on the screen in order to form complex conditions.

Fig 3.1: Query formulation in R2 1. Composition of concepts. This approach is followed in several iconic languages, where the output concepts of the query are produced by composing input concepts: in such a way, queries are specified by overlapping icons. Each operation, such as selecting an icon or overlapping one icon over another, is interpreted as a particular chain of operations on the database. Figure 3.2 shows a query formulation in ICONICBROWSER [34]. The query is: "Show the weight of Hi-Fi VCRs (videorecorders) with price equal to or cheaper than $ 600; select the lightest one among them". The VCR icon (a front panel of a typical videorecorder) is selected from an icon area and moved to the retrieval area; at this point, the whole icon-set operation for VCRs is shown (see Figure 3.2a). Next, the $ icon (representing the price) is selected, and overlapped to the VCR icon; the condition on the price is then specified by setting a range of values (see Figure 3.2b). Since an Hi-Fi icon appears in the icon-set operation, further restriction to Hi-Fi VCRs is performed with the same overlapping mechanism. Finally, the icon showing a schematized scale (representing the weight) is superimposed, weights are displayed and the lightest one is selected (Figure 3.2c). 2. Use of query libraries. In this case queries can be composed by using subqueries stored in a system library. For example, in CGQL [26], subqueries are represented in terms of a parametric skeleton; furthermore, it is also possible to store the result of a query execution expressed in turn as a so called named query.

Figure 3.2: Overlapping of icons in ICONICBROWSER (from [34])

Figure 3.3: Hierarchical query formulation in GORDAS (from [16])

Finally, the user chooses the attributes to be displayed, first for the root entity and then for the remaining entities. It is worth noting that different root entities may be specified for the same query, as shown in Figure 3.3. 2. Connected flower shape graph. This querying modality is based on the location of a particular concept, called main concept (an entity or a relationship), that can be seen as the entry point of one or more subqueries; these subqueries express possible navigations from the main concept to other concepts in the schema. The subqueries can be combined by means of the usual union and intersection operators. 3. Unconnected graph. In the previous examples the neighbour concepts may be reached starting from the central concept and following paths explicitly represented in the schema. On the contrary, the user may be interested in reaching concepts by building new relationships between them. This approach is typical in relational systems, using the so called outer join operator. E.g. in HIQUEL [36] the user starts by selecting an entity name within a list. Then, the system draws onto the screen an empty table for the entity set specifying all the attribute names. The user builds up the query step by step, first deleting the non relevant attributes, writing conditions to select entities, and so on. The outer join operator can also be expressed in the Entity Relationship model. For example, in QBD* a query primitive is available that allows joining entities not explicitly linked in the schema. The join is performed by comparing the attributes of the two entities using a suitable window..

query in some well known language and presenting such new version to the user for validation; the latter, consists in visualizing, perhaps with animation, the computation performed by the query. The target language of the query rephrasing approach can be either a restricted natural language or some standard query language, e.g. SQL. For example, in GORDAS, whenever complex query conditions are specified, the system rephrases the condition in natural language by using the names of entity sets, attributes, relationships and cardinalities declared in the schema. An example of SQL query reformulation is presented in [9]. In this work a formal mapping is defined between EntityRelationship schemas and corresponding relational schemas; given a query expressed in terms of the Entity-Relationship model, it is possible to generate the corresponding SQL expression in the relational model.

The last strategy for query formulation is called mixed, since it represents a compromise between the top-down and bottom-up strategies. Two are the main approaches: 1. By example. As an alternative approach to the traditional querying procedure (i.e. the user formulates the question and the system retrieves the answer), the user may provide an example of the answer and the system identifies the goal by generalizing such an example. The most known application of such an approach is QBE [39]. In this querying environment the user specifies a set of tables with several tuples and an example of the requested answer; the system, starting from this example, identifies the query and responds by filling the tables with tuples that match the example. This query paradigm is also followed in QBBE [12], a system based on the idea of integrating browsing functionalities together with a generalization mechanism for capturing the abstractions needed for constructing queries from examples. The by example approach may also result very suitable in querying a database containing image data. For example, in QVE [19], the user asks the system to retrieve paintings by drawing a rough sketch. Then, the system evaluates the similarity between the sketch and the images in the database, and it retrieves several matching paintings. 2. Pattern matching. In this approach the user provides a pattern, and the system looks for all fragments of the database matching such pattern. In G+ the pattern is expressed by means of a labelled query graph (see top of Figure 3.4), where the label is a regular expression, used to match the edge labels along simple paths in the graph representing the database. The label (CA*NA)+ in Figure 3.4 specifies that we request all the routes of an airline network made of two subpaths, each one made in turn of a set of Canadian Airlines (CA) flights followed by one National Airlines (NA) flight.

4. Strategies for Testing The purpose of testing is to verify that the query corresponds to the user intention. Testing strategies may be subdivided into two main categories: the former is based on the idea of rephrasing the

Figure 3.4: Pattern matching in G+ (from [22]) Query visualization may concern the structure of the query, the result or both. An example of the first case is presented in XVIQU [8], where, during query formulation, a tree-like structure is constructed, where the root is the object initially chosen. At each new choice of the user, the tree is dynamically updated. In PICASSO [30], a visual feedback is provided representing the system interpretation of the query. The result of the query is a new relation, displayed in a window splitted into three subwindows. The top subwindow displays available commands; the lower subwindow is a message window delivering simple information to the user. A third window is used for browsing the query result.

5. Final Remarks and Open Problems As we have seen above visualization may play a crucial role in facilitating man-machine interaction in accessing databases. More specifically, the visual approach may be effective for solving query problems of very large databases as may happen in several application areas as, for example, in legal information systems or geographical information systems. Since in these systems the database grows in size very rapidly, the first problem for the user is to find out what is contained in the database. This is generally done by formulating many queries, observing the results and reformulating other queries in an iterative process that hopefully

will satisfy the user request but, in any case, is very time consuming. An example of solution of this problem is suggested in [6] and is based on the coupling of data visualization with visual reasoning. The idea is to transform the data objects and to present sample data objects in a visual space in order to make the contents of the database visible to the user. Furthermore, by using iconic operators which can be applied to regions of the visual space, a process of reasoning and inference making is carried out whose aim is to reformulate the user’s query in order to obtain the expected result; this process is called visual reasoning since it is based on visually presented clues. By combining data visualization, visual query, visual examples and visual clues, it should be possible to come up with better ways for formulating and modifying a user’s query, preventing the user from getting lost in a vast amount of data. One of the most important aspects in designing VQS relates to system usability, which mainly determines the user satisfaction. Generally, existing query systems have limited capability in addressing to wide classes of users. To overcome such a limitation, the system should be able to create a user profile which formally describes the user interests and skills. Such profile should be dynamically maintained by the system according to the analysis of the interaction story (including both queries and user reactions to system messages). More specifically, user profiles are extremely significant in cases where the query is highly subjective. For instance, in QVE [19] the system allows for accessing paintings based on the artistic impression left on the user. Since impressions may differ according to users, the system must be able to analyze and learn the correlations between the subjective descriptions and the paintings: such correlations form the user profile. A further aspect related to user profile is the availability of a personal visual interface, portable from one database to another, with a constant spatial arrangement of his own tools, desk accessories, menus for querying, command types, etc. For a general analysis of this problem see [28]; a first tentative solution in this direction is presented in [31]. Related to user satisfaction, is the availability of a guided learning phase which is generally required before the user may acquire confidence and proficiency on a new environment. For this phase, good iconic representations of the functions and operations of the querying mechanism, as well as of the stored data, may be of great value; to achieve this aim several tools may be available, like guided tours, learning by example, help facilities, etc., all of which are independent from the user technical background. As a general remark, note that appropriate metrics should be defined to evaluate user satisfaction; surprisingly enough, no system mentions concrete experience on its application and relationship with the users. Moreover, no standard parameters have been introduced to quantize the system usability, so that different systems might be compared. Proposals for solutions to these problems may come from cognitive engineering, a recent discipline trying to understand and formalize the human-machine interaction [29, 27]. Other limitations of visual query systems are inherited from traditional systems. One of these is the lack of mechanisms for inferring implicit knowledge from stored facts (e.g. the possibility to automatically infer that the grandfather is the father's father). In order to overcome such a limitation, the notion of deductive database has been introduced and studied during the last decade [35]. However, deductive databases have several significant limitations too, in that they describe facts that are closed, precise and positive. In order to face such problems, logic-based knowledge bases have been introduced representing facts that are open, indefinite and complete (i.e. both positive and negative) [5].

All of the above extensions require a higher expressive power of the query language. One important aspect is that usually logicbased knowledge bases have an open semantics, i.e. a fact is considered false only if its negation can be formally derived; as a consequence the query interpretation changes, in that "don't know" answers may be obtained. A further limitation of existing systems concerns the deterministic approach followed in query interpretation: a unique meaning is assigned to the query by the system. This limitation is addressed in the area of approximate questioning, where queries are allowed that do not specify exactly the desired result [23]. A number of research projects are active on the use of natural language for query formulation and disambiguation in restricted domains (e.g. [4, 14]). Visual languages may provide new handles to tackle and overcome some of the described bottlenecks (Section 4 lists a number of significant approaches in this area). For example, in Hyperbook [32], a user can retrieve a bird by drawing a silhouette of the bird or by an imitation of its birdcall (as mentioned above): both descriptions are incomplete since it is difficult for the user to give an exact specification. Hyperbook solves such queries on the basis of a data model, called metric spatial object data, which represents objects in the real world as points in a metric space. In order to select the candidate objects, distances are evaluated by the system, enabling the user to choose those objects (birds) which have a minimal distance from the query in the metric space. Finally, the improvement in designing effective VQS is strictly dependent on technical and technological progress, with particular reference to the evolution of both the graphical platform (special purpose processor and high resolution monitor) and the interactive devices (mouse, tablet, gestural and tactile sensors, etc.), to the integration between vision and sound (acoustic outputs and speech inputs) and, lastly, to the availability of more powerful secondary storage media (CD-ROM, videodisk, etc.), which influence both the data organization and the dialogue style. We expect that most of these issues will be solved in the next future.

Acknowledgements Partial support from National Research Council (CNR) Italy, under Progetto Finalizzato Sistemi Informatici e Calcolo Parallelo, Sottoprogetto 6, Tema INFOKIT, and by EEC, under the ESPRIT Project 5638 "KIM" is gratefully acknowledged.

References [1] ALASHQUR, A.M., SU, S.Y.W., LAM, H. GUO, M.S., BARKMEYER, E. 1989. OQL--An Object-Oriented Query Language. Technical Report. Database Systems Research and Development Center, University of Florida. [2] ANGELACCIO, M., CATARCI, T., SANTUCCI, G. 1990b. QBD*: A Fully Visual Query System. - Journal on Visual Languages and Computing, 1, 2, pp.255-273. [3] BATINI, C., CATARCI, T., COSTABILE, M.F., LEVIALDI, S. 1991. Visual Query Systems. Technical Report N. 04.91, Dipartimento di Informatica e Sistemistica, Università di Roma "La Sapienza". [4] BEAR, J. AND HOBBS, J.R., 1988. Localizing expression of ambiguity. Proc. of Second Conference on Applied Natural Language Processing, Austin, USA, 235-181. [5] BRACHMAN, R.J., LEVESQUE H.J. Eds. 1985. Readings in Knowledge Representation. Morgan Kaufmann Publishers. [6] CHANG, S. K. 1990. Visual reasoning for information retrieval from very large databases. Journ. Visual Languages and Computing, 1, 1, 41-58.

[7] CHEN, P.P. 1976. The Entity-Relationship Model toward a Unified View of Data. ACM Transactions on Data Base Systems, 1, 1. [8] CINQUE, L., FERLONI, F., LEVIALDI, S., SARGENI, A. 1989. X-VIQU: An Expert System for Visual Representation of Database Queries. Proc. of the Int. Workshop on Visual Languages, Roma, Italia. [9] CZEJDO, B., EMBLEY, D., REDDY, V., RUSINKIEWICZ, M. 1989. A Visual Query Language for an E-R Data Model. Proc. of the Int. Workshop on Visual Languages, Roma, Italia. [10] CZEJDO, B., ELMASRI, R., EMBLEY, D., RUSINKIEWICZ, M. 1990. A Graphical Data Manipulation Language for an Extended Entity-Relationship Model. IEEE Computer, 23, 3. [11] D'ATRI, A., DI FELICE, P., MOSCARINI, M. 1989. Dynamic Query Interpretation in Relational Databases. Information Systems, 14, 3, 195-204. [12] D'ATRI, A., MENGHINI, R., TARANTINO, L. 1991. Query By Browsing and Examples. Unpublished Manuscript. [13] D'ATRI, A., TARANTINO, L. 1989. A Friendly Graphical Environment for Interacting with Data and Knowledge Bases. Proc. of the 3rd Human-Computer Interaction Conference, Boston, USA. [14] DATSKOVSKY MOERDLER, G., MCKEOWN, K.R. 1989. Beyond Semantic Ambiguity, Proc. of the IJCAI, 751-755. [15] DATE, C.J. 1987. An Introduction to Database Systems Vol.I. Addison-Wesley Publishing Company. [16] ELMASRI, R., WIEDERHOLD, G.1981. GORDAS: A Formal High-level Query Language for the EntityRelationship Model. Proc. of the 2nd International Conference on Entity-Relationship Approach, Washington, D.C., USA, 49-72. [17] FOGG, D. 1984. Lessons from a "Living in a Database" Graphical Query Interface. ACM-SIGMOD Conference on the Management of Data, 100-106. [18] HOUBEN, G., PAREDAENS, J. 1989. A Graphical Interface Formalism: Specifying Nested Relational Databases. In Visual Database Systems. T.L.Kunji Eds. North Holland. [19] KATO, T., KURITA, T., SHIMOGAKI, H., MIZUTORI, T., FUJIMURA, K. 1991. A Cognitive Approach to Visual Interaction. Proc. of the International Conference on Multimedia Information Systems, Singapore. [20] KIM, H.J., KORTH, H.F., SILBERSCHATZ, A. 1988. PICASSO: A Graphical Query Language. Software Practice and Experience, 18, 3, 169-203. [21] LEONG, M.K., SAM, S., NARASIMHALU, D.1989. Towards a Visual Language for an Object-Oriented Multimedia Database System. In Visual Database Systems. T.L.Kunji Eds. North Holland. [22] MENDELZON, A.O., WOOD, P.T. 1989. Finding Regular Simple Paths in Graph Databases Proc. of the 15th International Conference on Very Large Databases. [23] MOTRO, A. 1988. VAGUE: A User Interface to Relational Databases that permits Vague queries. ACM Trans. OIS, 6, 3,

187-214. [24] MOTRO, A., D'ATRI, A., TARANTINO, L. 1988. The Design of KIVIEW: An Object Oriented Browser. Proc. of 2nd Conference on Expert Database Systems, Vienna, Virginia, USA. [25] MYERS, B. A. 1990. Taxonomies of visual programming and program visualization. Journ. Visual Languages and Computing, 1, 1, 97-123. [26] NANNI, U. 1987. A Graphic Interface for Relational Databases. Technical Report, University of Roma, Italia. [27] NEUHOLD, E.J., KRACKER, M. 1989. Cognitive Aspects of Accessing Multimedia Information. Proc. of Computer World, 119-126. [28] NICKERSON, S. R., PEW, R. W. 1990. Toward more compatible human-computer interfaces. IEEE Spectrum, 27, 7, 40-43. [29] NORMAN, D.A., 1986. Cognitive Engineering. In User Centered System Design (D.A.Norman and S.W.Draper eds.). Lawrence Erlbaum Associates, 31-61. [30] RÖHR, G. 1988. Graphical user languages for querying information: where to look for criteria?, Proc. of IEEE Workshop on Visual Languages, Pittsburgh, USA, October 10-12, 21-28. [31] STAES, F., TARANTINO, L., VERDONK, B., VERMEIR, D., 1991. Supporting User Interaction with OODB's: A Declarative Approach. Manuscript. [32] TABUCHI M., YAGAWA Y., FUJISAWA M., NEGISHI A., MURAOKA Y. 1991. Hyperbook: A Multimedia Information System that Permits Incomplete Queries, Proc. of International Conference on Multimedia Information Systems, Singapore, 3-16. [33] TONOMURA, Y., ABE, S. 1989. Content Oriented Visual Interface Using Video Icons for Visual Database Systems. Proc. of the Int. Workshop on Visual Languages, Roma, Italia. [34] TSUDA, K., HIRAKAWA, M., TANAKA, M., ICHIKAWA, T. 1990. Iconic Browser: An Iconic Retrieval System for Object-Oriented Databases. Journ. of Visual Languages and Computing, 1, 1, 59-76. [35] ULLMAN, J.D. 1988. Principles of Database and Knowledge-Base Systems, Vol. I. Computer Science Press, Rockville, MD. [36] URSPRUNG, P., ZEHNDER, C.A. 1983. HIQUEL: An Interactive Query Language to Define and Use Hierarchies. Proc. of the 3rd International Conference on EntityRelationship Approach. [37] WEGNER, L.M. 1989. ESCHER: Interactive, Visual Handling of Complex Objects in the Extended NF2-Database Model. In Visual Database Systems. T.L.Kunji Eds. North Holland. [38] WONG, H.K.T., KUO, I. 1982. GUIDE: Graphical User Interface for Database Exploration. Proc. of the 8th VLDB Conference, Mexico City, Mexico, 22-31. [39] ZLOOF, M. M. 1977. Query-by-Example: A Database Language. IBM Syst.Journal, 16, 4, 324-343.