From: montulli@ukanaix.cc.ukans.edu (Lou Montulli) Message-Id: <9212220032.AA30347@ukanaix.cc.ukans.edu> Subject: Re: Searching To: timbl@nxoc01.cern.ch Date: Mon, 21 Dec 92 18:31:59 CST Cc: www-talk@nxoc01.cern.ch In-Reply-To: <9212210926.AA00227@www3.cern.ch>; from "Tim Berners-Lee" at Dec 21, 92 10:26 am > > > From: montulli@ukanaix.cc.ukans.edu (Lou Montulli) > > Date: Fri, 18 Dec 92 15:26:25 CST > > > WAIS searching is adequate for many applications but ergonomically > > > it has a long way to go. The currently search methods provided by > > > WWW and Gopher are inadequate for many needs. > > Lou, > > I agree that a forms intreface is something they all lack, and there > have been a number of proposals to make documents into forms. > (The main problem is, we don't have editors yet. When we do, then > there will be plenty of work on forms.) > > > For an example, assume a hypothetical database for calendar information. > > It is designed to allow the user to pick among a finite set of events > > > and show them based on a date range. A CWIS interface to the data > > might look like the following. > > In fact, your example is a good one for showing how flexible > W3 can be! See documentation with examples in > > http://info.cern.ch/hypertext/WWW/Provider/RadioButtons.html > > Here's one of an infinite :-) number of ways of doing it. > Let's suppose the categories are called A-Z. At any time the > user has a certain number of categories selected, and we > represent his screen at the time with the document name > > /Calendar/ABSGLMZ/Setup.html > > When he is in this state, his screen shows something like that > below. This is obviosly just a hypertext document generated by > the server in response to a request for /Calendar/ABSGLMZ/Setup.html. > I have represented link anchors with [brackets] here - think of it > with a point & click interface or a line-mode numeric selection. > ---------------------------------------------------------------- > Welcome to The University of Kansas Events Server > > > See [list of all these 569 events] > > > Starting search date: Dec, 18 1992 > Ending search date: Jan, 18 1993 > > > This is a calendar of events in the following categories (select links > to exclude them from the calendar) > > Academic field [exclude] Museum & gallery [exclude] > Academic year [exclude] Music [exclude] > Athletic [exclude] Other cultural [exclude] > > There are 569 events in these categories: See complete [list], > or type keywords. > > > Other categories available as as follows (Follow links to include them > in the calendar) > > > Ceremonies & recognitions [include] Parties [include] > > Club & group meetings [include] Recreational [include] > > Conferences & workshops [include] Service & charitable [include] > > Film [include] Special academic matters [include] > > Holidays, etc [include] Theatre [include] > > Lecture [include] Training events [include] > > Local & area [include] University governance [include] > > You can also set the [start] and [end] search dates. > ___________________________________________________________________________ > The user can select any of the 20 fields as being on or off by following > links. It is as though there are 2**20 virtual calendars. (The user is in fact > naviagting a hypercube here, which is exactly what (s)he does when using radio > buttons anyway. The user intreface is not changed in fact from a panel). > Here I have assumed that the "document" can accept searches, and we say that > any search text given will be taken as keywords. There are links to a few > other nodes: > > /Calendar/ASGLMZ/Setup.html Identical except category B excluded (etc) > /Calendar/ABCSGLMZ/Setup.html Identical except category C included (etc) > /Calendar/ABSGLMZ/Start.html Identical except keywrds taken as start date > /Calendar/ABSGLMZ/End.html Identical except keywords taken as end date > /Calendar/ABSGLMZ/List.html Includes the list of events in categories > > (I should have included the search dates in the string like > /Calendar/921218/930118/ABSGLMZ/*.html but also I would advise in practice > /Calendar/LastMonth/ABSGLMZ/*.html as a default) > > > > How can this be done > > > given the current implementation of WWW and others like it? > > > You can see that the program to generate these pages is simpler than the > interactive CWIS program to write. > > Another neat thing is that when the user has found the ideal combination, > she can put a bookmark on it, or make a link from her home page or any > other document to it. With LastMonth as the search date, she can follow > this link to review the calendar any time. > > > :lou > > Tim > Sorry for the long intro but it is relevent to the message. This interface is problimatic in that it will be extremly slow to navigate. To turn on or off the 20 different catagories, the user would have to navigate 20 different screens of data, waiting for the transfer and the repaint for each one. I also think that this program would be as hard or harder to write than the original, although it does give data that the client can display natively. I believe this is a case where you will have to give the client a little more smarts than before. A template could be designed that intructs the client on how to query the user in several ways. The client would make all the relevent queries itself and then query the server. This could look something like this: ------------------------------------------------------- Welcome to The University of Kansas Events Server Press return at any time to show events. Starting search date: <field_name:s_date query_type:date> Ending search date: <field_name:e_date query_type:date> Categories <field_name:Acad query_type:boolean init_val:on>Academic field <field_name:Acad query_type:boolean init_val:on>Academic year <field_name:Athl query_type:boolean init_val:on>Athletic <field_name:Cere query_type:boolean init_val:on>Ceremonies & recognitions <field_name:Club query_type:boolean init_val:on>Club & group meetings <field_name:Conf query_type:boolean init_val:on>Conferences & workshops <field_name:Film query_type:boolean init_val:on>Film <field_name:Holi query_type:boolean init_val:on>Holidays, etc <field_name:Lect query_type:boolean init_val:on>Lecture <field_name:Loca query_type:boolean init_val:on>Local & area ---------------------------------------------- The client would replace the links shown with the appropriate objects such as radio buttons or stars or however the client wished to represent a boolean type. The date type would be handled in the same way. When the user was satisfied with his selections he would activate the search and the client would pass back the values of all the fields to the server. This represents considerably more effort in the development of the client, but it makes the development of database servers much, much easier. I suspect the one time effort of adding it to a client is much better in the long run than the effort of adding it to every database server. :lou -- ************************************************************************** * T H E U N I V E R S I T Y O F K A N S A S * * Lou MONTULLI @ Ukanvax.bitnet * * Kuhub.cc.ukans.edu * * Nothing difficult, Ukanaix.cc.ukans.edu ACS Computing Services * * is ever easy! 913/864-0436 Lawrence, KS 66044 * * * * For how we live is so different from how we ought to live that he who * * studies what ought to be done rather than what is done will learn the * * way to his downfall rather than to his preservation. -Machiavelli * **************************************************************************