CA2243724C - A geographical information search system - Google Patents

A geographical information search system Download PDF

Info

Publication number
CA2243724C
CA2243724C CA002243724A CA2243724A CA2243724C CA 2243724 C CA2243724 C CA 2243724C CA 002243724 A CA002243724 A CA 002243724A CA 2243724 A CA2243724 A CA 2243724A CA 2243724 C CA2243724 C CA 2243724C
Authority
CA
Canada
Prior art keywords
time reference
record
search
geographic
user
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CA002243724A
Other languages
French (fr)
Other versions
CA2243724A1 (en
Inventor
Charles Wayne Rutledge
Norman Ashton Whitaker Jr.
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
AT&T Corp
Original Assignee
AT&T Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US08/901,249 external-priority patent/US6650998B1/en
Application filed by AT&T Corp filed Critical AT&T Corp
Publication of CA2243724A1 publication Critical patent/CA2243724A1/en
Application granted granted Critical
Publication of CA2243724C publication Critical patent/CA2243724C/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Abstract

A network-based search system is disclosed in which queries and information records are qualified by temporal and geographical references, such as those provided by a map-based directory system. Briefly, queries are submitted using text strings together with time tags and location tags. Time tags and location tags refer to the date/time the query was last submitted for a search and the geographical area of interest (defined by ranges of latitude and longitude coordinates), respectively. The information records being searched preferably contain similar time and location tags. However, time and location tags associated with information records refer to the date/time the record was last modified and the origin of the record, respectively. A
mechanism is also provided for determining location tags for records that do not include location tags. In all, a comparison between the time and location tags associated with a query and the time and location tags associated with the information records permits geographically irrelevant records to be suppressed and allows the user to automatically receive only information that has been modified since the user last requested it. Thus, search results are automatically pre-filtered prior to being transmitted to the user who originated the query, thereby conserving network resources and reducing the amount of context-based filtering required of the user.

Description

A GEOGRAPHICAL INFORMATION SEARCH SYSTEM
FIELD OF THE INVENTION
This invention relates generally to an information search system and, more specifically, to a network based information search system in which information queries and records are qualified by time and/or geographical references.
~3ACKGROUND OF THE INVENTION
It has become routine for a user of a personal computer to search a large distributed data source, such as the Internet, for information relevant to a topic of interest. With the aid of a bruwser such as Netscape~ and a search engine such as Alta Vista~, Lycos'~ or Yahoo, the user can perform text string searches for the desired information. Although text string searches provide users with the ability to customize each search, text string searches of large distributed databases often
2 produce thousands of hits, many of which are irrelevant to the user's topic of interest. As one can imagine, subsequent filtering of the search results by the user is a tedious and time consuming process. Furthermore, a user who repeats a search to obtain the most up-to-date information must compare the search results against information from earlier searches to filter the updates, thereby adding to the user's burden.
Alternatively, a user may subscribe to an on-line magazine or newsgroup, which are known in the art as information "push" systems, to receive globally broadcast information of interest without having to transmit a search request. The user can "tune" to one of a limited number of channels to obtain the information of interest.
However, the user is limited to the broad classification of the channel to which he is tuned (e.g., "Sports News/NFL") and thus, unlike with text string searching, cannot truly customize his subscription.
As such, there is currently no way for a user to perform text string searches of a data source in a manner that significantly increases the percentage of relevant "hits"
and thus decreases the amount of time spent by a user filtering search results.
SUMMARY OF THE INVENTION
A technical advance is achieved in the art by providing a method and system for a geographical information search system.
2 0 A system and method are disclosed for searching a data source using text string searches in which queries and information records are qualified by temporal and/or
3 geographical references. In an exemplary embodiment, temporal and geographical references associated with a query are the dateltime the query was last submitted by a user and the user's geographical area of interest (defined by ranges of latitude and longitude coordinates), respectively. The temporal and geographical references associated with an information record are the dateltime the record was last modified and the "origin" of the record, respectively. A comparison between the temporal and geographic references associated with a query and those associated with the information records in the data source permits geographically irrelevant records to be suppressed and allows an individual user to receive only information that has 1 o been modified since the user last requested it. Thus, search results are automatically pre-filtered prior to transmission to the user thereby conserving network resources and reducing the amount of context-based filtering required of the user.
Other and further aspects of the present invention will become apparent during the course of the following detailed description and by reference to the attached drawings.
BRIEF DESCRIPTION OF THE DRAWINGS
The subject matter regarded as the invention is particularly pointed out and distinctly claimed in the concluding portion of the specification. The invention, however, both as to organization and method of operation, together with advantages thereof 2 o may be best understood by reference to the following detailed description when read with the accompanying drawings in which:
4 Fig. 1 illustrates a block diagram of a communications network that employs an embodiment of a geographical information search system in accordance with the present invention.
Figs. 2A and 2B illustrate two embodiments of a data structure wherein spatial data in a map database are stored in accordance with the present invention.
Fig. 3 illustrates an exemplary manner wherein geographical regions for display are categorized in accordance with one embodiment of the present invention.
Figs. 4A-4D illustrate the menu screens relating to a "view" function which are available to the user of a geographical information search system in accordance with 1 o one embodiment of the present invention.
Fig. 5 is a flow chart illustrating the process for varying the zoom level of a map displayed on a terminal in accordance with one embodiment of the present invention.
Figs. 6 and 7 illustrate the menu screens relating to a "search" function which are available to the user of a geographical information search system in accordance with one embodiment of the present invention.
Fig. 8 illustrates the format of a search query in accordance with one embodiment of the present invention.
Fig. 9 is a flow chart illustrating the process for filtering records retrieved in 2 o response to a search query in accordance with one embodiment of the present invention.

Fig. 10 illustrates the format of a database storing information that relates place names to geographical extents in accordance with one embodiment of the present invention.
DETAILED DESCRIPTION
5 Fig. 1 illustrates a block diagram of a communications network that advantageously employs an embodiment of a geographical information search system in accordance with the present invention. As shown in Fig. l, a plurality of user terminals such as personal computers are configured to access a database server 100. A
user can access the database server 100 via either a modem 115 or a computer 1 o communications network such as the Internet 120.
Database server 100 includes a directory database 125, which preferably stores yellow pages (i. e. , business) and white pages (i. e. , residential) listings ( 130, 135).
Each listing may include name, telephone number and other relevant information.
The database server 100 also includes a geography database 140, which comprises two components: a map database 145 and a locationlcoordinates database 150.
The map database 145 stores geographic regions categorized into map tiles and zoom layers as will be discussed in detail hereinafter. The location/coordinates database 150 stores information correlating "place names" (e.g., Monmouth, NJ) to a range of location coordinates defined in terms of latitude and longitude, as will be 2 o discussed in detail hereinafter.
In addition, database server 100 includes a content database 160, which, like the
6 geography database 140., also comprises two components: an advertising database 165 and a sites database 170. The advertising database 165 stores advertising information preferably relating to entities having listings in the directory database 125. The sites database 170 stores web sites (e.g., URLs), each referenced by a text string that describes the contents of the site. The sites database 170 is populated autonomously by a network agent such as a web crawler 175. The web crawler 175 searches for sites by following hypertext links over a computer communications network such as the Internet. Upon finding a site, the web crawler 175 adds the site to the sites database 170 together with a time stamp 180. The time stamp indicates 1 o the date and time that the site was added to the database. Upon revisiting a site, the web crawler 175 will determine if the site has been modified since it was first found and, if it has been, the web crawler 175 will update the corresponding time stamp accordingly.
A control server 185 manages and supervises the activities of the database server 100. Control server 185 is coupled to the directory database 125, the map database 145, the location/coordinates database 150, the advertising database 165, and the sites database 170. The database server 100 receives requests for information from computer terminals 110 and in response to such requests takes appropriate actions as will be discussed in detail hereinafter. These requests include performing string-2 o based searches of the various databases (125, 165, 170) and viewing geographical regions stored in map database 145. As shown in Fig. 1, the control server 185
7 includes a time/location filter 190 for filtering search results, as will also be discussed in detail hereinafter.
In accordance with one aspect of the present invention, each computer terminal includes a database handler 195, which is configured to transmit search queries to database server 100, as will be described in detail hereinafter. The database handler 195 is also configured to operate in accordance with the principles of a geographic interface system (GIS). To this end, database handler 195 receives information relating to geographic regions, which are retrieved from map database 145 and combines this information with predetermined information retrieved from directory 1 o database 125 and advertising database 165 to display an image of a geographic region together with directory or advertising information relating to an entity depicted on the image .
The operation of geographic interface systems (GIS) is well-known and described, for example, in : (1) SAGE Introductory Guidebook, Robert M. Itami and Robert J. Raulings, DLSR (Melbourne, Australia, 1993); (2) Principles of Geographical Information Systems for Land Resources Assessment, Clarendon Press, Oxford University Press, (New York 1986); (3) Geographic Information Systems: A
management perspective, Aronoff, Stanley WDL Publications, (Ottawa, Canada 2 0 1989); and (4) Geographic Information Systems: An Introduction, Star, Jeffrey, and Estes, John E. Prentice-Hall, Inc. (Englewood Cliffs, New Jersey 1990).
8 Commercially available geographic information systems may be obtained from Eliris, Inc., and Arc/Info, Inc.
Generally, database handler 195 is a computer program installed in each computer terminal 110. In accordance with one embodiment of the present invention, database handler 195 operates as a geographic information system (GIS).
Database handler 195 is used for retrieving, analyzing, and displaying map data, corresponding to geographical maps, stored in map database 145 in conjunction with customer record data stored in customer directory database 125. To this end, the Earth's features are not only represented in pictorial form, as in conventional paper 1 o maps, but as information ar data.
The data stored in map database 145 contains all the spatial information relating to conventional geographical maps. With the aid of a geographic information system (GIS), this spatial data is advantageously displayed, on computer terminal 110, just like a paper map with roads, rivers, vegetation and other features represented as lines on a map complete with legend, border and titles. At least one important feature of geographic information systems (GIS's) is that the information stored in map database 145 is stored in a structured format referred to as a spatial database.
The way spatial data are structured allows the user to store, retrieve and analyze the information.
2 o Figs. 2A and 2B illustrate two examples of methods wherein spatial data in map database 145 is stored. Fig. 2A illustrates an example, where map features are
9 stored in vector format. To this end, data is stored as a series of points, lines and polygons, such as points 200, lines 205, and polygons 210, with a substantially high degree of accuracy. In accordance with one embodiment of the invention, buildings are preferably represented as polygons or points having a given size corresponding to the actual size of the building. Roads and rivers are preferably represented by lines having given lengths and widths corresponding to their actual dimensions.
Fig. 2B illustrates another example, where map features are stored in raster or grid format. A matrix of cells 240 generalize the location of features on a map.
Many geographic information systems may be configured to handle both vector and raster 1 o data from a wide variety of sources including satellite imagery, hand digitized maps and scanned images.
As illustrated in Figs. 2A and 2B map information in map database 145 is represented thematically. A standard topographic map will show roads, rivers, parks, and building patterns and other features on a single map sheet. In a geographic information system (GIS) these features are categorized separately and stored in different map themes or overlays. For example, roads are preferably stored in a separate overlay 215. Likewise, rivers and streams are preferably stored in a separate overlay 220. Parks are stored in a separate overlay 225, and buildings are stored in a separate overlay 230. This way of organizing data makes maps much 2 o more flexible to use since these overlays or themes can be combined in any manner that is useful. Furthermore, updating map information may be accomplished more easily. As illustrated in Fig. 2b, information stored in raster format appears less realistic than that stored in vector format.
In accordance with one embodiment, each thematic overlay is advantageously separated in additional corresponding overlays, although the invention is not limited 5 in scope in that respect. For example, overlay 215 corresponding to roads, may comprise many road overlays, with roads in each overlay categorized on a hierarchial basis. Preferably, interstate highways are stored in one overlay, and state highways in another overlay and local roads in still another overlay.
Likewise, overlay 220, corresponding to parks, may comprise many park overlays, with parks
10 in each overlay categorized on the basis of size. For example, large state parks may be stored in one overlay, and smaller city and neighborhood parks may be stored in another overlay. This overlay categorization allows the user to view each retrieved map with a predetermined degree of resolution. As more and more layers are combined, more detail appears on the map being displayed.
In one embodiment, geographical regions available for display are also categorized into tiles and zoom layers as illustrated in Fig. 3, with each tile and zoom layer defined by a range of latitude and longitude coordinates. For example, various maps with different scales may be stored in map database 145. Fig. 3 represents an exemplary zoom layer system for a map database system having five zoom layers, 2 o with each zoom layer a factor of eight greater in scale than the more detailed zoom layer below it.
11 For example, zoom layer 305 includes a tile 300 that represents a portion of a general map of a country. Such a map, when displayed on computer terminal 110, illustrates gross details, such as state boundaries. Zoom layer 315 includes a plurality of tiles 310, each of which represent a map relating to one or more states corresponding to the area represented by tile 300. Each tile 310 when displayed on computer terminal 110, illustrates more details of areas contained in a state.
Zoom layer 325 includes a plurality of tiles 320, each representing a map of a county corresponding to the area represented by tiles 310. Each tile 320, when displayed on computer terminal 110, illustrates more details of areas contained in a county.
l0 Zoom layer 335 includes a plurality of tiles 330, each representing a map of a town corresponding to the area represented by tiles 320. Each tile 330, when displayed on computer terminal 110, illustrates more details of areas contained in a town.
Finally, zoom layer 345 includes a plurality of tiles 340, each representing a map of a neighborhood corresponding to the area represented by tiles 330. Each tile 340, when displayed on computer terminal 110, illustrates details of areas contained in a neighborhood, including buildings. Figs. 2a illustrates an exemplary map tile that is formed by combining thematic layers 215 through 230. It will be appreciated that any combination of thematic layers 215 through 230 may be employed to form a map tile 235.
2 o Each zoom layer corresponds to a predetermined scale. Furthermore, each tile in each layer represents an actual length of a geographic region being represented in
12 accordance with each zoom layer. Using this exemplary scaling system, each tile 340 of zoom layer 345' represents a square area with each side having an approximate length of 2000 feet. Likewise each tiles 330 of zoom layer 335 represents a square area with each side having an approximate length of 3 miles.
Tiles 320 of zoom layer 335, each represent a square area with each side having an approximate length of 24 miles. Tiles 310 of zoom layer 315, each represent a square area with each side having an approximate length of 194 miles. Finally tile 300 of zoom layer 305 represents a square area with each side having an approximate length of 1550 square miles.
1 o It is to be noted that a plurality of overlay maps such as 220 through 230 may correspond to each tile. Thus, the system allows each map region to be visualized at a predetermined scale, depending on the zoom layer from which a tile, or portion of a tile, is being displayed. It also allows the user to control the degree of detail that is included in each tile being displayed, depending on the number of thematic layers used in a combination of overlays to display the tile.
In addition to various themes or overlays 215 through 230 and zoom layers 305 through 345, map database 145 also stores the label information relating to each location. A label information may comprise a text string; location of the label on the map; its orientation and size.
2 o In order to ensure that all images of maps stored in map database 145 overlay accurately, the data set is "geo-referenced" to a common coordinate system.
For
13 example, Universal Transverse Mercator (UTM) projection is commonly used to define coordinates in the system. This technique is well-known and thus, is not discussed in detail herein..
Map database 145 represents an object-oriented database, in which each map record or map tile consists of a list of objects. Table -1- illustrates the data structure of an exemplary map tile, although the invention is not limited in scope in that respect.
Table -1-Location This is the reference location of the map tile identified with a unique map tile identifier.
Object List This is a list of map objects, which in general represent entities which can logically carry a single label (whether or not they are labeled).
Examples of objects are: overlays that include streets, building outlines, parks, bodies of water, etc.; Labels (text strings, location of labels, orientation, etc.); Polygons (a set of 2 o filled polygons, drawn in order); Ranges of latitude and longitude coordinates; Directory Reference (objects that include pointers to the directory database. These pointers may comprise a unique identifier number ("ID#").
Thus, personal computer terminal 110 may allow a user to retrieve and display images 3 0 corresponding to map tiles or portions of map tiles from map database 145.
Preferably, the user is able to zoom these images, starting at, for example, a very high altitude, where only gross details are visible, e.g., state boundaries, and gradually
14 zoom into a given location until great detail is visible, such as building names, numbers and outlines. In response to a user's commands as discussed in more detail hereinafter, database handler 195 retrieves a selected map tile, and displays all the objects indicated in the corresponding object list of the map record.
The user-interface of database handler 195 is described in more detail hereinafter with reference to Figs. 4A-4D.
Fig. 4A illustrates an example of a menu screen that is displayed in accordance with one embodiment of the invention. The menu advantageously includes several function categories comprising: File, Edit, View, Search, Connect, Hotlist, and Settings, although the present invention is not limited in scope in that respect. The user may select any one of these functions, in response to which the database handler 195 provides additional options available to the user.
The file, edit, connect, hotlist and settings features, although advantageous, refer to additional capabilities of the user interface through which searches are initiated in accordance with one embodiment of the present invention. Because the operation of these features is not essential to an understanding of the present invention, they are not discussed in detail herein. In contrast, the operation of the view and search functions is discussed in detail hereinafter.
Figs. 4A-4D illustrate the menu options relating to the "view" function of data base handler 195. Fig. 4A illustrates an exemplary menu of features available when the "view" function is selected. In response to the selection of a viewing feature, database handler 195 sends a request to database server 100 to access and retrieve corresponding map tiles stored in map database 145.
5 One of the features available under the "view" function is the "jump" to a location feature. In response to this request, database server 100 retrieves a list of all available map tiles in a hierarchial order. For example, the user may first browse the list of countries that map database 145 maintains a corresponding map tile therefor.
In response, the user may select a desired country. Database server 100 then provides a l0 list of map tiles that are associated with the desired country. These map tiles preferably relate to a list of states that map database 145 maintains. In response, the user may select a desired state. Database server 100 then provides a list of map tiles that are associated with the desired state. These map tiles preferably relate to a list of counties that map database 145 maintains. Database server 100 then provides a list of
15 map tiles that are associated with the desired county. These map tiles preferably relate to a list of towns that map database 145 maintains. Finally, database server provides a list of map tiles that are associated with the desired town. These map tiles preferably relate to a list of neighborhoods that map database 145 maintains.
At any time during the selection process explained above, the user may generate an 2 0 "open" command to view a selected region. In response, database server 100 retrieves the map tiles associated with the selected region and transmits the map data to
16 computer terminal 110. Database handler 195 receives the map data and displays the map tiles on the computer screen.
The next feature available under the "view" function is the move command. as illustrated in Fig. 4C. This feature allows the user to move the viewpoint currently displayed on the screen of computer terminal 110. In response to this command, database server 100 retrieves corresponding map tiles that are contiguous to the currently displayed map tile. Typically, the user defines the distance and the direction that the current viewpoint is desired to be moved. Based on this requirement all or a partial portion of contiguous map tiles may be retrieved and displayed.
l0 Another feature available under the "view" function is the zoom command, as illustrated in Fig. 4D. This feature allows the user to zoom or pan the viewpoint currently displayed on the screen of computer terminal 110. In response to this command, database server 100 retrieves corresponding map tiles with different degrees of resolution. Thus, the user may view a desired location contained within map tiles displayed on computer terminal 110. The user may then request a more detailed map of the currently displayed viewpoint. By selecting a desired zoom level database server 100 retrieves more detailed map tiles corresponding to the currently displayed viewpoint. By using the move and zoom features illustrated in Figs.
4C and 4D, the user may retrieve map data with various scale factors relating to a displayed 2 0 viewpoint.
The "zoom" function is described in more detail hereinafter; in reference with Fig. 5,
17 which is a flow chart illustrating the process wherein various map tiles are displayed in accordance with a desired zoom layer. Database handler 195, at step 510, maintains the current tile identification numbers related to the map tiles that are being displayed.
Database handler 195 also maintains two consecutive zoom layers, within which the current zoom level lies. ,At step 510, database handler 195 also obtains the latitude and longitude of the location that corresponds to the center of the currently displayed vlewpolnt.
The zoom levels illustrated in Fig. 4D correspond to the layers discussed in connection with Fig. 3, and advantageously comprise, country, state, county, town and neighborhood zoom layers. As illustrated, each zoom level is identified by a number, preferably ranging from "0" to "24", where "0" corresponds to map tiles with highest degree of resolution and "24" corresponds to map tiles with the lowest degree of resolution. Zoom level 7 coincides with zoom layer 345 of Fig. 3. Likewise, zoom level 11 coincides with zoom layer 335 of Fig. 3. Zoom level 15 coincides with zoom layer 325 of Fig. 3. Zoom level 20 coincides with zoom layer 315 of Fig. 3, and zoom level 24 coincides with zoom layer 305 of Fig. 3.
At step 512, database handler 195 determines whether a zoom level command has been generated. If not, the system goes back to step 510 and maintains the same information it had maintained before. If, however, at step 512 a new zoom level 2 0 command has been generated, the system goes to step 514 to determine whether the new zoom level falls within the same two consecutive zoom layers that were 1. 8 maintained at step 512. If so, the system goes to step 516 to determine the degree of resolution required on the same map tiles being currently displayed, based on the zoom level command. If the zoom level command has been decreased, the system adds additional thematic overlays to the currently displayed map tiles, as discussed in connection with Figs. 2A and 2B to increase the details being currently displayed. If the zoom level command has been increased, the system subtracts thematic overlays from the currently displayed map tiles, as discussed in connection with Figs.
2A and 2B.
If at step 514, database handler 195 determines that the new zoom level command falls l0 outside the two consecutive zoom layers that were maintained at step 510, the system goes to step 520 to obtain the next higher zoom layer. The system then goes to step 522 to retrieve map tiles corresponding to the obtained zoom layer and the latitude and longitude information maintained at step 510. The system then repeats steps 516 and 518 to obtain thematic overlays corresponding to an appropriate resolution.
The system then goes to step S24 and displays the retrieved map tiles. Thereafter the system goes to step 510 and repeats the process described above.
Fig. 6 illustrates the menu options available under the "search" function of database handler 195. As illustrated in Fig. 6, these options comprise a directory search, a web search, and an ad search. Although the present invention will be described in detail in 2 0 conjunction with the "web search" option, it is to be understood that the principles of the present invention are equally applicable in the case where a user selects the "directory search" or "ad search" options. The search function also includes a "current searches" option as will be discussed in detail hereinafter.
Selection of the "web search" option results in the display of the "web search" screen on the user's computer terminal 110. The user begins by entering search terms relevant to the information being sought.
As shown in Fig. 6, the database handler 195, in connection with the web search option, queries the user for the geographic area of the search. The user is provided with three choices: no limitation, a specified radial distance from the user's base location or "home", and the user's current view as retrieved in accordance with the viewing feature described above. The first choice available to the user is to conduct the search without any geographic limitations. With respect to the second choice available to the user, the "home" location is a user-specified default location which is stored in the database handler 195 along with other user preferences.
The home location may be the location of the user's home or workplace. Moreover, the term "radial distance" is used loosely and may simply mean a square search area with the home location at its center.
Regarding the third choice available to the user, the "current view" refers to the geographic area corresponding to the map visible on the screen. As described above in connection with the viewing feature, the user is able to pan, zoom and jump to 2 0 various locations, and thus, is able to precisely specify the geographical area of interest, defined in terms of a range of latitude and longitude coordinates.

As also shown in Fig. 6, the database handler 195, in connection with the web search function, further queries the user for the required duration of the search.
The user is provided with four choices: "just this once", "one day", "one week" or "one month".
The database handler 195 also queries the user for the frequency of search updates:
5 "every x minutes", "every x hours", or "every x days", where x is specified by the user.
Because search updates may consume user resources as well as network resources and may result in connection charges, the user may wish to limit the frequency of these updates. Thus, the database handler 195 provides the user with the option of making the search "persistent" by having the database handler 195 update the search results on 10 a regular basis. In this regard, the database handler 195 operates as a background process using the date/time feature of the terminal's operating system to automatically send search queries to the database server 100 in accordance with the present invention. As such, the use of string-based queries together with the automatic re-querying of the particular data source, permits the user to customize searches and, in 15 effect, to "subscribe" to information of a very specific type. As will be discussed, the present invention also permits the user to receive only the information that has been modified since the user last requested it.
With continuing reference to Fig. 6, the database handler 195, in connection with the web search function, provides the user with the choice of selecting an auto-fetch 2 0 feature. If the auto-fetch feature is not selected, the search results received from database server 100 is a list of URL's and/or other header information.
However, if the auto-fetch feature is selected, the content page c>f each URL is also received from database server 100.
Fig. 7 illustrates the screen displayed on a user's terminal 110 in response to the selection of the "current searches" option of the search function. Current searches are listed in terms of the search strings entered by the user, as illustrated in Fig. 7. The user may first browse the list of current searches and select a search to delete, modify or view. The delete button on the screen inactivates a selected search and removes it from the list. The modify button opens the screen illustrated in Fig. 6 and thus, permits the user to redefine the search parameters for a search. These parameters include the search terms, the geographic limitations, the duration of the search, and the periodicity of search updates. The view results button will display for a search either the list of URL sites alone (if auto-fetch is inactive) or both the URL sites and their corresponding content pages (if auto-fetch is active).
Fig. 8 illustrates an exemplary search query generated by the database handler 195.
As shown in Fig. 8, the query format includes fields for a search string, a "new request" bit, an auto-fetch bit, a time reference, and a geographic reference.
The geographic reference includes a minimum latitude (MINLAT), a maximum latitude (MAXLAT), a minimum longitude (MINLONG), and a maximum longitude (MAXLONG). The search string, the auto-fetch bit, and the geographic reference are 2 0 specified by the user in accordance with the web search option of the search feature described above.

The new request bit and the time reference in the search query are specified by the database handler 195. The new request bit is set to "1" the first time a query is transmitted to the database server 100 and thereafter is set to "0" for any re-queries, such as in the case where a user has specified that the database handler 195 update a search periodically. The time reference is the date/time that the query was last transmitted to the database server 100; for new requests, this field would be empty.
The functionality of the time/location filter 190 (hereinafter "the filter") resident in the control server 185 will now be discussed in detail. For each search query, the control server 185, in connection with the web search function, searches the sites database 170 1 o and generates a list of sites that satisfy the search string component of the query. Each site on the list preferably has both a time reference and a geographic reference associated therewith. T'he filter 190 then removes from the list irrelevant sites that do not satisfy the time reference and geographic reference parameters of the search query as will be discussed in detail hereinafter in connection with Fig. 9.
Ultimately, the database server 100 transmits the filtered search results to the user's terminal 110, thereby conserving network resources and reducing the amount of filtering required of the user.
Fig. 9 is a flow chart illustrating the process of filtering search results as performed by the time/location filter 190, 2 o In step 910, the filter 190 receives a query transmitted by database handler 195 and a record retrieved from the sites database 170 in response to the query. As discussed above, the query contains a new request bit, a time reference (i. e. , the date/time that the query was last transmitted to the database server 100), and a geographic reference, which includes a minimum latitude (MINLAT), a maximum latitude (MAXLAT), a minimum longitude (MINLONG), and a maximum longitude (MAXLONG). The record retrieved from the sites database 170 preferably includes entries for the date/time that the site was last modified and a geographic reference, which, like the geographic reference of the query, includes a minimum latitude (minlat), a maximum latitude (maxlat), a minimum longitude (minlong), and a maximum longitude (maxlong).
In step 920, the filter 190 compares the last time the query was transmitted to the database server 100 (TIME REFERENCE) against the last time the site was modified (LAST MODIFIED) to determine whether TIME REFERENCE is earlier than LAST MODIFIED.
As discussed above in connection with Fig. 1, the process of accumulating sites in the sites database 170 and time stamping them is done autonomously by the web crawler 175. When the web crawler 175 encounters a new site, a site record is generated and the entry in the LAST MODIFIED field of the record is the date/time that the record is stored in the sites database 170. When the web crawler 175 revisits a site, the web crawler 175 replaces the current entry in the LAST
2 o MODIFIED field of the site record with the "actual" last modified date of the site (e. g. , the administrator of the site may have modified the contents thereof since the last time the web crawler 175 encountered it), provided that the actual last modified date is later than the current entry in the LAST MODIFIED field.
If it is determined in step 920 that TIME REFERENCE is later than LAST
MODIFIED, the filter 190 determines in step 930 whether the new request bit in the query is set to " 1 ". Recall that a new request bit set to " 1 " indicates that this is the first time that the query has been transmitted to the database server 100. If the new request bit is not set to " 1 ", the filter 190 discards the record in step 940 as being too old.
However, if it is determined in step 920 that TIME REFERENCE is earlier than LAST MODIFIED or, if it is determined in step 930 that the new request bit is set to " 1 ", the filter 190 proceeds in step 950 to compare the geographic reference of the query against the geographic reference of the site. In particular, the filter 190 in step 950 calculates whether:
MINLAT < maxlat;
MAXLAT > minlat;
MINLONG < maxlong; and MAXLONG > minlong 2 0 to determine whether some portion of the area defined by the geographic reference specified in the site record is within the area defined by the geographic reference specified in the query. In other words, the filter 190 determines whether the two areas overlap.
If the areas do not overlap, the filter 190 determines in step 960 whether there are any additional geographic references associated with the site record and, if there are, returns to step 950 to compare the area defined by the geographic reference of the query against the area defined by the additional geographic reference of the site. If the areas do not overlap and there are no additional geographic references associated 5 with the site, the record is discarded in step 970 as not being within the user's geographic area of interest.
However, if it is determined in step 950 that an area defined by a geographic reference specified in the site record overlaps the area defined by the geographic reference specified in the query, the site infbrmation, such as the URL, 1 o corresponding to the site record is retained by the filter 190 and ultimately transmitted in step 980 to the database handler 195 that originated the query.
It is to be understood that complexities can arise in cases where a site encountered by the web crawler 175 does not maintain an "actual" last modified date or any geographic reference information. Absent this information, a site which satisfies the 15 search string component of a user's search query will simply be provided to the database handler 195 and it will be up to the user to thereafter determine whether the site is temporally and geographically relevant to his search.
Thus, the filter 190 requires specific geographic reference information in terms of latitude and longitude ranges for comparison with the geographic reference 2 o parameters of the search query. However, there typically are several clues within a site, which provide some insight into the site's geographic reference, albeit without specifying latitude and longitude ranges. The filter 190 therefore performs the additional task of using these clues to determine the geographic reference of a site.
The extension on the URL is itself a clue as to a site's geographic reference.
For example, a URL extension clearly indicates whether the site originates from a country outside the United States (e.g., a .JP extension refers to a site originating from Japan). Perhaps the biggest clue, however, comes from a "place name"
(e.g., Monmouth, NJ) in the header of a site's content page. As discussed above, filter 190 is coupled to a location/coordinates database 150 which stores information correlating place names to a range of coordinates defined in terms of latitude and 1 o longitude. Thus, filter 190 can obtain a geographic reference in terms of latitude and longitude ranges for comparison with the geographic reference parameters of the search query by accessing the location/coordinates database 150.
Fig. 10 illustrates the format of the location/coordinates database 150. As shown in Fig. 10, the database contains records for each place name. Each record for each place name includes fields for the state, the country, the minimum latitude, the maximum latitude, the minimum longitude, and the maximum longitude, corresponding to the place name.
Thus, the present invention provides many advantages compared to traditional text string search systems. As an example, consider a text string search for the category 2 0 "dry cleaners" . Without geographic specification, the thousands of "hits"
returned make this type of search nearly meaningless. Even if the name of a single locality is included in the text string in an attempt to reduce the number of "hits", a complete search should include the names of all neighboring localities as well. As one can imagine, the process can become quite unwieldy. In cantrast, in accordance with one embodiment of the present invention, specifying a location is not a text-oriented process, but more precisely involves a comparison of geographical coordinates.
Moreover, the cumbersome process of specifying geographical coordinates is eased by the use of the maps by the database handler 195.
In accordance with an alternate embodiment of the present invention, the ability to make a search persist such that only new information is automatically retrieved is a 1 o powerful capability that serves to further reduce the amount of time spent by a user filtering search results.
Moreover, the ability to combine these search features introduces many possibilities, which may significantly increase the utility of the on-line information systems. The consequences for the local economy are extremely important, as users,in accordance with the present invention, can now operate in an on-line context which is much more local than the entire on-line world. For example, a classic car buff can enter a persistent search for a "1965 Mustang" in the hope of fording one for sale.
The search could be active for a year or two and cover several counties, until a day such a car is offered for sale. The search does its work automatically and unobtrusively, 2 o and brings tremendous value to the user once a car is located.
The database handler 195 also allows the system to emulate an information "push"

system, in which information is delivered to the user without the need to constantly search for it. However, because the system begins with a search string, essentially infinite customization is possible depending upon the specificity of the search string.
The many features and advantages of the present invention are apparent from the detailed specification, and thus, it is intended by the appended claims to cover all such features and advantages of the invention which fall within the true spirit and scope of the present invention.
Furthermore, since numerous modifications and variations will readily occur to those skilled in the art, it is not desired that the present invention be limited to the exact construction and operation illustrated and described herein, and accordingly, all suitable modifications and equivalents which may be resorted to are intended to fall within the scope of the claims.
For example, it is to be understood that the present invention is applicable to searches of any data source including, but not limited to, the directory database 125, the advertising database 165, and the sites database 170 of Fig. 1, provided that the search queries and the information being searched are qualified by time and/or geographic references, as discussed in detail above. Indeed, a localized database such as advertising database 165 can be more closely regulated than a widely distributed data source such as the Internet and thus, the information therein 2 o invariably qualified by time and/or geographic references in accordance with the present mvenrion.

Claims (18)

1. A method for searching a data source, comprising the steps of:
comparing a first geographic reference corresponding to a search query against a second geographic reference corresponding to a record in said data source to determine whether said record satisfies said search query, wherein said first geographic reference includes a range of latitude and longitude coordinates.
2. The method in accordance with claim 1, wherein said second geographic reference includes a range of latitude and longitude coordinates.
3. The method in accordance with claim 2, wherein said step of comparing a first geographic reference includes determining if a portion of an area defined by said second geographic reference is within an area defined by said first geographic reference.
4. The method in accordance with claim 1, wherein said second geographic reference is a place name and further comprising the step of correlating said place name to a range of latitude and longitude coordinates.
5. The method in accordance with claim 1, wherein said data source is a database and said record relates to a web site in a computer communications network.
6. The method in accordance with claim 1, further comprising the step of:
comparing a first time reference relating to said search query against a second time reference relating to said record to determine whether said record satisfies said search query, wherein said first time reference indicates when said search query was last submitted for searching said data source, and said second time reference indicates when said record was last modified.
7. The method in accordance with claim 6, wherein said step of comparing a first time reference includes determining if said first time reference is earlier than said second time reference.
8. A method for searching a data source, comprising the steps of:
comparing a first time reference relating to a search query against a second time reference relating to a record in said data source to determine whether said record satisfies said search query, wherein said first time reference indicates when said search query was last submitted for searching said data source, and said second time reference indicates when said record was last modified.
9. The method in accordance with claim 8, wherein said step of comparing a first time reference includes determining if said first time reference is earlier than said second time reference.
10. A geographic information search system for searching a data source, comprising:
a memory device having stored therein information relating to a plurality of records;
a processor in communication with said memory device, said processor configured to compare a first geographic reference corresponding to a search query against a second geographic reference corresponding to a record in said data source to determine whether said record satisfies said search query, wherein said first geographic reference includes a range of latitude and longitude coordinates.
11. The system in accordance with claim 10, wherein said second geographic reference includes a range of latitude and longitude coordinates.
12. The system in accordance with claim 11, wherein said processor is further configured to determine whether a portion of an area defined by said second geographic reference is within an area defined by said first geographic reference.
13. The system in accordance with claim 10, wherein said second geographic reference is a place name and wherein said processor is further configured to correlate said place name to a range of latitude and longitude coordinates.
14. The system in accordance with claim 10, wherein said memory device is a database which stores records relating to a plurality of web sites in a computer communications network.
15. The system in accordance with claim 10, wherein said processor is further configured to compare a first time reference relating to said search query against a second time reference relating to said record to determine whether said record satisfies said search query, wherein said first time reference indicates when said search query was last submitted for searching said data source, and said second time reference indicates when said record was last modified.
16. The system in accordance with claim 15, wherein said processor is further configured to determine if said first time reference is earlier than said second time reference.
17. An information search system for searching a data source, comprising:

a memory device having stored therein information relating to a plurality of records;
a processor in communication with said memory device, said processor configured to compare a first time reference relating to a search query against a second time reference relating to a record in said data source to determine whether said record satisfies said search query, wherein said first time reference indicates when said search query was last submitted for searching said data source, and said second time reference indicates when said record was last modified.
18. The system in accordance with claim 17, wherein said processor is further configured to determine if said first time reference is earlier than said second time reference.
CA002243724A 1997-07-28 1998-07-21 A geographical information search system Expired - Fee Related CA2243724C (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/901,249 US6650998B1 (en) 1996-03-11 1997-07-28 Information Search System for enabling a user of a user terminal to search a data source
US08/901,249 1997-07-28

Publications (2)

Publication Number Publication Date
CA2243724A1 CA2243724A1 (en) 1999-01-28
CA2243724C true CA2243724C (en) 2002-01-22

Family

ID=25413818

Family Applications (1)

Application Number Title Priority Date Filing Date
CA002243724A Expired - Fee Related CA2243724C (en) 1997-07-28 1998-07-21 A geographical information search system

Country Status (1)

Country Link
CA (1) CA2243724C (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107122221A (en) * 2011-06-24 2017-09-01 凯为公司 Compiler for regular expression

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6704722B2 (en) * 1999-11-17 2004-03-09 Xerox Corporation Systems and methods for performing crawl searches and index searches
WO2006014824A1 (en) * 2004-07-26 2006-02-09 Wireless 5Th Dimensional Networking, Inc. Context-based search engine residing on a network

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107122221A (en) * 2011-06-24 2017-09-01 凯为公司 Compiler for regular expression
CN107122221B (en) * 2011-06-24 2021-03-12 马维尔亚洲私人有限公司 Compiler for regular expressions

Also Published As

Publication number Publication date
CA2243724A1 (en) 1999-01-28

Similar Documents

Publication Publication Date Title
US6650998B1 (en) Information Search System for enabling a user of a user terminal to search a data source
US6577714B1 (en) Map-based directory system
US7007228B1 (en) Encoding geographic coordinates in a fuzzy geographic address
US7707140B2 (en) Information retrieval system and method employing spatially selective features
JP4781608B2 (en) System and method for retrieving information using spatially selectable features
US6820092B2 (en) Map information providing system and map information searching method
EP1426876A1 (en) Geographical information system
AU708387B2 (en) Computer system for identifying local resources
DE69838650T2 (en) System for downloading maps with GPS and transceiver
US7085650B2 (en) System and method of geospatially mapping topological regions and displaying their attributes
AU2010248997B2 (en) System and method of searching based on orientation
US8175794B1 (en) Switching between best views of a place
US20020029226A1 (en) Method for combining data with maps
US20070005558A1 (en) Asset management system
US20080066000A1 (en) Panoramic ring user interface
KR20010089328A (en) Positional camera and gps data interchange device
WO2007005032B1 (en) Systems, methods and devices for trip management functions
EP1045345A1 (en) Navigation system display of search engine retrieved data selected according to user-given geographical criteria
CA2243724C (en) A geographical information search system
KR20060095558A (en) System and method for automatically retrieving information for a portable information system
US20150261858A1 (en) System and method of providing information based on street address
US20020075511A1 (en) Process for visualizing geographic sites
Orendorf et al. A spatial approach to organizing and locating digital libraries and their content
JP2004021733A (en) Spatial data processing method, spatial data processing system, and spatial data processing program
JP2002108876A (en) System for retrieving area information

Legal Events

Date Code Title Description
EEER Examination request
MKLA Lapsed

Effective date: 20170721