In Heracles one can build a new information assistant by defining a new hierarchy of templates and a new set of constraints. The templates define the type of information needed in the new assistant, while the set of constraints link together this information. If Web sources are used in the new application, the necessary wrappers for those sources must also be created.
In order to show the generality of our infrastructure, this section describes another example of an information assistant, the WorldInfo Assistant. The WorldInfo Assistant is an application that brings together a large variety of georeferenced information. For a user-specified location, it retrieves information like weather, news, holidays, maps, airports, geospatial points of interest, etc. Where available it also retrieves satellite images and plots georeferenced information on them. Georeferenced information includes geographical features such as rivers, lakes, deserts, etc., and a variety of man-made features, such as hospitals, bridges, factories, etc. In addition to selecting values from the slots, the user can navigate through the satellite images and maps by recentering, zooming, and panning.
A variety of Web sources are used to provide the information necessary for this application. For example, georeferenced points of interest are retrieved from USGS.gov (United States Geological Survey) and Mapblast.com, images are retrieved from TerraServer.com and SpaceImaging.com, weather data is retrieved from weather.Yahoo.com and Weatherbase.com, holiday information from Holidayfestival.com, etc.
The top-level template and weather subtemplate of the WorldInfo Assistant is show in Figure 13. The template allows the user to select the location and date of interest. In the figure the user has chosen Asia as the region, China as the country, Hong Kong as the city, and May 2001 as the date. Based on this input, the application retrieves relevant information related to this location and date. For example, it retrieves the current weather, a five day forecast (Yahoo! weather), and the monthly averages for May (Weatherbase).
As an example of integrated geospatial imagery and points, Figure 14 shows a satellite image and map of the Washington, D.C. area. The resolution of the image is 8 meters, and the 12 points of interest plotted on this image are bridges. The template shows an image and a map of the same area at roughly the same resolution.
The constraint reasoning system provides a coordinated view of the different types of information. The imagery, maps, and points are all linked to the center of the image, which is defined by variables for the latitude and longitude. If the user then clicks anywhere on the current image, the system updates the values for the image center, which triggers updates to the image, map, and points. Similarly, if the resolution is changed, it would trigger the system to retrieve a new set of points and change the resolution of the image and map.