
Common Questions and Answers about veronica, a title search and retrieval
system for use with the Internet Gopher.

The current version of this FAQ can be retrieved through gopher at
veronica.scs.unr.edu, in the veronica directory.
FAQ by Steven Foster and Fred Barrie .

Archive-name: veronica-faq
Last-modified:  1993/08/23.
--------------------------------------------------------------------------

List of questions in the veronica FAQ:

Q1: What is veronica?
Q2: How can I connect to veronica?
Q3: So I get a list of titles; How can I get information about the location 
	of items I am interested in?
Q4: Why do I need to use 'item descriptor' to get context and host info?
Q5: How can I get my server into the veronica database?
Q6: How can I keep my server out of the veronica database?
Q7: How often is the database updated?
Q8: Where can I get the software to run veronica?
Q9: Where can I get the veronica dataset?
Q10: Why can't I get a reply from a veronica server?
Q11: What does "veronica" mean?
Q12: Why doesn't my server show up in veronica searches?
Q13: Where are the veronica server sites?
Q14: How do I compose veronica search queries and use the veronica options?


--------------------------------------------------------------------------
Q1:		What is veronica?

A1:	veronica is a service that maintains an index of titles of 
	gopher items, and provides keyword searches of those titles.
	A veronica search originates with a user's request for a search,
	submitted via a gopher client.  The result of a veronica search is 
	a set of gopher-type data items, which is returned to the gopher 
	client in the form of a gopher menu.  The user can access
	any of the resultant data items by selecting from the returned menu.

	A veronica search typically searches the menus of hundreds
	of gopher servers, perhaps all the gopher servers that are announced
	to the Internet.  

	At present, there are no "veronica clients" per se;  veronica is 
	accessed through normal gopher clients.   veronica is tightly 
	integrated with the gopher protocol.

	The veronica service comprises two functions:  
	1). Harvesting menu data from gopher servers, and preparing it for use;
	2). Offering searches of that database to gopher clients.   
	These two functions are not necessarily provided by the same host
	computer.  Most users and administrators of veronica search servers
	will not need to be concerned with the first phase of the process.
	Operators of veronica query-engines can obtain a prepared dataset 
	for use with the query server ( Q9 below ).

	veronica evolved as a solution to the problem of resource discovery 
	in the rapidly-expanding gopher meta-burrow.  At the University of 
	Nevada, there was an outcry for an easy way to find gopher-based 
	information without doing a menu-by-menu, site-by-site search.

--------------------------------------------------------------------------
Q2:	How can I connect to veronica?

A2:	veronica must be accessed through a gopher client.  
	Assuming you have a gopher client, use it to connect to a gopher
	server which offers a link to a veronica server.  

	If your local gopher server does not already have a link to veronica, 
	use gopher to go to the server at gopher.micro.umn.edu ( port 70 ). 
	Choose the menu item "Other Gopher and Information Servers".  
	Choose veronica from that menu.  In step-by-step form it is like this:

	1. gopher to gopher.micro.umn.edu  by typing:
		gopher gopher.micro.umn.edu 70 
	   Note that this is a unix-client example. Other clients will 
	   have a different way of specifying the server.
	
	2.  go to the directory named 
		"8.  Other Gopher and Information Servers/"

	3.  select that item

	4.  go to the item named 
		"2.  Search titles in Gopherspace using veronica/"

	5.  select that item.  This item is a gopher link to the veronica 
	    directory at the University of Nevada.
	
	6.  There are several searches and documents in this directory.
	    Help files and announcements and will be posted here.
	    This menu contains links to all the announced veronica servers.
	    Choose any server by clicking on its entry;  if it give the
	    message "Too many connections" or "Cannot connect", you can
	    try one of the other servers.
	
	When you choose a search item, you will be prompted to
	enter a keyword or keywords to define your title search.
	The simplest way to search with veronica is to enter a single
	word and hit the RETURN key.  It does not matter whether the
	word is upper-case or lower-case.  For details on how to
	compose more complex veronica queries, see Q14 in this FAQ,
	"How do I compose a veronica search query".

	The veronica server will return a gopher menu composed of items
	whose titles match your keyword specification.  These items are
	culled from the menus of (potentially) many gopher servers. 
	As with any gopher menu, you access an item of interest by 
	double-clicking it or hitting the <return> key.

	If you want to include veronica service on the menu of your local 
	gopher server,  you can find the gopher-item-descriptor for veronica 
	from this menu at Minnesota;  ask the administrator of your local 
	gopher server to include a link to that item on your local menu.


	If you DO NOT have a gopher client, you may access gopher and
	veronica by telneting to one of the telnet-accessible anonymous
	gopher clients.  This is what the Gopher-FAQ has to say about the
	telnet sites for gopher:

	***
	Here is a short list, use the site closest to you to minimize
     	network lag.

     Hostname                  IP#              Login   Area
     ------------------------- ---------------  ------  -------------
     consultant.micro.umn.edu  134.84.132.4     gopher  North America
     gopher.uiuc.edu           128.174.33.160   gopher  North America
     panda.uiowa.edu           128.255.40.201   panda   North America
     info.anu.edu.au           150.203.84.20    info    Australia
     gopher.chalmers.se        129.16.221.40    gopher  Sweden
     gopher.ebone.net				gopher  Europe

     It is recommended that you run the client software instead of
     logging into the public telnet login sites.  A client uses the
     custom features of the local machine (mouse, scroll bars, etc.)  A
     local client is also faster. 

--------------------------------------------------------------------------
Q3: 	So I get a list of titles; How can I get information about 
	the location of items I am interested in?

A3:	Most gopher clients offer a "get information" command or an
	"item descriptor" menu choice.  On a macintosh it usually is 
	"command i"; on a unix curses client it will be an equal sign "="; 
	on a NeXT it also is a "command i".  On the PC gopher clients,
	choose "item inspector" from the "FILE" menu. 
	This key sequence will give information about the current item 
	on the gopher menu.  The item-description will include the hostname 
	of the gopher server which provides the item.  The item-description 
	also includes the path (directory) of the item on its gopher server.


--------------------------------------------------------------------------
Q4:	Why do I need to use "item descriptor" to get host and context
	information?

A4:	One simple answer to this is that three-times as many lines 
	would be needed on the screen to provide host and path information
	as well as title information.  The menus returned by veronica are
	often lengthy, even without this information.  Since the item-
	description function is included in most gopher clients, its use 
	makes for more compact screens.

	There is a deeper answer, of course ...

	The veronica server is designed to work with the query-type item
	of all gopher clients.  It can only return one set of data 
	in reply to each query, in accord with the gopher protocol.  There
	is no chance for further negotiation between the client and server.
	The veronica-search server could return visible lines about the
	host and context of each item, but it would need to do so for all 
	items, tripling the size of the return as mentioned above.  The 
	only alternative is to design special gopher CLIENTS which  either
	submit a follow-up query to the veronica server, requesting more
	information, or which present the item-descriptor in more palatable
	format.   Work is underway to define a client-server negotiation
	protocol to allow followup queries, using the gopher+ clients and
	servers.  Meanwhile, clients just are not capable of this feature.

	And deeper yet ...

	Context means many things ...  Is it adequate to know the host, path
	and type of an item, or do you want to know the last update time,
	the number of links to that item in the entire gopher network, 
	a unique internet-id for that data item, the names of veronica servers 
	referencing that item, and so forth?  The gopher+ protocol and other
	emerging protocols will allow us to maintain some of this information.
	The veronica developers at Nevada feel that it is preferable to use
	these standards as they become available, rather than to define
	ad-hoc document identifiers, etc. which are specific only to veronica.

--------------------------------------------------------------------------
Q5:	How can I get my server into the veronica database?

A5:	Explicit registration is generally not required.  The veronica 
	data-collection software will find your gopher server IF it is
	registered with the Mother Gopher at Minnesota, OR IF it is 
	referenced on the menu of another gopher server which is registered
	at Minnesota.  Of course, the veronica data-harvesting algorithm 
	will not be able to access your server if you have restricted access 
	to your local site.

-----------------------------------------------------------------------------
Q6:	How can I keep my server OUT of the veronica database?

A6:	Sometimes gopher-administrators do not want their site to be
	indexed. The administrator of such a server will need to mail to
	veronica@comics.scs.unr.edu, and request their site not be included.

	This design is based on the well-founded assumption that any 
	registered gopher server, or a server accessible via the menu of
	a registered server, is intended to be accessible to users at any
	internet node.  The gopher protocol achieves its utility through
	this sort of sharing; gopher servers are provided with the "-s" 
	option should it be necessary to implement site restrictions.

	With the implementation of Gopher+ protocols, the veronica+ 
	protocol will allow gopher administrators to set a
	"veronica-index-off" flag. 

    As an interim solution a gopher administrator can create a file named
    "no-index" (without the quotes) so that all sub level menus beneath that
    directory will not be indexed.  This solution should work for all gopher
    servers.  Gopher administrators can use gopher servers ability to mask
    gopher titles from .link or .cap files.  An example of this is:

    In .link format:
        Name=Really cool title like "About this Gopher"
        Path=./no-index 

     In a file in the .cap subdirectory named no-index
        Name=Really cool title like "About this Gopher"
-------------------------------------------------------------------------- 
Q7:	How often is the database updated?

A7:	Every week or (at worst) two weeks.

--------------------------------------------------------------------------
Q8:	Where can I get the software to run veronica?

A8:	The veronica server software can be obtained
	by anonymous ftp from veronica.scs.unr.edu. 
	The veronica server code is in the directory "veronica-code".

	The current version ( June 24 ) of the veronica server is 0.5 
	It runs on most flavors of unix boxes, requires a perl interpreter
	and dbm, and about 360 MB for the dataset.  (data of June 21 '93)
	The server host should also have a good deal of swap space.


--------------------------------------------------------------------------
Q9:	Where can I get the veronica data set?

A9:	You can anonymous-ftp the full veronica dataset from 
	veronica.scs.unr.edu, in the "veronica-data" subdirectory.

	This data has been processed to eliminate redundant references,
	to avoid loops in the gopher network, and to remove most data
	that is known to be highly transient.

	If you are trying to set up a veronica server, PLEASE take a
	copy of this data, rather than initiating more gopher-tree
	processes.

---------------------------------------------------------------------------
Q10:	Why can't I get a reply from a veronica server?

A10:	Sometimes one of the veronica servers is down, or is unreachable
	because of network trouble.  In that case, try another server.

	Another common problem is that the gopher client "hangs" because 
	the  results of the veronica search includes items of some type
	not recognized by the client.

	For example, a search will commence and there is some indication 
	that it is working, like a spinning wheel on a Mac or on a Unix client.
	However, when the wheel stops spinning the Gopher client says 
	"Nothing  available".

	The problem is that some gopher clients can not handle certain objects
	(e.g., a PC client is unable to understand a Unix sound file).
	Many clients are written to treat as empty any directories containing
	non-standard or unrecognized datatypes.

	The solution will be in the Gopher+ protocol.   That protocol
	will allow a client and server to have a "conversation" about
	what types of data the client can and cannot handle.

---------------------------------------------------------------------------
Q11:	What does "veronica" mean?

A11:	very easy rodent-oriented net-wide index to computerized archives.

---------------------------------------------------------------------------
Q12:	Why doesn't my server show up in veronica searches?

A12:	Most commonly this is because your server was not accessible during
	the time we last collected data.  

	Be sure your server is registered with the Mother of Gophers, or is
	referenced on the menu of a server which IS registered.  Be sure you
	have not restricted off-site access.

	If these don't work, send mail to veronica@comics.scs.unr.edu
------------------------------------------------------------------------------
Q13:	Where are the veronica server sites?

A13:	There are currently ( June 24, 1993 ) four publicly-accessible 
	veronica servers.  All of them can be accessed via the 
	veronica Gopher menu at veronica.scs.unr.edu.  If that server
	is down, try one of the other sites below which has a gopher
	menu advertising veronica searches.

	1.	UNR  ( Nevada, USA )
		for a gopher menu of veronica items, gopher to:	
			Host=veronica.scs.unr.edu
			Port=70
			Path=1/veronica

	2.	CNIDR  ( North Carolina, USA )
		for a gopher menu of veronica items, gopher to:	
			Host=wisteria.cnidr.org
			Port=70
			Path=

		or to search, point your gopher at:
			Name=Search Gopherspace by veronica
			Host=wisteria.cnidr.org
			Type=7
			Port=2347
			Path=
			
	3.	NYSERNET  ( New York, USA )
		for a gopher menu of veronica items, gopher to:	
			Host=nysernet.org
			Port=70
			Path=1/Search the Internet

		or to search, point your gopher at:
			Name=Search Gopherspace by veronica
			Host=nysernet.org
			Type=7
			Port=2347
			Path=
			
	4.	SERRA  ( Pisa, Italy )
		for a gopher menu with a veronica item, gopher to:	
			Host=gopher.unipi.it
			Port=70
			Path=1/University of Pisa - Services

		or to search, point your gopher at:
			Name=Search Gopherspace by veronica
			Host=serra.unipi.it
			Type=7
			Port=2347
			Path=
			
---------------------------------------------------------------------------
Q14:	How do I compose veronica search queries, and use various
	veronica options?

A14:	The simplest veronica search is just a single word, followed by
	a RETURN.  The following answer is from the document
	"How to compose veronica queries", and was current on June 24, 1993.

 
 HOW TO COMPOSE VERONICA QUERIES -   version 0.5     June 24, 1993
 
 New in veronica 0.5
 * server is faster. 
 * no changes to user interface.
 
 New features  in veronica 0.4
 * Support for keyword "NOT".
 * Support for infix queries (i.e. parenthesis).
 * Limited word stemming ( trailing wildcard ).
 * -l option returns link info as a file.
 	NOTE that the link option may not work on all veronica servers.
 * -mX  option sets maximum number number of returned items to X.
 	IMPORTANT NOTE!  Number of returned items is now LIMITED to 200 
 	UNLESS you specify this option.
 	"-m" option without a numeric parameter sets unlimited 
 	number of return items.
 
 New features in veronica 0.3
 * Support for "-t" flag:  specify gopher item-types.
 
 New features in veronica 0.2
 * Support for keywords "AND" and "OR"
 
 ***
 ***  QUERY KEYWORD LOGIC
 The search understands the logical operators AND, NOT, OR, (, and ).
 Adjacent keywords without an intervening logical operator are treated as 
 though conjoined by an AND.
 
 Interpretation of the query starts from the right-hand, interpreting operators
 as encountered.  If in doubt about order of interpretation, USE PARENTHESES!
 
 Search keywords are NOT case-sensitive.  
 
 ***  RESTRICTING  THE SEARCH TO CERTAIN GOPHER TYPES
 You can limit the data returned by veronica to certain gopher item types.
 This restriction is done by adding a -t type specifier to your query.
 The -t flag may appear anywhere in the search specification.  For instance:
    "women -t1" returns links to gopher DIRECTORIES whose name contains "women".
    "-t1 women"  does exactly the same thing.
 NOTE that there must NOT be any spaces between the -t and the type specifier.
 
 You may specify MORE THAN ONE type in the query.  DO NOT use separate -t
 specifications to do this; simply put all the types together (with no
 spaces) after the -t.  For example:
    "-ts1  mac"  returns links to gopher DIRECTORIES or SOUNDS with the word
 	        "mac" in the name.
    "women -t18"  returns links to gopher DIRECTORIES or TELNET links, whose 
 		name contains the word "women".
 
 Official gopher types, from the Gopher Protocol Document, are:
 
 0	item is a file
 1	item is a directory 
 2.	item is a CSO (qi) phonebook server
 3	ERROR
 4	item is a BinHexed Mac file (discouraged)
 5	item is a DOS binary archive of some kind (discouraged)
 6	item is a Unix uuencoded file (discouraged)
 7	item is an Index-Search server
 8	item is a pointer to a telnet session
 9	item is a binary file of some sort
 +	redundant server ( same a previous server )
 
 *** USING THE OPTIONS
	Just include the options in the search query.  They will work
	with any gopher client.  You can put options before the query words,
	after the query words, or even between query words.

 	DO NOT cluster more than one option behind a single hyphen; instead,
 	use a separate hyphen for each separate option.  For example:  
 
 		gopher -t1s -l -m400
 
 	This example requests 400 items containing the word "gopher", and
 	specifies that we want only items whose type is "directory" or
 	"sound", and that we want a link-file containing the results.
 
 ***  EXAMPLES:  
 
 Simple examples:
 
     Search on the keyword "internet".  This will return a menu list of
     (at most) 200 records that have the word internet in the title field.  
 	Just type-
 			internet
 
     Search on the keyword "internet", but specify 1000 items instead of
     the default 200.
 	type-
 			internet -m1000
         or
 			-m1000 internet
 
     Search on the keywords "chicken" and "wine".  This returns a menu 
     list of (at most) 200 records that have _BOTH_ "chicken" and "wine".  
 	Type-
 			chicken and wine
 
     Search for the keywords "chicken" or "wine", specifying directories only. 
     This returns a menu list of records that have _EITHER_ chicken or wine,
     and which are GOPHER DIRECTORY entries.  Type-
 
 			chicken or wine -t1
     or
 			-t1 chicken or wine 
 
 
 Examples for the operator "NOT":
 
     To use the operator "NOT" in a query:
 
 
             chicken not wine    (will search for all titles with the 
                                  word chicken _BUT NOT_ the word
                                  wine)
 
             chinese food not msg     (will search for our health nuts
                                      all the titles with the words
                                      chinese _AND_ food _BUT NOT_
                                      msg.  Remember there is an
                                      implied _AND_ between two words)
 
 Examples for infix queries:
 
     The parentheses allow more complicated searches that were
     not available in previous versions of the perl veronica server.
 
             examples:
 
             chicken (wine or curry)  -m      (will list ALL titles with the
                                          	words chicken _AND_ either
                                          	wine _OR_ curry.  -m asks
 						for ALL records.)
 
             (chicken or wine) not (msg or growing)
                                     (will search for titles with the
                                      words chicken _OR_ wine _BUT NOT_
                                      msg _OR_ growing)
 
 Examples for word stemming
 
     The metacharacter "*" matches anything at the TRAILING END of a 
     search word.   
 
             chicken*            (will search for all titles with the
                                  word chicken, chickens, ...)
 
             chicken* or wine*    (will search for all titles with the
                                  word chicken, chickens, ... _OR_ 
                                  wine, wines, wineries, ...)
 
             (chicke* or wine*) not (msg* or growing* and good*)
                                 (this query results are left to the
                                  curious)
 
 

 

