# US 8,788,613 B2 · Method and system for distribution of map content to mobile communication devices

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 8,788,613 B2
- Document ID: US8788613B2
- Status: Granted
- Kind: B2
- Application number: 11/481,855
- Filed: 2006-07-07
- Published: 2007-10-04
- Granted: 2014-07-22
- Earliest claimed: 2006-03-31
- Assignees: BlackBerry Limited
- Applicants: Eric Johnson; Jesse Boudreau; Ronald Anthony Dicke
- Inventors: Eric Johnson; Jesse Boudreau; Ronald Anthony Dicke
- Web page: https://patentgrep.com/patent/US8788613B2

## CPC

- G01C 21/3878: {Hierarchical structures, e.g. layering}
- G01C 21/005: {with correlation of navigation data from several sources, e.g. map or contour matching (G01C21/30 takes precedence)}
- G01C 21/3867: {Geometry of map features, e.g. shape points, polygons or for simplified maps}
- G06F 16/29: Geographical information databases
- G09B 29/00: Maps; Plans; Charts; Diagrams, e.g. route diagram (star maps G09B27/04; devices for holding or supporting maps A47B97/02; for computing purposes G06G1/14, G09B1/16; display boards G09F)
- H04L 67/306: User profiles
- H04L 67/52: specially adapted for the location of the user terminal
- G01C: MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY (measuring liquid level G01F; radio navigation, determining distance or velocity by use of propagation effects, e.g. Doppler effects, propagation time, of radio waves, analogous arrangements using other waves G01S)
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- G09B: EDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS (devices for psychotechnics or for testing reaction times A61B5/16; games, sports, amusements A63; projectors, projector screens G03B)
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

A system and method are set forth for distributing map content from a server to a communication device by transmitting a request from the communication device to the map server for a maplet index of map data covering a specified area and identified by coordinates for defining the map data, receiving the request at the map server and in response transmitting the maplet index to the communication device, wherein the maplet index defines content available the maplet without including all of the data points therein.

## Claims

### Claim 1

A method of rendering map data on a mobile communication device, comprising:
transmitting from said mobile communication device to a server storing said map data including (i) a plurality of data entries arranged in a plurality of layers, each data entry containing data points defining an artifact or a label, and (ii) an index listing said data entries and excluding said data points:
an index request for said index of said data entries relating to a specified area identified by coordinates; and
an area of interest request for said data entries within a selected subset of said layers and relating to said specified area;
in response to said index request, receiving said index at said mobile communication device;
in response to said area of interest request, receiving said data entries within said selected subset of said layers;
automatically determining, at said mobile communication device, from said index which of the data entries are contextually relevant using context information;
in response to the determining, automatically transmitting a data entry request from said mobile communication device to said server for at least one of said data entries determined to be contextually relevant; and
in response to the data entry request, receiving said at least one requested data entry, including said data points; and
rendering said artifacts or labels defined by said data points of said data entries within said selected subset of said layers and said at least one requested data entry on a display of said mobile communication device.

### Claim 2 (depends on 1)

The method of claim 1, wherein said index request and said data entry request each includes a zoom parameter.

### Claim 3 (depends on 1)

The method of claim 1, wherein said map data includes a plurality of maplets each containing at least one of said data entries arranged in said layers, and wherein said area of interest request includes a layer mask for masking unwanted layers, and an additional mask for masking unwanted data entries.

### Claim 4 (depends on 1)

The method of claim 1, wherein said context information relates to a context of use of said mobile communication device.

### Claim 5 (depends on 1)

The method of claim 1, wherein said area of interest request includes a zoom parameter.

### Claim 6 (depends on 1)

The method of claim 1, wherein said index request and said area of interest request are transmitted from said mobile communication device as a single message.

### Claim 7 (depends on 3)

The method of claim 3, wherein said data entries include one of either public data or private data.

### Claim 8 (depends on 4)

The method according to claim 4, wherein said context of use includes at least one of a speed at which the mobile communication device is traveling or an altitude of the mobile communication device.

### Claim 9

A device for rendering map data, comprising:
a processor;
a display;
a transceiver connected to said processor, for communicating with a server storing said map data including (i) a plurality of data entries arranged in a plurality of layers, each data entry containing data points defining an artifact or a label, and (ii) an index listing said data entries and excluding said data points; and
a memory storing a map application executable by said processor for: transmitting to said server via said transceiver:
(i) an index request for said index of said data entries relating to a specified area identified by coordinates; and
(ii) an area of interest request for said data entries within a selected subset of said layers and relating to said specified area,
in response to said index request, receiving said index via said transceiver;
in response to said area of interest request, receiving said data entries within said selected subset of said layers via said transceiver;
automatically determining from said index which of the data entries are contextually relevant using context information;
in response to the determining, automatically transmitting a data entry request to said server via said transceiver for at least one of said data entries determined to be contextually relevant; and
in response to the data entry request, receiving said at least one requested data entry, including said data points; and
rendering said artifacts or labels defined by said data points of said data entries within said selected subset of said layers and said at least one requested data entry on said display.

### Claim 10 (depends on 9)

The device of claim 9, wherein said map application further comprises at least one of a Map Viewer, a Route Module, and a Locate Module.

### Claim 11 (depends on 10)

The device of claim 10, wherein said Map Viewer is adapted to receive Latitude and Longitude data as inputs and in response use the Latitude and Longitude data as arguments to render map graphics.

### Claim 12 (depends on 10)

The device of claim 10, further comprising a local cache for storing said index and said data entries and being adapted in response to a “go to” request for a particular location, to check the local cache to determine whether the index for the location is already stored in the local cache, and display a best available map from said cache.

### Claim 13 (depends on 11)

The device of claim 11, wherein said Locate Module is adapted to convert civic addresses to said Latitude and Longitude coordinates for use by said Map Viewer.

### Claim 14 (depends on 13)

The device of claim 13, wherein said Route Module is adapted to generate a set of decision points to enable rendering by said Map Viewer of turn-by-turn indications.

### Claim 15

A location data repository for storing map data for use by a computer, the location data repository comprising a data structure for map data covering a specified area identified by coordinates, said data structure including (i) a plurality of data entries arranged in a plurality of layers, each data entry containing data points defining an artifact or a label within said coordinates; and (ii) an index listing said data entries and excluding said data points, said index further comprising rendering attributes for each of said data entries, wherein the index is downloadable to a mobile device and the data entries are organized such that they can be selected for download to said mobile device.

### Claim 16 (depends on 15)

The location data repository of claim 15, wherein said index includes a header for identifying said map data.

### Claim 17 (depends on 15)

The location data repository of claim 15, wherein said set of data points are separated into different parts representing various portions of the artifact.

### Claim 18 (depends on 15)

The location data repository of claim 15, wherein said layers enable map data from different sources to be meshed for rendering.

### Claim 19 (depends on 15)

The location data repository of claim 15, wherein said rendering attributes include at least one of a zoom index, a shape type, a line type and a color field.

### Claim 20 (depends on 15)

A server for distributing map content, comprising:
a location data repository as claimed in claim 15; and
application means for receiving a request for said map data and in response transmitting at least one of said index and selected ones of said data entries containing at least one of geographical data points and labels within a specific bounding area, thereby enabling rendering of said geographical data points and labels for display.

### Claim 21 (depends on 20)

The server of claim 20, wherein said application means is adapted to perform context filtering for selective transmitting of said data entries.

### Claim 22 (depends on 20)

The server of claim 20, wherein said in layers enable map data from different sources to be meshed for rendering.

### Claim 23 (depends on 22)

The server of claim 22, wherein said application means is adapted to mask unwanted layers and unwanted data entries prior to transmitting.

### Claim 24 (depends on 20)

The server of claim 20, wherein said application means is adapted to transmit said index and selected ones of said data entries as a single message.

### Claim 25 (depends on 20)

The server of claim 20, wherein said data entries include one of either public data or private data.

### Claim 26 (depends on 15)

A method of distributing map content, comprising:
storing map data in a location data repository as claimed in claim 15;
receiving an index request for said index from a mobile communication device;
receiving an area of interest request for said data entries within a selected subset of said layers and relating to said specified area from said mobile communication device;
In response to said index request, transmitting said index to said mobile communication device;
in response to said area of interest request, transmitting said data entries within said selected subset of said layers to said mobile communication device;
receiving a data entry request from said mobile communication device for at least one requested data entry determined by said mobile communication device to be contextually relevant; and
in response to data entry request, transmitting said at least one requested data entry to said mobile communication device, thereby enabling rendering of said artifacts or labels defined by said data points of said at least one requested data entry for display at said mobile communication device.

### Claim 27 (depends on 26)

The method of claim 26, further comprising context filtering for selective transmitting of said data entries.

### Claim 28 (depends on 26)

The method of claim 26, wherein said layers enable map data from different sources to be meshed for rendering.

### Claim 29 (depends on 28)

The method of claim 28, further comprising masking unwanted layers and unwanted data entries prior to transmitting said at least one requested data entry.

### Claim 30 (depends on 26)

The method of claim 26, wherein said index and said data entries within said selected subset of said layers are transmitted as a single message.

### Claim 31 (depends on 26)

The method of claim 26, wherein said data entries include one of either public data or private data.

### Claim 32 (depends on 3)

The method of claim 3, wherein said index request and said data entry request includes a zoom parameter.

### Claim 33 (depends on 3)

The method of claim 3, wherein said area of interest request includes a zoom parameter.

### Claim 34 (depends on 1)

A persistent store embodying program code executable by a processor of a computing device or system for implementing the method of claim 1.

### Claim 35 (depends on 1)

The method of claim 1, wherein said context information includes a user occupation.
