WO2000050844A1 - Internet based geographic location referencing system and method - Google Patents

Internet based geographic location referencing system and method Download PDF

Info

Publication number
WO2000050844A1
WO2000050844A1 PCT/US2000/003835 US0003835W WO0050844A1 WO 2000050844 A1 WO2000050844 A1 WO 2000050844A1 US 0003835 W US0003835 W US 0003835W WO 0050844 A1 WO0050844 A1 WO 0050844A1
Authority
WO
WIPO (PCT)
Prior art keywords
location
server
location information
information
user
Prior art date
Application number
PCT/US2000/003835
Other languages
French (fr)
Inventor
S. Lee Hancock
Peter H. Dana
Scott D. Morrison
Original Assignee
Go2 Systems, Inc.
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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=22976402&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=WO2000050844(A1) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Priority claimed from US08/701,586 external-priority patent/US5839088A/en
Application filed by Go2 Systems, Inc. filed Critical Go2 Systems, Inc.
Priority to JP2000601396A priority Critical patent/JP2002538518A/en
Priority to EP00908644A priority patent/EP1159584A1/en
Priority to AU29949/00A priority patent/AU2994900A/en
Publication of WO2000050844A1 publication Critical patent/WO2000050844A1/en
Priority to HK02103041.1A priority patent/HK1041311A1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • H04W4/029Location-based management or tracking services
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/20Instruments for performing navigational calculations
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9537Spatial or temporal dependent retrieval, e.g. spatiotemporal queries
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09BEDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
    • G09B29/00Maps; Plans; Charts; Diagrams, e.g. route diagram
    • G09B29/10Map spot or coordinate position indicators; Map reading aids
    • G09B29/106Map spot or coordinate position indicators; Map reading aids using electronic means
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/04Protocols specially adapted for terminals or networks with limited capabilities; specially adapted for terminal portability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/30Profiles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/51Discovery or management thereof, e.g. service location protocol [SLP] or web services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/52Network services specially adapted for the location of the user terminal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • H04W4/023Services making use of location information using mutual or relative location information between multiple location based services [LBS] targets or of distance thresholds
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • H04W4/025Services making use of location information using location based information parameters
    • H04W4/026Services making use of location information using location based information parameters using orientation information, e.g. compass
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • H04W4/025Services making use of location information using location based information parameters
    • H04W4/027Services making use of location information using location based information parameters using movement velocity, acceleration information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/30Profiles
    • H04L67/306User profiles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/55Push-based network services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information

Definitions

  • the present invention relates to a geographic location referencing system and to a system, method and computer program product for automatically providing informational services to users based on their geographical location.
  • the Internet has revolutionized the way people acquire information. Seemingly limitless volumes of data are now instantly available to users from their homes, offices, schools and libraries.
  • Portable devices of various types including portable computers, personal data assistants, wireless communication devices (i.e. cellular phones) and in- vehicle navigation and computer systems can or will be used to access the Internet from any location.
  • the '88 patent describes a geographic location referencing system that has an addressing scheme that allows a location to be uniquely addressed using proprietary names unique to a geographical area.
  • the geographic location system is contrasted with prior systems that are not suitable for Internet related services.
  • Such systems include geodetic latitude and longitude, Universal Transverse Mercator (UTM), Military Grid Reference System (MGRS), World Geographic Reference System (GEOREF), Maidenhead, Trimble Grid, Trimble Atlas, and Thomas Brothers Detail.
  • the global systems such as geodetic latitude and longitude, UTM, MGRS, GEOREF, Maidenhead, and Trimble Grid, use a scheme that subdivides the globe into areas of increasing resolution, until a particular location is properly identified. Thus each location address is referenced to the global system, allowing for the easy comparison of two location addresses.
  • the addresses tend to be complicated, cumbersome, and unrelated to the real world, increasing the complexity of these systems.
  • the local systems such as Thomas Brothers paper mapping systems, provide a technique that assigns location addresses based on association with a geographic region or physical map pages, with every location identified with only one region.
  • the local systems are suitable for use in connection with a physical map.
  • Such local systems are difficult to use with respect to a more global or electronic system, as there is no simple way to convert a local address into a global address, and the local address is not recognized in the global systems.
  • GPS Global Positioning Systems
  • a GPS receiver is sometimes coupled with additional capability that allows the raw latitude/longitude numbers to be converted into a more useful and usable format. See, e.g., Sprague et al, US Pat. No. 5,422,814; Inoue, US Pat. No. 5,289,195; and Yamashita, US Pat. No.
  • Private commercial tracking systems in use today provide the ability to automatically track the location of, for example, a fleet of trucks, e.g. see U.S. Patent Nos. 5,155,689; 5,299,132; 5,398,190; 5,454,027; 5,513,111; and 5,519,621. These patents are all related to a commercial vehicle locating and communicating system that uses either a cellular network or a GPS system for tracking and locating vehicles.
  • the present invention relates to a system and method for providing services over a computer network, such as the Internet, for users in mobile environments. Specifically, the system and method of the present invention provides users with information that is specific to the user's geographic location.
  • a client computer system is equipped with a local database, a wireless transceiver, an input device such as a keyboard, an output device such as a display and an automatic location identifying (ALI) device, such as a GPS receiver or the like.
  • ALI automatic location identifying
  • the Client computer system connects with a server coupled to a computer network, such as the Internet.
  • the server is enhanced in accordance with the present invention by automatically determining the location of the client.
  • the client automatically advises the server of its current location via a transmission of an electronic data packet or "handshake" upon connection.
  • the server uses this information to perform a database query to retrieve information that is customized for the particular location.
  • an application program is installed on the client computer system.
  • the application program prompts the user to select a category of interest, a preference for specifying location information (i.e. via manual input, or automatically through an attached
  • the application program then builds a data packet on the client storage device that contains such information.
  • the client first connects with a primary server.
  • the primary server maintains a database that contains a list of registered servers that provide location specific services in accordance with the present invention.
  • the primary server reads the data packet from the client and performs a database query to retrieve the address for a particular enhanced server that matches the client's request.
  • the client is then sent a specific universal resource locator (URL) that contains the address of the enhanced server.
  • URL universal resource locator
  • the client computer system then launches a web browser or the like, and connects with the URL. Upon connection, the client automatically displays relevant data that is customized for the user's geographic location without additional input from the user.
  • a web site that provides geographical maps is implemented in accordance with the present invention.
  • the client upon connection with the URL provided by the primary server, the client is automatically presented with a map of the current geographical area. This is accomplished automatically, without additional manual input from the user.
  • This aspect of the present invention is especially useful in a mobile environment, such as an automobile, where data entry is not only cumbersome, but also dangerous.
  • a user connects to a weather service, whereby the service automatically displays a weather report for the current area. Again, this is accomplished without requiring that the user manually enter data related to the current location.
  • a user connects to a service that automatically provides information about restaurants, banks, or other points of interest that are located within a specified distance from the user's current location.
  • Current location data can be automatically provided by a variety of ways.
  • a GPS receiver can be used to determine the exact location of the user.
  • a cellular telephone connection can be used for determining location information using triangulation or distance measuring techniques.
  • a feature of the present invention is that it provides mobile users with customized information about their current location.
  • An advantage of the present invention is that it provides mobile users with customized information about their current location with a minimal amount of manual data entry.
  • Another advantage of the present invention is that the hierarchical structure of the grid referencing system used to describe location information allows for faster database searches so that customized information can be presented to users in real-time with minimal delays.
  • Another advantage of the present invention is that the grid referencing system allows for information to be manually entered with a minimum amount of reading, scrolling, and searching and with a limited number of keystrokes for data entry.
  • Another advantage of the present invention is that it promotes the use of Intelligent Transport Systems (ITS) for tracking, managing and re-routing commuter traffic.
  • ITS Intelligent Transport Systems
  • the present invention facilitates the use of such systems due to the simplified methods for inputting location data, which is a frequent requirement of Intelligent Transport Systems.
  • Another advantage of the present invention is that the grid referencing system promotes the use of voice recognition systems because location descriptions are limited to 26 letters and 10 numbers. Accordingly, using the grid referencing system reduces the requirement for sophisticated voice recognition systems that typically require speech recognition of thousands of different sounds, languages, dialects and accents used with conventional street addressing techniques.
  • location information is described using a universal location address that is defined by subdividing a geographic location into several independent districts, each with a name and a reference point.
  • the reference point has a known locational address within a global referencing system.
  • a coordinate system is placed on the district relative to the reference point, yielding a position indicator for locations within the district. Combining the district name and the position indicator defines the local location.
  • a proprietary address is a name, which will be unique within the district that distinctly identifies a location with the district.
  • a proprietary address is created by selecting a name, capturing positional information about the location associated with the name, checking that the name is unique in the district and storing the name with its associated locational information and feature data. Once stored, the name and the associated information may be selectively disseminated to users of locational systems.
  • a locational system first accepts regional or positional information to determine a general location address, including a district name. The locational system then accepts specific addresses, each having less than a complete locational address. The locational system creates a complete locational address by combining the known general positional information with the abbreviated specific locational address to determine the precise and complete locational address, generally by prefixing the known general positional information to the specific locational address.
  • FIG. 1 shows two overlapping districts, each with a reference point and a grid system.
  • FIG. 2 shows a single cell of FIG. 1 with hierarchical gridding to increase the addressing resolution.
  • FIG. 3 is a functional diagram of a preferred embodiment of the invention.
  • FIG. 4 shows how proprietary locational names are compiled and distributed.
  • FIG. 5 is a diagram of a navigational system incorporating one or more aspects of the subject invention.
  • FIGS. 6 and 7 show the use of PLAs and ULAs in a specific geographical context.
  • FIGS. 8a-8b, 9, lOa-lOc, 11 are examples of specific files used in one implementation of the subject invention.
  • FIGS. 12a- 12c are examples of screen outputs used in one implementation of the subject invention.
  • FIG. 13 depicts an operational environment of the automatic location aspect of the present according to a preferred embodiment.
  • FIG. 14 is a block diagram depicting details of the portable-computing device in accordance with the subject invention.
  • FIG. 15 is a block diagram depicting functional components of an application program or program(s) running on the portable-computing device in accordance with an embodiment of the present invention.
  • FIG. 16 is a flowchart that generally describes an overall process in accordance with an embodiment of the present invention.
  • FIG. 17 is a flowchart depicting a process that can be used to implement a portion of the Go2 Application program according to an embodiment of the present invention.
  • FIG. 18 is a flowchart depicting a process that can be used to implement a process performed by the primary server upon connection with the client according to an embodiment of the present invention.
  • FIG. 19 is a flowchart and block diagram useful for describing the interaction and processing between the client, the primary server and an enhanced server according to an embodiment of the present invention.
  • FIG. 20 is a flow chart depicting a method that can be used to implement the automatic location data collection feature according to a preferred embodiment of the present invention.
  • FIG. 21 depicts an example of a site plan that can be used to implement an embodiment of the present invention.
  • FIG. 22 is a block diagram of a computer useful for implementing components of the present invention.
  • a preferred embodiment of the geographical referencing system aspect of the present invention allows a point of interest (POI) within an arbitrary geographic area to be uniquely identified with a locational address, and the locational address to be related to other known global referencing systems.
  • the locational address may take two forms: first, as a universal locational address (ULA); or second, as a proprietary locational address (PLA). Each of these forms is discussed below.
  • Every location in a geographic area will have at least one ULA.
  • the districts may be of differing size and shape, and may contain a particular identifying feature.
  • the geographic area of the United States may be subdivided into numerous districts, which may be strategically located, sized, and named with reference to cities or other geographic or political features in order to associate the districts with such features.
  • such districts are chosen relative to cities and it is therefore convenient to name each district according to the city about which the district is located.
  • each city may have a reference point, allowing local locations to be addressed relative to the local city. Sparsely populated areas may have larger districts, and densely populated areas may have smaller districts.
  • the districts may also be quasi-rectangular, following latitude and_ longitude lines. In more densely populated areas, it is possible that a particular location will be within the boundaries of two or more districts.
  • user-defined districts, reference points, and grid sizes are possible. For example, a search and rescue operation may establish a reference point and grid size convenient for a particular search area, or a group of hikers may choose a reference point and grid size appropriate for a particular outing.
  • a reference point is chosen for each district, and a grid system placed relative to the reference point.
  • the grid system is referenced north. Referring to FIG. 1 , a first district 1 and a second district 3 are defined relative to major cities 4 and 6 respectively.
  • major city 4 in the first district 1 will be named CITYONE and the major city 6 in the second district 3 will be named CITYTWO.
  • first district 1 will be named CTY1, referring to the major city within that district's borders
  • second district will be named CTY2, referring to the major city within that district's borders.
  • Reference point 5 is selected as the reference point for CTY1
  • reference point 7 is selected as the reference point for CTY2. The reference point will not necessarily be located proximate to the feature used as the name for the district.
  • Each reference point 5 and 7 has a known address within a global referencing system such as World Geodetic Systems (WGS).
  • GGS World Geodetic Systems
  • association with a global system offers at least three important functions: first, local addresses may be easily converted to global addresses and vice-versa; second, inter-district relationships are established; and third, easy integration with known navigational systems is provided.
  • second, inter-district relationships are established; and third, easy integration with known navigational systems is provided.
  • each reference point 5 and 7 creates cells 9 in each district.
  • Each of these cells 9 is identified with a cell code, which advantageously is a two character number.
  • a target POI location 19 which is in cell 11
  • cell code e.g., CTY2-11.
  • a reference lacks the resolution to identify a particular feature, such as a house, but may be enough resolution to locate a lake or park. The issue of increased resolution is discussed below.
  • any POI can be identified by reference to any district within which it is located.
  • a target location 8 in the overlap area 13 can be identified by either association with the CTY1 or CTY2 districts, or any other district within which it is located.
  • a locational system can provide a locational address relative to any reference point or district by simply toggling between reference points.
  • a district name and cell code may not give sufficient resolution to locate specific locations.
  • a hierarchical grid is applied to each cell 9 of FIG. 1.
  • cell 11 is shown in FIG. 2 with a sub-grid applied, producing sub-cells 15.
  • Each of these sub-cells can be identified with a sub-grid code.
  • the sub-cells can be further subdivided to increase resolution.
  • sub-cell 17 is further subdivided.
  • the target location 19 is within the sub- sub cell 18.
  • a ULA is formed from the highest resolution sub-cell defined and each of its parent cells.
  • the locational address is formed by appending to the district name each sub-cell code in hierarchical progression, moving from lower resolution to more resolution.
  • the target location 19 would have a locational address of CTY2-11-17-18. Based on the size of the district, if this does not give the necessary resolution to properly locate the target location 19, then additional levels of gridding hierarchy can be added.
  • each cell was randomly named with a unique numerical code, it should be appreciated that a consistent Cartesian coordinate system can also be used, with each cell defined by an (X, Y) coordinate pair. Those skilled in the art will recognize several other alternative ways to define a grid system.
  • the above coding technique is extended to include standard alpha codes representing objects such as suites, floors, rows, columns, altitude, etc.
  • These alpha codes are advantageously appended to the above code as they logically represent the highest resolution component.
  • the address of CTY2-11-17-18-S101 represents suite 101 in the office building.
  • the address CTY2-11-17-18-F2 represents the second floor of the office building.
  • the address CTY-11-17-18-R101-RW12-C22 represents row 12 column 22 in room 101 of the office building. This can represent an exact location within a particular rack in a warehouse, for example.
  • the address CTY2-11-17-18-HS2200 represents a height of 2200 feet above sea level.
  • this technique can be extended as much as required.
  • a standard set of codes is defined for each specific implementation of the present invention. An example of such a set of codes that can be used in an embodiment of the present invention is shown below in Table 1.
  • a city will be named with a specific abbreviated name for purposes of navigating to and around that city. That abbreviated name may also serve as the name of the defined district located about that city.
  • the district for that particular city will be pre-defined with a particular grid size, although the system may allow altering the grid size for particular purposes. If, in the preceding example, the defined grid size for CTY2 is approximately 30 by 30 nautical miles, identifying two hierarchical grids produces a resolution of about 500 meters, which is_ sufficient for locating structures in open areas or large targets such as lakes or parks.
  • each level of the hierarchical address is separated by a decimal point.
  • an address may appear as "DISTRICT.12.34.56.78".
  • a PLA is a name chosen to identify a physical structure or location.
  • the name can be chosen by the operator of a locational service, as in the case of naming national monuments, or the name can be chosen by individual or corporate users of the locational service. Individuals may even want to identify their homes using their own names. Thus, a Ms. Mary Smith may name her house MARY.SMITH.HOUSE, for example. Thus, when Ms.
  • MARY.SMITH.HOUSE rather than a street address or other locational referencing system.
  • a corporation too, may desire to allow customers to locate it using a common name rather than a less personal addressing system.
  • a nationwide enterprise such as MacDonalds with many locations may choose a PLA that is associated with its tradename or product or otherwise allows users to easily remember and associate the establishments PLA.
  • Abbreviations are useful as it keeps user input to a minimum, increasing safety, reliability, and convenience. Since the nation-wide enterprise may have many locations in a single metropolitan area, each may be identified by appending to the enterprise's PLA a unique identifier to identify specific branch offices or affiliates. Wildcard searching is also provided, allowing several locations of the known nation-wide enterprise to be found for a particular geographic area.
  • positional information could be entered manually, by, for example, inputting the ULA or coordinates of the location from a known mapping system.
  • the positional information may be read electronically using a system such as the GPS.
  • the name 51 and positional information 53 are associated.
  • the district in which the location is identified is determined by comparing the positional information 53 to stored district locational information 54. Once the district is identified, the name is checked against other reserved names in the district to assure the selected name is unique. If the name is unique, it is placed in a district data file 63.
  • the PLA may be placed in promotional material such as advertisements, coupons, billboards, or other means of communication.
  • promotional material such as advertisements, coupons, billboards, or other means of communication.
  • the name, positional information, and any other useful information are stored in a central repository location.
  • This storage may be sortable and selectively downloadable by users of locational systems.
  • the central repository may be accessible via the Internet.
  • a user 75 would make a request for information 71 concerning future travel, such as the ULAs or PLAs of specific desired waypoints of a trip.
  • the information in the central repository 65 is selected and sorted, and the travel data 73 is received by the user, creating a travel profile.
  • the central repository may store preferences for the user.
  • the user After receiving the travel profile, the user places the travel data 73 into a navigational unit 77, augmenting information 79 already locally present in the navigational unit 77.
  • the user 75 may then use the travel data 73, including PLAs and ULAs, to assist in navigating.
  • An aspect of the subject invention is the use of ULAs and PLAs in known navigational systems.
  • the use of a ULA by such a system with a minimum amount of information input by a user will now be disclosed.
  • district file 31 is maintained correlating district names and locational information relating to those districts.
  • Regional information 33 that may be manually entered (as indicated by reference numeral 21) by a user, may also be maintained. This regional information 33 is used by the system to reduce the amount of information a user must enter to identify a particular location.
  • the regional information may, for example, be a map code or distinct name identifying the general area covered by the map. Alternatively, it may be the name of a district having a pre-defined grid.
  • map code or district name is inputted as regional information
  • the system now assumes that any future user inputs are within the geographical area defined by the regional information, thus reducing the complexity of inputting future addresses referenced on that map.
  • positional information 35 of a current location may be input manually (reference numeral 23) or electronically (reference numeral 25) for the same purpose. By knowing the present location, the system may assume that any subsequent address input by the user is within the same geographical area as the present location. Again, the purpose and effect is to reduce the complexity of inputting locational addresses.
  • the user may also electronically (reference numeral 29), or manually (reference numeral 27) input a specific address 37 to the system.
  • a general address can be formed. This general address will contain the district name plus any cell and sub-cell codes that are more general than the most general code in the specific address.
  • the resolution detector 43 attempts to determine how much resolution is represented by the specific address 37 input by the user, and in conjunction with the comparison 41 function, creates a general address 45 with the correct level of resolution. Again, it is assumed that any subsequent addresses input by the user are within the same geographical area defined by this general address.
  • the specific information 37 is passed on to become a specific address 47.
  • This specific address 47 is appended to the general address 45 formed above to form the final locational address 49.
  • the locational address 49 is then used by the navigational system to assist in navigation. Additionally, an emergency mode may be provided in which a present location is automatically referenced to any reasonably close PLA or other known location.
  • WGS-84 World Geodetic System 1984
  • WGS-84 World Geodetic System 1984
  • a further description of the district grid is needed to understand this relationship.
  • Each district has a reference point, with the reference point being the approximate center of the city used in naming the district.
  • a grid is placed in relation to the reference point such that the origin of the grid is aligned with the nearest intersection of latitude and longitude lines corresponding to the largest grid resolution in the district. Since the reference point has a known WGS-84 address, by knowing the origin offset, the district rotation, and the district scale, every ULA can be translated into a WGS-84 address, and from there into nearly all locational reference systems. Conversely, every WGS-84 address may be translated into one or more ULAs. The translation is simplified in the subject invention as the district grid system is generally aligned to the WGS-84 latitude/longitude grid.
  • such a system comprises a GPS receiver 100, an input device 101 such as a keypad or the like, a processor 102, a storage device 103 such as RAM or ROM, and an output device 106 such as a display.
  • the GPS receiver 100, input device 101, storage device 103, and output device 106 are all coupled to the processor 102 as shown.
  • An application program 104 executes in the processor to perform various tasks.
  • a look-up-table (hereinafter "LUT") 105 is provided in the storage device 103.
  • the application program in a conventional navigational apparatus typically interfaces with and directs the aforementioned elements to perform the following tasks:
  • the GPS receiver receives signals from the GPS satellite constellation, and calculates the location of the unit (in terms of lat/lon) using these signals.
  • the lat/lon coordinates of the unit are then displayed on the output device 106.
  • a user inputs waypoints through input device 101 in terms of lat/lon coordinates.
  • a look-up-table or the like identified with numeral 105 in FIG. 5, is provided, correlating predetermined waypoints with lat/lon coordinates.
  • a capability for searching through the database and selecting particular waypoints is also provided in this approach.
  • context buffer 108 front-end interface (hereinafter "FEI") 107; PLA database 110; and a database(s) 109 of grid definitions.
  • FEI front-end interface
  • a critical function of the front-end-interface is to convert ULAs and PLAs into lat/lon coordinates. Consequently, a user can input waypoints in terms of ULAs or PLAs, and the FEI will convert the same to lat/lon coordinates for use by the unit in determining a directional and/or distance indicator (such as distance and bearing) from the waypoints. Additionally, positional information defined in terms of lat/lon coordinates can be displayed in terms of one or more ULAs of the subject invention.
  • the FEI also includes various searching capabilities to allow a user to search through the PLA database 110 for particular waypoints or waypoints with particular characteristics.
  • the function of the context buffer 108 is to define the current district and grid in which grid addresses are assumed to be defined.
  • the grid definition file(s) 109 specifies all the grids which have been defined to date. For each grid, all the parameters necessary to define the gird are stored. Such information includes the lat/lon coordinates of the reference point of the grid, the dimensions of the grid, and the rotation and scaling of the grid cells. Thus, all the information needed to convert between a grid address within the grid and lat/lon coordinates is provided.
  • the PLA file 110 is a file which for each district correlates each PLA which is unique to and has been reserved for use in the district with its corresponding grid address.
  • the navigational system described above may be mounted in a vehicle or contained in a portable device, for example. Additionally, the navigational system may stand alone or may be integrated into existing devices, such as portable phones. Further, the subject invention may be incorporated into a general computational device such as a microprocessor. Since the physical manifestation of the navigational system is so flexible, there are numerous foreseeable applications.
  • Example 1 demonstrates the use of Hierarchical Identifiers for districts which are correlated with Country, State/Province, and City districts along with PLA's and a purely numeric ULA grid referencing system based upon a district grid size of approximately 185 kilometers north to south.
  • Example 1A demonstrates an alternative means that can be used to implement the city grid based on the Transverse Metcator projection system.
  • Example 2 demonstrates the use of the Hierarchical Identifiers described in Example 1 along with an alternating alpha-numeric ULA grid referencing system.
  • Example 3 demonstrates the use of a smaller City Grid and the resulting higher precision at various grid levels.
  • a code of 'US.CA.LA' might be represented as 'LA', '..LA', or by 'CA.LA', depending on the geographic context or the need for clarity.
  • Top level two alpha character mnemonic (possibly based on Internet domain codes).
  • Second level two character mnemonics (advantageously based on US postal codes within the US).
  • Third level two or three alpha character mnemonics from city name unique within each state.
  • PLA An example of a use of a PLA might be US. G A. ALB. MACD to refer to a MacDonalds in Albany, Georgia; US.GA.ALB.MACD* to refer to the closest(s) one in Albany, Georgia; or MACD* to refer to the closest(s) ones in any city.
  • the code ..ALB. MACD* could refer to either the nearest MacDonalds in Albany Georgia or Albany New York and context. .NY. ALB. MACD* would resolve the context.
  • This optional code is at a fourth or fifth level; identified by the first use of a pair of numeric characters in the city grid code.
  • the city grid system requires an approximate city centroid described in a locational reference system such as geodetic latitude and longitude and the meaning of each pair of grid designators.
  • the city grid origin is defined at the south-west coordinate system intersection value corresponding to exact values of the largest grid resolution precision that is defined in the city grid, placing the district centroid within the center grid cell of the system.
  • the grid cells are orthogonal to the defining coordinate system; however, rotations and scale parameters can be used to re-define the relationship between the city grid and the reference frame. False easting and false northing offsets (translations) are normally used to avoid negative numbering or to allow convenient ordering of alphanumeric designators.
  • Conversion from the defining reference frame (e.g., lat/lon) to city grid designators (i.e., ULAs) is accomplished by computing conversion constants based on the initial reference frame and the specific city grid definitions.
  • grid designators are computed with respect to the currently selected district.
  • no district has been selected as the preferred one, the nearest district centroid is used as the basis for the grid designators.
  • Conversion from city grid to coordinates in the defining system is accomplished by applying translation (and when applicable rotation and scale) parameters to the succession of grid designators until the precision implied by the number of grid cell designator pairs is reached.
  • the city grid is nominally based on a locational reference system that can be tied to other reference systems.
  • the underlying locational reference system datum is the World Geodetic System 1984 (WGS-84). Geodetic coordinates with respect to this datum can be converted to coordinates in a large number of other reference systems, allowing the city grid designators to be used with respect to other systems and other geodetic datums allowing conversion to Universal Transverse Mercator (UTM) systems, State Plane Systems, National Grid Systems, other horizontal coordinate system, or map projection.
  • UDM Universal Transverse Mercator
  • the city grid origin is defined at the ten minute of latitude and ten minute of longitude intersection nearest the city centroid. This places the origin within five minutes of latitude and longitude of the city centroid. The radial distance of the city grid origin is then always within about 10 km of the nominal city center.
  • Grid cells are identified by an easting cell designator paired with a northing cell designator with successive pairs of designators defining grid cells of increasing precision.
  • the false easting puts the division between 4 and 5 at the grid origin north and east.
  • Each highest level grid consists of a ten by ten region (100 grid rectangles).
  • the first level numeric grid rectangles each cover an area of approximately 100 square nautical miles, or about 343 square kilometers with grid cells whose north-south extent is about 18.5 kilometers.
  • the entire set of first level grid cells covers a distance of about 185 kilometers from north to south and a shorter distance from west to east, depending on latitude.
  • Each second level city grid cell is 1/10 l of the next higher level grid cell, or 1 minute of latitude and longitude, about 1850 meters north to south.
  • Each third level city grid cell is then 1/10 l of the second level grid, or 6 seconds of latitude and longitude, about 185 meters north to south.
  • Each fourth level city grid cell is then 1/10 th of the third level grid, about 18.5 meters north to south, around 340 square meters.
  • this fourth level grid corresponds to a resolution some five times more precise than un-aided GPS accuracy (with Selective Availability), a fifth level grid may not be required. Following the same 1/10 1 rule as the higher level grids, a fifth grid cell would measure 1.85 meters on a side, well within the accuracy of differentially-aided GPS.
  • Cities close to each other can each employ their own city grid even when they overlap. When questions of which city grid occur the city code (or all the higher level codes) can be attached to remove ambiguity.
  • An example of a use of a ULA might be US.GA.ALB.13 to refer to an area about 20 kilometers wide southwest of the center of Albany Georgia. Then ..ALB.13.78 would refer to an area about 2 kilometers wide near the northeast corner of the previous example. So would .13.78 if the geographic context was established as Albany Georgia.
  • the code .US.GA.ALB.13.78.27.14 would refer to the smallest unit of about 9 meters within an explicitly defined place. ..78.27.14 would refer to the same place in context.
  • this example describes an alternative means for implementing the city grid based on the Transverse Metcator projection system.
  • a conventional map projection/coordinate system grid is selected. While Lambert Conformal Conic, Stereographic, or local tangent plane system might well be used, in this example, the Transverse Mercator (TM) projection is selected. The TM projection is preferred over other projections suitable for use in local mapping systems because it is most likely an available projection in many GIS and GPS platforms.
  • TM Transverse Mercator
  • the city grids are Transverse Mercator grids with the following characteristics:
  • Each Level 1 grid cell covers a 10 km by 10 km square region on the ground
  • Each Level 2 grid cell covers a 1 km by 1 km square
  • Each Level 3 grid cell covers a 100 meter by 100 meter square
  • Each Level 4 grid cell covers a 10 meter by 10 meter square
  • the grid cells are exactly these distances north-south and east-west of the center of the grid.
  • the scale factor of 1.0 at the grid origin means that largest distance error is less than 4 meters over the extent of the grid.
  • the ellipsoidal distance from southwest comer to northeast comer is 141419.494 meters.
  • Computed using the TM grid as though it was orthogonal one would compute a range using the Pythagorean theorem of 141421.356 meters, a difference of 1.862 meters.
  • the grid cell designators can be easily computed from the output of any existing TM routine (such as those found in GPS receivers for user grids) using the TM parameters. For instance the position of the Smithsonian Institution in TM eastings and northings is:
  • the grid designators are simply extracted from the powers of ten one digit at a time, east followed by north as:
  • this example describes the use of a grid format and ULA utilizing the XYZ.12.aa.34.aa format.
  • the Country, State/Province, City and Proprietary Codes remain as described in the previous example, but the optional City Grid is structured differently.
  • the grid code is still initially identified by a pair of numeric characters, and the city grid origin is defined at the ten minute of latitude and ten minute of longitude intersection nearest the city centroid as in the previous example.
  • the definition of each grid and the false easting and northing, as well as the structure of the first grid level, is also as described in the preceding example.
  • the next lower level of the grid divides each numeric grid into a twenty by twenty grid (400 grid rectangles) area. East is always first, north is always second.
  • the minimum is A from a character set consisting of ABCDEFGHJKLMNPQRSTUV, and the maximum is V.
  • the false easting puts the grid rectangle center at the division between K and L.
  • next lower level repeats the numeric code as described in the preceding example dividing each higher grid rectangle into a ten by ten rectangle area, and the next lower level repeats the alpha code described above in this example dividing each higher grid rectangle into a twenty by twenty rectangle area.
  • each second level city grid square (represented by the code XYZ.12.aa) is l/20th of the first numeric grid square, 30 seconds of latitude and longitude, or about 920 meters north to south.
  • the third level city grid square (represented by the code XYZ.12.aa.23) would result in a grid rectangle size of approximately 3 seconds of latitude and longitude, or about 92 meters north to south.
  • the fourth level city grid square (represented by the code XYZ.12.aa.23.aa) would be l/20th of the previous city grid square size, resulting in a grid rectangle size of approximately 0.15 seconds of latitude and longitude, or about 5 meters north to south.
  • This example demonstrates the different precision achievable by varying the size of the city grid of a particular district.
  • This example uses a sample city grid designator "US.TX.AUS.45.45.77.45,” with a district centroid of 30 degrees, 17 minutes north latitude and 97 degrees, 45 minutes of west longitude for an Austin, Texas, city grid district with a district designator, "US. TX. AUS.”
  • US. TX. AUS For a city grid easting and northing resolution of 1 minute of latitude and longitude for the largest resolution grid designator pair, the grid origin would be placed at 30 degrees, 17 minutes north latitude and 97 degrees, 45 minutes west longitude.
  • the designator "US.TX.AUS.45.45.77.45” would correspond to a geodetic position of 30 degrees, 15 minute, 45.0 seconds north latitude, and 97 degrees, 45 minutes, 15.0 seconds west longitude.
  • the precision of the smallest grid cell would be one thousandth of a minute of latitude and longitude corresponding to approximately 1.6 meters of easting and 1.9 meters of northing.
  • a designator of ".TX.AUS.45.45” would refer to an area one tenth of one minute of latitude by one minute of longitude in area or approximately 185 meters north to south; ".AUS.45.45.77” would refer to an area one-hundredth of one minute by one-hundredth of one minute, or approximately 18.5 meters north to south.
  • Example 4 reflect situations in which the invention may be used and provide marked improvements in function and utility over traditional lat/lon based systems.
  • Example 8 demonstrates certain aspects of the invention related to a particular geographic area and two maps of partially overlapping areas.
  • the subject invention may be used for general vehicular navigation, to drive from Los Angeles to the visitor's center at the Grand Canyon.
  • the driver must first determine the address for the target location, and then input the address into the navigational system.
  • There are several alternatives for locating the PLA or ULA For example, the driver may read travel brochures that contain the ULA/PLA addresses; the driver may also review a map which contains ULA/PLA annotations; or the driver could just call the Visitor's Center and ask them for their PLA or ULA.
  • the driver using the input device, could search the PLA database to find if the Grand Canyon visitor's center has a PLA. Once the address is determined, the driver enters the PLA or ULA address into a navigational system, and the navigational system will direct the driver to the proper destination.
  • the subject invention may be used to direct local traffic to a particular point of interest. For example, if the driver above is traveling along a highway and becomes hungry and desires to eat at a particular fast-food chain, the driver could interrogate the system data to find any nearby chain restaurants. The driver simply queries the system for occurrences of the fast-food chain's PLA, and, since the system is aware of its current location, the chain's restaurants may be listed by proximity. The driver simply selects one of the restaurants, and the navigational system directs the driver to that location.
  • a local restaurant may advertise a ULA or PLA for its location, so a driver, seeing a billboard or advertisement containing a ULA or PLA address, could input that address and be directed to the restaurant location. Because of the unique style of the addresses and features of the subject invention, these addresses are particularly easy to input with a minimum chance of error, decreasing the risk of accidents and increasing the likelihood of going to the desired location.
  • the subject invention is particularly well suited for customization by individual or team users, facilitating intra-group communication and navigation. For example, if a group of hikers desires to split up and explore a particular area, they each could set their portable navigation devices to reference a custom grid with an appropriate grid size and location for the explorable area that allows sufficient resolution with a minimum number of digits or characters. Now, as the hikers communicate with each other or record interesting locational information, the data may be easily and accurately used and referenced to a meaningful location. This ability to set a user-defined reference point and grid size would also be useful for rescue teams performing search and rescue operations by allowing the search and rescue team to instantly establish a grid size and location for any search.
  • the subject invention has emergency utility. For example, if a hiker above needs emergency assistance, the navigational system can provide a locational ULA that is easy to read and communicate by voice or numeric only key pad, which reduces both the ambiguity, risk and time involved in describing an emergency location. Alternatively, this ULA may be automatically communicated to emergency personnel if the navigational system integrates with a portable phone, two way pager, or other portable communication device.
  • FIG. 6 illustrates a paper map with an assigned name of CA.YSB (indicated by identifying numeral 111). Within the boundaries represented on this map, the following PLAs have been reserved:
  • FIG. 7 illustrates a district with an assigned name of CA.YSM (indicated by identifying numeral 120). Within this district, the following PLAs have been reserved:
  • the name CA.YSB is for the specific map included in FIG. 6, and not for a district in which all of the area contained on the map is included. This feature allows assignment of specific PLA's for specific maps without regard to the district, thereby providing clarity in situations where the area covered by the map overlaps one or more districts.
  • the name CA.YSM is the name of the district in which the area included in the map in FIG. 7 is located, thereby allowing areas included within this map to be referenced by either PLAs (e.g. CA.YSM.HCHY) or ULAs (e.g. CA.YSM.32.84.23.43) without the need to re-identify the name of the district or map.
  • the areas covered by the CA.YSM district and the CA.YSB map overlap, allowing PLA references to either the YSM district or the YSB map.
  • the system might also define YSB as a district which could be utilized in determining ULA's with reference to the YSB district, in which case the YSB and YSM districts would also partially overlap.
  • the PLA's for particular locations may either be identical except for the district name (e.g. GCRP in FIG. 6 and GCRP in FIG. 7 refer to the same location) or identical PLA's may apply to different locations in different districts or on different maps (e.g. "1" in FIG. 6 and "1" in FIG. 7 refer to different locations on each of the respective maps). This is consistent with the principle that a PLA need only be unique within the district in which it is defined.
  • All of the features described in this example are designed to allow an initial manual or electronic input (either a district code, cell code, or specific map code) which allows users to use PLA's or ULA's identified on a specific map with a minimum number of keystrokes, thereby minimizing data entry, confusion, and ambiguity.
  • formats of specific files that are used in one implementation of the subject invention are described. Four files are described: GO2CITY.DAT, STATES.DAT, PROPGO2.DAT, and COUNTRYS.DAT.
  • the GO2CITY2.DAT file illustrated in FIGS. 8a-8b, defines the reference points for a plurality of pre-defined districts centered around specific cities. For each reference point, there is provided the name of the district, the name of the reference point, and the global coordinates of the reference point.
  • the first entry of this file "AK, ANC, Anchorage, 149W54, 6 IN 13,” indicates that there is a district in the state of Alaska centered around Anchorage, with the reference point thereof having the following global coordinates: 149W54,61N13.
  • the STATES.DAT file illustrated in FIG. 9, simply defines the mnemonics used in GO2CITY2.DAT to define states.
  • the PROPGO2.DAT file illustrated in FIGS. lOa-lOc, defines the proprietary names which have been reserved for each district. This file correlates each such proprietary name with the global coordinates associated with that name. Thus, the first entry of this file, "US.CA.NWB.MAC2, 117W52.360, 33N39.549" indicates that, in a district centered around Newport Beach, California, there is a MacDonalds having the following global lat/lon coordinates address: 117W52.360, 33N39.549.
  • COUNTRYS.DAT file illustrated in FIG. 11, simply defines the country mnemonics used in PROPGO2.DAT.
  • FIG. 12a is a screen illustrating the input of a ULA or grid address into a navigational system, with the system determining and outputting corresponding latitude and longitude coordinates.
  • FIG. 12b illustrates the input of a PLA, with the system determining and outputting corresponding latitude and longitude coordinates.
  • FIG. 12c illustrates the capability of the system to interpret the context, i.e. district address, of previous addresses, and to assume that the same distinct addresses applies to subsequent specific addresses until notified otherwise.
  • the proprietary name MAC2 was input, with the system assuming that the district name associated with the previous example relating to MAC1, i.e., the CA.NWB. district name, applied to this example as well.
  • FIG. 12c only the identifier "MAC2" need be input to the system, it being assumed that the district identifier "CA.NWB" applies to this request as well.
  • This document is a functional description of a computer program, Go2Grid, which embodies one or more aspects of the subject invention.
  • the program is written in the "C++" programming language and its purpose is to demonstrate the feasibility of conversion between city grid and proprietary codes and geodetic coordinates.
  • Program flow is described using a series of pseudo-code statements. The functions required to perform these tasks are described. The data variable types and structures are defined. The parameters required for implementation of two possible city grid designators are defined.
  • the assumed geodetic datum is World Geodetic System 1984 (WGS-84)
  • the last geodetic position is used to initialize the City Grid designator.
  • the user screen is initialized
  • getdeg() extracts decimal degrees from character strings
  • grange() computes geodetic range between two positions
  • dmsdeg() extracts degrees, minutes, seconds from decimal degrees
  • degdms() forms decimal degrees from degrees, minutes, seconds
  • getcenter() computes geodetic coordinates of City Grid center from city
  • getgridO computes City Grid codes for level of precision
  • parsego2() parses Go2 City Grid designator
  • addlatlon() concatenates next level of precision onto geodetic coordinates
  • getprevcity() find previous city in current state/province list getcost() fills Go2 City Grid designator with country and state/province
  • putscreen() fills display with current city Grid designator and geodetic
  • getprevstate() find previous state/province in current country list
  • the Go2Grid embodiment sample program defines the following variable structures in addition to the usual character, integer, float, and double types:
  • typedef struct ccstruct ⁇ char city_code[4]; char city [60]; char state_code[3]; char state [60]; char country_code[3]; char country [60]; char longitude[32]; char latitude[32]; double lat; double Ion; double centerlat; double centerlon;
  • FIGS. 13-22 are used to describe a preferred embodiment of an automatic location system using the geographical referencing system described above.
  • the geographical referencing system described above in FIGS. 1-12 is hereinafter referred to as the "Go2 grid" coordinate or referencing system.
  • Go2 grid coordinate or referencing system
  • FIG. 13 depicts an operational environment of the automatic location aspect of the present according to a preferred embodiment.
  • a portable-computing device 1302 is installed in a mobile unit such as an automobile 104.
  • the portable- computing device 1302 may be carried on the person of individual users.
  • the present invention can be implemented using a non-portable computing device such as a general-purpose desktop computer or the like.
  • the device 1302 is referred to as the portable-computing device.
  • the portable-computing device 1302 receives data from Global Positioning System (GPS) satellites 1310 for location identifying purposes.
  • GPS Global Positioning System
  • a second example of a means for automatic location identification is shown as block 1303 labeled "ALI Example II.”
  • ALI Example II 1303 is intended to represent a means for automatically identifying the location of a device, such as device 1302, via a cellular transmission.
  • Example II 1303 typically uses triangulation techniques in conjunction with at least two cellular base stations, or distance measuring techniques from three cellular base stations, such as the base station 1306.
  • ALI ALI
  • the automatic identification signals commonly used in land-line telephonic devices can be used in conjunction with a database lookup table to identify a callers fixed location.
  • any well-known means for automatically identifying a caller's geographical location can be used in various embodiments of the present invention.
  • future methods not yet known, but used for identifying the location of a mobile unit, such as the mobile unit 1302, are within the scope of the present invention. Accordingly, the use of the examples of a cellular network and a GPS system should not be construed to limit the scope and breadth of the present invention.
  • the portable-computing device 1302 has the capability for wireless communications.
  • one use of the wireless communication feature is to connect the portable-computing device 1302 with a computer network, such as the Internet 1318.
  • the wireless communication feature of the present invention is also used for providing standard telephony functions.
  • the wireless communication feature of the present invention can also be used to implement ALI functionality in accordance with the principals described herein.
  • the base station 1306 and the mobile switching office 1308 represents a portion of a typical cellular network.
  • the base station 1306 sends and receives radio signals to and from the portable-computing device 1302.
  • the mobile switching office 1308 is coupled to the base station 1306 via standard telecommunication transmission lines.
  • the mobile switching office 1308 is coupled to the public switched telephone network 1312 via standard telecommunication transmission lines.
  • the public switched network 1312 is coupled to the Internet 1318 via a point-of-presence, which is typically implemented using high bandwidth T3 telecommunication channels or the like.
  • a primary server 1314 is coupled to the Internet 1318.
  • the primary server 1314 is used to interface with the portable-computing device 1302 as described below.
  • the primary server 1314 is coupled with a database or persistent storage device 1316.
  • a plurality of enhanced servers 1315 are connected to the Internet 1318.
  • the enhanced servers 1315 provide location specific data to the portable-computing device 1302.
  • the primary server 1314 selects a particular enhanced server 1315 to be connected to the portable-computing device 1302 in accordance with a database query as described below.
  • the present invention is described in terms of a primary server 1314 and one or more enhanced servers 1315. However, this does not mean that separate physical servers must be used to implement these functions. Indeed, a single server or multiple servers can be used to implement the functions of the primary server 1314 and the enhanced servers 1315 as described herein. Thus, the use of these terms should not be construed to limit the scope and breadth of the present invention to the physical configurations described in these exemplary embodiments.
  • the cellular network is just one example of a technology that can be used to implement the wireless communication feature of the present invention.
  • different types of wireless technology can be used, such as low orbit or geosynchronous orbit satellite communications.
  • any type of wireless technology can be used to provide the wireless communication feature of the present invention.
  • the Internet 1318 is used in a preferred embodiment of the present invention due to its wide use and availability.
  • any type of computer network can be used in alternate embodiments of the present invention.
  • the use of the examples of a cellular network and the Internet 1318 should not be construed to limit the scope and breadth of the present invention.
  • the portable-computing device 1302 comprises a client computer 1404, a persistent storage device or database 1408, a display screen 1412, a keypad input device 1414, a speech interface 1418, an ALI device 1406, a wireless transceiver 1402 and a telephony device 1410.
  • these components may be imbedded within the portable-computing device 1302.
  • such components may be implemented as discrete external devices coupled to the portable-computing device 1302 through external ports, such as RS-232, SCSI, USB ports or the like.
  • the speech interface 1418 and the ALI device 1406 are optional components.
  • Embodiments of the present invention that operate without an ALI 1406 accept manual input of location information via the keypad 1414 or other input device.
  • any type of general or special purpose computer system can be used to implement the portable-computing device 1302. Examples of such devices include standard laptop computers, automobile computers and personal digital assistant devices (PDAs).
  • the portable-computing device 1302 includes a CPU, local working memory, or RAM, non-volatile program memory, or ROM, and some form of non-volatile external memory for data storage 1408 such as any type of NVRAM, or magnetic or optical disk storage systems.
  • the display screen 1412 is used to display output from the portable-computing device 1302.
  • the keypad device 1414 is coupled to the portable-computing device 1302 and is used for inputting data. For example, location data can be manually input from the keypad device 1414.
  • a speech interface 1418 is also coupled to the portable-computing device 1302.
  • the speech interface 1418 uses voice recognition techniques to accept spoken commands from users for controlling the portable-computing device 1302.
  • the speech interface 1418 is used in a preferred embodiment to allow users to control the computer 1404 via spoken voice commands for promoting safe driving conditions while operating the portable-computing device 1302 from an automobile or the like.
  • the persistent storage device 1408 is used to store application programs such as a web browser and one or more specialized application programs used to implement the present invention as described in detail below. Such application program(s) is/are referred to herein as the "Go2 Application program," which is described in detail below.
  • location and other information are stored as data packets on the local persistent storage device 1408, as described in detail below.
  • one or more database lookup tables can be stored therein and used for translating, for example, between a lat/lon coordinate system and the Go2 grid coordinate system.
  • all systems that are enabled in accordance with the present invention will generally have the capability to translate between a lat/lon coordinate system and the Go2 grid system using the universal addressing scheme as described above. Additional storage requirements are needed to translate to and from the Go2 grid system using proprietary addresses.
  • the wireless transceiver 1402 is used to send and receive data between the portable-computing device 1302 and other devices such as the servers 1314 and 1315 coupled to the Internet 1318.
  • the ALI device 1406 is used to track the position, and possibly the speed and bearing of the portable-computing device 1302.
  • any device can be used that performs ALI functionality.
  • Examples of well-known ALI devices are GPS systems, low orbit satellite systems, geosynchronous orbit satellite systems, telephone number identification systems, cellular network triangulation methods, etc.
  • telephone number identification systems can be used in conjunction with a database lookup table to determine predefined fixed positions of users based on an assigned telephone number.
  • FIG. 15 is a block diagram depicting functional components of an application program or program(s) running on the portable-computing device 1302 in accordance with an embodiment of the present invention.
  • the application program(s) is/are referred to herein as the "Go2 application program" 1500.
  • the Go2 Application program 1500 is provided with a web browser component 1502.
  • the web browser component 1502 is used to perform web browser functions for the portable-computing device 1302.
  • a standard web browser is used to implement the web browser component 1502 of the present invention.
  • customized web browser code can be imbedded into the Go2 Application program 1500.
  • the web browser module 1502 provides standard web browser functions. Such functions would be apparent to persons skilled in the relevant art(s).
  • the web browser component 1502 is coupled to a web server 1510.
  • the web browser module 1502 interprets data streams sent from the server 1510 and displays text and/or graphics therefrom.
  • the text and/or graphics are displayed on the display screen 1412.
  • the web browser component 1502 also accepts input from users via the keypad 1414 or other input devices.
  • the data streams transmitted by the server 1510 are in a standard format, such as HTML, a modified version of HTML or the like.
  • generic web-browsing tools can be used to interface with the web server 1510 and the U/I module 1506 (see below) of the present invention.
  • the User Interface (U/I) module 1506 is coupled with the web browser module 1502.
  • the U/I module 1506 is used to prompt the user for information including user preferences and category selections to be used for subsequent information requests, (i.e. on-line database queries) as described below.
  • the U/I module 1506 preferably performs at least some functions locally. That is, at least some functions provided by the U/I module 1506 are performed without a live connection to the server 1510. These functions are referred to herein as "local functions" and are described in detail below. For example, one local function provides a menu that is displayed which allows users to select from a list of predefined categories. In this example, users select a category of interest for formulating a database query that is to be used in a subsequent on-line session with the primary server 1314. Details of this aspect of the present invention are described below.
  • a data packet builder and parser module 1504 (hereinafter “data packet module”) is coupled to the U/I module 1506.
  • the data packet module 1504 is used to construct data packets, which are stored on the local storage device 1408. These data packets are subsequently read by the server 1510 and used to formulate on-line database queries.
  • the data packet module also parses data packets received from the server 1510. Details and examples of data packet contents are described below.
  • An ALI polling module 1508 is used to poll the ALI device module 1510.
  • the ALI device 1406 provides location, bearing and speed information to the Go2 Application program 1500. This information is then used to build data packets that are stored in the local data storage device 1408. Details of a process that can be used to implement the ALI polling module 1508 is described below.
  • FIG. 16 is a flowchart that generally describes an overall process in accordance with an embodiment of the present invention. The process begins with step 1602. In step 1602.
  • the process determines the current location.
  • the current location can be automatically determined from an ALI device 1406, or can be manually input from the user. After the current location is determined, control passes to step 1604.
  • step 1604 the process determines the desired location and specific database query.
  • the U/I module 1506 may be used to present the user with one or more selectable menu choices. Alternatively, in one embodiment, the U/I module recognizes numerous requests based on commonly used terms such as "burgers,” “shopping,” “banks,” or the like. In this fashion, the user can formulate a complex database query by simply picking and choosing among the menu items presented or the user may perform a simple database query by merely inputting one or more common terms.
  • the user may wish to formulate a database query for finding all fast- food restaurants within a five-mile radius.
  • the desired location may be different from the current location, if for example, the user specifies some time in the future. For example, the user may wish to find fast-food restaurants within five-mile radius from a location one hour in the future.
  • the process can use the current location, current speed_ and bearing to predict the desired location.
  • a routing program can be used to determine the desired location based on a pre-defined route input by the user.
  • step 1606 the desired location is converted to the Go2 grid coordinate system, if necessary.
  • GPS devices typically use the geodetic latitude and longitude system for describing location data. In this case it may be necessary to convert to the Go2 grid coordinate system in order to take advantage of the unique features of the referencing system as described herein.
  • a user may manually input location information. Again, such manual input is preferably entered in the Go2 grid coordinate format because of its ease of use lower susceptibility to errors. If Go2 data is entered directly, either manually or by the ALI device 1406, then step 1606 is bypassed.
  • step 1608 the current location information and the database query information is stored in the local storage device 1408.
  • this information is stored in a pre-defined data format referred to herein as a "data packet.”
  • the format of a typical data packet is described below.
  • step 1610 the portable-computing device 1302 connects to the primary server 1314.
  • step 1611 the primary server 1314 reads the data packet stored in step 1608.
  • step 1618 a database query is formed as indicated by step 1618.
  • step 1620 the process retrieves the results from the database query and sends them to the client, as indicated by step 1620.
  • FIG. 17 is a flowchart depicting a process that can be used to implement a portion of the Go2 Application software 1502.
  • the process begins with step 1702.
  • the U/I module 1506 offers the user one or more options for specifying how location information is to be determined.
  • an ALI device is attached, it is used to automatically provide location information to the Go2 Application software 1500.
  • one or more additional methods for specifying location information are typically offered.
  • the user has the option to specify that the process retrieve location information from the attached GPS receiver.
  • the user can select between the current GPS location and a projected location based on a specified elapsed time.
  • predefined locations such as home or office can be specified.
  • the location coordinates are preprogrammed as a user preference.
  • the Go2 grid coordinate system is used to specify such pre-programmed user preferences.
  • the user can access a map in which to specify a location.
  • the map database can either be provided locally by the client 1404, or can be provided remotely through a connection with a server 1510.
  • a routing program (either on-line or locally) can be used to project future locations and to specify one or more waypoints along a pre-defined route.
  • the user has the option to manually specify location information.
  • manual input is in the form of the Go2 coordinate system.
  • block 1701 lists a few examples of the types of parameters that can be specified by users for determining location information in accordance with a preferred embodiment of the present invention. Alternate embodiments may comprise selections that are very different from the examples provided herein. The actual contents of menu items displayed by the U/I module 1506 depend on each specific implementation of the present invention. As such, the examples used herein should not be construed to limit the scope and breadth of the present invention.
  • step 1703 the U/I module 1506 prompts the user for criteria used to formulate a subsequent on-line database query.
  • the user selects a category of interest, one or more category features, a search radius and other selection criteria.
  • One method that can be used to implement this step is to display a selectable menu to the user as shown in block 1704.
  • the U/I module 1506 is used to perform this function.
  • the menu 1704 comprises category selections such as: restaurants; banks; ATM machines; hotels; copy centers; libraries; museums; gas stations; weather reports; car dealers; auto repair shops; maps; directory assistance; police stations; hospitals and the like.
  • category selections such as: restaurants; banks; ATM machines; hotels; copy centers; libraries; museums; gas stations; weather reports; car dealers; auto repair shops; maps; directory assistance; police stations; hospitals and the like.
  • the user can find nearby restaurants by first selecting the corresponding category of interest, as shown in block 1704.
  • the menu shown in block 1704 allows users to specify one or more features associated with the selected category. Feature selections narrow or drill-down the subsequent database search. For example, the user may only be interested in restaurants that accept a particular type of credit card, have a particular dress code, or provide goods within a particular price range. Accordingly, the user narrows the subsequent database search by simply selecting one or more appropriate features associated with the selected category. Multiple levels of category features can be presented based on the needs and requirements of each specific implementation of the present invention.
  • search radius Another parameter that is preferably specified by the user is a search radius.
  • the user can specify that the search only include points of interest within a particular radius from the current or desired location.
  • users can also define one or more user preferences. These user preferences are used as default parameters if they are not over-ridden by current selections. In this fashion, user input is minimized.
  • step 1705 the process determines whether the location information is the Go2 grid system format. If it is not, it is converted to the Go2 grid coordinate system in step 1706. In one embodiment, this conversion takes place locally. In another embodiment, the primary server 1314 performs the conversion upon connection with the client 1404. Next, in step 1707 a data packet 1708 is created. This data packet 1708 is then stored on the local storage device 1406.
  • the data packet comprises the following information as depicted by block 1708.
  • the current location including the speed and bearing, if available. As stated, depending on the specific implementation of the present invention, this may or may not be in the Go2 grid coordinate system format. If it is not, the primary server can convert it into the Go2 coordinate grid system.
  • an estimate for an intended route based on an elapsed time may be included in the data packet. For example, a user may wish to stop for the night in one hour from the present time. In this example, an estimate of a future location may be included in the data packet.
  • the client 1404 or the server 1314 can perform the future location prediction. If the server 1314 performs the location prediction, a time period is specified in the data packet 1708.
  • routing information may also be specified as indicated by item 5.
  • a routing program or the like can provide this information. If routing information is not given, a projected location is determined based on the present position, speed and bearing. Of course, if routing information is not provided, the server 1314 assumes the user will remain on the current road for the specified elapsed time. Further, the server can use additional information, such as traffic and/or weather conditions to provide more accurate predictions. This additional information can originate from anywhere on the Internet 1318 or from an Intelligent Transportation System.
  • predefined user preferences are also included in the data packet 1708. This can include, for example, information such as whether the user is on a business trip or on vacation. User preferences are used to further narrow the database query. For example, if the user is looking for hotel accommodations, the program can find appropriate selections based on whether the user is on business or vacation. Preferably, the user preferences are entered one time and are not changed for every database query to minimize input requirements.
  • Item 7 represents preferences that override predefined user preferences for the duration of the next database query.
  • a pre-defined user preference may be to find places or interest that are within 5 miles. This user preference generally applies to every database query. However, because the user is currently driving in a rural area, the user may prefer to focus a search in a wider radius, say 20 miles. The next time the user launches a database query, if the radius is not specified, it reverts back to the 5-mile user preference value.
  • Item 8 represents other database query parameters that may be present. It should be noted that the above items that comprise the data packet 1708 are just a few examples of the type of data that may comprise a data packet in accordance with a preferred embodiment of the present invention. Alternate embodiments may comprise very different data items than the above examples. As such, the examples used herein should not be constmed to limit the scope and breadth of the present invention.
  • FIG. 18 is a flowchart depicting a process that can be used to implement a process performed by the primary server 1314 upon connection with the client 1404.
  • Step 1802 represents a step where the client 1404 connects with the server 1314.
  • step 1804 the server 1314 determines if a data packet 1708 is available on the client data storage device 1408. If a data packet is available, the location information is extracted therefrom, as indicated by step 1810. Control next passes to step 1814, which is described below.
  • step 1804 If it is determined in step 1804, that a data packet is not available, control passes to step 1806. In step 1806 the user is offered an opportunity to download the Go2
  • step 1824 the Go2
  • Application software is downloaded to the client 1404.
  • step 1826 the Go2 Application software 1500 is executed on the client 1404.
  • the user inputs user preferences, location specifications and other database query parameters, as described above.
  • the Go2 Application software 1500 creates a data packet 1708 and stores it on the data storage device 1408. After this occurs, control passes back to step 1802 as described above. Now the user is enabled so that he or she can take advantage of the automated features of the present invention.
  • step 1808 if it is determined that the offer to download is rejected, control passes to step 1811.
  • step 1811 the user is provided with one or more web pages that accept location information, user preferences and the like in a manner similar to that described above with reference to the Go2 Application U/I module 1506.
  • the primary server 1314 can provide services to users that are not enabled with the Go2 Application software 1500.
  • step 1812 the primary server 1314 reads the location information entered in step 1811. Control next passes to step 1814.
  • step 1814 the location information, (either manually entered in step 1811, or automatically extracted from the data packet in step 1810), is converted to the Go2 grid coordinate system, if necessary.
  • step 1814 the server 1314 performs a database query.
  • the object of the database query is to find an appropriate server 1315 that provides the type of service requested by the user. This aspect of the present invention is described in detail below, with reference to FIG. 19. The process ends as indicated by step 1822.
  • FIG. 19 is a flowchart and block diagram useful for describing the interaction and processing between the client 1404, the primary server 1314 and an enhanced server 1315.
  • the process begins with step 1902.
  • step 1902 the user selects a category of interest and other data from the menu 1701 as described above.
  • step 1904 the data packet module 1504 builds the data packet 1708.
  • the data packet 1708 is then stored on the local storage device 1408.
  • step 1904 the data packet module 1504 builds the data packet 1708.
  • the data packet 1708 is then stored on the local storage device 1408.
  • the data packet 1708 is transmitted to the server 1314.
  • the primary server 1314 parses the data packet 1708 and formulates a database query on the database
  • the persistent storage device 1316 contains a list of the enhanced servers 1315 that provide location specific information in accordance with the present invention.
  • the primary server contains a list of the enhanced servers 1315 that provide location specific information in accordance with the present invention.
  • the primary server provides location specific information in accordance with the present invention.
  • the enhanced 1315 servers are preprogrammed to provide data that is customized in accordance with a specified location.
  • the enhanced servers are preprogrammed to accept and respond to a location identifier, preferably in the Go2 grid coordinate system.
  • the client 1404 receives a second data packet 1914.
  • the second data packet 1914 comprises the URL result from the data base query, plus any other additional information that may be required by the enhanced server 1315, as specified in the database 1316.
  • the Go2 Application launches the web browser component 1502 and automatically connects to the URL received in the data packet.
  • the browser is programmed to accept the URL as the default page so that it is automatically loaded upon connection to the Internet 1318.
  • the present invention is described in terms of a primary server 1314 and a plurality of enhanced servers 1315.
  • the primary server performs a database search that results in an address for an enhanced server that can satisfy the customer's database query.
  • the present invention is not restricted to this configuration.
  • An alternative embodiment comprises a plurality of enhanced servers but no primary server.
  • the Go2 Application software 1500 provides the services provided by the primary server 1314 in the above example.
  • the user determines which one of the enhanced servers to connect to.
  • each of the enhanced servers 1315 is preprogrammed to parse the data packet 1708 and extract location information therefrom, as described above.
  • FIG. 20 is a flow chart that is useful for describing a method that can be used in the
  • Go2 Application program to implement a feature of the present invention for automatic location data collection The flowchart in FIG. 20 represents an endless loop and therefore has no defined beginning or end point.
  • step 2002 determines whether an ALI device 1406 is attached. If an ALI device 1406 is attached, control passes to step 2006. In step 2006 the
  • step 2010 the process determines whether the retrieved location data indicates a change from the previous poll. If step 2010 indicates that the location has not changed (i.e. the user is not moving), control passes to step 2004, where the process sleeps for a predetermined time period until it repeats itself in step 2002.
  • step 2010 indicates that the location has changed, control passes to step 2012.
  • step 2012 the process determines if the client 1404 is on-line. If so, control passes to step 2014. If the client is not on-line, control passes back to step 2004.
  • step 2014 the process determines if a server 1314 is currently requesting that location data be updated.
  • the server in this example can be any server, such as the primary server 1314 or any enhanced servers 1315. If the server is requesting updated location information, the current position, preferably in the Go2 grid format, is transmitted to the server in step 2016. If the server is not requesting an update, control passes back to step 2004.
  • the server uses the Go2 location information for performing a database query.
  • the results are then sent back to the client and as indicated by block 2026.
  • An advantage of the present invention is that users can benefit from the virtually unlimited storage capacity and real-time updates of the Internet 1318. Because the Internet 1318 is used in a distributed fashion to provide users with customized location related information, the information provided to users can be as detailed as desired. For example, in addition to using maps to determine driving directions, more detailed information, such as site plans, building floor plans, photographs of the destination, private road configurations and the like can be presented to users.
  • FIG. 21 depicts an example of a site plan that shows building configurations, parking lots, etc.
  • the site plan in FIG. 21 is stored as digitized photograph.
  • the orientation of the digitized photograph displayed to the user depends on the user's direction of travel so that the proper orientation is displayed.
  • the present invention may be implemented using hardware, software or a combination thereof and may be implemented in a computer system or other processing system. In fact, in one embodiment, the invention is directed toward a computer system capable of carrying out the functionality described herein.
  • An example computer system 2201 is shown in FIG. 22.
  • the computer system 2201 includes one or more processors, such as processor 2204.
  • the processor 2204 is connected to a communication bus 2202.
  • Various software embodiments are described in terms of this example computer system. After reading this description, it will become apparent to a person skilled in the relevant art how to implement the invention using other computer systems and/or computer architectures.
  • Computer system 2202 also includes a main memory 2206, preferably random access memory (RAM), and can also include a secondary memory 2208.
  • the secondary memory 2208 can include, for example, a hard disk drive 2210 and/or a removable storage drive 1012, representing a floppy disk drive, a magnetic tape drive, an optical disk drive, etc.
  • the removable storage drive 2212 reads from and/or writes to a removable storage unit 2214 in a well-known manner.
  • Removable storage unit 2214 represents a floppy disk, magnetic tape, optical disk, etc. which is read by and written to by removable storage drive 2212.
  • the removable storage unit 2214 includes a computer usable storage medium having stored therein computer software and/or data.
  • secondary memory 2208 may include other similar means for allowing computer programs or other instructions to be loaded into computer system 2201.
  • Such means can include, for example, a removable storage unit 2222 and an interface 2220. Examples of such can include a program cartridge and cartridge interface (such as that found in video game devices), a removable memory chip (such as an EPROM, or PROM) and associated socket, and other removable storage units 2222 and interfaces 2220 which allow software and data to be transferred from the removable storage unit 2222 to computer system 2201.
  • Computer system 2201 can also include a communications interface 2224.
  • Communications interface 2224 allows software and data to be transferred between computer system 2201 and external devices.
  • Examples of communications interface 2224 can include a modem, a network interface (such as an Ethernet card), a communications port, a PCMCIA slot and card, etc.
  • Software and data transferred via communications interface 2224 are in the form of signals which can be electronic, electromagnetic, optical or other signals capable of being received by communications interface 2224.
  • These signals 2226 are provided to communications interface via a channel 2228.
  • This channel 2228 carries signals 2226 and can be implemented using wire or cable, fiber optics, a phone line, a cellular phone link, an RF link and other communications channels.
  • computer program medium and “computer usable medium” are used to generally refer to media such as removable storage device 2212, a hard disk installed in hard disk drive 2210, and signals 2226. These computer program products are means for providing software to computer system 2201.
  • Computer programs are stored in main memory and/or secondary memory 2208. Computer programs can also be received via communications interface 2224. Such computer programs, when executed, enable the computer system 2201 to perform the features of the present invention as discussed herein. In particular, the computer programs, when executed, enable the processor 2204 to perform the features of the present invention. Accordingly, such computer programs represent controllers of the computer system 2201.
  • the software may be stored in a computer program product and loaded into computer system 2201 using removable storage drive 2212, hard drive 2210 or communications interface 2224.
  • the control logic when executed by the processor 2204, causes the processor 2204 to perform the functions of the invention as described herein.
  • the invention is implemented primarily in hardware using, for example, hardware components such as application specific integrated circuits (ASICs).
  • ASICs application specific integrated circuits
  • the invention is implemented using a combination of both hardware and software. While embodiments and applications of this invention have been shown and described, it would be apparent to those in the field that many more modifications are possible without departing from the inventive concepts herein. The invention, therefore, is not to be restricted except in the spirit of the appended claims.

Abstract

A system and method for automatically providing services over a cmputer network, such as the Internet, for users in a mobile environment based on their geographic location. An application program is installed on a client computer system that prompts the user to input information. The application program builds a data packet comprising location information and user information. The client computer system connects with a server coupled to a computer network and transmits the electronic data packet to the server. The information in the data packet is used to formulate a database query, the result of which is an address (URL) of a particular enhanced server that matches the client's request. The URL is transmitted to the client. The client computer system launches a web browser and connects to the enhanced server. Upon connection relevant data customized for the client's location is automatically displayed without additional input from the user.

Description

Internet Based Geographic Location Referencing System and Method
BACKGROUND OF THE INVENTION
Related Applications
This application is a continuation-in-part of U.S. Patent Application No. 09/188, 153 , filed November 4, 1998, now pending, which is a continuation of U. S . Patent Application No. 08/701,586, filed August 22, 1996, now U.S. Patent No. 5,839,088. The above referenced patent and applications are incorporated herein by reference as if set forth in full.
Field of the Invention
The present invention relates to a geographic location referencing system and to a system, method and computer program product for automatically providing informational services to users based on their geographical location.
Related Art
The Internet has revolutionized the way people acquire information. Seemingly limitless volumes of data are now instantly available to users from their homes, offices, schools and libraries. Portable devices of various types including portable computers, personal data assistants, wireless communication devices (i.e. cellular phones) and in- vehicle navigation and computer systems can or will be used to access the Internet from any location.
Currently, services offered on the Internet do not cater to mobile users. In fact, it is often cumbersome to interact with current Internet services using portable devices due to the interactive nature of on-line sessions that generally require substantial user input. This can raise safety concerns, for example, in automotive Internet access devices. What is needed therefore, is a system and method that provides Internet services to mobile users with reduced user input requirements. In addition, what is needed is a system and method that provides Internet services to mobile users that are customized according to each user's geographical location.
Further, what is needed is a system and method for providing a geographic location referencing system that can be easily adapted to provide automated Internet services based on location. One such referencing system that can be used with the present invention is described in the above referenced related patent application, now U.S. Patent No. 5,839,088 ("the '88 patent"), entitled "Geographic Location Referencing System and Method". The '88 patent and the present patent application are commonly owned.
The '88 patent describes a geographic location referencing system that has an addressing scheme that allows a location to be uniquely addressed using proprietary names unique to a geographical area. The geographic location system is contrasted with prior systems that are not suitable for Internet related services. Such systems include geodetic latitude and longitude, Universal Transverse Mercator (UTM), Military Grid Reference System (MGRS), World Geographic Reference System (GEOREF), Maidenhead, Trimble Grid, Trimble Atlas, and Thomas Brothers Detail.
These prior systems can generally be divided into two categories: global and local. The global systems, such as geodetic latitude and longitude, UTM, MGRS, GEOREF, Maidenhead, and Trimble Grid, use a scheme that subdivides the globe into areas of increasing resolution, until a particular location is properly identified. Thus each location address is referenced to the global system, allowing for the easy comparison of two location addresses. However, the addresses tend to be complicated, cumbersome, and unrelated to the real world, increasing the complexity of these systems.
The local systems, such as Thomas Brothers paper mapping systems, provide a technique that assigns location addresses based on association with a geographic region or physical map pages, with every location identified with only one region. The local systems are suitable for use in connection with a physical map. However, such local systems are difficult to use with respect to a more global or electronic system, as there is no simple way to convert a local address into a global address, and the local address is not recognized in the global systems.
Location technology has been significantly impacted by the wide availability of Global Positioning Systems (GPS), which are operated by the United States Department of Defense to provide worldwide navigation, position location, and precision timing services. GPS comprises a global network of satellites that interact with a controller coupled to a GPS receiver, allowing the controller to precisely determine its location. This location is typically output from the GPS receiver as latitude and longitude numbers, which are cumbersome for users to understand and use. A GPS receiver is sometimes coupled with additional capability that allows the raw latitude/longitude numbers to be converted into a more useful and usable format. See, e.g., Sprague et al, US Pat. No. 5,422,814; Inoue, US Pat. No. 5,289,195; and Yamashita, US Pat. No. 5,471,392. However, even with these enhancements, a problem with these systems is that they are still difficult to use by persons who are unskilled in the use of location referencing systems. Another problem is that these systems are unwieldy because they still retain their global character. Still another problem with these systems is that they are not readily adaptable for use with computer networks such as the Internet.
Private commercial tracking systems in use today provide the ability to automatically track the location of, for example, a fleet of trucks, e.g. see U.S. Patent Nos. 5,155,689; 5,299,132; 5,398,190; 5,454,027; 5,513,111; and 5,519,621. These patents are all related to a commercial vehicle locating and communicating system that uses either a cellular network or a GPS system for tracking and locating vehicles.
The problem with these proprietary systems is that they are very complex, expensive and limited to very specific functions. What is needed is a referencing system that can be used with a minimum amount of reading, scrolling, and searching, and with a limited number of keystrokes for data entry. In addition, what is needed is a user-friendly, truly local addressing system that is easily convertible to a known global system for wide- range concerns. Further, what is needed is a flexible system and method that can be used to automatically provide mobile users with relevant information customized for their current location. Additionally, what is needed is a system and method that caters to mobile Internet users by providing customized services based on geographic location.
SUMMARY OF THE INVENTION
The present invention relates to a system and method for providing services over a computer network, such as the Internet, for users in mobile environments. Specifically, the system and method of the present invention provides users with information that is specific to the user's geographic location.
In a preferred embodiment, a client computer system is equipped with a local database, a wireless transceiver, an input device such as a keyboard, an output device such as a display and an automatic location identifying (ALI) device, such as a GPS receiver or the like. Note that the ALI device is an optional component of the present invention.
The Client computer system connects with a server coupled to a computer network, such as the Internet. The server is enhanced in accordance with the present invention by automatically determining the location of the client. In one embodiment, the client automatically advises the server of its current location via a transmission of an electronic data packet or "handshake" upon connection. The server uses this information to perform a database query to retrieve information that is customized for the particular location.
In particular, an application program is installed on the client computer system. The application program prompts the user to select a category of interest, a preference for specifying location information (i.e. via manual input, or automatically through an attached
ALI device), and other user preferences. The application program then builds a data packet on the client storage device that contains such information.
In one embodiment, the client first connects with a primary server. The primary server maintains a database that contains a list of registered servers that provide location specific services in accordance with the present invention. The primary server reads the data packet from the client and performs a database query to retrieve the address for a particular enhanced server that matches the client's request. The client is then sent a specific universal resource locator (URL) that contains the address of the enhanced server.
The client computer system then launches a web browser or the like, and connects with the URL. Upon connection, the client automatically displays relevant data that is customized for the user's geographic location without additional input from the user.
For example, in one embodiment, a web site that provides geographical maps is implemented in accordance with the present invention. Thus, upon connection with the URL provided by the primary server, the client is automatically presented with a map of the current geographical area. This is accomplished automatically, without additional manual input from the user. This aspect of the present invention is especially useful in a mobile environment, such as an automobile, where data entry is not only cumbersome, but also dangerous.
In another example, a user connects to a weather service, whereby the service automatically displays a weather report for the current area. Again, this is accomplished without requiring that the user manually enter data related to the current location.
In another example, a user connects to a service that automatically provides information about restaurants, banks, or other points of interest that are located within a specified distance from the user's current location.
Current location data can be automatically provided by a variety of ways. For example, a GPS receiver can be used to determine the exact location of the user. In another example, a cellular telephone connection can be used for determining location information using triangulation or distance measuring techniques.
A feature of the present invention is that it provides mobile users with customized information about their current location.
An advantage of the present invention is that it provides mobile users with customized information about their current location with a minimal amount of manual data entry. Another advantage of the present invention is that the hierarchical structure of the grid referencing system used to describe location information allows for faster database searches so that customized information can be presented to users in real-time with minimal delays.
Another advantage of the present invention is that the grid referencing system allows for information to be manually entered with a minimum amount of reading, scrolling, and searching and with a limited number of keystrokes for data entry.
Another advantage of the present invention is that it promotes the use of Intelligent Transport Systems (ITS) for tracking, managing and re-routing commuter traffic. The present invention facilitates the use of such systems due to the simplified methods for inputting location data, which is a frequent requirement of Intelligent Transport Systems.
Another advantage of the present invention is that the grid referencing system promotes the use of voice recognition systems because location descriptions are limited to 26 letters and 10 numbers. Accordingly, using the grid referencing system reduces the requirement for sophisticated voice recognition systems that typically require speech recognition of thousands of different sounds, languages, dialects and accents used with conventional street addressing techniques.
In a separate aspect of the present invention, location information is described using a universal location address that is defined by subdividing a geographic location into several independent districts, each with a name and a reference point. The reference point has a known locational address within a global referencing system. A coordinate system is placed on the district relative to the reference point, yielding a position indicator for locations within the district. Combining the district name and the position indicator defines the local location.
In another separate aspect of the invention, the foregoing aspect may be further enhanced by the creation of proprietary locational addresses. A proprietary address is a name, which will be unique within the district that distinctly identifies a location with the district. A proprietary address is created by selecting a name, capturing positional information about the location associated with the name, checking that the name is unique in the district and storing the name with its associated locational information and feature data. Once stored, the name and the associated information may be selectively disseminated to users of locational systems.
In another aspect of the invention, a locational system first accepts regional or positional information to determine a general location address, including a district name. The locational system then accepts specific addresses, each having less than a complete locational address. The locational system creates a complete locational address by combining the known general positional information with the abbreviated specific locational address to determine the precise and complete locational address, generally by prefixing the known general positional information to the specific locational address.
In another separate aspect of the invention, a navigational system incorporating the foregoing aspects is defined.
Further features and advantages of the invention, as well as the structure and operation of various embodiments of the invention, are described in detail below with reference to the accompanying drawings.
BRIEF DESCRIPTIONS OF THE DRAWINGS
FIG. 1 shows two overlapping districts, each with a reference point and a grid system.
FIG. 2 shows a single cell of FIG. 1 with hierarchical gridding to increase the addressing resolution.
FIG. 3 is a functional diagram of a preferred embodiment of the invention.
FIG. 4 shows how proprietary locational names are compiled and distributed.
FIG. 5 is a diagram of a navigational system incorporating one or more aspects of the subject invention.
FIGS. 6 and 7 show the use of PLAs and ULAs in a specific geographical context. FIGS. 8a-8b, 9, lOa-lOc, 11 are examples of specific files used in one implementation of the subject invention.
FIGS. 12a- 12c are examples of screen outputs used in one implementation of the subject invention.
FIG. 13 depicts an operational environment of the automatic location aspect of the present according to a preferred embodiment.
FIG. 14 is a block diagram depicting details of the portable-computing device in accordance with the subject invention.
FIG. 15 is a block diagram depicting functional components of an application program or program(s) running on the portable-computing device in accordance with an embodiment of the present invention.
FIG. 16 is a flowchart that generally describes an overall process in accordance with an embodiment of the present invention.
FIG. 17 is a flowchart depicting a process that can be used to implement a portion of the Go2 Application program according to an embodiment of the present invention.
FIG. 18 is a flowchart depicting a process that can be used to implement a process performed by the primary server upon connection with the client according to an embodiment of the present invention.
FIG. 19 is a flowchart and block diagram useful for describing the interaction and processing between the client, the primary server and an enhanced server according to an embodiment of the present invention.
FIG. 20 is a flow chart depicting a method that can be used to implement the automatic location data collection feature according to a preferred embodiment of the present invention.
FIG. 21 depicts an example of a site plan that can be used to implement an embodiment of the present invention. FIG. 22 is a block diagram of a computer useful for implementing components of the present invention.
PREFERRED EMBODIMENTS OF THE GEOGRAPHICAL REFERENCING SYSTEM
A preferred embodiment of the geographical referencing system aspect of the present invention allows a point of interest (POI) within an arbitrary geographic area to be uniquely identified with a locational address, and the locational address to be related to other known global referencing systems. The locational address may take two forms: first, as a universal locational address (ULA); or second, as a proprietary locational address (PLA). Each of these forms is discussed below.
Every location in a geographic area will have at least one ULA. To determine the ULA of a point, a geographic area is divided into several districts. The districts may be of differing size and shape, and may contain a particular identifying feature. For example, the geographic area of the United States may be subdivided into numerous districts, which may be strategically located, sized, and named with reference to cities or other geographic or political features in order to associate the districts with such features. Advantageously, such districts are chosen relative to cities and it is therefore convenient to name each district according to the city about which the district is located. In fact, each city may have a reference point, allowing local locations to be addressed relative to the local city. Sparsely populated areas may have larger districts, and densely populated areas may have smaller districts. The districts may also be quasi-rectangular, following latitude and_ longitude lines. In more densely populated areas, it is possible that a particular location will be within the boundaries of two or more districts. In addition, user-defined districts, reference points, and grid sizes are possible. For example, a search and rescue operation may establish a reference point and grid size convenient for a particular search area, or a group of hikers may choose a reference point and grid size appropriate for a particular outing. After the districts have been selected and named, a reference point is chosen for each district, and a grid system placed relative to the reference point. Advantageously, the grid system is referenced north. Referring to FIG. 1 , a first district 1 and a second district 3 are defined relative to major cities 4 and 6 respectively. In this example, major city 4 in the first district 1 will be named CITYONE and the major city 6 in the second district 3 will be named CITYTWO. For convenience, the first district 1 will be named CTY1, referring to the major city within that district's borders, and the second district will be named CTY2, referring to the major city within that district's borders. Reference point 5 is selected as the reference point for CTY1, and reference point 7 is selected as the reference point for CTY2. The reference point will not necessarily be located proximate to the feature used as the name for the district. Each reference point 5 and 7 has a known address within a global referencing system such as World Geodetic Systems (WGS). Association with a global system offers at least three important functions: first, local addresses may be easily converted to global addresses and vice-versa; second, inter-district relationships are established; and third, easy integration with known navigational systems is provided. Thus, an easy to use district-level addressing system retains the advantages of a global system without attaching complexity.
As can be seen in FIG. 1 , the grid system about each reference point 5 and 7 creates cells 9 in each district. Each of these cells 9 is identified with a cell code, which advantageously is a two character number. For example, a target POI location 19, which is in cell 11, can now be identified by referring to its district and cell code, e.g., CTY2-11. Of course, such a reference lacks the resolution to identify a particular feature, such as a house, but may be enough resolution to locate a lake or park. The issue of increased resolution is discussed below.
Also, it is likely that there will be an overlap area 13 that is formed at the intersection of districts. Within this overlap area 13, any POI can be identified by reference to any district within which it is located. Thus, a target location 8 in the overlap area 13 can be identified by either association with the CTY1 or CTY2 districts, or any other district within which it is located. In the preferred embodiment, a locational system can provide a locational address relative to any reference point or district by simply toggling between reference points.
As discussed above, a district name and cell code may not give sufficient resolution to locate specific locations. To increase resolution, a hierarchical grid is applied to each cell 9 of FIG. 1. For example, cell 11 is shown in FIG. 2 with a sub-grid applied, producing sub-cells 15. Each of these sub-cells can be identified with a sub-grid code. Moreover, the sub-cells can be further subdivided to increase resolution. Here, sub-cell 17 is further subdivided. As can be seen in the figure, the target location 19 is within the sub- sub cell 18. Thus, to more definitively identify the target location 19, a ULA is formed from the highest resolution sub-cell defined and each of its parent cells. The locational address is formed by appending to the district name each sub-cell code in hierarchical progression, moving from lower resolution to more resolution. In the example here, the target location 19 would have a locational address of CTY2-11-17-18. Based on the size of the district, if this does not give the necessary resolution to properly locate the target location 19, then additional levels of gridding hierarchy can be added. Although, in this example, each cell was randomly named with a unique numerical code, it should be appreciated that a consistent Cartesian coordinate system can also be used, with each cell defined by an (X, Y) coordinate pair. Those skilled in the art will recognize several other alternative ways to define a grid system.
In a preferred embodiment, the above coding technique is extended to include standard alpha codes representing objects such as suites, floors, rows, columns, altitude, etc. These alpha codes are advantageously appended to the above code as they logically represent the highest resolution component. Thus for example, suppose the above locational address of CTY2-11-17-18 represents an office building, then the address of CTY2-11-17-18-S101 represents suite 101 in the office building. Likewise, the address CTY2-11-17-18-F2 represents the second floor of the office building. In another example, the address CTY-11-17-18-R101-RW12-C22 represents row 12 column 22 in room 101 of the office building. This can represent an exact location within a particular rack in a warehouse, for example. In another example, the address CTY2-11-17-18-HS2200 represents a height of 2200 feet above sea level. As can be appreciated by those skilled in the relevant art(s), this technique can be extended as much as required. Typically, a standard set of codes is defined for each specific implementation of the present invention. An example of such a set of codes that can be used in an embodiment of the present invention is shown below in Table 1.
Table 1. Example set of alpha codes and their definitions.
Figure imgf000014_0001
Table l.(Cont.) Example set of alpha codes and their definitions.
Figure imgf000015_0001
Advantageously, a city will be named with a specific abbreviated name for purposes of navigating to and around that city. That abbreviated name may also serve as the name of the defined district located about that city. Depending on the size of the city and various geographic, political, and other features relating to the city or region, the district for that particular city will be pre-defined with a particular grid size, although the system may allow altering the grid size for particular purposes. If, in the preceding example, the defined grid size for CTY2 is approximately 30 by 30 nautical miles, identifying two hierarchical grids produces a resolution of about 500 meters, which is_ sufficient for locating structures in open areas or large targets such as lakes or parks. By adding a third and fourth hierarchical grid, a resolution of about 5 meters is achieved, and by adding a fifth hierarchical grid, a resolution of about 0.5 meters is achieved. By adjusting the number of grids, then, the resolution of the resulting locational address is changed to meet the requirements of the particular area or user. Advantageously, each level of the hierarchical address is separated by a decimal point. Thus an address may appear as "DISTRICT.12.34.56.78". Those skilled in the art will recognize several alternatives to this approach.
The second way a point of interest may be designated in the subject invention is with a proprietary locational address (PLA). Referring to FIG. 4, the first step in using a PLA is to identify the feature and select a name 51. A PLA is a name chosen to identify a physical structure or location. The name can be chosen by the operator of a locational service, as in the case of naming national monuments, or the name can be chosen by individual or corporate users of the locational service. Individuals may even want to identify their homes using their own names. Thus, a Ms. Mary Smith may name her house MARY.SMITH.HOUSE, for example. Thus, when Ms. Smith wants to direct someone using a locational service to her house, she identifies her location using MARY.SMITH.HOUSE, rather than a street address or other locational referencing system. A corporation, too, may desire to allow customers to locate it using a common name rather than a less personal addressing system. For example, a nationwide enterprise such as MacDonalds with many locations may choose a PLA that is associated with its tradename or product or otherwise allows users to easily remember and associate the establishments PLA. Abbreviations are useful as it keeps user input to a minimum, increasing safety, reliability, and convenience. Since the nation-wide enterprise may have many locations in a single metropolitan area, each may be identified by appending to the enterprise's PLA a unique identifier to identify specific branch offices or affiliates. Wildcard searching is also provided, allowing several locations of the known nation-wide enterprise to be found for a particular geographic area.
The capture of positional information for a certain name will now be described. Referring to FIG. 4, as indicated by identifying numeral 55, positional information could be entered manually, by, for example, inputting the ULA or coordinates of the location from a known mapping system. Alternatively, as indicated by identifying numeral 57, the positional information may be read electronically using a system such as the GPS. Referring again to FIG. 4, the name 51 and positional information 53 are associated. The district in which the location is identified is determined by comparing the positional information 53 to stored district locational information 54. Once the district is identified, the name is checked against other reserved names in the district to assure the selected name is unique. If the name is unique, it is placed in a district data file 63. As can be seen from the discussion above, uniqueness of the name need only be checked at the district level. Consequently, the same name can be present in different districts. The name must be unique at the district level as the district name usually becomes part of the PLA. For example, the nation-wide enterprise location in district CTY1 could have a full PLA of CTY1 -TRADENAME. If the owner of a name desires to more widely reserve a name, each district will be checked individually.
Once a PLA is approved for an individual, corporation, or other entity, the PLA may be placed in promotional material such as advertisements, coupons, billboards, or other means of communication. By providing a PLA that describes a feature, a particular location may be quickly identified and readily found.
Once cleared for conflicts, the name, positional information, and any other useful information are stored in a central repository location. This storage may be sortable and selectively downloadable by users of locational systems. For example, the central repository may be accessible via the Internet. In such a case, a user 75 would make a request for information 71 concerning future travel, such as the ULAs or PLAs of specific desired waypoints of a trip. The information in the central repository 65 is selected and sorted, and the travel data 73 is received by the user, creating a travel profile. To ease the data selection process, the central repository may store preferences for the user. After receiving the travel profile, the user places the travel data 73 into a navigational unit 77, augmenting information 79 already locally present in the navigational unit 77. The user 75 may then use the travel data 73, including PLAs and ULAs, to assist in navigating.
An aspect of the subject invention is the use of ULAs and PLAs in known navigational systems. The use of a ULA by such a system with a minimum amount of information input by a user will now be disclosed. Referring to FIG. 3, district file 31 is maintained correlating district names and locational information relating to those districts. Regional information 33, that may be manually entered (as indicated by reference numeral 21) by a user, may also be maintained. This regional information 33 is used by the system to reduce the amount of information a user must enter to identify a particular location. The regional information may, for example, be a map code or distinct name identifying the general area covered by the map. Alternatively, it may be the name of a district having a pre-defined grid. After the map code or district name is inputted as regional information, the system now assumes that any future user inputs are within the geographical area defined by the regional information, thus reducing the complexity of inputting future addresses referenced on that map. Also, positional information 35 of a current location may be input manually (reference numeral 23) or electronically (reference numeral 25) for the same purpose. By knowing the present location, the system may assume that any subsequent address input by the user is within the same geographical area as the present location. Again, the purpose and effect is to reduce the complexity of inputting locational addresses.
The user may also electronically (reference numeral 29), or manually (reference numeral 27) input a specific address 37 to the system. By comparing the regional information 33 and positional information 35 of the current location with the stored district information 31, a general address can be formed. This general address will contain the district name plus any cell and sub-cell codes that are more general than the most general code in the specific address. The resolution detector 43 attempts to determine how much resolution is represented by the specific address 37 input by the user, and in conjunction with the comparison 41 function, creates a general address 45 with the correct level of resolution. Again, it is assumed that any subsequent addresses input by the user are within the same geographical area defined by this general address.
Once the resolution of the specific information 37 is determined, the specific information 37 is passed on to become a specific address 47. This specific address 47 is appended to the general address 45 formed above to form the final locational address 49. The locational address 49 is then used by the navigational system to assist in navigation. Additionally, an emergency mode may be provided in which a present location is automatically referenced to any reasonably close PLA or other known location.
A relationship with World Geodetic System 1984 (WGS-84), allowing locational addresses to be converted to other global addressing systems, is also provided. A further description of the district grid is needed to understand this relationship. Each district has a reference point, with the reference point being the approximate center of the city used in naming the district. A grid is placed in relation to the reference point such that the origin of the grid is aligned with the nearest intersection of latitude and longitude lines corresponding to the largest grid resolution in the district. Since the reference point has a known WGS-84 address, by knowing the origin offset, the district rotation, and the district scale, every ULA can be translated into a WGS-84 address, and from there into nearly all locational reference systems. Conversely, every WGS-84 address may be translated into one or more ULAs. The translation is simplified in the subject invention as the district grid system is generally aligned to the WGS-84 latitude/longitude grid.
With reference to FIG. 5, such a system comprises a GPS receiver 100, an input device 101 such as a keypad or the like, a processor 102, a storage device 103 such as RAM or ROM, and an output device 106 such as a display. The GPS receiver 100, input device 101, storage device 103, and output device 106 are all coupled to the processor 102 as shown. An application program 104 executes in the processor to perform various tasks. Optionally, a look-up-table (hereinafter "LUT") 105 is provided in the storage device 103.
The application program in a conventional navigational apparatus typically interfaces with and directs the aforementioned elements to perform the following tasks:
1. Displays the latitude and longitude (hereinafter "lat/lon") of the unit — First, the GPS receiver receives signals from the GPS satellite constellation, and calculates the location of the unit (in terms of lat/lon) using these signals.
The lat/lon coordinates of the unit are then displayed on the output device 106.
2. Displays velocity and bearing — if the unit is moving, the processor determines the location of this unit at selected time intervals, and based thereon, determines velocity and bearing. Once determined, this information is displayed on the output device 106.
3. Allows for the selection of waypoints — In one approach, a user inputs waypoints through input device 101 in terms of lat/lon coordinates. In another approach, common in the aviation community, a look-up-table or the like, identified with numeral 105 in FIG. 5, is provided, correlating predetermined waypoints with lat/lon coordinates. A capability for searching through the database and selecting particular waypoints is also provided in this approach.
4. Displays distance and bearing from selected waypoints — once the waypoints have been determined, the distance (assuming straight line) and bearing from these waypoints is determined and displayed.
Additional components of the system which are added by the subject invention include context buffer 108; front-end interface (hereinafter "FEI") 107; PLA database 110; and a database(s) 109 of grid definitions.
A critical function of the front-end-interface is to convert ULAs and PLAs into lat/lon coordinates. Consequently, a user can input waypoints in terms of ULAs or PLAs, and the FEI will convert the same to lat/lon coordinates for use by the unit in determining a directional and/or distance indicator (such as distance and bearing) from the waypoints. Additionally, positional information defined in terms of lat/lon coordinates can be displayed in terms of one or more ULAs of the subject invention. The FEI also includes various searching capabilities to allow a user to search through the PLA database 110 for particular waypoints or waypoints with particular characteristics.
The function of the context buffer 108 is to define the current district and grid in which grid addresses are assumed to be defined.
The grid definition file(s) 109 specifies all the grids which have been defined to date. For each grid, all the parameters necessary to define the gird are stored. Such information includes the lat/lon coordinates of the reference point of the grid, the dimensions of the grid, and the rotation and scaling of the grid cells. Thus, all the information needed to convert between a grid address within the grid and lat/lon coordinates is provided.
The PLA file 110 is a file which for each district correlates each PLA which is unique to and has been reserved for use in the district with its corresponding grid address. The navigational system described above may be mounted in a vehicle or contained in a portable device, for example. Additionally, the navigational system may stand alone or may be integrated into existing devices, such as portable phones. Further, the subject invention may be incorporated into a general computational device such as a microprocessor. Since the physical manifestation of the navigational system is so flexible, there are numerous foreseeable applications.
DETAILS AND EXAMPLES OF SYSTEM IMPLEMENTATION
The examples set forth below describe various details of various implementations of the system. Examples 1, 1A, 2, and 3 demonstrate specific implementations of one embodiment of the invention: Example 1 demonstrates the use of Hierarchical Identifiers for districts which are correlated with Country, State/Province, and City districts along with PLA's and a purely numeric ULA grid referencing system based upon a district grid size of approximately 185 kilometers north to south. Example 1A demonstrates an alternative means that can be used to implement the city grid based on the Transverse Metcator projection system. Example 2 demonstrates the use of the Hierarchical Identifiers described in Example 1 along with an alternating alpha-numeric ULA grid referencing system. Example 3 demonstrates the use of a smaller City Grid and the resulting higher precision at various grid levels.
EXAMPLE 1:
Hierarchical Identifiers For Country, State/Province, City
The example assumes the existence of higher levels of hierarchical codes for identifying countries, states/provinces, and cities. The top level codes can be used, implied by context, or specifically ignored by the use of dots (periods) to make it clear how many codes have been omitted. A code of 'US.CA.LA' might be represented as 'LA', '..LA', or by 'CA.LA', depending on the geographic context or the need for clarity.
In all cases, upper level codes are dropped when the geographic context is clear, to prefix with dots (periods) when necessary to insure clarity, and to append lower levels to add precision. Country Codes
Top level: two alpha character mnemonic (possibly based on Internet domain codes).
Examples:
United States = US
Australia = AU
Canada = CA
State/Province Codes
Second level: two character mnemonics (advantageously based on US postal codes within the US).
Examples:
California - CA
New York = NY
City Codes
Third level: two or three alpha character mnemonics from city name unique within each state.
Examples:
Carbondale = CAR
Hartford = HAR
Los Angeles = LA
New York City - NYC Proprietary Codes
Fourth level; one or more alpha or numeric characters which are unique within a specific grid or map with a unique map code
Examples:
MACD, DISNEY, EXXON, etc.
An example of a use of a PLA might be US. G A. ALB. MACD to refer to a MacDonalds in Albany, Georgia; US.GA.ALB.MACD* to refer to the closest(s) one in Albany, Georgia; or MACD* to refer to the closest(s) ones in any city.
The code ..ALB. MACD* could refer to either the nearest MacDonalds in Albany Georgia or Albany New York and context. .NY. ALB. MACD* would resolve the context.
City Grid
This optional code is at a fourth or fifth level; identified by the first use of a pair of numeric characters in the city grid code. The city grid system requires an approximate city centroid described in a locational reference system such as geodetic latitude and longitude and the meaning of each pair of grid designators. The city grid origin is defined at the south-west coordinate system intersection value corresponding to exact values of the largest grid resolution precision that is defined in the city grid, placing the district centroid within the center grid cell of the system.
In the nominal city grid system, the grid cells are orthogonal to the defining coordinate system; however, rotations and scale parameters can be used to re-define the relationship between the city grid and the reference frame. False easting and false northing offsets (translations) are normally used to avoid negative numbering or to allow convenient ordering of alphanumeric designators.
Conversion from the defining reference frame (e.g., lat/lon) to city grid designators (i.e., ULAs) is accomplished by computing conversion constants based on the initial reference frame and the specific city grid definitions. When geographic context has already been established, grid designators are computed with respect to the currently selected district. When no district has been selected as the preferred one, the nearest district centroid is used as the basis for the grid designators. Conversion from city grid to coordinates in the defining system is accomplished by applying translation (and when applicable rotation and scale) parameters to the succession of grid designators until the precision implied by the number of grid cell designator pairs is reached.
The city grid is nominally based on a locational reference system that can be tied to other reference systems. In the nominal system, the underlying locational reference system datum is the World Geodetic System 1984 (WGS-84). Geodetic coordinates with respect to this datum can be converted to coordinates in a large number of other reference systems, allowing the city grid designators to be used with respect to other systems and other geodetic datums allowing conversion to Universal Transverse Mercator (UTM) systems, State Plane Systems, National Grid Systems, other horizontal coordinate system, or map projection.
The city grid origin is defined at the ten minute of latitude and ten minute of longitude intersection nearest the city centroid. This places the origin within five minutes of latitude and longitude of the city centroid. The radial distance of the city grid origin is then always within about 10 km of the nominal city center.
Each grid is then defined based on this origin by placing a grid centered at the origin with a false easting and northing = halfway between minimum and maximum numeric characters. Grid cells are identified by an easting cell designator paired with a northing cell designator with successive pairs of designators defining grid cells of increasing precision.
Highest level; least precision two numeric characteristics, East is always first, North is always second, minimum is always 0 and maximum is always 9.
The false easting puts the division between 4 and 5 at the grid origin north and east.
Each highest level grid consists of a ten by ten region (100 grid rectangles). Next lower level; higher precision, divides each numeric grid into a ten by ten grid (100 grid rectangles) area. East is always first, north is always second. Minimum is always 0 and maximum is always 9.
The false easting again puts the grid rectangle center at the division between 4 and 5.
Next lower levels repeat the numeric code above dividing each higher grid rectangle into a ten by ten rectangle area.
If each city grid origin is at an integer intersection of an even ten minutes of latitude and longitude, the first level numeric grid rectangles each cover an area of approximately 100 square nautical miles, or about 343 square kilometers with grid cells whose north-south extent is about 18.5 kilometers. Thus the entire set of first level grid cells covers a distance of about 185 kilometers from north to south and a shorter distance from west to east, depending on latitude.
Each second level city grid cell is 1/10l of the next higher level grid cell, or 1 minute of latitude and longitude, about 1850 meters north to south.
Each third level city grid cell is then 1/10l of the second level grid, or 6 seconds of latitude and longitude, about 185 meters north to south.
Each fourth level city grid cell is then 1/10th of the third level grid, about 18.5 meters north to south, around 340 square meters.
Since this fourth level grid corresponds to a resolution some five times more precise than un-aided GPS accuracy (with Selective Availability), a fifth level grid may not be required. Following the same 1/101 rule as the higher level grids, a fifth grid cell would measure 1.85 meters on a side, well within the accuracy of differentially-aided GPS.
Cities close to each other can each employ their own city grid even when they overlap. When questions of which city grid occur the city code (or all the higher level codes) can be attached to remove ambiguity. An example of a use of a ULA might be US.GA.ALB.13 to refer to an area about 20 kilometers wide southwest of the center of Albany Georgia. Then ..ALB.13.78 would refer to an area about 2 kilometers wide near the northeast corner of the previous example. So would .13.78 if the geographic context was established as Albany Georgia.
The code .US.GA.ALB.13.78.27.14 would refer to the smallest unit of about 9 meters within an explicitly defined place. ..78.27.14 would refer to the same place in context.
EXAMPLE 1A:
In addition to the example above which demonstrates one means for implementing the city grid, this example describes an alternative means for implementing the city grid based on the Transverse Metcator projection system.
In a preferred implementation a conventional map projection/coordinate system grid is selected. While Lambert Conformal Conic, Stereographic, or local tangent plane system might well be used, in this example, the Transverse Mercator (TM) projection is selected. The TM projection is preferred over other projections suitable for use in local mapping systems because it is most likely an available projection in many GIS and GPS platforms.
To make city centroid selection less contentious an issue, one preferably uses lists of centroids from the Digital Chart of The World (VMapO) or other sources and moves them to arbitrary points that are defined in controlled lists. In order to remove the slight differences in city centroids from different lists, and to standardize the method of fixing the preferred list, the city grids are centered at the nearest 0.05 degrees of latitude and longitude, assuring that the "centroid" is always within the 55 first level cell, and always within about 5.5 km of the center of the grid. This use of decimal degrees rather than values in minutes makes internal computations easier and less subject to complex issues such as repeating fractional values (i.e. 50 minutes = 0.8333333333 degrees). In this example, the city grids are Transverse Mercator grids with the following characteristics:
Origin latitude and longitude "snapped" to the 0.05 degree increment south-west of the city centroid.
Scale at the origin = 1.0
False easting 50,000 meters
False northing 50,000 meters.
Normal TM projection formulas as documented in Snyder (1987) and used in almost everyone's TM routines. The grid cells for all level grids start at 00 in the south-west corner, increasing to 99 at the north-east corner following this simple pattern:
09 19 29 39 49 59 69 79 89 99
08 18 28 38 48 58 68 78 88 98
07 17 27 37 47 57 67 77 87 97
06 16 26 36 46 56 66 76 86 96
05 15 25 35 45 55 65 75 85 95
04 14 24 34 44 54 64 74 84 94
03 13 23 33 43 53 63 73 83 93
02 12 22 32 42 52 62 72 82 92
01 11 21 31 41 51 61 71 81 91
00 10 20 30 40 50 60 70 80 90
Each Level 1 grid cell covers a 10 km by 10 km square region on the ground
Each Level 2 grid cell covers a 1 km by 1 km square
Each Level 3 grid cell covers a 100 meter by 100 meter square
Each Level 4 grid cell covers a 10 meter by 10 meter square The grid cells are exactly these distances north-south and east-west of the center of the grid.
The scale factor of 1.0 at the grid origin means that largest distance error is less than 4 meters over the extent of the grid.
As an example using the US.DC.WAS grid, the ellipsoidal distance from southwest comer to northeast comer is 141419.494 meters. Computed using the TM grid as though it was orthogonal one would compute a range using the Pythagorean theorem of 141421.356 meters, a difference of 1.862 meters.
These grids then can be used for very accurate distance estimates as well as making there use with any existing map quite simple. . In addition, it should be noted that the grid cell designators can be easily computed from the output of any existing TM routine (such as those found in GPS receivers for user grids) using the TM parameters. For instance the position of the Smithsonian Institution in TM eastings and northings is:
52072.6 East and 48736.0 North.
The grid designators are simply extracted from the powers of ten one digit at a time, east followed by north as:
54.28.07.73 for ten meters, or 54.28.07.73.36 for a one meter level grid.
To put a grid designator value into a TM conversion, one makes easting and northing values from the grid designator in the same way.
For instance a random designator of:
39.12.46.15.53, results in: 31415 meters Easting and 92653 meters Northing
or
39.12.46, results in: 31400 meters Easting and 92600 meters Northing. EXAMPLE 2:
In addition to the example above which demonstrates the logic and structure of the XYZ.12.34.56.78 format, this example describes the use of a grid format and ULA utilizing the XYZ.12.aa.34.aa format. The Country, State/Province, City and Proprietary Codes remain as described in the previous example, but the optional City Grid is structured differently. The grid code is still initially identified by a pair of numeric characters, and the city grid origin is defined at the ten minute of latitude and ten minute of longitude intersection nearest the city centroid as in the previous example. The definition of each grid and the false easting and northing, as well as the structure of the first grid level, is also as described in the preceding example.
The next lower level of the grid divides each numeric grid into a twenty by twenty grid (400 grid rectangles) area. East is always first, north is always second. The minimum is A from a character set consisting of ABCDEFGHJKLMNPQRSTUV, and the maximum is V. The false easting puts the grid rectangle center at the division between K and L.
The next lower level repeats the numeric code as described in the preceding example dividing each higher grid rectangle into a ten by ten rectangle area, and the next lower level repeats the alpha code described above in this example dividing each higher grid rectangle into a twenty by twenty rectangle area.
If the city grid is the same size as the preceding example, each second level city grid square (represented by the code XYZ.12.aa) is l/20th of the first numeric grid square, 30 seconds of latitude and longitude, or about 920 meters north to south. The third level city grid square (represented by the code XYZ.12.aa.23) would result in a grid rectangle size of approximately 3 seconds of latitude and longitude, or about 92 meters north to south. The fourth level city grid square (represented by the code XYZ.12.aa.23.aa) would be l/20th of the previous city grid square size, resulting in a grid rectangle size of approximately 0.15 seconds of latitude and longitude, or about 5 meters north to south.
It should be appreciated that it is possible to define embodiments in which these higher level portions are defined in terms of either numeric or alpha characters, or alternatively, in terms of mixed alpha and numeric characters. EXAMPLE 3:
This example demonstrates the different precision achievable by varying the size of the city grid of a particular district. This example uses a sample city grid designator "US.TX.AUS.45.45.77.45," with a district centroid of 30 degrees, 17 minutes north latitude and 97 degrees, 45 minutes of west longitude for an Austin, Texas, city grid district with a district designator, "US. TX. AUS." For a city grid easting and northing resolution of 1 minute of latitude and longitude for the largest resolution grid designator pair, the grid origin would be placed at 30 degrees, 17 minutes north latitude and 97 degrees, 45 minutes west longitude.
For numeric city grid designators with no rotation or scale, and with a false easting and northing of five grid cells, the designator "US.TX.AUS.45.45.77.45" would correspond to a geodetic position of 30 degrees, 15 minute, 45.0 seconds north latitude, and 97 degrees, 45 minutes, 15.0 seconds west longitude. The precision of the smallest grid cell would be one thousandth of a minute of latitude and longitude corresponding to approximately 1.6 meters of easting and 1.9 meters of northing. By reducing the number of designator pairs the precision of the implied geodetic position is also reduced. In this example, a designator of ".TX.AUS.45.45", would refer to an area one tenth of one minute of latitude by one minute of longitude in area or approximately 185 meters north to south; ".AUS.45.45.77" would refer to an area one-hundredth of one minute by one-hundredth of one minute, or approximately 18.5 meters north to south.
* * *
EXAMPLES OF USE
Set forth below are several examples of how the invention can be used. Examples
4 through 7 reflect situations in which the invention may be used and provide marked improvements in function and utility over traditional lat/lon based systems. Example 8 demonstrates certain aspects of the invention related to a particular geographic area and two maps of partially overlapping areas. EXAMPLE 4:
The subject invention may be used for general vehicular navigation, to drive from Los Angeles to the visitor's center at the Grand Canyon. The driver must first determine the address for the target location, and then input the address into the navigational system. There are several alternatives for locating the PLA or ULA. For example, the driver may read travel brochures that contain the ULA/PLA addresses; the driver may also review a map which contains ULA/PLA annotations; or the driver could just call the Visitor's Center and ask them for their PLA or ULA. Alternatively, the driver, using the input device, could search the PLA database to find if the Grand Canyon visitor's center has a PLA. Once the address is determined, the driver enters the PLA or ULA address into a navigational system, and the navigational system will direct the driver to the proper destination.
EXAMPLE 5:
Second, the subject invention may be used to direct local traffic to a particular point of interest. For example, if the driver above is traveling along a highway and becomes hungry and desires to eat at a particular fast-food chain, the driver could interrogate the system data to find any nearby chain restaurants. The driver simply queries the system for occurrences of the fast-food chain's PLA, and, since the system is aware of its current location, the chain's restaurants may be listed by proximity. The driver simply selects one of the restaurants, and the navigational system directs the driver to that location.
Additionally, a local restaurant may advertise a ULA or PLA for its location, so a driver, seeing a billboard or advertisement containing a ULA or PLA address, could input that address and be directed to the restaurant location. Because of the unique style of the addresses and features of the subject invention, these addresses are particularly easy to input with a minimum chance of error, decreasing the risk of accidents and increasing the likelihood of going to the desired location. EXAMPLE 6:
Third, the subject invention is particularly well suited for customization by individual or team users, facilitating intra-group communication and navigation. For example, if a group of hikers desires to split up and explore a particular area, they each could set their portable navigation devices to reference a custom grid with an appropriate grid size and location for the explorable area that allows sufficient resolution with a minimum number of digits or characters. Now, as the hikers communicate with each other or record interesting locational information, the data may be easily and accurately used and referenced to a meaningful location. This ability to set a user-defined reference point and grid size would also be useful for rescue teams performing search and rescue operations by allowing the search and rescue team to instantly establish a grid size and location for any search.
EXAMPLE 7:
Fourth, the subject invention has emergency utility. For example, if a hiker above needs emergency assistance, the navigational system can provide a locational ULA that is easy to read and communicate by voice or numeric only key pad, which reduces both the ambiguity, risk and time involved in describing an emergency location. Alternatively, this ULA may be automatically communicated to emergency personnel if the navigational system integrates with a portable phone, two way pager, or other portable communication device.
EXAMPLE 8:
An example illustrating the use of PLAs and ULAs in a specific geographical context, Yosemite National Park, will now be described. FIG. 6 illustrates a paper map with an assigned name of CA.YSB (indicated by identifying numeral 111). Within the boundaries represented on this map, the following PLAs have been reserved:
Description of
PLA Location Corresponding FIG. 6 identifying numeral HFDM Half Dome 115
1 Ahwahnee Hotel 112
GCRP Glacier Point 114
YSMF Lower Yosemite Fall 113
FIG. 7 illustrates a district with an assigned name of CA.YSM (indicated by identifying numeral 120). Within this district, the following PLAs have been reserved:
Description of
PLA Location Corresponding FIG. 7 identifying numeral
HCHY Hetch Hetchy 121
11 White Wolf 122
NENT Big Oak Flat Entrance 123
GCRP Glacier Point 126
WENT Arch Rock Entrance 124
BDGP Badger Pass 125
1 Wawona Information Center 128
SENT South Entrance 127
The following points should be noted from this example:
First, the name CA.YSB is for the specific map included in FIG. 6, and not for a district in which all of the area contained on the map is included. This feature allows assignment of specific PLA's for specific maps without regard to the district, thereby providing clarity in situations where the area covered by the map overlaps one or more districts. Second, the name CA.YSM is the name of the district in which the area included in the map in FIG. 7 is located, thereby allowing areas included within this map to be referenced by either PLAs (e.g. CA.YSM.HCHY) or ULAs (e.g. CA.YSM.32.84.23.43) without the need to re-identify the name of the district or map.
Third, the areas covered by the CA.YSM district and the CA.YSB map overlap, allowing PLA references to either the YSM district or the YSB map. (Note also that the system might also define YSB as a district which could be utilized in determining ULA's with reference to the YSB district, in which case the YSB and YSM districts would also partially overlap.)
Fourth, the PLA's for particular locations may either be identical except for the district name (e.g. GCRP in FIG. 6 and GCRP in FIG. 7 refer to the same location) or identical PLA's may apply to different locations in different districts or on different maps (e.g. "1" in FIG. 6 and "1" in FIG. 7 refer to different locations on each of the respective maps). This is consistent with the principle that a PLA need only be unique within the district in which it is defined.
All of the features described in this example are designed to allow an initial manual or electronic input (either a district code, cell code, or specific map code) which allows users to use PLA's or ULA's identified on a specific map with a minimum number of keystrokes, thereby minimizing data entry, confusion, and ambiguity.
* * *
EXAMPLES OF SOFTWARE IMPLEMENTATION
Examples 9, 10, and 11 demonstrate certain characteristics of files, pseudo-codes, and program screens of particular embodiments of the invention. (Note that the data contained in the files is provided for illustrative purposes only). EXAMPLE 9:
In this example, formats of specific files that are used in one implementation of the subject invention are described. Four files are described: GO2CITY.DAT, STATES.DAT, PROPGO2.DAT, and COUNTRYS.DAT.
The GO2CITY2.DAT file, illustrated in FIGS. 8a-8b, defines the reference points for a plurality of pre-defined districts centered around specific cities. For each reference point, there is provided the name of the district, the name of the reference point, and the global coordinates of the reference point. Thus, the first entry of this file "AK, ANC, Anchorage, 149W54, 6 IN 13," indicates that there is a district in the state of Alaska centered around Anchorage, with the reference point thereof having the following global coordinates: 149W54,61N13.
The STATES.DAT file, illustrated in FIG. 9, simply defines the mnemonics used in GO2CITY2.DAT to define states.
The PROPGO2.DAT file, illustrated in FIGS. lOa-lOc, defines the proprietary names which have been reserved for each district. This file correlates each such proprietary name with the global coordinates associated with that name. Thus, the first entry of this file, "US.CA.NWB.MAC2, 117W52.360, 33N39.549" indicates that, in a district centered around Newport Beach, California, there is a MacDonalds having the following global lat/lon coordinates address: 117W52.360, 33N39.549.
The COUNTRYS.DAT file, illustrated in FIG. 11, simply defines the country mnemonics used in PROPGO2.DAT.
EXAMPLE 10:
This example illustrates screen formats as displayed on an output device in an implementation of the subject invention. FIG. 12a is a screen illustrating the input of a ULA or grid address into a navigational system, with the system determining and outputting corresponding latitude and longitude coordinates. FIG. 12b illustrates the input of a PLA, with the system determining and outputting corresponding latitude and longitude coordinates. FIG. 12c illustrates the capability of the system to interpret the context, i.e. district address, of previous addresses, and to assume that the same distinct addresses applies to subsequent specific addresses until notified otherwise. In this specific example, the proprietary name MAC2 was input, with the system assuming that the district name associated with the previous example relating to MAC1, i.e., the CA.NWB. district name, applied to this example as well. Thus, in FIG. 12c, only the identifier "MAC2" need be input to the system, it being assumed that the district identifier "CA.NWB" applies to this request as well.
EXAMPLE 11 :
This document is a functional description of a computer program, Go2Grid, which embodies one or more aspects of the subject invention. The program is written in the "C++" programming language and its purpose is to demonstrate the feasibility of conversion between city grid and proprietary codes and geodetic coordinates.
Program flow is described using a series of pseudo-code statements. The functions required to perform these tasks are described. The data variable types and structures are defined. The parameters required for implementation of two possible city grid designators are defined.
Program Flow
Set all defined parameters to their default values
Northern latitudes are positive
Eastern longitudes are negative
The assumed geodetic datum is World Geodetic System 1984 (WGS-84)
The last geodetic position is used to initialize the City Grid designator.
The user screen is initialized
Monitor keystrokes or navigation receiver input
For any City Grid designator change Parse user input
If change in City Code
Compute city position from designator
Fill City Code
Fill Country and State Codes
If change in State Code
Fill Country and State Codes
If change in Country Code
Fill Country Code
If change in entire City Grid Designator
If a Universal Go2 Code
Fill Country, State, City and Grid Codes
If a Proprietary Go2 Code
Fill Proprietary Code
Compute geodetic coordinates for this Go2 Designator
For any change in geodetic coordinates
Parse user input
If user has requested a Universal Code
If current geographic context is changed
Get Go2 Codes from latitude and longitude
Find closest city Set new City Grid center
Fill Country, State, City codes
Compute City Grid Codes for each level of precision
Reset User Screen display
Continue
Functions
The following functions are used by the Go2Grid sample program, an embodiment of the city grid concept:
getdeg() extracts decimal degrees from character strings
grange() computes geodetic range between two positions
dmsdeg() extracts degrees, minutes, seconds from decimal degrees
degdms() forms decimal degrees from degrees, minutes, seconds
getcenter() computes geodetic coordinates of City Grid center from city
centroid
getgridO computes City Grid codes for level of precision
getkeys() parses user keyboard input
parsego2() parses Go2 City Grid designator
addlatlon() concatenates next level of precision onto geodetic coordinates
getnextcityO finds next city in current state/province list
getprevcity() find previous city in current state/province list getcost() fills Go2 City Grid designator with country and state/province
codes
putscreen() fills display with current city Grid designator and geodetic
coordinates
getnextstate() finds next state/province in current country list
getprevstate() find previous state/province in current country list
Types and Structures
The Go2Grid embodiment sample program defines the following variable structures in addition to the usual character, integer, float, and double types:
typedef struct ccstruct { char city_code[4]; char city [60]; char state_code[3]; char state [60]; char country_code[3]; char country [60]; char longitude[32]; char latitude[32]; double lat; double Ion; double centerlat; double centerlon;
};
typedef struct latlonstruct { int latdeg; int latmin; int latsec; int londeg; int lonmin; int lonsec;
};
Program Definitions
The following definitions are used within the Go2Grid sample program:
/* grid types */
/* a gridtype == 1 is numeric with 10 minutes, 1.0, 0.1, and 0.001 grids */
/* a gridtype == 2 is alphanumeric with 10, 0.5, 0.05 and 0.0025 grids */
#define GRIDTYPE 1
#define TITLE "Go2 and Geographic Coordinate Converter"
#define VERSION "(4/3/96)"
/* lines */
#defme TITLELINE 1 #defme GO2CONTEXTLINE 5 #defme GEOCONTEXTLINE 10 #defme HELPLINE 15 #defme MESSAGELINE 18 #define COUNTRYLINE 20 #define STATELINE 21 #define CITYLINE 22 #define GO2LINE 23 #define LATLINE 24 #define LONLINE 25 #define INCOL 23 #define OUTCOL 5
#if GRID TYPE==l
/* GRID GRAIN */
#define GRIDKIND "Numeric City Grid"
#defme GRIDDEF "Grid Precision: Level 1=1.0'; Level 2=1.0'; Level 3=0.1'; Level =0.01*" #define GRIDCHARS "Designators Levels 1, 2, 3 and 4: [01232456789]"
#define LEVEL 1_EGRAIN 10.0 #define LEVEL 1_NGRAIN 10.0 #define LEVEL 1_ECHARS "0123456789" #define LEVEL 1_NCHARS "0123456789"
#define LEVEL 1 EGRIDS 10 #define LEVEL 1 NGRIDS 10
#define LEVEL 2_EGRAIN 1.0 #define LEVEL 2_NGRAIN 1.0
#define LEVEL 2_ECHARS "0123456789" #define LEVEL 2_NCHARS "0123456789" #define LEVEL 2 EGRIDS 10 #define LEVEL 2_NGRIDS 10
#define LEVEL 3_EGRAIN 1.0 #defme LEVEL 3_NGRAIN 0.10 #defme LEVEL 3_ECHARS "0123456789"
#define LEVEL 3_NCHARS "0123456789" #define LEVEL 3_EGRIDS 10 #define LEVEL 3_NGRIDS 10
#defme LEVEL 4_EGRAIN 0.010
#defme-LEVEL 4_NGRAIN 0,010
#define LEVEL 4_ECHARS "0123456789"
#define LEVEL 4_NCHARS "0123456789"
#define LEVEL 4_EGRIDS 10 #define LEVEL 4_NGRIDS 10
#else if GRIDTYPE==2
#defme GRIDKIND "Alphanumeric City Grid"
#defme GRIDDEF "Grid Precision: Level 1=10*; Level 2=0.5'; Level 3=0.05'; Level 4=0.0025'"
#define GRIDCHARS "Designators Levels 1&3: [01232456789]; Levels 2&4: [ABCDEFGHJKLMNPRSTUVW]"
/* GRID GRAIN */
#define LEVEL 1_EGRAIN 10.0
#define LEVEL 1_NGRAIN 10.0 #define LEVEL 1_ECHARS "0123456789" #defme LEVEL 1_NCHARS "0123456789" #defme LEVEL 1 EGRIDS 10 #define LEVEL 1_NGRIDS 10
#define LEVEL 2_EGRAIN 0.5 #define LEVEL 2_NGRAIN 0.5 #define LEVEL 2_ECHARS "ABCDEFGHJKLMNPRSTUVW"
#define LEVEL 2_NCHARS "ABCDEFGHJKLMNPRSTUVW" #define LEVEL 2_EGRIDS 20 #define LEVEL 2_NGRIDS 20
#define LEVEL 3_EGRAIN 0.05
#define LEVEL 3_NGRAIN 0.05
#define LEVEL 3_ECHARS "0123456789"
#defme LEVEL 3_NCHARS "0123456789"
#defme LEVEL 3_EGRIDS 10 #define LEVEL 3_NGRIDS 10
#defme LEVEL 4_EGRAIN 0.0025 #define LEVEL 4_NGRAIN 0.0025
#define LEVEL 4_ECHARS "ABCDEFGHJKLMNPRSTUVW" #define LEVEL 4_NCHARS "ABCDEFGHJKLMNPRSTUVW"
#define LEVEL 4_EGRIDS 20 #define LEVEL 4_NGRIDS 20 #endif DESCRIPTION OF PREFERRED EMBODIMENTS OF THE INTERNET BASED AUTOMATIC LOCATION SYSTEM
FIGS. 13-22 are used to describe a preferred embodiment of an automatic location system using the geographical referencing system described above. For purposes of the remainder of this specification, the geographical referencing system described above in FIGS. 1-12, is hereinafter referred to as the "Go2 grid" coordinate or referencing system. It should be noted that although this aspect of the present invention could be implemented with other types of geographical referencing systems, it is preferably implemented with the Go2 grid system to take advantage of the features described herein.
FIG. 13 depicts an operational environment of the automatic location aspect of the present according to a preferred embodiment. A portable-computing device 1302 is installed in a mobile unit such as an automobile 104. Alternatively, the portable- computing device 1302 may be carried on the person of individual users. In yet another embodiment, the present invention can be implemented using a non-portable computing device such as a general-purpose desktop computer or the like.
However, for the purposes of this example, the device 1302 is referred to as the portable-computing device. In one embodiment, the portable-computing device 1302 receives data from Global Positioning System (GPS) satellites 1310 for location identifying purposes. This is one example of a means for automatic location identification, as shown by block 1301 labeled "ALI Example 1." A second example of a means for automatic location identification is shown as block 1303 labeled "ALI Example II." ALI Example II 1303 is intended to represent a means for automatically identifying the location of a device, such as device 1302, via a cellular transmission. Example II 1303 typically uses triangulation techniques in conjunction with at least two cellular base stations, or distance measuring techniques from three cellular base stations, such as the base station 1306.
Additional means for ALI can also be used in alternate embodiments of the present invention. For example, the automatic identification signals commonly used in land-line telephonic devices ("ANI" and the like), can be used in conjunction with a database lookup table to identify a callers fixed location.
In any case, any well-known means for automatically identifying a caller's geographical location can be used in various embodiments of the present invention. In fact, future methods, not yet known, but used for identifying the location of a mobile unit, such as the mobile unit 1302, are within the scope of the present invention. Accordingly, the use of the examples of a cellular network and a GPS system should not be construed to limit the scope and breadth of the present invention.
The portable-computing device 1302 has the capability for wireless communications. In this example, one use of the wireless communication feature is to connect the portable-computing device 1302 with a computer network, such as the Internet 1318. The wireless communication feature of the present invention is also used for providing standard telephony functions. In addition, as stated above, the wireless communication feature of the present invention can also be used to implement ALI functionality in accordance with the principals described herein.
In one example, cellular technology is used to implement the wireless communication feature of the present invention. In FIG. 13, the base station 1306 and the mobile switching office 1308 represents a portion of a typical cellular network. The base station 1306 sends and receives radio signals to and from the portable-computing device 1302. The mobile switching office 1308 is coupled to the base station 1306 via standard telecommunication transmission lines. Likewise, the mobile switching office 1308 is coupled to the public switched telephone network 1312 via standard telecommunication transmission lines. The public switched network 1312 is coupled to the Internet 1318 via a point-of-presence, which is typically implemented using high bandwidth T3 telecommunication channels or the like.
A primary server 1314 is coupled to the Internet 1318. The primary server 1314 is used to interface with the portable-computing device 1302 as described below. The primary server 1314 is coupled with a database or persistent storage device 1316. A plurality of enhanced servers 1315 are connected to the Internet 1318. The enhanced servers 1315 provide location specific data to the portable-computing device 1302. The primary server 1314 selects a particular enhanced server 1315 to be connected to the portable-computing device 1302 in accordance with a database query as described below.
Note that the present invention is described in terms of a primary server 1314 and one or more enhanced servers 1315. However, this does not mean that separate physical servers must be used to implement these functions. Indeed, a single server or multiple servers can be used to implement the functions of the primary server 1314 and the enhanced servers 1315 as described herein. Thus, the use of these terms should not be construed to limit the scope and breadth of the present invention to the physical configurations described in these exemplary embodiments.
The cellular network is just one example of a technology that can be used to implement the wireless communication feature of the present invention. In other embodiments, different types of wireless technology can be used, such as low orbit or geosynchronous orbit satellite communications. In fact, any type of wireless technology can be used to provide the wireless communication feature of the present invention.
Further, the Internet 1318 is used in a preferred embodiment of the present invention due to its wide use and availability. However, any type of computer network can be used in alternate embodiments of the present invention. As such, the use of the examples of a cellular network and the Internet 1318 should not be construed to limit the scope and breadth of the present invention.
Details of the portable-computing device 1302 are depicted in FIG. 14. Typically, the portable-computing device 1302 comprises a client computer 1404, a persistent storage device or database 1408, a display screen 1412, a keypad input device 1414, a speech interface 1418, an ALI device 1406, a wireless transceiver 1402 and a telephony device 1410.
Note that these components, such as the ALI device 1406 and/or the wireless transceiver 1402 may be imbedded within the portable-computing device 1302. Alternatively, such components may be implemented as discrete external devices coupled to the portable-computing device 1302 through external ports, such as RS-232, SCSI, USB ports or the like.
In addition, many of the components described above are optional and depend on each specific implementation of the present invention. For example, the speech interface 1418 and the ALI device 1406 are optional components. Embodiments of the present invention that operate without an ALI 1406 accept manual input of location information via the keypad 1414 or other input device.
Any type of general or special purpose computer system can be used to implement the portable-computing device 1302. Examples of such devices include standard laptop computers, automobile computers and personal digital assistant devices (PDAs). Typically the portable-computing device 1302 includes a CPU, local working memory, or RAM, non-volatile program memory, or ROM, and some form of non-volatile external memory for data storage 1408 such as any type of NVRAM, or magnetic or optical disk storage systems. An example of a general-purpose computer system that can be used to implement the present invention is described below with reference to FIG. 22.
The display screen 1412 is used to display output from the portable-computing device 1302. The keypad device 1414 is coupled to the portable-computing device 1302 and is used for inputting data. For example, location data can be manually input from the keypad device 1414.
In this example, a speech interface 1418 is also coupled to the portable-computing device 1302. The speech interface 1418 uses voice recognition techniques to accept spoken commands from users for controlling the portable-computing device 1302. The speech interface 1418 is used in a preferred embodiment to allow users to control the computer 1404 via spoken voice commands for promoting safe driving conditions while operating the portable-computing device 1302 from an automobile or the like.
The persistent storage device 1408 is used to store application programs such as a web browser and one or more specialized application programs used to implement the present invention as described in detail below. Such application program(s) is/are referred to herein as the "Go2 Application program," which is described in detail below. In addition, location and other information are stored as data packets on the local persistent storage device 1408, as described in detail below. Depending on the storage capacity of the persistent storage device 1408, one or more database lookup tables can be stored therein and used for translating, for example, between a lat/lon coordinate system and the Go2 grid coordinate system. However, all systems that are enabled in accordance with the present invention will generally have the capability to translate between a lat/lon coordinate system and the Go2 grid system using the universal addressing scheme as described above. Additional storage requirements are needed to translate to and from the Go2 grid system using proprietary addresses.
The wireless transceiver 1402 is used to send and receive data between the portable-computing device 1302 and other devices such as the servers 1314 and 1315 coupled to the Internet 1318.
The ALI device 1406 is used to track the position, and possibly the speed and bearing of the portable-computing device 1302. As stated above, any device can be used that performs ALI functionality. Examples of well-known ALI devices are GPS systems, low orbit satellite systems, geosynchronous orbit satellite systems, telephone number identification systems, cellular network triangulation methods, etc. In this example, telephone number identification systems (ANI) can be used in conjunction with a database lookup table to determine predefined fixed positions of users based on an assigned telephone number.
FIG. 15 is a block diagram depicting functional components of an application program or program(s) running on the portable-computing device 1302 in accordance with an embodiment of the present invention. As stated, the application program(s) is/are referred to herein as the "Go2 application program" 1500.
The Go2 Application program 1500 is provided with a web browser component 1502. The web browser component 1502 is used to perform web browser functions for the portable-computing device 1302. In fact, in one embodiment, a standard web browser is used to implement the web browser component 1502 of the present invention. Alternatively, customized web browser code can be imbedded into the Go2 Application program 1500. In either case, the web browser module 1502 provides standard web browser functions. Such functions would be apparent to persons skilled in the relevant art(s). As shown, the web browser component 1502 is coupled to a web server 1510.
Accordingly, the web browser module 1502 interprets data streams sent from the server 1510 and displays text and/or graphics therefrom. The text and/or graphics are displayed on the display screen 1412. The web browser component 1502 also accepts input from users via the keypad 1414 or other input devices. Preferably, the data streams transmitted by the server 1510 are in a standard format, such as HTML, a modified version of HTML or the like. In this fashion, generic web-browsing tools can be used to interface with the web server 1510 and the U/I module 1506 (see below) of the present invention.
The User Interface (U/I) module 1506 is coupled with the web browser module 1502. The U/I module 1506 is used to prompt the user for information including user preferences and category selections to be used for subsequent information requests, (i.e. on-line database queries) as described below. The U/I module 1506 preferably performs at least some functions locally. That is, at least some functions provided by the U/I module 1506 are performed without a live connection to the server 1510. These functions are referred to herein as "local functions" and are described in detail below. For example, one local function provides a menu that is displayed which allows users to select from a list of predefined categories. In this example, users select a category of interest for formulating a database query that is to be used in a subsequent on-line session with the primary server 1314. Details of this aspect of the present invention are described below.
A data packet builder and parser module 1504 (hereinafter "data packet module") is coupled to the U/I module 1506. The data packet module 1504 is used to construct data packets, which are stored on the local storage device 1408. These data packets are subsequently read by the server 1510 and used to formulate on-line database queries. The data packet module also parses data packets received from the server 1510. Details and examples of data packet contents are described below. An ALI polling module 1508 is used to poll the ALI device module 1510. The ALI device 1406 provides location, bearing and speed information to the Go2 Application program 1500. This information is then used to build data packets that are stored in the local data storage device 1408. Details of a process that can be used to implement the ALI polling module 1508 is described below.
FIG. 16 is a flowchart that generally describes an overall process in accordance with an embodiment of the present invention. The process begins with step 1602. In step
1602 the process determines the current location. The current location can be automatically determined from an ALI device 1406, or can be manually input from the user. After the current location is determined, control passes to step 1604.
Next, in step 1604, the process determines the desired location and specific database query. The U/I module 1506 may be used to present the user with one or more selectable menu choices. Alternatively, in one embodiment, the U/I module recognizes numerous requests based on commonly used terms such as "burgers," "shopping," "banks," or the like. In this fashion, the user can formulate a complex database query by simply picking and choosing among the menu items presented or the user may perform a simple database query by merely inputting one or more common terms.
For example, the user may wish to formulate a database query for finding all fast- food restaurants within a five-mile radius. The desired location may be different from the current location, if for example, the user specifies some time in the future. For example, the user may wish to find fast-food restaurants within five-mile radius from a location one hour in the future. In this example, the process can use the current location, current speed_ and bearing to predict the desired location. In another example, a routing program can be used to determine the desired location based on a pre-defined route input by the user.
Next, in step 1606, the desired location is converted to the Go2 grid coordinate system, if necessary. For example, GPS devices typically use the geodetic latitude and longitude system for describing location data. In this case it may be necessary to convert to the Go2 grid coordinate system in order to take advantage of the unique features of the referencing system as described herein. In another example, a user may manually input location information. Again, such manual input is preferably entered in the Go2 grid coordinate format because of its ease of use lower susceptibility to errors. If Go2 data is entered directly, either manually or by the ALI device 1406, then step 1606 is bypassed.
Next, in step 1608 the current location information and the database query information is stored in the local storage device 1408. Typically, this information is stored in a pre-defined data format referred to herein as a "data packet." The format of a typical data packet is described below. Next, in step 1610, the portable-computing device 1302 connects to the primary server 1314.
In step 1611, the primary server 1314 reads the data packet stored in step 1608.
From this information, a database query is formed as indicated by step 1618. Next, in step 1620, the process retrieves the results from the database query and sends them to the client, as indicated by step 1620. The process ends with step 1622.
FIG. 17 is a flowchart depicting a process that can be used to implement a portion of the Go2 Application software 1502. The process begins with step 1702. In step 1702, the U/I module 1506 offers the user one or more options for specifying how location information is to be determined. Typically, if an ALI device is attached, it is used to automatically provide location information to the Go2 Application software 1500. Alternatively, one or more additional methods for specifying location information are typically offered. In this example, as indicated by the block 1701, the user has the option to specify that the process retrieve location information from the attached GPS receiver. In one example, the user can select between the current GPS location and a projected location based on a specified elapsed time.
In addition, predefined locations, such as home or office can be specified. Typically, the location coordinates are preprogrammed as a user preference. In a preferred embodiment, the Go2 grid coordinate system is used to specify such pre-programmed user preferences. Alternatively, in this example, the user can access a map in which to specify a location. The map database can either be provided locally by the client 1404, or can be provided remotely through a connection with a server 1510. In another example, a routing program (either on-line or locally) can be used to project future locations and to specify one or more waypoints along a pre-defined route. In addition the user has the option to manually specify location information. Advantageously, manual input is in the form of the Go2 coordinate system.
It should be noted that block 1701 lists a few examples of the types of parameters that can be specified by users for determining location information in accordance with a preferred embodiment of the present invention. Alternate embodiments may comprise selections that are very different from the examples provided herein. The actual contents of menu items displayed by the U/I module 1506 depend on each specific implementation of the present invention. As such, the examples used herein should not be construed to limit the scope and breadth of the present invention.
In any case, once location information is specified in step 1702, control passes to step 1703. In step 1703 the U/I module 1506 prompts the user for criteria used to formulate a subsequent on-line database query. In this example, the user selects a category of interest, one or more category features, a search radius and other selection criteria. One method that can be used to implement this step is to display a selectable menu to the user as shown in block 1704. The U/I module 1506 is used to perform this function.
For example, the menu 1704 comprises category selections such as: restaurants; banks; ATM machines; hotels; copy centers; libraries; museums; gas stations; weather reports; car dealers; auto repair shops; maps; directory assistance; police stations; hospitals and the like. In this fashion, for example, the user can find nearby restaurants by first selecting the corresponding category of interest, as shown in block 1704.
In addition, the menu shown in block 1704 allows users to specify one or more features associated with the selected category. Feature selections narrow or drill-down the subsequent database search. For example, the user may only be interested in restaurants that accept a particular type of credit card, have a particular dress code, or provide goods within a particular price range. Accordingly, the user narrows the subsequent database search by simply selecting one or more appropriate features associated with the selected category. Multiple levels of category features can be presented based on the needs and requirements of each specific implementation of the present invention.
Another parameter that is preferably specified by the user is a search radius. For example, the user can specify that the search only include points of interest within a particular radius from the current or desired location.
It should be noted that these are just some examples of the types of parameters that can be specified by users in accordance with a preferred embodiment of the present invention. Alternate embodiments may comprise menu items that are very different from the examples provided herein. The actual contents of menu items displayed by the U/I module 1506 depend on each specific implementation of the present invention. As such, the examples used herein should not be constmed to limit the scope and breadth of the present invention.
Preferably, users can also define one or more user preferences. These user preferences are used as default parameters if they are not over-ridden by current selections. In this fashion, user input is minimized.
Once the database query parameters are specified, control passes to step 1705. In step 1705, the process determines whether the location information is the Go2 grid system format. If it is not, it is converted to the Go2 grid coordinate system in step 1706. In one embodiment, this conversion takes place locally. In another embodiment, the primary server 1314 performs the conversion upon connection with the client 1404. Next, in step 1707 a data packet 1708 is created. This data packet 1708 is then stored on the local storage device 1406.
In one example, the data packet comprises the following information as depicted by block 1708. The current location, including the speed and bearing, if available. As stated, depending on the specific implementation of the present invention, this may or may not be in the Go2 grid coordinate system format. If it is not, the primary server can convert it into the Go2 coordinate grid system. As indicated by item 4, an estimate for an intended route, based on an elapsed time may be included in the data packet. For example, a user may wish to stop for the night in one hour from the present time. In this example, an estimate of a future location may be included in the data packet. The client 1404 or the server 1314, depending on each specific implementation of the present invention, can perform the future location prediction. If the server 1314 performs the location prediction, a time period is specified in the data packet 1708.
In addition, routing information may also be specified as indicated by item 5. A routing program or the like can provide this information. If routing information is not given, a projected location is determined based on the present position, speed and bearing. Of course, if routing information is not provided, the server 1314 assumes the user will remain on the current road for the specified elapsed time. Further, the server can use additional information, such as traffic and/or weather conditions to provide more accurate predictions. This additional information can originate from anywhere on the Internet 1318 or from an Intelligent Transportation System.
As indicated by item 6, predefined user preferences are also included in the data packet 1708. This can include, for example, information such as whether the user is on a business trip or on vacation. User preferences are used to further narrow the database query. For example, if the user is looking for hotel accommodations, the program can find appropriate selections based on whether the user is on business or vacation. Preferably, the user preferences are entered one time and are not changed for every database query to minimize input requirements.
Item 7 represents preferences that override predefined user preferences for the duration of the next database query. Thus, for example, a pre-defined user preference may be to find places or interest that are within 5 miles. This user preference generally applies to every database query. However, because the user is currently driving in a rural area, the user may prefer to focus a search in a wider radius, say 20 miles. The next time the user launches a database query, if the radius is not specified, it reverts back to the 5-mile user preference value. Item 8 represents other database query parameters that may be present. It should be noted that the above items that comprise the data packet 1708 are just a few examples of the type of data that may comprise a data packet in accordance with a preferred embodiment of the present invention. Alternate embodiments may comprise very different data items than the above examples. As such, the examples used herein should not be constmed to limit the scope and breadth of the present invention.
FIG. 18 is a flowchart depicting a process that can be used to implement a process performed by the primary server 1314 upon connection with the client 1404. Step 1802 represents a step where the client 1404 connects with the server 1314. Next, in step 1804, the server 1314 determines if a data packet 1708 is available on the client data storage device 1408. If a data packet is available, the location information is extracted therefrom, as indicated by step 1810. Control next passes to step 1814, which is described below.
If it is determined in step 1804, that a data packet is not available, control passes to step 1806. In step 1806 the user is offered an opportunity to download the Go2
Application software 1500. Next, as indicated by step 1808, control passes to step 1824 if the user accepts the offer to download the Go2 software 1500. In step 1824, the Go2
Application software is downloaded to the client 1404.
Next, in step 1826, the Go2 Application software 1500 is executed on the client 1404. During the execution of the Go2 Application software 1500, the user inputs user preferences, location specifications and other database query parameters, as described above. After such information is entered, the Go2 Application software 1500 creates a data packet 1708 and stores it on the data storage device 1408. After this occurs, control passes back to step 1802 as described above. Now the user is enabled so that he or she can take advantage of the automated features of the present invention.
As indicated by step 1808, if it is determined that the offer to download is rejected, control passes to step 1811. In step 1811, the user is provided with one or more web pages that accept location information, user preferences and the like in a manner similar to that described above with reference to the Go2 Application U/I module 1506. In this fashion, the primary server 1314 can provide services to users that are not enabled with the Go2 Application software 1500. Next, in step 1812, the primary server 1314 reads the location information entered in step 1811. Control next passes to step 1814.
In step 1814, the location information, (either manually entered in step 1811, or automatically extracted from the data packet in step 1810), is converted to the Go2 grid coordinate system, if necessary.
Next, in step 1814, the server 1314 performs a database query. The object of the database query is to find an appropriate server 1315 that provides the type of service requested by the user. This aspect of the present invention is described in detail below, with reference to FIG. 19. The process ends as indicated by step 1822.
FIG. 19 is a flowchart and block diagram useful for describing the interaction and processing between the client 1404, the primary server 1314 and an enhanced server 1315. The process begins with step 1902. In step 1902, the user selects a category of interest and other data from the menu 1701 as described above.
Next, In step 1904, the data packet module 1504 builds the data packet 1708. The data packet 1708 is then stored on the local storage device 1408. Next, as indicated by step
1906, the data packet 1708 is transmitted to the server 1314. At this point the primary server 1314 parses the data packet 1708 and formulates a database query on the database
1316.
In accordance with one embodiment of the present invention, the persistent storage device 1316 contains a list of the enhanced servers 1315 that provide location specific information in accordance with the present invention. In particular, the primary server
1314 searches its database 1316 and retrieves a specific Uniform Resource Locator
("URL") that satisfies the database search criteria entered by the user, as described above.
It should be noted that the enhanced 1315 servers are preprogrammed to provide data that is customized in accordance with a specified location. Thus, the enhanced servers are preprogrammed to accept and respond to a location identifier, preferably in the Go2 grid coordinate system. Next, in step 1912, the client 1404 receives a second data packet 1914. The second data packet 1914 comprises the URL result from the data base query, plus any other additional information that may be required by the enhanced server 1315, as specified in the database 1316.
Next in step 1916, the Go2 Application launches the web browser component 1502 and automatically connects to the URL received in the data packet. Specifically, the browser is programmed to accept the URL as the default page so that it is automatically loaded upon connection to the Internet 1318.
It is noted that the present invention is described in terms of a primary server 1314 and a plurality of enhanced servers 1315. In this first embodiment, the primary server performs a database search that results in an address for an enhanced server that can satisfy the customer's database query. However, the present invention is not restricted to this configuration. An alternative embodiment comprises a plurality of enhanced servers but no primary server.
For example, in one embodiment, the Go2 Application software 1500 provides the services provided by the primary server 1314 in the above example. In another embodiment, the user determines which one of the enhanced servers to connect to. In this example embodiment, each of the enhanced servers 1315 is preprogrammed to parse the data packet 1708 and extract location information therefrom, as described above.
FIG. 20 is a flow chart that is useful for describing a method that can be used in the
Go2 Application program to implement a feature of the present invention for automatic location data collection. The flowchart in FIG. 20 represents an endless loop and therefore has no defined beginning or end point.
As indicated by step 2002, the process determines whether an ALI device 1406 is attached. If an ALI device 1406 is attached, control passes to step 2006. In step 2006 the
ALI device 1406 is polled to retrieve location data therefrom. Next, in step 2010, the process determines whether the retrieved location data indicates a change from the previous poll. If step 2010 indicates that the location has not changed (i.e. the user is not moving), control passes to step 2004, where the process sleeps for a predetermined time period until it repeats itself in step 2002.
If step 2010 indicates that the location has changed, control passes to step 2012. In step 2012 the process determines if the client 1404 is on-line. If so, control passes to step 2014. If the client is not on-line, control passes back to step 2004.
In step 2014, the process determines if a server 1314 is currently requesting that location data be updated. The server in this example, can be any server, such as the primary server 1314 or any enhanced servers 1315. If the server is requesting updated location information, the current position, preferably in the Go2 grid format, is transmitted to the server in step 2016. If the server is not requesting an update, control passes back to step 2004.
As indicated by the blocks 2020 and 2024, the server uses the Go2 location information for performing a database query. The results are then sent back to the client and as indicated by block 2026.
An advantage of the present invention is that users can benefit from the virtually unlimited storage capacity and real-time updates of the Internet 1318. Because the Internet 1318 is used in a distributed fashion to provide users with customized location related information, the information provided to users can be as detailed as desired. For example, in addition to using maps to determine driving directions, more detailed information, such as site plans, building floor plans, photographs of the destination, private road configurations and the like can be presented to users.
In addition, because the direction in which the user is traveling can be determined, that information can be used to select a proper orientation for the extended information, such as a site plan, for example. FIG. 21 depicts an example of a site plan that shows building configurations, parking lots, etc. In this example, the site plan in FIG. 21 is stored as digitized photograph. The orientation of the digitized photograph displayed to the user depends on the user's direction of travel so that the proper orientation is displayed. The present invention may be implemented using hardware, software or a combination thereof and may be implemented in a computer system or other processing system. In fact, in one embodiment, the invention is directed toward a computer system capable of carrying out the functionality described herein. An example computer system 2201 is shown in FIG. 22. The computer system 2201 includes one or more processors, such as processor 2204. The processor 2204 is connected to a communication bus 2202. Various software embodiments are described in terms of this example computer system. After reading this description, it will become apparent to a person skilled in the relevant art how to implement the invention using other computer systems and/or computer architectures.
Computer system 2202 also includes a main memory 2206, preferably random access memory (RAM), and can also include a secondary memory 2208. The secondary memory 2208 can include, for example, a hard disk drive 2210 and/or a removable storage drive 1012, representing a floppy disk drive, a magnetic tape drive, an optical disk drive, etc. The removable storage drive 2212 reads from and/or writes to a removable storage unit 2214 in a well-known manner. Removable storage unit 2214, represents a floppy disk, magnetic tape, optical disk, etc. which is read by and written to by removable storage drive 2212. As will be appreciated, the removable storage unit 2214 includes a computer usable storage medium having stored therein computer software and/or data.
In alternative embodiments, secondary memory 2208 may include other similar means for allowing computer programs or other instructions to be loaded into computer system 2201. Such means can include, for example, a removable storage unit 2222 and an interface 2220. Examples of such can include a program cartridge and cartridge interface (such as that found in video game devices), a removable memory chip (such as an EPROM, or PROM) and associated socket, and other removable storage units 2222 and interfaces 2220 which allow software and data to be transferred from the removable storage unit 2222 to computer system 2201.
Computer system 2201 can also include a communications interface 2224.
Communications interface 2224 allows software and data to be transferred between computer system 2201 and external devices. Examples of communications interface 2224 can include a modem, a network interface (such as an Ethernet card), a communications port, a PCMCIA slot and card, etc. Software and data transferred via communications interface 2224 are in the form of signals which can be electronic, electromagnetic, optical or other signals capable of being received by communications interface 2224. These signals 2226 are provided to communications interface via a channel 2228. This channel 2228 carries signals 2226 and can be implemented using wire or cable, fiber optics, a phone line, a cellular phone link, an RF link and other communications channels.
In this document, the terms "computer program medium" and "computer usable medium" are used to generally refer to media such as removable storage device 2212, a hard disk installed in hard disk drive 2210, and signals 2226. These computer program products are means for providing software to computer system 2201.
Computer programs (also called computer control logic) are stored in main memory and/or secondary memory 2208. Computer programs can also be received via communications interface 2224. Such computer programs, when executed, enable the computer system 2201 to perform the features of the present invention as discussed herein. In particular, the computer programs, when executed, enable the processor 2204 to perform the features of the present invention. Accordingly, such computer programs represent controllers of the computer system 2201.
In an embodiment where the invention is implemented using software, the software may be stored in a computer program product and loaded into computer system 2201 using removable storage drive 2212, hard drive 2210 or communications interface 2224. The control logic (software), when executed by the processor 2204, causes the processor 2204 to perform the functions of the invention as described herein.
In another embodiment, the invention is implemented primarily in hardware using, for example, hardware components such as application specific integrated circuits (ASICs). Implementation of the hardware state machine so as to perform the functions described herein will be apparent to persons skilled in the relevant art(s).
In yet another embodiment, the invention is implemented using a combination of both hardware and software. While embodiments and applications of this invention have been shown and described, it would be apparent to those in the field that many more modifications are possible without departing from the inventive concepts herein. The invention, therefore, is not to be restricted except in the spirit of the appended claims.

Claims

What is claimed is:
1. A method for automatically providing informational services based on a geographical location of a client computer system, wherein said informational services are provided by a server attached to a computer network, said method comprising the steps of:
executing an application program on said client computer system for collecting user data and location information representative of the geographical location of the client computer system;
constructing a data packet comprising said user data and location information: connecting to the server; transmitting said data packet to the server; parsing said data packet to extract said user data and location information; formulating a database query from said user data and location information; issuing a database query on a database coupled to the server; and downloading a result from said database query relating to the geographical location of the client computer system to said client.
2. The method of claim 1, wherein said location information is provided by an automatic location identifying device.
3. The method of claim 2, wherein said automatic location identifying device is a Global Positioning Satellite receiver.
4. The method of claim 2, wherein said automatic location identifying device is based on a wireless cellular network connection.
5. The method of claim 1, wherein said location information is manually provided by a user.
6. The method of claim 1, wherein said data packet comprises a location, a category or interest, a search radius and user profile information.
7. The method of claim 1 , wherein said result from said database query comprises information that is customized for a particular location based on said location information.
8. The method of claim 1 , wherein said result from said database query includes a network address of an enhanced server.
9. The method of claim 1 , wherein said computer network is the Internet.
10. The method of claim 1, further comprising the steps of: reading said result from said database query to extract a network address of an enhanced server and;
connecting to said enhanced server to receive relevant information based on said location information.
11. The method of claim 9, further comprising the steps of: reading said result from said database query to extract a URL associated with an enhanced server;
launching a web browsing program; and connecting to said enhanced server to receive one or more web pages representing relevant information based on said location information.
12. The method of claim 1 , further comprising the steps of: converting said location information into a grid coordinate system comprising a plurality of pre-defined grids, each of said grids corresponding to a geographical area and having:
a plurality of cells; a reference location; global coordinates of said reference location; and at least one parameter defining cell size and orientation.
13. The method of claim 1 , wherein said application program comprises a user interface module, a web browser module, a data packet module and an ALI polling module.
14. The method of claim 13, wherein said user interface module comprises the steps of:
location prompting for accepting parameters for defining a particular location; and user preference prompting for accepting one or more user preferences.
15. The method of claim 14, wherein said step of user preference prompting includes allowing a user to select a category of interest comprising one or more topics, destinations, or information categories.
16. The method of claim 14 wherein said step of location prompting includes the step of prompting a user to specify whether said location information is to be input manually or automatically through said ALI device.
17. The method of claim 14, wherein said step of location prompting includes the step of prompting the user to specify whether said location information is based on a current or projected location.
18. The method of claim 17, wherein said projected location is based on a user specified elapsed time, a current speed, a current bearing and current road topology.
19. The method of claim 17, wherein said projected location is based on information that is relayed to an Intelligent Transportation System.
20. The method of claim 17, wherein said projected location is based on a specified elapsed time and a pre-defined route.
21. The method of claim 20, wherein said pre-defined route is specified using a routing program.
22. The method of claim 21 , wherein said routing program is executed on the client computer system.
23. The method of claim 21 , wherein said routing program is executed on the server.
24. A method for automatically providing informational services relevant to a geographical location of a client computer system, wherein said geographical location is described in terms of a grid referencing system comprising a plurality of pre-defined grids, each of said grids corresponding to a geographical area and having a plurality of cells, a reference location, global coordinates of said reference location, and at least one parameter defining cell size and orientation, said method comprising the steps of:
executing an application program on said client computer system for collecting user data and location information representative of the geographical location of the client computer system;
constructing a data packet comprising said user data and location information; connecting to a server coupled with a computer network; transmitting said data packet to said server; parsing said data packet to extract said user data and location information; formulating a database query from said user data and location information; issuing a database query on a database coupled to the server; and downloading a result from said database query relating to the geographical location of the client computer system to said client.
25. The method of claim 23, wherein said location information is provided by an automatic location identifying device.
26. The method of claim 23, wherein said automatic location identifying device is a Global Positioning Satellite receiver.
27. The method of claim 23, wherein said automatic location identifying device is based on a wireless cellular network connection.
28. The method of claim 21 , wherein said location information is manually provided by a user.
29. The method of claim 21, wherein said data packet comprises a location, a category or interest, a search radius and user profile information.
30. The method of claim 21, wherein said result from said database query includes a network address of an enhanced server.
31. The method of claim 21, wherein said computer network is the Internet.
32. The method of claim 21 , further comprising the steps of: reading said result from said database query to extract a network address of an enhanced server and;
connecting to said enhanced server to receive relevant information based on said location information.
33. The method of claim 30, further comprising the steps of: reading said result from said database query to extract a URL associated with an enhanced server;
launching a web browsing program; and connecting to said enhanced server to receive one or more web pages representing relevant information based on said location information.
34. The method of claim 21 , wherein said result from said database query comprises information that is customized for a particular location based on said location information.
35. A system for automatically providing informational services based on a geographical location of a client computer system, wherein said informational services are provided by a server attached to a computer network, said system comprising:
executing means for collecting user data and location information on said client computer system, said location information representative of the geographical location of the client computer system;
constructing means for generating a data packet on said client computer system comprising said user data and location information;
connecting means for connecting to the server; transmitting means for sending said data packet to the server; parsing means for parsing said data packet on said server for extracting said user data and location information;
formulating means for formulating a database query from said user data and location information;
issuing means for issuing a database query on a database coupled to the server; and downloading means for transmitting a result from said database query relating to the geographical location of the client computer system to said client.
36. The system of claim 34, wherein said location information is provided by an automatic location identifying device.
37. The system of claim 35, wherein said automatic location identifying device is a Global Positioning Satellite receiver.
38. The system of claim 35, wherein said automatic location identifying device is based on a wireless cellular network connection.
39. The system of claim 35, wherein said location information is manually provided by a user.
40. The system of claim 34, wherein said data packet comprises a location, a category or interest, a search radius and user profile information.
41. The system of claim 34, wherein said result from said database query comprises information that is customized for a particular location based on said location information.
42. The system of claim 34, wherein said result from said database query includes a network address of an enhanced server.
43. The system of claim 34, wherein said computer network is the Internet.
44. The system of claim 34, further comprising the steps of: reading said result from said database query to extract a network address of an enhanced server and;
connecting to said enhanced server to receive relevant information based on said location information.
45. The system of claim 42, further comprising: means for reading said result from said database query to extract a URL associated with an enhanced server;
means for launching a web browsing program; and means for connecting to said enhanced server to receive one or more web pages representing relevant information based on said location information.
46. The system of claim 34, further comprising: means for converting said location information into a grid coordinate system comprising a plurality of pre-defined grids, each of said grids corresponding to a geographical area and having:
a plurality of cells; a reference location; global coordinates of said reference location; and at least one parameter defining cell size and orientation.
47. A computer program product comprising a computer useable medium having computer program logic stored therein, said computer program logic enabling a computer to automatically provide informational services based on a geographical location of a client computer system, wherein said informational services are provided by a server attached to a computer network, wherein said computer program logic comprising:
executing means enabling the computer to collect user data and location information on said client computer system, said location information representative of the geographical location of the client computer system;
constructing means for enabling the computer to generate a data packet on said client computer system comprising said user data and location information;
connecting means for enabling the computer to connect to the server; transmitting means for enabling the computer to send said data packet to the server; parsing means for enabling the computer to parse said data packet on said server for extracting said user data and location information; formulating means for enabling the computer to formulate a database query from said user data and location information;
issuing means for enabling the computer to issue a database query on a database coupled to the server; and
downloading means for enabling the computer to transmit a result from said database query relating to the geographical location of the client computer system to said client.
48. The computer program product of claim 46, wherein said location information is provided by an automatic location identifying device.
49. The computer program product of claim 47, wherein said automatic location identifying device is a Global Positioning Satellite receiver.
50. The computer program product of claim 47, wherein said automatic location identifying device is based on a wireless cellular network connection.
51. The computer program product of claim 47, wherein said location information is manually provided by a user.
52. The computer program product of claim 47, wherein said data packet comprises a location, a category or interest, a search radius and user profile information.
53. The computer program product of claim 47, wherein said result from said database query comprises information that is customized for a particular location based on said location information.
54. The computer program product of claim 47, wherein said result from said database query includes a network address of an enhanced server.
55. The computer program product of claim 47, wherein said computer network is the Internet.
56. The computer program product of claim 47, wherein said computer program logic further comprises:
means for enabling the computer to read said result from said database query to extract a network address of an enhanced server and;
means for enabling the computer connect to said enhanced server to receive relevant information based on said location information.
57. The computer program product of claim 54, wherein said computer program logic further comprises:
means for enabling the computer to read said result from said database query to extract a URL associated with an enhanced server;
means for enabling the computer to launch a web browsing program; and means for enabling the computer to connect to said enhanced server to receive one or more web pages representing relevant information based on said location information.
58. The system of claim 46, wherein said computer program logic further comprises: means for enabling the computer to convert said location information into a grid coordinate system comprising a plurality of pre-defined grids, each of said grids conesponding to a geographical area and having:
a plurality of cells; a reference location; global coordinates of said reference location; and at least one parameter defining cell size and orientation.
59. In a computational apparatus, a method of addressing a selected location within a geographical area comprising the following steps:
selecting a geographical area from a plurality of geographical areas; defining a grid corresponding to the selected geographical area, the grid having a plurality of grid cells, a reference point, global coordinates defined in accordance with a known global referencing system, and a name;
subdividing a cell corresponding to the selected location into as many levels of hierarchically-arranged sub-cells as necessary to obtain a desired addressing precision;
associating each sub-cell with a sub-cell code; identifying each sub-cell with a hierarchical arrangement of codes; addressing the selected location within the geographical area with an address formed by appending to the name of the grid a hierarchical arrangement of codes corresponding to the selected location; and
appending a predefined alpha code to said hierarchical arrangement of codes, said predefined alpha code representing a specific object associated with said address to further identify a specific characteristic of said address.
60. The method of claim 59 wherein said specific characteristic can include one or more of the following said specific characteristics:
aisle, apartment, address, box, bin, bay, column, case, door, depth, day, elevator, entry, elevation, escalator, floor, field, garage, gate, height above ellipsoid, height above geoid, height orthometric, height above sea level, height above topographical surface, house, locker, level, number, P.O. box, phone, room, row, road, street, suite, security code, section, seat, time, tram, train, track, unit, intersection and zipcode.
PCT/US2000/003835 1996-08-22 2000-02-14 Internet based geographic location referencing system and method WO2000050844A1 (en)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2000601396A JP2002538518A (en) 1999-02-25 2000-02-14 Internet based geolocation reference system and method
EP00908644A EP1159584A1 (en) 1999-02-25 2000-02-14 Internet based geographic location referencing system and method
AU29949/00A AU2994900A (en) 1999-02-25 2000-02-14 Internet based geographic location referencing system and method
HK02103041.1A HK1041311A1 (en) 1999-02-25 2002-04-23 Internet based geographic location referencing system and method

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US08/701,586 US5839088A (en) 1996-08-22 1996-08-22 Geographic location referencing system and method
US09/188,153 US6047236A (en) 1996-08-22 1998-11-04 Geographic location referencing system and method
US09/257,462 US6202023B1 (en) 1996-08-22 1999-02-25 Internet based geographic location referencing system and method
US09/257,462 1999-02-25

Publications (1)

Publication Number Publication Date
WO2000050844A1 true WO2000050844A1 (en) 2000-08-31

Family

ID=22976402

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2000/003835 WO2000050844A1 (en) 1996-08-22 2000-02-14 Internet based geographic location referencing system and method

Country Status (6)

Country Link
US (2) US6202023B1 (en)
EP (1) EP1159584A1 (en)
JP (1) JP2002538518A (en)
AU (1) AU2994900A (en)
HK (1) HK1041311A1 (en)
WO (1) WO2000050844A1 (en)

Cited By (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002041173A2 (en) * 2000-11-15 2002-05-23 Interway Informationssysteme Gmbh Meta position information service
JP2002163267A (en) * 2000-11-28 2002-06-07 Nec Corp Store information display system
EP1219927A2 (en) * 2000-12-27 2002-07-03 Fuji Photo Film Co., Ltd. Navigation and information notification system and method
WO2002017567A3 (en) * 2000-08-25 2002-08-01 Yogogo Ltd Wireless communications system with location-dependent services
WO2002069586A2 (en) * 2001-02-23 2002-09-06 Danger, Inc. System, apparatus and method for location-based instant messaging
WO2002073924A2 (en) * 2001-03-08 2002-09-19 Orchid Systems, Inc. Method of capturing supplemental data from a device and associating such data with user input data
GB2378540A (en) * 2001-04-13 2003-02-12 Hewlett Packard Co Interface Protocol Configured According to Cultural Profile
WO2003017622A1 (en) * 2001-08-16 2003-02-27 3G Lab Limited Wireless communication device
EP1317863A1 (en) * 2000-08-30 2003-06-11 Motorola, Inc. Location sensitive wireless information distribution
US6587780B2 (en) 2001-04-09 2003-07-01 Koninklijke Philips Electronics N.V. System and method for disseminating traffic information
EP1061712B1 (en) * 1999-06-14 2007-11-21 Abb Research Ltd. Device and method for selecting information for mobile clients
WO2008004981A1 (en) * 2006-07-07 2008-01-10 Ncs Pte. Ltd. A system and method for providing mobile services
US7373144B1 (en) 2002-09-30 2008-05-13 Danger, Inc. System and method for automatically providing user status in a messaging service
GB2447065A (en) * 2007-01-31 2008-09-03 Interactive Text Ltd Method for making content available on a communication network
US7904803B2 (en) 2001-05-25 2011-03-08 International Business Machines Corporation Method and system for converting user interface source code of a legacy application to web pages
WO2011082075A2 (en) * 2010-01-04 2011-07-07 Hit Development Llc Incoming web traffic conversion
US8639785B2 (en) 2007-02-06 2014-01-28 5O9, Inc. Unsolicited cookie enabled contextual data communications platform
CN103699531A (en) * 2012-09-27 2014-04-02 中国电信股份有限公司 Position searching method and positioning searching engine
US8694025B2 (en) 1999-09-24 2014-04-08 Dennis Dupray Geographically constrained network services
US8995316B2 (en) 1997-10-15 2015-03-31 Nokia Corporation Mobile telephone for internet applications
US9875492B2 (en) 2001-05-22 2018-01-23 Dennis J. Dupray Real estate transaction system
US10641861B2 (en) 2000-06-02 2020-05-05 Dennis J. Dupray Services and applications for a communications network
US10684350B2 (en) 2000-06-02 2020-06-16 Tracbeam Llc Services and applications for a communications network

Families Citing this family (493)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8352400B2 (en) 1991-12-23 2013-01-08 Hoffberg Steven M Adaptive pattern recognition based controller apparatus and method and human-factored interface therefore
US10361802B1 (en) 1999-02-01 2019-07-23 Blanding Hovenweep, Llc Adaptive pattern recognition based control system and method
US6385312B1 (en) * 1993-02-22 2002-05-07 Murex Securities, Ltd. Automatic routing and information system for telephonic services
GB9417600D0 (en) * 1994-09-01 1994-10-19 British Telecomm Navigation information system
US5901214A (en) 1996-06-10 1999-05-04 Murex Securities, Ltd. One number intelligent call processing system
US8526971B2 (en) 1996-08-15 2013-09-03 Snaptrack, Inc. Method and apparatus for providing position-related information to mobile recipients
US6236365B1 (en) 1996-09-09 2001-05-22 Tracbeam, Llc Location of a mobile station using a plurality of commercial wireless infrastructures
US7714778B2 (en) 1997-08-20 2010-05-11 Tracbeam Llc Wireless location gateway and applications therefor
US7903029B2 (en) 1996-09-09 2011-03-08 Tracbeam Llc Wireless location routing applications and architecture therefor
US5978738A (en) 1997-02-13 1999-11-02 Anthony Brown Severe weather detector and alarm
US6148261A (en) * 1997-06-20 2000-11-14 American Calcar, Inc. Personal communication system to send and receive voice data positioning information
US6133853A (en) * 1998-07-30 2000-10-17 American Calcar, Inc. Personal communication and positioning system
GB2327564A (en) * 1997-07-16 1999-01-27 Ibm Apparatus and method for accessing a data file in a data communication network
US6996561B2 (en) * 1997-12-21 2006-02-07 Brassring, Llc System and method for interactively entering data into a database
US5999939A (en) * 1997-12-21 1999-12-07 Interactive Search, Inc. System and method for displaying and entering interactively modified stream data into a structured form
EP1099354B8 (en) 1998-07-20 2013-06-26 Unwired Planet, LLC Subscriber dependent location-based services
EP1104634B1 (en) * 1998-08-10 2007-10-03 BRITISH TELECOMMUNICATIONS public limited company Call routing in an intelligent network
JP2000194726A (en) * 1998-10-19 2000-07-14 Sony Corp Device, method and system for processing information and providing medium
AU1707600A (en) 1998-10-21 2000-05-08 American Calcar, Inc. Positional camera and gps data interchange device
US6522875B1 (en) * 1998-11-17 2003-02-18 Eric Morgan Dowling Geographical web browser, methods, apparatus and systems
US8135413B2 (en) 1998-11-24 2012-03-13 Tracbeam Llc Platform and applications for wireless location and other complex services
US6742037B1 (en) * 1998-12-01 2004-05-25 Nortel Networks Limited Method and apparatus for dynamic information transfer from a mobile target to a fixed target that tracks their relative movement and synchronizes data between them
US6487717B1 (en) * 1999-01-15 2002-11-26 Cummins, Inc. System and method for transmission of application software to an embedded vehicle computer
US7904187B2 (en) 1999-02-01 2011-03-08 Hoffberg Steven M Internet appliance system and method
US6411892B1 (en) * 2000-07-13 2002-06-25 Global Locate, Inc. Method and apparatus for locating mobile receivers using a wide area reference network for propagating ephemeris
US6847969B1 (en) * 1999-05-03 2005-01-25 Streetspace, Inc. Method and system for providing personalized online services and advertisements in public spaces
US6269361B1 (en) * 1999-05-28 2001-07-31 Goto.Com System and method for influencing a position on a search result list generated by a computer network search engine
US8065155B1 (en) 1999-06-10 2011-11-22 Gazdzinski Robert F Adaptive advertising apparatus and methods
DE19932737A1 (en) * 1999-07-14 2001-01-18 Alcatel Sa Procedure for position monitoring of a mobile radio subscriber as well as IN server (Intelligent Network) and WEB server for carrying out the procedure
EP1072987A1 (en) * 1999-07-29 2001-01-31 International Business Machines Corporation Geographic web browser and iconic hyperlink cartography
US6965868B1 (en) 1999-08-03 2005-11-15 Michael David Bednarek System and method for promoting commerce, including sales agent assisted commerce, in a networked economy
US6360172B1 (en) 1999-08-13 2002-03-19 Digital Cyclone, Inc. Generation and distribution of personalized multimedia natural-phenomenological information
US6452597B1 (en) * 1999-08-24 2002-09-17 Microsoft Corporation Displaying text on a limited-area display surface
JP2001134618A (en) * 1999-08-26 2001-05-18 Naoyuki Kageyama Portable information system
US6594557B1 (en) * 1999-09-27 2003-07-15 Visteon Global Technologies, Inc. Utilizing intelligent software agents in a mobile vehicle
US7246109B1 (en) * 1999-10-07 2007-07-17 Koninklijke Philips Electronics N.V. Method and apparatus for browsing using position information
CA2388260C (en) 1999-10-19 2009-01-27 American Calcar Inc. Technique for effective navigation based on user preferences
US6353398B1 (en) 1999-10-22 2002-03-05 Himanshu S. Amin System for dynamically pushing information to a user utilizing global positioning system
WO2001031510A1 (en) * 1999-10-27 2001-05-03 American Calcar Inc. System and method for user navigation
US20080154630A1 (en) * 1999-11-01 2008-06-26 Ita Software, Inc. Method for Generating A Diverse Set of Travel Options
US7428525B1 (en) * 1999-11-12 2008-09-23 Tele Atlas North America, Inc. Virtual street addressing radius
US6598018B1 (en) * 1999-12-15 2003-07-22 Matsushita Electric Industrial Co., Ltd. Method for natural dialog interface to car devices
US6836476B1 (en) * 1999-12-16 2004-12-28 International Business Machines Corporation Business model, system and method for voice and/or data communications with local business
US7447509B2 (en) * 1999-12-22 2008-11-04 Celeritasworks, Llc Geographic management system
US6359570B1 (en) * 1999-12-22 2002-03-19 Intelligent Vehicle Systems, Inc. Vehicle-status device and system for remotely updating and locally indicating the status of a vehicle
US8452776B2 (en) * 1999-12-22 2013-05-28 Celeritasworks, Llc Spatial data portal
JP3941312B2 (en) * 1999-12-24 2007-07-04 株式会社日立製作所 Road traffic system and information processing method thereof
JP2003523565A (en) * 1999-12-29 2003-08-05 グローリキアン,ハリー・エイ An Internet system that connects client travelers to geographically relevant data
US6778973B2 (en) * 2000-01-12 2004-08-17 Duane Harlan Method for selection of events based on proximity
AU2001230955A1 (en) * 2000-01-18 2001-07-31 Richard Liming System and method providing a spatial location context
US20070127645A1 (en) * 2000-01-19 2007-06-07 Sony Ericsson Mobile Communications Ab Technique for providing secondary information to a user equipment
US6996072B1 (en) * 2000-01-19 2006-02-07 The Phonepages Of Sweden Ab Method and apparatus for exchange of information in a communication network
US8400946B2 (en) * 2000-01-19 2013-03-19 Sony Corporation System and method for sharing common location-related information between communication devices
US20070129074A1 (en) * 2000-01-19 2007-06-07 Bloebaum L S System, Method and Device For Providing Secondary Information To A Communication Device
US7248862B2 (en) * 2000-01-19 2007-07-24 Sony Ericsson Mobile Communications Ab Method and apparatus for retrieving calling party information in a mobile communications system
US6977909B2 (en) * 2000-01-19 2005-12-20 Phonepages Of Sweden, Inc. Method and apparatus for exchange of information in a communication network
US6922721B1 (en) 2000-10-17 2005-07-26 The Phonepages Of Sweden Ab Exchange of information in a communication system
US20070124481A1 (en) * 2000-01-19 2007-05-31 Sony Ericsson Mobile Communications Ab System and method for sharing event-triggered, location-related information between communication devices
US8611873B2 (en) 2004-05-12 2013-12-17 Synchronoss Technologies, Inc. Advanced contact identification system
US6671757B1 (en) 2000-01-26 2003-12-30 Fusionone, Inc. Data transfer and synchronization system
US20020010000A1 (en) * 2000-01-25 2002-01-24 Vincent Chern Knowledge-based information retrieval system and method for wireless communication device
US8156074B1 (en) 2000-01-26 2012-04-10 Synchronoss Technologies, Inc. Data transfer and synchronization system
US8620286B2 (en) 2004-02-27 2013-12-31 Synchronoss Technologies, Inc. Method and system for promoting and transferring licensed content and applications
JP3769437B2 (en) * 2000-01-26 2006-04-26 日本電気株式会社 Distribution system, distribution method, and distribution medium for recording information of specific area to portable terminal
US6839623B1 (en) * 2000-02-16 2005-01-04 Telefonaktiebolaget Lm Ericsson (Publ) Positioning applications for an electronic reading device
US6675165B1 (en) * 2000-02-28 2004-01-06 Barpoint.Com, Inc. Method for linking a billboard or signage to information on a global computer network through manual information input or a global positioning system
US7457628B2 (en) * 2000-02-29 2008-11-25 Smarter Agent, Llc System and method for providing information based on geographic position
US7072665B1 (en) 2000-02-29 2006-07-04 Blumberg Brad W Position-based information access device and method of searching
US7599795B1 (en) * 2000-02-29 2009-10-06 Smarter Agent, Llc Mobile location aware search engine and method of providing content for same
AUPQ599700A0 (en) * 2000-03-03 2000-03-23 Super Internet Site System Pty Ltd On-line geographical directory
US20070178912A1 (en) * 2000-03-14 2007-08-02 Robert Baranowski System and method for enhancing user experience in a wide-area facility having a distributed, bounded environment
US7136915B2 (en) * 2000-03-14 2006-11-14 Rieger Iii Charles J System for communicating through maps
US6587782B1 (en) * 2000-03-14 2003-07-01 Navigation Technologies Corp. Method and system for providing reminders about points of interests while traveling
US6383078B1 (en) * 2000-03-17 2002-05-07 Elottery, Inc. On-line lottery game system
US7148898B1 (en) * 2000-03-29 2006-12-12 Sourceprose Corporation System and method for synchronizing raster and vector map images
US6785679B1 (en) * 2000-03-29 2004-08-31 Brassring, Llc Method and apparatus for sending and tracking resume data sent via URL
WO2001073690A2 (en) * 2000-03-29 2001-10-04 Provar Inc. System and method for georeferencing digital raster maps
AU2001253138A1 (en) * 2000-04-03 2001-10-15 Global Granny, Inc. A system for personalizing and distributing geographically distinctive products over the internet
US20010051876A1 (en) * 2000-04-03 2001-12-13 Seigel Ronald E. System and method for personalizing, customizing and distributing geographically distinctive products and travel information over the internet
AU2001255352A1 (en) 2000-04-11 2001-10-23 American Calcar, Inc. Gps publication application server
JP2001304902A (en) * 2000-04-27 2001-10-31 Toyota Motor Corp Storage medium for storing specific facility position information and system
US6456854B1 (en) * 2000-05-08 2002-09-24 Leap Wireless International System and method for locating and tracking mobile telephone devices via the internet
WO2001088742A1 (en) * 2000-05-12 2001-11-22 Braun Huon Starr Interactive system for processing and retrieving data relating to a particular destination via a communication device
DE10023309A1 (en) * 2000-05-15 2001-11-22 Bosch Gmbh Robert Data packet communication method in Internet, involves including allocation information in data packet, for allocating portion of location information to respective description information
US20070162341A1 (en) * 2000-05-17 2007-07-12 Sprint Spectrum L.P. Method and System for Distribution and Use of Coupons
US6985933B1 (en) 2000-05-30 2006-01-10 International Business Machines Corporation Method and system for increasing ease-of-use and bandwidth utilization in wireless devices
US6968380B1 (en) * 2000-05-30 2005-11-22 International Business Machines Corporation Method and system for increasing ease-of-use and bandwidth utilization in wireless devices
US7894986B2 (en) * 2000-06-02 2011-02-22 Navteq North America, Llc Method and system for forming a keyword database for referencing physical locations
US8060389B2 (en) * 2000-06-07 2011-11-15 Apple Inc. System and method for anonymous location based services
US8489669B2 (en) 2000-06-07 2013-07-16 Apple Inc. Mobile data processing system moving interest radius
US6456234B1 (en) * 2000-06-07 2002-09-24 William J. Johnson System and method for proactive content delivery by situation location
US20010051973A1 (en) * 2000-06-08 2001-12-13 Poi Systems, Inc. System, method and computer program product for a locator service
JP2002013938A (en) * 2000-06-28 2002-01-18 Mazda Motor Corp Information provision system, server device and on- vehicle device used in the same information provision system, and storage medium storing program readable by the same on-vehicle device or by computer
US7133837B1 (en) 2000-06-29 2006-11-07 Barnes Jr Melvin L Method and apparatus for providing communication transmissions
US7487112B2 (en) 2000-06-29 2009-02-03 Barnes Jr Melvin L System, method, and computer program product for providing location based services and mobile e-commerce
US7895334B1 (en) 2000-07-19 2011-02-22 Fusionone, Inc. Remote access communication architecture apparatus and method
US8073954B1 (en) 2000-07-19 2011-12-06 Synchronoss Technologies, Inc. Method and apparatus for a secure remote access system
US6505123B1 (en) 2000-07-24 2003-01-07 Weatherbank, Inc. Interactive weather advisory system
CA2416253A1 (en) * 2000-07-28 2002-02-07 American Calcar Inc. Technique for effective organization and communication of information
US20020013746A1 (en) * 2000-07-31 2002-01-31 Realhome.Com Method and system of uniquely identifying real estate
US6633809B1 (en) * 2000-08-15 2003-10-14 Hitachi, Ltd. Wireless method and system for providing navigation information
US6363320B1 (en) * 2000-08-18 2002-03-26 Geospatial Technologies Inc. Thin-client real-time interpretive object tracking system
US7065446B2 (en) * 2000-08-18 2006-06-20 Geospatial Technologies, Inc. Real-time smart mobile device for location information processing
US7051095B1 (en) * 2000-08-30 2006-05-23 Hewlett-Packard Development Company, L.P. Locating device resources on a global scale
JP2002084561A (en) * 2000-09-06 2002-03-22 Nec Corp Connection system, connection method therefor, and recording medium in which connection program is recorded
US6826403B1 (en) 2000-09-12 2004-11-30 Phonepages Of Sweden Ab Method and system for identifying a user
US6703947B1 (en) 2000-09-22 2004-03-09 Tierravision, Inc. Method for organizing and compressing spatial data
WO2002025488A2 (en) * 2000-09-25 2002-03-28 Transactions, Inc. System and method to correlate and access related text with locations on an electronically displayed map
US6954764B2 (en) * 2000-09-25 2005-10-11 Oracle International Corp. Region modeling of mobile services
US20020116287A1 (en) * 2000-10-23 2002-08-22 Schubert Timothy D. Multi-faceted, tier driven electronic commerce facilitator
US6901429B2 (en) * 2000-10-27 2005-05-31 Eric Morgan Dowling Negotiated wireless peripheral security systems
US6965914B2 (en) * 2000-10-27 2005-11-15 Eric Morgan Dowling Negotiated wireless peripheral systems
US7035932B1 (en) * 2000-10-27 2006-04-25 Eric Morgan Dowling Federated multiprotocol communication
US11467856B2 (en) * 2002-12-12 2022-10-11 Flexiworld Technologies, Inc. Portable USB device for internet access service
US7689621B1 (en) * 2000-11-06 2010-03-30 Navteq North America, Llc Multi-dimensional spatial index for a geographic database
CN1167303C (en) * 2000-11-10 2004-09-15 国际商业机器公司 Method and system for mobile communication equipment for proceed position location
WO2002041623A2 (en) * 2000-11-14 2002-05-23 Shaun Dale System and method for utilizing an internet enabled telephone to conduct business
US7376640B1 (en) * 2000-11-14 2008-05-20 At&T Delaware Intellectual Property, Inc. Method and system for searching an information retrieval system according to user-specified location information
US6553310B1 (en) * 2000-11-14 2003-04-22 Hewlett-Packard Company Method of and apparatus for topologically based retrieval of information
JP2002163297A (en) * 2000-11-27 2002-06-07 Ntt Docomo Inc Information retrieving method and relay device
US20040073449A1 (en) * 2000-12-08 2004-04-15 Ping Yang Catering mobile pick up station
US7110958B2 (en) * 2000-12-08 2006-09-19 Ping Yang Method and apparatus for mobile pickup stations
US20070150375A1 (en) * 2000-12-08 2007-06-28 Ping Yang Method and apparatus for efficient meal delivery
US20020116289A1 (en) * 2000-12-08 2002-08-22 Ping Yang Locker mobile pickup station
US20090106124A1 (en) * 2000-12-08 2009-04-23 Ping Yang Method and apparatus for ordering and delivering of meals
US7818435B1 (en) 2000-12-14 2010-10-19 Fusionone, Inc. Reverse proxy mechanism for retrieving electronic content associated with a local network
US7388949B2 (en) * 2000-12-28 2008-06-17 At&T Delaware Intellectual Property, Inc. System and method for audio caller identification service
US6459388B1 (en) * 2001-01-18 2002-10-01 Hewlett-Packard Company Electronic tour guide and photo location finder
JP2002229991A (en) * 2001-01-31 2002-08-16 Fujitsu Ltd Server, user terminal, system and method for providing information
US6957393B2 (en) * 2001-03-19 2005-10-18 Accenture Llp Mobile valet
US8615566B1 (en) 2001-03-23 2013-12-24 Synchronoss Technologies, Inc. Apparatus and method for operational support of remote network systems
US7908211B1 (en) 2001-04-13 2011-03-15 AT&T Intellecutual Property II, L.P. Environment customization based on location
US6842695B1 (en) * 2001-04-17 2005-01-11 Fusionone, Inc. Mapping and addressing system for a secure remote access system
US20020183072A1 (en) * 2001-04-17 2002-12-05 Galia Steinbach BeyondguideTM method and system
JP2002312377A (en) * 2001-04-18 2002-10-25 Nec Corp Device, server, system, and method for retrieval and program for it
US7437295B2 (en) * 2001-04-27 2008-10-14 Accenture Llp Natural language processing for a location-based services system
US7698228B2 (en) * 2001-04-27 2010-04-13 Accenture Llp Tracking purchases in a location-based services system
US7970648B2 (en) * 2001-04-27 2011-06-28 Accenture Global Services Limited Advertising campaign and business listing management for a location-based services system
US6848542B2 (en) * 2001-04-27 2005-02-01 Accenture Llp Method for passive mining of usage information in a location-based services system
US6944447B2 (en) 2001-04-27 2005-09-13 Accenture Llp Location-based services
US7620621B2 (en) * 2001-05-01 2009-11-17 General Electric Company Methods and system for providing context sensitive information
US20040233892A1 (en) * 2001-05-16 2004-11-25 Roberts Linda Ann Priority caller alert
AU2002310023A1 (en) * 2001-05-22 2002-12-03 Geospatial Technologies, Inc. A durable global asset-tracking device and a method of using the same
US8082096B2 (en) 2001-05-22 2011-12-20 Tracbeam Llc Wireless location routing applications and architecture therefor
US6687613B2 (en) * 2001-05-31 2004-02-03 Alpine Electronics, Inc. Display method and apparatus of navigation system
US6912545B1 (en) * 2001-06-12 2005-06-28 Sprint Spectrum L.P. Location-code system for location-based services
US20020198991A1 (en) * 2001-06-21 2002-12-26 International Business Machines Corporation Intelligent caching and network management based on location and resource anticipation
US20020199018A1 (en) * 2001-06-21 2002-12-26 International Business Machines Corporation Maping physical locations to web sites
EP1400135A1 (en) * 2001-06-25 2004-03-24 Ram Jethanand Balani Method and device for effecting venue specific wireless communication
US7085358B2 (en) 2001-06-25 2006-08-01 Bellsouth Intellectual Property Corporation Visual caller identification
US7012999B2 (en) * 2001-06-25 2006-03-14 Bellsouth Intellectual Property Corporation Audio caller identification
US7508946B2 (en) 2001-06-27 2009-03-24 Sony Corporation Integrated circuit device, information processing apparatus, memory management method for information storage device, mobile terminal apparatus, semiconductor integrated circuit device, and communication method using mobile terminal apparatus
US6526351B2 (en) * 2001-07-09 2003-02-25 Charles Lamont Whitham Interactive multimedia tour guide
US7139835B2 (en) * 2001-07-25 2006-11-21 Avago Technologies General Ip (Singapore) Pte. Ltd. Communication network based on topographic network devices
JP3593511B2 (en) * 2001-07-26 2004-11-24 株式会社ウッドワン Location management method and device
US7624162B2 (en) * 2001-08-13 2009-11-24 Hewlett-Packard Development Company, L.P. Methods, systems, devices and computer-readable media for accessing network accessible devices
US7315614B2 (en) * 2001-08-14 2008-01-01 At&T Delaware Intellectual Property, Inc. Remote notification of communications
US7403768B2 (en) * 2001-08-14 2008-07-22 At&T Delaware Intellectual Property, Inc. Method for using AIN to deliver caller ID to text/alpha-numeric pagers as well as other wireless devices, for calls delivered to wireless network
SE0102729D0 (en) * 2001-08-15 2001-08-15 Phone Pages Sweden Ab Method and apparatus for exchange of information in a communication network
KR100764785B1 (en) * 2001-08-20 2007-10-11 엘지전자 주식회사 Geographical information search method for mobile communication device
US7107619B2 (en) * 2001-08-31 2006-09-12 International Business Machines Corporation System and method for the detection of and reaction to denial of service attacks
US6609061B2 (en) 2001-09-27 2003-08-19 International Business Machines Corporation Method and system for allowing vehicles to negotiate roles and permission sets in a hierarchical traffic control system
US6646568B2 (en) 2001-09-27 2003-11-11 International Business Machines Corporation System and method for automated parking
US6580997B2 (en) 2001-09-27 2003-06-17 International Business Machines Corporation Hierarchical traffic control system which includes vehicle roles and permissions
US6574547B2 (en) 2001-09-27 2003-06-03 International Business Machines Corporation Use of vehicle permissions to control individual operator parameters in a hierarchical traffic control system
US6611750B2 (en) 2001-09-27 2003-08-26 International Business Machines Corporation Hierarchical traffic control system
US7269249B2 (en) * 2001-09-28 2007-09-11 At&T Bls Intellectual Property, Inc. Systems and methods for providing user profile information in conjunction with an enhanced caller information system
US20020156779A1 (en) * 2001-09-28 2002-10-24 Elliott Margaret E. Internet search engine
US6989770B1 (en) * 2001-10-03 2006-01-24 Navteq North America, Llc Navigation system that supports multiple languages and formats
US8977284B2 (en) 2001-10-04 2015-03-10 Traxcell Technologies, LLC Machine for providing a dynamic data base of geographic location information for a plurality of wireless devices and process for making same
US20030069940A1 (en) * 2001-10-10 2003-04-10 Sathya Kavacheri Method and system for implementing location aware information access and retrieval in a wireless portal server
JP2003162649A (en) * 2001-11-28 2003-06-06 Sanyo Electric Co Ltd Commodity sales system and commodity sales method
KR100462299B1 (en) * 2001-11-29 2004-12-17 삼성에스디에스 주식회사 Packet structure and communications protocol for GML data transmission and system thereof
DE10158739B4 (en) * 2001-11-30 2005-02-17 Harman Becker Automotive Systems (Becker Division) Gmbh WAP browser-compatible communication system and client and server for such a communication system
US6684157B2 (en) * 2001-12-06 2004-01-27 Yazaki North America, Inc. Method and system for interfacing a global positioning system, other navigational equipment and wireless networks with a digital data network
US7716582B2 (en) * 2001-12-07 2010-05-11 Robert Bosch Gmbh Method for displaying a hierarchically structure list and associated display unit
US20030115258A1 (en) * 2001-12-13 2003-06-19 International Business Machines Corporation Time zone difference based locality estimation between web clients and E-business servers
US6643586B2 (en) * 2001-12-17 2003-11-04 International Business Machines Corporation System and method to determine fibre channel device locations using GPS
AU2002366867A1 (en) * 2001-12-21 2003-07-09 Micronas Gmbh Method and device for the exchange of data
US20030119528A1 (en) * 2001-12-26 2003-06-26 Boathouse Communication Partners, Llc System and method for an automated intermediary to broker remote transaction between parties based on actively managed private profile information
JP4167179B2 (en) * 2001-12-26 2008-10-15 オートデスク,インコーポレイテッド Mobile device locator system
US6963748B2 (en) * 2001-12-26 2005-11-08 Autodesk, Inc. Mobile device locator adapter system for location based services
US6988103B2 (en) 2001-12-26 2006-01-17 Autodesk, Inc. Location based services bridge to external data sources
US6978258B2 (en) 2001-12-26 2005-12-20 Autodesk, Inc. Fuzzy logic reasoning for inferring user location preferences
US7315618B1 (en) * 2001-12-27 2008-01-01 At&T Bls Intellectual Property, Inc. Voice caller ID
US6823257B2 (en) * 2002-01-04 2004-11-23 Intel Corporation Non-GPS navigation
EP1466307A1 (en) * 2002-01-08 2004-10-13 Philips Electronics N.V. Controlling application devices simultaneously
US20030130924A1 (en) * 2002-01-08 2003-07-10 Muldrow Christopher Hugh Real estate information search and retrieval method
US20030135581A1 (en) * 2002-01-15 2003-07-17 Jeffrey Phelan Method and apparatus for distributing information based on a geographic location determined for the information
US20030135494A1 (en) * 2002-01-15 2003-07-17 Jeffrey Phelan Method and apparatus for distributing information based on a geographic location profile of a user
US20030135493A1 (en) * 2002-01-15 2003-07-17 Jeffrey Phelan Method and apparatus for consuming information based on a geographic location profile of a user
US6665712B2 (en) * 2002-01-30 2003-12-16 Hewlett-Packard Development Company, L.P. System and method for locating an output device
US20030145106A1 (en) * 2002-01-31 2003-07-31 Sun Microsystems, Inc. System and method for directing wireless data packet traffic
DE10207423B4 (en) 2002-02-21 2006-02-09 Rolf Wilhelm Haupt Weather station
JP2003271052A (en) * 2002-03-15 2003-09-25 Denso Corp Spot specifying code providing method
JP4205357B2 (en) * 2002-03-29 2009-01-07 ブラザー工業株式会社 Service providing system, device, and service providing method
US7100204B1 (en) 2002-04-05 2006-08-29 International Business Machines Corporation System and method for determining network users' physical locations
JP3712381B2 (en) * 2002-04-18 2005-11-02 富士通株式会社 Push distribution service providing method, information providing service system, server system, and user terminal
US20050073999A1 (en) * 2002-05-13 2005-04-07 Bellsouth Intellectual Property Corporation Delivery of profile-based third party content associated with an incoming communication
US10489449B2 (en) 2002-05-23 2019-11-26 Gula Consulting Limited Liability Company Computer accepting voice input and/or generating audible output
US8611919B2 (en) 2002-05-23 2013-12-17 Wounder Gmbh., Llc System, method, and computer program product for providing location based services and mobile e-commerce
US7092724B2 (en) * 2002-06-13 2006-08-15 International Business Machines Corporation Method and apparatus for waypoint services navigational system
US8102253B1 (en) 2002-06-27 2012-01-24 Earthcomber, Llc System and method for notifying a user of people, places or things having attributes matching a user's stated preference
WO2004003705A2 (en) 2002-06-27 2004-01-08 Small World Productions, Inc. System and method for locating and notifying a user of a person, place or thing having attributes matching the user's stated prefernces
US8427303B1 (en) 2002-06-27 2013-04-23 Geomass Limited Liability Company System and method for providing media content having attributes matching a user's stated preference
US7096030B2 (en) * 2002-06-28 2006-08-22 Nokia Corporation System and method for initiating location-dependent applications on mobile devices
US20040015537A1 (en) * 2002-07-15 2004-01-22 Richard Doerksen Handheld client framework system
US7496082B2 (en) * 2002-07-15 2009-02-24 Lee Howard K Dedicated device for automatically accessing wireless internet network and supplying wireless packet data-based indoor-capable GPS locations
US7139374B1 (en) * 2002-07-23 2006-11-21 Bellsouth Intellectual Property Corp. System and method for gathering information related to a geographical location of a callee in a public switched telephone network
US7623645B1 (en) * 2002-07-23 2009-11-24 At&T Intellectual Property, I, L.P. System and method for gathering information related to a geographical location of a caller in a public switched telephone network
US7127488B1 (en) * 2002-07-23 2006-10-24 Bellsouth Intellectual Property Corp. System and method for gathering information related to a geographical location of a caller in an internet-based communication system
US7007064B2 (en) * 2002-08-02 2006-02-28 Motorola, Inc. Method and apparatus for obtaining and managing wirelessly communicated content
US7822816B2 (en) * 2002-08-19 2010-10-26 Macrosolve, Inc. System and method for data management
JP2004096621A (en) * 2002-09-03 2004-03-25 Fujitsu Ltd Information distribution service system based on prediction of positional change of mobile information terminal
US7707140B2 (en) * 2002-10-09 2010-04-27 Yahoo! Inc. Information retrieval system and method employing spatially selective features
US7562393B2 (en) * 2002-10-21 2009-07-14 Alcatel-Lucent Usa Inc. Mobility access gateway
US7499401B2 (en) * 2002-10-21 2009-03-03 Alcatel-Lucent Usa Inc. Integrated web cache
US20070208864A1 (en) * 2002-10-21 2007-09-06 Flynn Lori A Mobility access gateway
US7835858B2 (en) 2002-11-22 2010-11-16 Traffic.Com, Inc. Method of creating a virtual traffic network
US7835342B2 (en) * 2002-12-09 2010-11-16 Lee Howard K Dedicated device for automatically accessing wireless internet network and supplying wireless packet data-based indoor-capable GPS locations
US7202801B2 (en) * 2002-12-11 2007-04-10 Geospatial Technologies, Inc. Method and apparatus for an automated location-based, dynamic notification system (ALDNS)
US7908401B2 (en) 2002-12-12 2011-03-15 Flexiworld Technology, Inc. Method and device for wireless communication between computing devices
US8543564B2 (en) * 2002-12-23 2013-09-24 West Publishing Company Information retrieval systems with database-selection aids
US7085576B2 (en) * 2002-12-30 2006-08-01 Motorola, Inc. Method and apparatus for providing streaming information to a wireless mobile wireless device
US20040153370A1 (en) * 2003-01-22 2004-08-05 Ping Yang Method and apparatus for facilitating a search for a pick up location
EP2264405B1 (en) * 2003-02-26 2015-11-11 TomTom International B.V. Navigation device and method for displaying alternative routes
CN107832241B (en) * 2003-04-11 2021-10-08 富意科技公司 Integrated circuit storage device or method capable of realizing automatic operation
US7283625B2 (en) * 2003-04-18 2007-10-16 At&T Bls Intellectual Property, Inc. Caller ID messaging telecommunications services
US7280646B2 (en) * 2003-04-18 2007-10-09 At&T Bls Intellectual Property, Inc. Dynamic Caller ID messaging
US7978833B2 (en) * 2003-04-18 2011-07-12 At&T Intellectual Property I, L.P. Private caller ID messaging
US7443964B2 (en) * 2003-04-18 2008-10-28 At&T Intellectual Property, I,L.P. Caller ID messaging
US7624100B1 (en) 2003-05-19 2009-11-24 At&T Corp. Method for web-based exploration of network infrastructure
US7269412B2 (en) * 2003-05-29 2007-09-11 At&T Bls Intellectual Property, Inc. Caller identification device and method of operation thereof
US8645471B2 (en) 2003-07-21 2014-02-04 Synchronoss Technologies, Inc. Device message management system
US7388519B1 (en) 2003-07-22 2008-06-17 Kreft Keith A Displaying points of interest with qualitative information
US7302343B2 (en) * 2003-07-31 2007-11-27 Microsoft Corporation Compact text encoding of latitude/longitude coordinates
US20050027450A1 (en) * 2003-08-01 2005-02-03 Cox Geoffrey F. Altitude aiding in a satellite positioning system
US20050055226A1 (en) * 2003-09-04 2005-03-10 Mark Dane Method and apparatus for recruitment process management
US7330112B1 (en) 2003-09-09 2008-02-12 Emigh Aaron T Location-aware services
US7818317B1 (en) * 2003-09-09 2010-10-19 James Roskind Location-based tasks
US7609832B2 (en) * 2003-11-06 2009-10-27 At&T Intellectual Property, I,L.P. Real-time client survey systems and methods
US7623849B2 (en) 2003-11-13 2009-11-24 At&T Intellectual Property, I, L.P. Method, system, and storage medium for providing comprehensive originator identification services
US7487040B2 (en) * 2003-11-14 2009-02-03 Bernard Catalinotto System and method for establishing a local page and grid numbering system in a geographic referencing system
US7427024B1 (en) 2003-12-17 2008-09-23 Gazdzinski Mark J Chattel management apparatus and methods
US7174153B2 (en) * 2003-12-23 2007-02-06 Gregory A Ehlers System and method for providing information to an operator of an emergency response vehicle
US7660590B2 (en) * 2003-12-23 2010-02-09 At&T Mobility Ii Llc Terminal-based server for location tracking
US20070138347A1 (en) * 2004-12-16 2007-06-21 Ehlers Gregory A System and method for providing information to an operator of a vehicle
US7672444B2 (en) 2003-12-24 2010-03-02 At&T Intellectual Property, I, L.P. Client survey systems and methods using caller identification information
JP2005190068A (en) * 2003-12-25 2005-07-14 Fanuc Ltd Software download system for controller
CN100456748C (en) * 2003-12-26 2009-01-28 腾讯科技(深圳)有限公司 A system and method for implementing mobile location service in instant network communication
US7987113B2 (en) * 2003-12-30 2011-07-26 Smarter Agent, Llc System and method of creating an adjustable commission
US6970546B2 (en) * 2004-01-12 2005-11-29 Bellsouth Intellecutal Property Corp. Intelligent remote caller ID
US7206568B2 (en) * 2004-03-15 2007-04-17 Loc-Aid Technologies, Inc. System and method for exchange of geographic location and user profiles over a wireless network
US7373244B2 (en) * 2004-04-20 2008-05-13 Keith Kreft Information mapping approaches
JP2005316717A (en) * 2004-04-28 2005-11-10 Sony Corp Memorandum system, portable terminal, computer program, recording medium and memorandum information provision method
US7873708B2 (en) * 2004-04-28 2011-01-18 At&T Mobility Ii Llc Systems and methods for providing mobile advertising and directory assistance services
US9542076B1 (en) 2004-05-12 2017-01-10 Synchronoss Technologies, Inc. System for and method of updating a personal profile
US20060002540A1 (en) * 2004-07-02 2006-01-05 Barrett Kreiner Real-time customer service representative workload management
US8051087B2 (en) * 2004-07-04 2011-11-01 Yahoo! Inc. Customized geographical location indexing
GB0415072D0 (en) * 2004-07-05 2004-08-04 Whereonearth Ltd Geographical location indexing
US7460872B2 (en) * 2004-07-06 2008-12-02 International Business Machines Corporation Method and application for automatic tracking of mobile devices for computer network processor systems
US8195136B2 (en) * 2004-07-15 2012-06-05 At&T Intellectual Property I, L.P. Methods of providing caller identification information and related registries and radiotelephone networks
US20060058953A1 (en) 2004-09-07 2006-03-16 Cooper Clive W System and method of wireless downloads of map and geographic based data to portable computing devices
US7606687B2 (en) 2004-09-14 2009-10-20 Friendster, Inc. Proximity search methods using tiles to represent geographical zones
SI21896A (en) * 2004-10-29 2006-04-30 Dusan Pecek Procedure of sending, receiving and displaying information as questions and answers on small resolution displays of devices with small processing power and in particular related to at least one optional geographic location
US20060161469A1 (en) 2005-01-14 2006-07-20 Weatherbank, Inc. Interactive advisory system
US8832121B2 (en) * 2005-02-02 2014-09-09 Accuweather, Inc. Location-based data communications system and method
US7747258B2 (en) * 2005-02-04 2010-06-29 Qualcomm Incorporated Method and apparatus for performing position determination with pre-session action
JP3980603B2 (en) * 2005-03-30 2007-09-26 株式会社日立製作所 Digital content distribution method and digital content distribution apparatus
US7353034B2 (en) 2005-04-04 2008-04-01 X One, Inc. Location sharing and tracking using mobile phones or other wireless devices
DE102005017252A1 (en) * 2005-04-14 2006-10-19 Modine Manufacturing Co., Racine Arrangement of heat exchangers in the motor vehicle
US9762685B2 (en) 2005-04-27 2017-09-12 Live Nation Entertainment, Inc. Location-based task execution for enhanced data access
US20070055439A1 (en) * 2005-04-27 2007-03-08 Dennis Denker Methods and systems for selectively providing a networked service
US20140379390A1 (en) 2013-06-20 2014-12-25 Live Nation Entertainment, Inc. Location-based presentations of ticket opportunities
US7826965B2 (en) * 2005-06-16 2010-11-02 Yahoo! Inc. Systems and methods for determining a relevance rank for a point of interest
EP1742175A1 (en) * 2005-07-07 2007-01-10 Citypreishits AG Method and apparatus for determining of location based product information
US7899469B2 (en) * 2005-07-12 2011-03-01 Qwest Communications International, Inc. User defined location based notification for a mobile communications device systems and methods
US7515917B2 (en) * 2005-07-12 2009-04-07 Qwest Communications International Inc. Efficiently determining the location of a mobile communications device system and methods
US7336964B2 (en) * 2005-07-12 2008-02-26 Qwest Communications International Inc. Correlating activities with the location of a mobile communications device systems and methods
US7259668B2 (en) * 2005-07-12 2007-08-21 Qwest Communications International Inc. Mapping the location of a mobile communications device systems and methods
US7221947B2 (en) * 2005-07-12 2007-05-22 Qwest Communications International Inc. Location related keyword monitoring on a mobile communications device systems and methods
WO2007009074A2 (en) 2005-07-13 2007-01-18 Google, Inc. Identifying locations
US8150416B2 (en) 2005-08-08 2012-04-03 Jambo Networks, Inc. System and method for providing communication services to mobile device users incorporating proximity determination
US20070067098A1 (en) * 2005-09-19 2007-03-22 Zelentsov Oleg U Method and system for identification of geographic location
US20070260628A1 (en) * 2006-05-02 2007-11-08 Tele Atlas North America, Inc. System and method for providing a virtual database environment and generating digital map information
US7532979B2 (en) * 2005-11-10 2009-05-12 Tele Atlas North America, Inc. Method and system for creating universal location referencing objects
KR20070050607A (en) * 2005-11-11 2007-05-16 주식회사 현대오토넷 Location information provision system of navigation from the internet web site
US20070118284A1 (en) * 2005-11-23 2007-05-24 Sbc Knowledge Ventures, L.P. Customized GPS provisioning
JP4669381B2 (en) * 2005-12-01 2011-04-13 株式会社日立製作所 Map information system, map information processing method and program thereof
US8374777B2 (en) * 2005-12-19 2013-02-12 International Business Machines Corporation GPS equipped devices that utilize geographical navigation bundles
WO2007073470A2 (en) 2005-12-23 2007-06-28 Perdiem, Llc System and method for defining an event based on a relationship between an object location and a user-defined zone
US7525425B2 (en) 2006-01-20 2009-04-28 Perdiem Llc System and method for defining an event based on relationship between an object location and a user-defined zone
US20070155367A1 (en) * 2005-12-30 2007-07-05 Telenav, Inc Communication system with remote applications
US7698062B1 (en) 2006-01-12 2010-04-13 Sprint Spectrum L.P. Most convenient point of interest finder apparatus and method
US8229467B2 (en) 2006-01-19 2012-07-24 Locator IP, L.P. Interactive advisory system
US7515576B2 (en) * 2006-01-31 2009-04-07 Microsoft Corporation User interface and data structure for transmitter fingerprints of network locations
US7885668B2 (en) * 2006-01-31 2011-02-08 Microsoft Corporation Determining the network location of a user device based on transmitter fingerprints
US7657526B2 (en) * 2006-03-06 2010-02-02 Veveo, Inc. Methods and systems for selecting and presenting content based on activity level spikes associated with the content
US8825736B2 (en) * 2006-03-14 2014-09-02 Lifeworx, Inc. System and method for service provider search
US20070239352A1 (en) * 2006-04-10 2007-10-11 Microsoft Corporation Embedded dynamic map generation
US8423408B1 (en) 2006-04-17 2013-04-16 Sprint Communications Company L.P. Dynamic advertising content distribution and placement systems and methods
US7917285B2 (en) * 2006-04-28 2011-03-29 Reagan Inventions, Llc Device, system and method for remotely entering, storing and sharing addresses for a positional information device
US7680899B1 (en) 2006-05-12 2010-03-16 Sprint Communications Company L.P. Seamless retrieval of non-standard items for a mobile device
US7479875B2 (en) * 2006-05-12 2009-01-20 Oracle International Corporation Method of and system for managing data in a sensor network
US7755517B2 (en) * 2006-06-20 2010-07-13 Microsoft Corporation Navigation device
US10410237B1 (en) 2006-06-26 2019-09-10 Sprint Communications Company L.P. Inventory management integrating subscriber and targeting data
US8442858B1 (en) 2006-07-21 2013-05-14 Sprint Communications Company L.P. Subscriber data insertion into advertisement requests
US9445353B2 (en) 2006-09-14 2016-09-13 Omnitrail Technologies Inc. Presence platform for passive radio access network-to-radio access network device transition
US20080133327A1 (en) * 2006-09-14 2008-06-05 Shah Ullah Methods and systems for securing content played on mobile devices
US20080108308A1 (en) * 2006-09-14 2008-05-08 Shah Ullah Methods and systems for using mobile device specific identifiers and short-distance wireless protocols to manage, secure and target content
US20090298514A1 (en) 2006-09-14 2009-12-03 Shah Ullah Real world behavior measurement using identifiers specific to mobile devices
US8005100B2 (en) * 2006-09-21 2011-08-23 Active Control Technology Inc. Network for confined hazardous or other extreme environments
US9245040B2 (en) * 2006-09-22 2016-01-26 Blackberry Corporation System and method for automatic searches and advertising
US7778987B2 (en) * 2006-10-06 2010-08-17 Microsoft Corporation Locally storing web-based database data
US7971143B2 (en) * 2006-10-31 2011-06-28 Microsoft Corporation Senseweb
US20080108373A1 (en) * 2006-11-02 2008-05-08 Anjana Agarwal Auto-focused information services tailored to location of end user
US10664851B1 (en) 2006-11-08 2020-05-26 Sprint Communications Company, L.P. Behavioral analysis engine for profiling wireless subscribers
US10068261B1 (en) 2006-11-09 2018-09-04 Sprint Communications Company L.P. In-flight campaign optimization
US8761718B2 (en) * 2006-11-30 2014-06-24 West Corporation Verification of communications network-derived location information
US8326673B1 (en) 2006-12-28 2012-12-04 Sprint Communications Company L.P. Carrier data based product inventory management and marketing
US8489327B2 (en) * 2007-01-10 2013-07-16 Tomtom International B.V. Navigation device and method for providing alternative network connections
US7768395B2 (en) * 2007-01-19 2010-08-03 Gold Steven K Brand mapping
US8634814B2 (en) 2007-02-23 2014-01-21 Locator IP, L.P. Interactive advisory system for prioritizing content
US8000749B1 (en) 2007-03-09 2011-08-16 Sprint Spectrum L.P. Access and use of ad content loaded onto wireless telephones
US9292807B2 (en) * 2007-05-10 2016-03-22 Microsoft Technology Licensing, Llc Recommending actions based on context
US20080313037A1 (en) * 2007-06-15 2008-12-18 Root Steven A Interactive advisory system
US8204684B2 (en) 2007-06-28 2012-06-19 Apple Inc. Adaptive mobile device navigation
US8175802B2 (en) * 2007-06-28 2012-05-08 Apple Inc. Adaptive route guidance based on preferences
US8311526B2 (en) * 2007-06-28 2012-11-13 Apple Inc. Location-based categorical information services
US8108144B2 (en) * 2007-06-28 2012-01-31 Apple Inc. Location based tracking
US8275352B2 (en) * 2007-06-28 2012-09-25 Apple Inc. Location-based emergency information
US20090005076A1 (en) * 2007-06-28 2009-01-01 Scott Forstall Location-Based Information Services
US8762056B2 (en) 2007-06-28 2014-06-24 Apple Inc. Route reference
US8774825B2 (en) * 2007-06-28 2014-07-08 Apple Inc. Integration of map services with user applications in a mobile device
US8332402B2 (en) * 2007-06-28 2012-12-11 Apple Inc. Location based media items
US8463238B2 (en) * 2007-06-28 2013-06-11 Apple Inc. Mobile device base station
US9066199B2 (en) 2007-06-28 2015-06-23 Apple Inc. Location-aware mobile device
US8290513B2 (en) 2007-06-28 2012-10-16 Apple Inc. Location-based services
US20090005018A1 (en) * 2007-06-28 2009-01-01 Apple Inc. Route Sharing and Location
US8385946B2 (en) 2007-06-28 2013-02-26 Apple Inc. Disfavored route progressions or locations
US8180379B2 (en) * 2007-06-28 2012-05-15 Apple Inc. Synchronizing mobile and vehicle devices
US9109904B2 (en) 2007-06-28 2015-08-18 Apple Inc. Integration of map services and user applications in a mobile device
ITMI20071607A1 (en) * 2007-08-03 2009-02-04 Incard Sa METHOD FOR ACCESSING MULTIMEDIA CONTENT ASSOCIATED WITH A GEOGRAPHICAL AREA.
KR101504763B1 (en) * 2007-08-07 2015-03-23 삼성전자주식회사 System and method for providing article information in local area network
US8160226B2 (en) 2007-08-22 2012-04-17 At&T Intellectual Property I, L.P. Key word programmable caller ID
US8243909B2 (en) 2007-08-22 2012-08-14 At&T Intellectual Property I, L.P. Programmable caller ID
WO2009032814A2 (en) * 2007-09-04 2009-03-12 Nixle, Llc System and method for collecting and organizing popular near real-time data in a virtual geographic grid
AU2008299011B2 (en) * 2007-09-10 2013-09-12 Theodore S. Rappaport Clearinghouse system for determining available network equipment
US7428522B1 (en) * 2007-09-27 2008-09-23 Yahoo! Inc. Real-time search term popularity determination, by search origin geographic location
US8127246B2 (en) * 2007-10-01 2012-02-28 Apple Inc. Varying user interface element based on movement
US8209121B1 (en) * 2007-10-10 2012-06-26 Google Inc. Registration of location data to street maps using hidden markov models, and application thereof
US8977294B2 (en) 2007-10-10 2015-03-10 Apple Inc. Securely locating a device
KR100952338B1 (en) 2007-10-19 2010-04-09 에스케이 텔레콤주식회사 Method for Constructing UMTS Pilot Cell Database, Method for Updating UMTS Pilot Cell Database, Method, Server and System for Measuring Position Based Network by Using UMTS Pilot Cell Database
US8181111B1 (en) 2007-12-31 2012-05-15 Synchronoss Technologies, Inc. System and method for providing social context to digital activity
US8355862B2 (en) 2008-01-06 2013-01-15 Apple Inc. Graphical user interface for presenting location information
US8452529B2 (en) * 2008-01-10 2013-05-28 Apple Inc. Adaptive navigation system for estimating travel times
US8255224B2 (en) 2008-03-07 2012-08-28 Google Inc. Voice recognition grammar selection based on context
US20090234860A1 (en) * 2008-03-13 2009-09-17 Rolta International, Inc. Service-Oriented Architecture System and Method
US9250092B2 (en) 2008-05-12 2016-02-02 Apple Inc. Map service with network-based query for search
US8644843B2 (en) 2008-05-16 2014-02-04 Apple Inc. Location determination
US20090292464A1 (en) * 2008-05-23 2009-11-26 Tele Atlas North America, Inc. System and method for providing geographic markers on electronic objects and real-world objects
US8369867B2 (en) 2008-06-30 2013-02-05 Apple Inc. Location sharing
US8401771B2 (en) * 2008-07-22 2013-03-19 Microsoft Corporation Discovering points of interest from users map annotations
US20100057337A1 (en) * 2008-09-02 2010-03-04 Tele Atlas North America, Inc. System and method for providing digital map, routing, or navigation information with need-based routing
US8359643B2 (en) 2008-09-18 2013-01-22 Apple Inc. Group formation using anonymous broadcast information
US8260320B2 (en) * 2008-11-13 2012-09-04 Apple Inc. Location specific content
US20100146114A1 (en) * 2008-12-04 2010-06-10 Morris Robert P Methods, Systems, And Computer Program Products For Accessing A Resource Based On Metadata Associated With A Location On A Map
US20100146132A1 (en) * 2008-12-04 2010-06-10 Morris Robert P Methods, Systems, And Computer Program Products For Accessing A Resource Having A Network Address Associated With A Location On A Map
US20100142401A1 (en) * 2008-12-04 2010-06-10 Morris Robert P Methods, Systems, And Computer Program Products For Determining A Network Identifier Of A Node Providing A Type Of Service For A Geospatial Region
US20100161732A1 (en) * 2008-12-19 2010-06-24 Morris Robert P Methods, Systems, And Computer Program Products For Maintaining Consistency Between Non-Geospatial And Geospatial Network Directory Systems
US20100162124A1 (en) * 2008-12-19 2010-06-24 Morris Robert P Methods, Systems, And Computer Program Products For Presenting A Map In Correspondence With A Presented Resource
US8938211B2 (en) 2008-12-22 2015-01-20 Qualcomm Incorporated Providing and utilizing maps in location determination based on RSSI and RTT data
US20100157848A1 (en) * 2008-12-22 2010-06-24 Qualcomm Incorporated Method and apparatus for providing and utilizing local maps and annotations in location determination
US9482761B2 (en) * 2008-12-23 2016-11-01 Toyota Motor Sales, U.S.A., Inc. GPS gate system
US8775074B2 (en) * 2009-01-30 2014-07-08 Navteq B.V. Method and system for refreshing location code data
US8271195B2 (en) 2009-01-30 2012-09-18 Navteq B.V. Method for representing linear features in a location content management system
US8554871B2 (en) 2009-01-30 2013-10-08 Navteq B.V. Method and system for exchanging location content data in different data formats
US20100198504A1 (en) * 2009-01-30 2010-08-05 Navteq North America, Llc Method and System for Managing Relationships Between Location Identifiers
US20100198503A1 (en) * 2009-01-30 2010-08-05 Navteq North America, Llc Method and System for Assessing Quality of Location Content
US8938355B2 (en) * 2009-03-13 2015-01-20 Qualcomm Incorporated Human assisted techniques for providing local maps and location-specific annotated data
US9412137B2 (en) * 2009-04-01 2016-08-09 Honeywell International Inc. Cloud computing for a manufacturing execution system
US20100257252A1 (en) * 2009-04-01 2010-10-07 Microsoft Corporation Augmented Reality Cloud Computing
US8666367B2 (en) * 2009-05-01 2014-03-04 Apple Inc. Remotely locating and commanding a mobile device
US8670748B2 (en) 2009-05-01 2014-03-11 Apple Inc. Remotely locating and commanding a mobile device
US8660530B2 (en) * 2009-05-01 2014-02-25 Apple Inc. Remotely receiving and communicating commands to a mobile device for execution by the mobile device
US9870572B2 (en) * 2009-06-29 2018-01-16 Google Llc System and method of providing information based on street address
US9766602B2 (en) * 2009-08-11 2017-09-19 International Business Machines Corporation Managing local environment using data traffic information
US9344841B2 (en) * 2009-08-24 2016-05-17 Samsung Electronics Co., Ltd Mobile device and server exchanging information with mobile apparatus
US20110055247A1 (en) * 2009-09-01 2011-03-03 Blumberg Brad W Provider-specific branding of generic mobile real estate search application
US9116003B2 (en) 2009-10-01 2015-08-25 Qualcomm Incorporated Routing graphs for buildings
US8812015B2 (en) * 2009-10-01 2014-08-19 Qualcomm Incorporated Mobile device locating in conjunction with localized environments
US8880103B2 (en) 2009-10-12 2014-11-04 Qualcomm Incorporated Method and apparatus for transmitting indoor context information
US8255006B1 (en) 2009-11-10 2012-08-28 Fusionone, Inc. Event dependent notification system and method
US8943415B2 (en) * 2010-01-08 2015-01-27 Microsoft Corporation Third party control of location information access
US8428875B2 (en) * 2010-01-11 2013-04-23 Mitac International Corp. GPS management system
US20110172916A1 (en) * 2010-01-14 2011-07-14 Qualcomm Incorporated Mobile Device Positioning In A Constrained Environment
US20110178705A1 (en) * 2010-01-15 2011-07-21 Qualcomm Incorporated Using Filtering With Mobile Device Positioning In A Constrained Environment
US9389085B2 (en) 2010-01-22 2016-07-12 Qualcomm Incorporated Map handling for location based services in conjunction with localized environments
US20110208427A1 (en) * 2010-02-25 2011-08-25 Peter S. Brennan Location Identification Systems and Methods
US9538493B2 (en) 2010-08-23 2017-01-03 Finetrak, Llc Locating a mobile station and applications therefor
US8566026B2 (en) * 2010-10-08 2013-10-22 Trip Routing Technologies, Inc. Selected driver notification of transitory roadtrip events
US8943428B2 (en) 2010-11-01 2015-01-27 Synchronoss Technologies, Inc. System for and method of field mapping
US8303410B2 (en) 2010-11-20 2012-11-06 Telenav, Inc. Navigation system having preference region adjustment mechanism and method of operation thereof
US10970394B2 (en) 2017-11-21 2021-04-06 Biocatch Ltd. System, device, and method of detecting vishing attacks
US10474815B2 (en) 2010-11-29 2019-11-12 Biocatch Ltd. System, device, and method of detecting malicious automatic script and code injection
US10949757B2 (en) 2010-11-29 2021-03-16 Biocatch Ltd. System, device, and method of detecting user identity based on motor-control loop model
US10776476B2 (en) 2010-11-29 2020-09-15 Biocatch Ltd. System, device, and method of visual login
US10728761B2 (en) 2010-11-29 2020-07-28 Biocatch Ltd. Method, device, and system of detecting a lie of a user who inputs data
US10069852B2 (en) 2010-11-29 2018-09-04 Biocatch Ltd. Detection of computerized bots and automated cyber-attack modules
US10685355B2 (en) 2016-12-04 2020-06-16 Biocatch Ltd. Method, device, and system of detecting mule accounts and accounts used for money laundering
US10069837B2 (en) 2015-07-09 2018-09-04 Biocatch Ltd. Detection of proxy server
US11223619B2 (en) 2010-11-29 2022-01-11 Biocatch Ltd. Device, system, and method of user authentication based on user-specific characteristics of task performance
US11269977B2 (en) 2010-11-29 2022-03-08 Biocatch Ltd. System, apparatus, and method of collecting and processing data in electronic devices
US10621585B2 (en) 2010-11-29 2020-04-14 Biocatch Ltd. Contextual mapping of web-pages, and generation of fraud-relatedness score-values
US10586036B2 (en) 2010-11-29 2020-03-10 Biocatch Ltd. System, device, and method of recovery and resetting of user authentication factor
US11210674B2 (en) 2010-11-29 2021-12-28 Biocatch Ltd. Method, device, and system of detecting mule accounts and accounts used for money laundering
US10834590B2 (en) 2010-11-29 2020-11-10 Biocatch Ltd. Method, device, and system of differentiating between a cyber-attacker and a legitimate user
US20190158535A1 (en) * 2017-11-21 2019-05-23 Biocatch Ltd. Device, System, and Method of Detecting Vishing Attacks
US10747305B2 (en) 2010-11-29 2020-08-18 Biocatch Ltd. Method, system, and device of authenticating identity of a user of an electronic device
US10917431B2 (en) 2010-11-29 2021-02-09 Biocatch Ltd. System, method, and device of authenticating a user based on selfie image or selfie video
US10897482B2 (en) 2010-11-29 2021-01-19 Biocatch Ltd. Method, device, and system of back-coloring, forward-coloring, and fraud detection
US20140317744A1 (en) * 2010-11-29 2014-10-23 Biocatch Ltd. Device, system, and method of user segmentation
US10949514B2 (en) 2010-11-29 2021-03-16 Biocatch Ltd. Device, system, and method of differentiating among users based on detection of hardware components
US20120296512A1 (en) * 2011-04-26 2012-11-22 University Of Cincinnati Method and system for electric vehicle battery prognostics and health management
US20130054585A1 (en) * 2011-08-23 2013-02-28 Microsoft Corporation Geographic search with mixed-precision results
US8736487B2 (en) 2011-09-21 2014-05-27 Csr Technology Inc. Method and apparatus of using height aiding from a contour table for GNSS positioning
US9740999B2 (en) 2011-10-11 2017-08-22 Mobiwork, Llc Real time customer access to location, arrival and on-site time data
US9818074B2 (en) 2011-10-11 2017-11-14 Mobiwork, Llc Method and system to analyze time stamp location data to produce movement and idle segments
US8977236B2 (en) 2011-10-11 2015-03-10 Mobiwork, Llc Method and system to record and visualize type, path and location of moving and idle segments
US9123005B2 (en) 2011-10-11 2015-09-01 Mobiwork, Llc Method and system to define implement and enforce workflow of a mobile workforce
US8971853B2 (en) 2011-10-11 2015-03-03 Mobiwork, Llc Method and system to record and visualize type, time and duration of moving and idle segments
US8510200B2 (en) 2011-12-02 2013-08-13 Spireon, Inc. Geospatial data based assessment of driver behavior
US10169822B2 (en) 2011-12-02 2019-01-01 Spireon, Inc. Insurance rate optimization through driver behavior monitoring
US9080882B2 (en) 2012-03-02 2015-07-14 Qualcomm Incorporated Visual OCR for positioning
US8595037B1 (en) 2012-05-08 2013-11-26 Elwha Llc Systems and methods for insurance based on monitored characteristics of an autonomous drive mode selection system
WO2013192538A2 (en) * 2012-06-22 2013-12-27 Jiwire, Inc. Location graph based derivation of attributes
US9558667B2 (en) 2012-07-09 2017-01-31 Elwha Llc Systems and methods for cooperative collision detection
WO2014011552A1 (en) * 2012-07-09 2014-01-16 Elwha Llc Systems and methods for coordinating sensor operation for collision detection
US9000903B2 (en) 2012-07-09 2015-04-07 Elwha Llc Systems and methods for vehicle monitoring
US9165469B2 (en) 2012-07-09 2015-10-20 Elwha Llc Systems and methods for coordinating sensor operation for collision detection
US9020930B2 (en) * 2012-07-27 2015-04-28 Oracle International Corporation Project management system with geographic data
US9225787B2 (en) * 2012-08-02 2015-12-29 Google Inc. Geolocation based resource finder
US9222777B2 (en) 2012-09-07 2015-12-29 The United States Post Office Methods and systems for creating and using a location identification grid
US8933802B2 (en) 2012-11-05 2015-01-13 Spireon, Inc. Switch and actuator coupling in a chassis of a container associated with an intermodal freight transport system
US9779379B2 (en) 2012-11-05 2017-10-03 Spireon, Inc. Container verification through an electrical receptacle and plug associated with a container and a transport vehicle of an intermodal freight transport system
US9501526B2 (en) * 2013-04-17 2016-11-22 Excalibur Ip, Llc Efficient database searching
US10405173B1 (en) 2013-06-05 2019-09-03 Sprint Communications Company L.P. Method and systems of collecting and segmenting device sensor data while in transit via a network
US9776632B2 (en) 2013-07-31 2017-10-03 Elwha Llc Systems and methods for adaptive vehicle sensing systems
US9230442B2 (en) 2013-07-31 2016-01-05 Elwha Llc Systems and methods for adaptive vehicle sensing systems
US9269268B2 (en) 2013-07-31 2016-02-23 Elwha Llc Systems and methods for adaptive vehicle sensing systems
US9319379B1 (en) 2013-08-01 2016-04-19 Sprint Communications Company L.P. Methods and systems of generating a unique mobile device identifier
US9779449B2 (en) 2013-08-30 2017-10-03 Spireon, Inc. Veracity determination through comparison of a geospatial location of a vehicle with a provided data
US9374335B2 (en) 2013-09-11 2016-06-21 Sprint Communications Company L.P. System and method for distributing messages to particular mobile devices
US9590938B1 (en) 2013-09-11 2017-03-07 Sprint Communications Company L.P. System and method for identifying a mobile device with near real time visualization to action
US9500480B2 (en) 2013-10-15 2016-11-22 Fiskars Brands, Inc. Compass assembly
US10410241B1 (en) 2013-11-27 2019-09-10 Sprint Communications Company L.P. Swipe screen advertisement metrics and tracking
US9247386B2 (en) 2013-12-18 2016-01-26 International Business Machines Corporation Location-based mobile application and service selection
US10176269B1 (en) * 2013-12-18 2019-01-08 Amazon Technologies, Inc. Cross-references in service schema
US20150186991A1 (en) 2013-12-31 2015-07-02 David M. Meyer Creditor alert when a vehicle enters an impound lot
US9734515B1 (en) 2014-01-09 2017-08-15 Sprint Communications Company L.P. Ad management using ads cached on a mobile electronic device
US10055757B1 (en) 2014-01-21 2018-08-21 Sprint Communications Company L.P. IP address hashing in advertisement gateway
US9836771B1 (en) 2014-01-21 2017-12-05 Sprint Communications Company L.P. Client mediation and integration to advertisement gateway
US10013707B1 (en) 2014-01-21 2018-07-03 Sprint Communications Company L.P. Address modification for advertisement mediation
US9984395B1 (en) 2014-01-21 2018-05-29 Sprint Communications Company L.P. Advertisement mediation of supply-demand communications
US10083409B2 (en) 2014-02-14 2018-09-25 Bby Solutions, Inc. Wireless customer and labor management optimization in retail settings
US9723109B2 (en) 2014-05-28 2017-08-01 Alexander Hertel Platform for constructing and consuming realm and object feature clouds
CN105446989B (en) * 2014-07-04 2019-06-07 阿里巴巴集团控股有限公司 Searching method and device, display device
US9508090B1 (en) 2014-09-24 2016-11-29 Sprint Communications Company L.P. End user participation in mobile advertisement
US9377312B2 (en) 2014-09-25 2016-06-28 United States Postal Service Methods and systems for creating and using a location identification grid
US11562040B2 (en) 2014-09-25 2023-01-24 United States Postal Service Methods and systems for creating and using a location identification grid
US9781153B2 (en) * 2014-09-30 2017-10-03 At&T Intellectual Property I, L.P. Local applications and local application distribution
US9818133B1 (en) 2014-10-20 2017-11-14 Sprint Communications Company L.P. Method for consumer profile consolidation using mobile network identification
US10327094B2 (en) 2016-06-07 2019-06-18 NinthDecimal, Inc. Systems and methods to track locations visited by mobile devices and determine neighbors of and distances among locations
US11204946B2 (en) * 2015-02-26 2021-12-21 Red Hat, Inc. Finding objects in a key-based data structure by their approximate location
US11935145B2 (en) 2015-03-05 2024-03-19 Quitchet, Llc Enhanced safety tracking in real estate transactions
US9551788B2 (en) 2015-03-24 2017-01-24 Jim Epler Fleet pan to provide measurement and location of a stored transport item while maximizing space in an interior cavity of a trailer
US10977678B1 (en) 2015-06-05 2021-04-13 Groupon, Inc. Apparatus and method for utilizing proximity density mapping to assist relevance determinations
US10929867B1 (en) * 2015-06-05 2021-02-23 Groupon, Inc. Apparatus and method for utilizing immediate gratification promotions
US10521815B1 (en) * 2015-06-05 2019-12-31 Groupon, Inc. Apparatus and method for utilizing immediate gratification promotions
GB2539705B (en) 2015-06-25 2017-10-25 Aimbrain Solutions Ltd Conditional behavioural biometrics
US10687167B1 (en) 2016-03-31 2020-06-16 Groupon, Inc. Methods and systems for detecting aggregation events
CN107273376B (en) 2016-04-07 2020-08-04 阿里巴巴集团控股有限公司 Target position searching method and device
US10853482B2 (en) 2016-06-03 2020-12-01 Honeywell International Inc. Secure approach for providing combined environment for owners/operators and multiple third parties to cooperatively engineer, operate, and maintain an industrial process control and automation system
GB2552032B (en) 2016-07-08 2019-05-22 Aimbrain Solutions Ltd Step-up authentication
US10310467B2 (en) 2016-08-30 2019-06-04 Honeywell International Inc. Cloud-based control platform with connectivity to remote embedded devices in distributed control system
US10579784B2 (en) 2016-11-02 2020-03-03 Biocatch Ltd. System, device, and method of secure utilization of fingerprints for user authentication
US10445779B2 (en) * 2017-04-26 2019-10-15 International Business Machines Corporation Boundary-specific electronic offers
US11068545B2 (en) * 2017-11-17 2021-07-20 Battelle Memorial Institute Spatial identification of assets using n-dimensional asset identifiers
US11237550B2 (en) 2018-03-28 2022-02-01 Honeywell International Inc. Ultrasonic flow meter prognostics with near real-time condition based uncertainty analysis
US11042893B1 (en) * 2018-11-05 2021-06-22 Inmar Clearing, Inc. System for processing a digital promotion based upon geographic destination determined from a ride-sharing application and related methods
GB2614766A (en) * 2019-10-03 2023-07-19 Super Selfie Inc Apparatus and method for remote image capture with automatic subject selection
CN110726418B (en) * 2019-10-10 2021-08-03 北京百度网讯科技有限公司 Method, device and equipment for determining interest point region and storage medium
US11606353B2 (en) 2021-07-22 2023-03-14 Biocatch Ltd. System, device, and method of generating and utilizing one-time passwords

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5543789A (en) * 1994-06-24 1996-08-06 Shields Enterprises, Inc. Computerized navigation system
WO1997007467A1 (en) * 1995-08-16 1997-02-27 Sean Phelan Computer system for identifying local resources
US5839088A (en) * 1996-08-22 1998-11-17 Go2 Software, Inc. Geographic location referencing system and method
WO1998059506A2 (en) * 1997-06-23 1998-12-30 Telia Ab Improvements in or relating to information distribution

Family Cites Families (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6175375A (en) 1984-04-28 1986-04-17 三菱電機株式会社 On-board navigator
US4974170A (en) 1988-01-21 1990-11-27 Directional Data, Inc. Electronic directory for identifying a selected group of subscribers
JPH04174890A (en) 1990-11-08 1992-06-23 Sanden Corp Position recognition system and position coordinates converting device
US5155689A (en) * 1991-01-17 1992-10-13 By-Word Technologies, Inc. Vehicle locating and communicating method and apparatus
JP2891795B2 (en) 1991-04-12 1999-05-17 パイオニア株式会社 In-vehicle navigation device
JP2955073B2 (en) 1991-08-05 1999-10-04 ビステオン・テクノロジーズ,エル・エル・シー Vehicle navigation system
JP2810818B2 (en) 1992-01-27 1998-10-15 シャープ株式会社 Positioning display device
US5323322A (en) 1992-03-05 1994-06-21 Trimble Navigation Limited Networked differential GPS system
DE69326643T2 (en) 1992-07-20 2000-04-13 Aisin Aw Co Navigation system for vehicle steering
US5355140A (en) 1992-09-15 1994-10-11 Trimble Navigation Limited Emergency reporting for marine and airborne vessels
US5296861A (en) 1992-11-13 1994-03-22 Trimble Navigation Limited Method and apparatus for maximum likelihood estimation direct integer search in differential carrier phase attitude determination systems
US5359332A (en) 1992-12-31 1994-10-25 Trimble Navigation Limited Determination of phase ambiguities in satellite ranges
US5345244A (en) 1993-01-12 1994-09-06 Trimble Navigation Limited Cordless SPS smart antenna device
US5406491A (en) 1993-03-26 1995-04-11 Trimble Navigation Limited Navigational system for trip routing
US5418538A (en) 1993-05-21 1995-05-23 Trimble Navigation Limited Rapid satellite signal acquisition in a satellite positioning system
JP3514264B2 (en) 1993-08-17 2004-03-31 松下電器産業株式会社 Electronic map display
US5596500A (en) 1993-10-25 1997-01-21 Trimble Navigation Limited Map reading system for indicating a user's position on a published map with a global position system receiver and a database
US5422814A (en) 1993-10-25 1995-06-06 Trimble Navigation Limited Global position system receiver with map coordinate system outputs
US5477458A (en) 1994-01-03 1995-12-19 Trimble Navigation Limited Network for carrier phase differential GPS corrections
US5450344A (en) 1994-04-22 1995-09-12 Trimble Navigation Limited GPS receivers with data ports for the uploading and downloading of absolute position information
US5436632A (en) 1994-06-02 1995-07-25 Trimble Navigation Limited Integrity monitoring of differential satellite positioning system signals
US5802492A (en) * 1994-06-24 1998-09-01 Delorme Publishing Company, Inc. Computer aided routing and positioning system
US5794164A (en) * 1995-11-29 1998-08-11 Microsoft Corporation Vehicle computer system
JPH09166450A (en) * 1995-12-18 1997-06-24 Sumitomo Electric Ind Ltd Navigation equipment
US5732074A (en) * 1996-01-16 1998-03-24 Cellport Labs, Inc. Mobile portable wireless communication system
JPH09305108A (en) * 1996-03-11 1997-11-28 Denso Corp Method and device for specifying location, and method and device for displaying map using them
US5938721A (en) * 1996-10-24 1999-08-17 Trimble Navigation Limited Position based personal digital assistant

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5543789A (en) * 1994-06-24 1996-08-06 Shields Enterprises, Inc. Computerized navigation system
WO1997007467A1 (en) * 1995-08-16 1997-02-27 Sean Phelan Computer system for identifying local resources
US5839088A (en) * 1996-08-22 1998-11-17 Go2 Software, Inc. Geographic location referencing system and method
WO1998059506A2 (en) * 1997-06-23 1998-12-30 Telia Ab Improvements in or relating to information distribution

Cited By (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8995316B2 (en) 1997-10-15 2015-03-31 Nokia Corporation Mobile telephone for internet applications
US9521505B2 (en) 1997-10-15 2016-12-13 Nokia Technologies Oy Mobile telephone for internet applications
US9420402B2 (en) 1997-10-15 2016-08-16 Nokia Technologies Oy Mobile telephone for internet applications
EP1061712B1 (en) * 1999-06-14 2007-11-21 Abb Research Ltd. Device and method for selecting information for mobile clients
US11765545B2 (en) 1999-09-24 2023-09-19 Dennis Dupray Network services dependent on geographical constraints
US10455356B2 (en) 1999-09-24 2019-10-22 Dennis J. Dupray Network services dependent upon geographical constraints
US8694025B2 (en) 1999-09-24 2014-04-08 Dennis Dupray Geographically constrained network services
US9699609B2 (en) 1999-09-24 2017-07-04 Dennis J. Dupray Network services dependent upon geographical constraints
US9078101B2 (en) 1999-09-24 2015-07-07 Dennis Dupray Geographically constrained network services
US10641861B2 (en) 2000-06-02 2020-05-05 Dennis J. Dupray Services and applications for a communications network
US10684350B2 (en) 2000-06-02 2020-06-16 Tracbeam Llc Services and applications for a communications network
WO2002017567A3 (en) * 2000-08-25 2002-08-01 Yogogo Ltd Wireless communications system with location-dependent services
GB2370951B (en) * 2000-08-25 2005-03-23 Yogogo Ltd Data communications
EP1317863A1 (en) * 2000-08-30 2003-06-11 Motorola, Inc. Location sensitive wireless information distribution
EP1317863A4 (en) * 2000-08-30 2005-03-02 Motorola Inc Location sensitive wireless information distribution
WO2002041173A2 (en) * 2000-11-15 2002-05-23 Interway Informationssysteme Gmbh Meta position information service
WO2002041173A3 (en) * 2000-11-15 2003-12-24 Interway Informationssysteme G Meta position information service
JP2002163267A (en) * 2000-11-28 2002-06-07 Nec Corp Store information display system
EP1219927A3 (en) * 2000-12-27 2004-10-27 Fuji Photo Film Co., Ltd. Navigation and information notification system and method
EP1219927A2 (en) * 2000-12-27 2002-07-03 Fuji Photo Film Co., Ltd. Navigation and information notification system and method
WO2002069586A2 (en) * 2001-02-23 2002-09-06 Danger, Inc. System, apparatus and method for location-based instant messaging
US6714791B2 (en) 2001-02-23 2004-03-30 Danger, Inc. System, apparatus and method for location-based instant messaging
WO2002069586A3 (en) * 2001-02-23 2003-02-27 Danger Res Inc System, apparatus and method for location-based instant messaging
WO2002073924A3 (en) * 2001-03-08 2003-05-22 Orchid Systems Inc Method of capturing supplemental data from a device and associating such data with user input data
WO2002073924A2 (en) * 2001-03-08 2002-09-19 Orchid Systems, Inc. Method of capturing supplemental data from a device and associating such data with user input data
US6587780B2 (en) 2001-04-09 2003-07-01 Koninklijke Philips Electronics N.V. System and method for disseminating traffic information
GB2378540B (en) * 2001-04-13 2005-03-09 Hewlett Packard Co Language and culture interface protocol
GB2378540A (en) * 2001-04-13 2003-02-12 Hewlett Packard Co Interface Protocol Configured According to Cultural Profile
US9875492B2 (en) 2001-05-22 2018-01-23 Dennis J. Dupray Real estate transaction system
US11610241B2 (en) 2001-05-22 2023-03-21 Mobile Maven Llc Real estate transaction system
US7904803B2 (en) 2001-05-25 2011-03-08 International Business Machines Corporation Method and system for converting user interface source code of a legacy application to web pages
WO2003017622A1 (en) * 2001-08-16 2003-02-27 3G Lab Limited Wireless communication device
US7373144B1 (en) 2002-09-30 2008-05-13 Danger, Inc. System and method for automatically providing user status in a messaging service
WO2008004981A1 (en) * 2006-07-07 2008-01-10 Ncs Pte. Ltd. A system and method for providing mobile services
GB2447065B (en) * 2007-01-31 2009-07-08 Interactive Text Ltd Method and apparatus for making content available on a network
GB2447065A (en) * 2007-01-31 2008-09-03 Interactive Text Ltd Method for making content available on a communication network
US8959190B2 (en) 2007-02-06 2015-02-17 Rpx Corporation Contextual data communication platform
US8725851B2 (en) 2007-02-06 2014-05-13 Rpx Corporation Contextual data communication platform
US8639785B2 (en) 2007-02-06 2014-01-28 5O9, Inc. Unsolicited cookie enabled contextual data communications platform
WO2011082075A3 (en) * 2010-01-04 2011-10-06 Hit Development Llc Incoming web traffic conversion
WO2011082075A2 (en) * 2010-01-04 2011-07-07 Hit Development Llc Incoming web traffic conversion
CN103699531A (en) * 2012-09-27 2014-04-02 中国电信股份有限公司 Position searching method and positioning searching engine
CN103699531B (en) * 2012-09-27 2017-12-05 中国电信股份有限公司 Position search method and location finding engine

Also Published As

Publication number Publication date
US6295502B1 (en) 2001-09-25
JP2002538518A (en) 2002-11-12
EP1159584A1 (en) 2001-12-05
HK1041311A1 (en) 2002-07-05
US6202023B1 (en) 2001-03-13
AU2994900A (en) 2000-09-14

Similar Documents

Publication Publication Date Title
US6202023B1 (en) Internet based geographic location referencing system and method
US6609062B2 (en) Nesting grid structure for a geographic referencing system and method of creating and using the same
US6597983B2 (en) Geographic location multiple listing service identifier and method of assigning and using the same
US9729381B2 (en) Unified geograhic database and methods of creating, maintaining and using the same
US6356834B2 (en) Geographic location referencing system and method
WO1998008055A9 (en) Geographic location referencing system and method
US6292745B1 (en) Method and system for forming a database of geographic data for distribution to navigation system units
US7007228B1 (en) Encoding geographic coordinates in a fuzzy geographic address
US7096233B2 (en) Server, user terminal, information providing service system and information providing service method for providing information in conjunction with a geographical mapping application
US6278939B1 (en) Method and system for providing data from a remotely located geographic database for use in navigation system units
US6771970B1 (en) Location determination system
WO2003063521A2 (en) Routing framework
CN102589556A (en) Method and system for an efficient operating environment in real-time navigation system
US20040167706A1 (en) Web based system providing GPS waypoint information
US6989770B1 (en) Navigation system that supports multiple languages and formats
WO2002063853A2 (en) Unified geographic database and metod of creating, maintaining and using the same
WO2001097120A1 (en) An animation object map information providing method and system based on internet
Deidda et al. A tourist location based service (lbs) for the Cagliari city
KR100379681B1 (en) a system for providing position tracking information by satellite and method thereof
Virrantaus et al. DEVELOPING GIS-SUPPORTED LOCATION-BASED SERVICES FOR M-COMMERCE: DREAM OR REAL CHANCE
WO2001026072A1 (en) Internet-based multiple objects tracking system

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AE AL AM AT AU AZ BA BB BG BR BY CA CH CN CR CU CZ DE DK DM EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG US UZ VN YU ZA ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): GH GM KE LS MW SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
ENP Entry into the national phase

Ref country code: JP

Ref document number: 2000 601396

Kind code of ref document: A

Format of ref document f/p: F

WWE Wipo information: entry into national phase

Ref document number: 2000908644

Country of ref document: EP

WWP Wipo information: published in national office

Ref document number: 2000908644

Country of ref document: EP

REG Reference to national code

Ref country code: DE

Ref legal event code: 8642

WWW Wipo information: withdrawn in national office

Ref document number: 2000908644

Country of ref document: EP