NAME: awais AUTHOR INFO: Steve Thorpe Application Visualization System Specialist International AVS Center North Carolina Supercomputing Center 3021 Cornwallis Road, PO Box 12889 Research Triangle Park, NC 27709-2889 thorpe@ncsc.org Extensive portions of this code were developed by Thinking Machines Corporation's Brewster Kahle and his team. Brewster is the Wide Area Information Servers Project Leader. SOURCE FILES: avs_wais_ui.c awais.c cdialect.h cutil.c cutil.h docid.c docid.h document.c document.h futil.c futil.h irdirent.h irfileio.c irfileio.h list.h panic.c panic.h qread.c qread.h question.c question.h server.h sockets.c sockets.h source.c source.h SourceID.h text.h transprt.h ui.c ui.h ustubs.h util.c util.h version.h wais.h waisq.c wmessage.c wmessage.h wprot.c wprot.h wutil.c wutil.h zprot.c zprot.h ztype1.c ztype1.h zutil.c zutil.h The AVS code can be found in awais.c and avs_wais_ui.c. The rest is pretty much as obtained from Thinking Machines Corporation. TYPE: DATA INPUTS: NONE OUTPUTS: NONE PARAMETERS: Name Type Default Add Available Source oneshot empty Available Sources choice browser empty Browse Text text browser ~/tmp/AVSretrieve.tmp Delete Selected Source oneshot Retrieve oneshot Save File To: typein ~/saved.txt Save Text File oneshot Search oneshot Search Results choice browser empty Selected Sources choice browser empty Show Query Window toggle true Show Text Browser toggle true Tell me about typein empty DESCRIPTION: There is now a WAIS (Wide Area Information Servers) server running at the International AVS Center. WAIS allows a user to ask a question to a server, which provides a ranked list of documents that may help answer that question. The user can then peruse through the documents that seem useful. All of the .txt files for AVS modules freely available on the International AVS Center's anonymous ftp site have been indexed, as well as informational files such as AVS_README and FAQ. WAIS should prove more and more useful as the AVS module repository continues to grow. It provides a convienient interface to large amounts of data. To access information from a server, you can use this AWAIS AVS module. AWAIS is a WAIS client, of which there are several freely available. Some freely available WAIS client applications (via anonymous ftp) include: From the International AVS Center: --------------------------------- awais, an AVS module client (avs.ncsc.org:DATA/awais/*) From Thinking Machines: ---------------------- swais, a screen based client xwais, an X based client waissearch, a command line client WAIStation, a Mac client (think.com:wais/wais-8-b4.tar.Z) From UNC Chapel Hill: -------------------- WAIS for Windows, a PC client (ftp.oit.unc.edu:pub/wais/UNC/Windows/winwais.zip) For example, I might be interested in JPEG files, so I might ask the server the question: "Can I read or write JPEG files using AVS?" A typical response from a WAIS client that you could type your question into, would be as shown below. The resulting document list is ranked from "most hits" on down. Each line shows that document's rank, its score (1000 is for the "most hits"), its name (this may show only partially), and the number of lines. I could then select any of these documents for viewing. 001: [1000] AVS_README /src/avs/ftp/ 589 002: [ 844] AVS_CATALOG /src/avs/ftp/ 2008 003: [ 603] write_jpeg 459 004: [ 592] read_jpeg 456 005: [ 413] WHAT_IS_AVS /src/avs/ftp/ 290 006: [ 380] FAQ /src/avs/ftp/ 274 007: [ 184] read_HDF_SDS 198 008: [ 184] read_abekas_ 116 009: [ 178] read_tiff 225 010: [ 173] read_shak 461 011: [ 139] read_FLOW3D 140 012: [ 139] read_compres 67 013: [ 139] read_compres 63 014: [ 139] write_compres 67 015: [ 111] fast_animate 109 016: [ 106] animate_file 177 017: [ 100] write_abekas 58 018: [ 89] read_16_bit_ 69 019: [ 89] read_sunras 63 020: [ 83] Image_Sequen 219 021: [ 83] phoenics_int 62 022: [ 83] write_irreg 58 023: [ 83] write_reg 58 024: [ 78] Keyframe_Ani 777 025: [ 67] write_A60_yu 44 026: [ 61] readFLOW3D 71 027: [ 55] Record_Anima 301 028: [ 50] read_dyna3d 89 029: [ 50] read_gif 52 030: [ 50] cone 78 031: [ 44] field_conver 132 032: [ 44] my_mirror 64 033: [ 44] new_crop 140 034: [ 44] 3D_axis 174 035: [ 39] animate_floa 274 036: [ 39] animate_inte 274 037: [ 39] read_Dore_im 24 038: [ 39] Iterate 128 039: [ 39] Stepper 115 040: [ 39] collage 95 A description of a sample awais session: --------------------------------------- First, set up a directory called ~/wais-sources. In this directory, place the source files you would like to use. Source files end with the suffix ".src", and contain the contact information for the WAIS server they identify. There are two source files provided with this module: avs-txt-files.src The International AVS Center's database directory-of-servers.src A database of registered sources. This is maintained at Thinking Machines, and can be used to track down sources that would be of interest to you. You can also obtain all of the registered sources via anonymous ftp: think.com:wais/wais-sources.tar.Z Next, load the awais module into AVS. You will see a list of available source files, and an empty list of selected sources. When you highlight an available source choice, that file will show up in the TextBrowser window for your perusal. Double clicking on an available source will add it to the selected sources list. Alternatively, highlighting an available source then clicking on the "Add Available Source" button will do the same thing. The selected sources databases will be searched when you ask a question. Double clicking on a selected source will remove it from the selected sources list. Alternatively, highlighting a selected source then clicking on the "Delete Selected Source" button will do the same thing. Next, in the "Tell me about" widget, type in a question you would like answered by the databases in your selected sources list. Clicking on the "Search" button will initiate a search through the databases represented in the selected sources widget, and you will see a resulting list of appropriate documents. Double clicking on a resulting document will download a copy of it into the TextBrowser window. Alternatively, highlighting a resulting document then clicking on the "Retrieve" button will do the same thing. If you want to save a copy of a retrieved document, type in a file name in the "Save File To:" typein widget. Then click on the "Save Text File" button to save it. Additional Notes: ---------------- The "Show Query Window" and "Show Text Browser" buttons toggle the visibility of these respective windows. If you do not have Internet access, you won't be able to use the International AVS Center's WAIS server. However, you might consider using WAIS internally to query your own databases, such as your mail folders. This would involve setting up a local server using the code freely available from Thinking Machines Corporation. This version retrieves text files indexed at the International AVS Center's anonymous ftp site. Future versions of awais will download an entire AVS module from the the Center, compile it, and load it into an AVS network, all with the click of a button. Another potential future enhancement would be the downloading of image files directly into an AVS network. Your suggestions are more than welcome! Please email me with any ideas or comments. The source file you will need to access the International AVS Center's server is "avs-txt-files.src" (NOT including the lines with the asterisks): ************************avs-txt-files.src*********************** (:source :version 3 :database-name "/usr1/avs/wais-sources/AVS_TXT_FILES" :cost 0.00 :cost-unit :free :maintainer "avs@doppler.ncsc.org" :ip-address "128.109.178.23" :ip-name "doppler.ncsc.org" :tcp-port 210 :description "Server created with WAIS release 8 b4 on Apr 23 16:22:03 1992 by avs@doppler All of the .txt files for Application Visualization System (AVS) modules freely available on the International AVS Center's anonymous ftp site have been indexed, as well as informational files such as AVS_README and FAQ. The anonymous ftp site can be accessed at avs.ncsc.org. Please send email to avsemail@ncsc.org for an automated reply with information about the International AVS Center and how you can make use of it. Please send questions for the International AVS Center to avs@ncsc.org. " ) **************************************************************** An overview of WAIS is provided below, in an article written by Brewster Kahle of Thinking Machines. Brewster is the Project Leader of the WAIS project. Overview of Wide Area Information Servers Brewster Kahle April 1991 The Wide Area Information Servers system is a set of products supplied by different vendors to help end-users find and retrieve information over networks. Thinking Machines, Apple Computer, and Dow Jones initially implemented such a system for use by business executives. These products are becoming more widely available from various companies. What does WAIS do? Users on different platforms can access personal, company, and published information from one interface. The information can be anything: text, pictures, voice, or formatted documents. Since a single computer-to-computer protocol is used, information can be stored anywhere on different types of machines. Anyone can use this system since it uses natural language questions to find relevant documents. Relevent documents can be fed back to a server to refine the search. This avoids complicated query languages and vendor specific systems. Successful searches can be automatically run to alert the user when new information becomes available. How does WAIS work? The servers take a users question and do their best to find relevant documents. The servers, at this point, do not "understand" the users english language question, rather they try to find documents that contain those words and phrases and ranks then based on heuristics. The user interfaces (clients) talk to the servers using an extension to a standard protocol Z39.50. Using a public standard allows vendors to compete with each other, while bypassing the usual proprietary protocol period that slows development. Thinking Machines is giving away an implementation of this standard to help vendors develop clients and servers. What WAIS servers exist? Even though the system is very new, there are already several servers: * Dow Jones is putting a server on their own DowVision network. This server contains the Wall Street Journal, Barons, and 450 magazines. This is a for-pay server. * Thinking Machines operates a Connection Machine on the internet for free use. The databases it supports are some patents, a collection of molecular biology abstracts, a cookbook, and the CIA World Factbook. * MIT supports a poetry server with a great deal of classical and modern poetry. Cosmic is serving descriptions of government software packages. The Library of Congress has plans to make their catalog available on the protocol. * Weather maps and forecasts are made available by Thinking Machines as a repackaging of existing information. * The "directory of servers" facility is operated by Thinking Machines so that new servers can be easily registered as either for-pay or for-free servers and users can find out about these services. How can I find out more about WAIS? Contact Brewster Kahle for more information on the WAIS project, the Connection Machine WAIS system, or the free Mac, Unix Server, and X Window System interfaces. There is a mailing list that has weekly postings on progress and new releases; to subscribe send and email note to wais-discussion-request@think.com. Brewster Kahle Project Leader Wide Area Information Servers Brewster@Think.com