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 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)