IP Library › Granted Patent US 8,364,462
Granted Patent B2
US 8,364,462 · App. 12/145,615 · Granted Jan 29, 2013

Cross lingual location search

Inventors: Joseph M. Joy (Bangalore, IN); Tanuja Abhay Joshi (Pashan Pune, IN); Udayan Khurana (New Delhi, IN); Arumugam Kumaran (Bangalore, IN); Vibhuti Singh Sengar (Unnao, IN); Tobias W. M. Kellner (Bischofswiesen, DE)
Assignee: Microsoft Corporation
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,364,462
App. No.
12/145,615
Granted
Jan 29, 2013
Kind
B2
Abstract

A cross-lingual location search uses a combination of translation and transliteration of query tokens to develop a set of candidate matches for further searching. A query is broken up into individual tokens (e.g. address parts) and a list of transliterations and/or translations for each token is developed. The translated and transliterated results are keyed against a spatial database using both literal database keys and transliterated database keys. Matches from the resulting searches are selected when a spatial overlap, or constraint, occurs among subsequences of the query tokens.

Claims (48)

1. A method comprising:

receiving a geocoding query, the geocoding query comprising query tokens in a source language written in a source language script;

parsing the geocoding query into the query tokens;

transliterating the query tokens to provide transliterated query tokens in a target language written in a target language script, wherein the target language is different than the source language, the target language script is different than the source language script, and the transliterated query tokens include multiple different location names that are different interpretations of a location name provided by a first one of the query tokens;

determining approximate matches between the transliterated query tokens and database name entries, the database name entries having corresponding geometric footprints that comprise one or more spatial regions; and

selecting candidate matches from the approximate matches based on spatial affinity of the approximate matches, wherein the spatial affinity reflects overlap of the corresponding geometric footprints of the database name entries and wherein the candidate matches include an individual location name from the multiple different location names;

wherein at least the selecting the candidate matches is performed by a computing device,

wherein the candidate matches are in the target language and are written in the target language script.

2. The method of claim 1 , further comprising:

translating an individual query token that is a common noun; and

comparing the translated individual query token that is the common noun to the database name entries.

3. The method of claim 1 , wherein multiple candidate matches are selected.

4. The method of claim 1 , wherein the multiple different location names include multiple phonetic abstractions of the first query token.

5. A computer-readable memory device or storage device having computer-executable instructions that, when executed by a processor, cause the processor to perform the method of claim 1 .

6. A computer-readable memory device or storage device having computer-executable instructions that, when executed by a computing device, cause the computing device to perform acts comprising:

receiving a query comprising a plurality of query tokens in a first language;

performing machine transliteration of the query tokens in the first language to provide machine transliterated query tokens in a second language that is written in a different script than the first language;

comparing the machine transliterated query tokens in the second language to name attributes of a spatial database, wherein the name attributes are also in the second language and identify spatial regions having corresponding geometric footprints;

based on the comparing, identifying matching name attributes that approximately match the machine transliterated query tokens;

identifying candidate matches for the query from individual matching name attributes for which the corresponding geometric footprints have geometric overlap;

abstracting individual query tokens to obtain abstracted query tokens;

comparing the abstracted query tokens to abstracted name attributes of an abstracted spatial database, wherein the abstracted name attributes identify other spatial regions having other corresponding geometric footprints; and

identifying further candidate matches for the query from individual abstracted name attributes that approximately match the abstracted query tokens and for which the other corresponding geometric footprints have geometric overlap.

7. The computer-readable memory device or storage device of claim 6 , the acts further comprising:

excluding, from the candidate matches, at least some matching name attributes for which the corresponding footprints do not geometrically overlap.

8. The computer-readable memory device or storage device of claim 6 , the acts further comprising:

parsing the query to obtain individual query tokens for the machine transliteration.

9. The computer-readable memory device or storage device of claim 6 , the acts further comprising:

before the abstracting, performing machine translation on the individual query tokens to obtain machine translated query tokens,

wherein the abstracting is performed on one or more of the machine translated query tokens to obtain the abstracted query tokens.

10. The computer-readable memory device or storage device of claim 6 , wherein the abstracting is performed on one or more of the machine transliterated query tokens to obtain the abstracted query tokens.

11. The computer-readable memory device or storage device of claim 6 , wherein the abstracted query tokens are phonetic abstractions of the query tokens and the abstracted name attributes are phonetic abstractions of the name attributes.

12. A system comprising the computer-readable memory device or storage device of claim 6 and the computing device.

13. A system comprising:

one or more computer-readable memory devices or storage devices comprising instructions configured to:

receive a geocoding query, the geocoding query comprising query tokens in a source language written in a source language script,

transliterate the query tokens to provide transliterated query tokens in a target language written in a target language script, wherein the target language is different than the source language, the target language script is different than the source language script, and the transliterated query tokens include multiple different location names that are different interpretations of a location name provided by a first one of the query tokens,

determine approximate matches between the transliterated query tokens and database name entries, the database name entries having corresponding geometric footprints that comprise one or more spatial regions, and

select one or more candidate matches from the approximate matches based on spatial affinity of the approximate matches, wherein the spatial affinity reflects overlap of the corresponding geometric footprints of the database name entries and wherein the candidate matches include an individual location name from the multiple different location names; and

a processor configured to execute the instructions,

wherein the one or more candidate matches are in the target language and are written in the target language script.

14. The system of claim 13 , wherein the instructions are further configured to obtain the multiple different location names by performing a phonetic abstraction process on the first query token to obtain phonetic abstractions of the first query token.

15. The system of claim 14 , wherein the phonetic abstraction process is applied after the first query token has been transliterated.

16. The system of claim 15 , wherein the database name entries include phonetic names for at least some of the multiple different location names.

17. The system of claim 16 , wherein the instructions are further configured to determine the approximate matches by comparing the phonetic abstractions of the first query token to the phonetic names included in the database name entries.

18. The system of claim 17 , wherein the database name entries also include a common name in the target language for the individual location name.

19. The system of claim 13 , wherein the source language is Arabic and the target language is English.

20. The system of claim 13 , wherein each of the candidate matches includes at least one of the multiple different location names.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 9, 2014
From: MICROSOFT CORPORATION
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 034564/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 18, 2008
From: JOY, JOSEPH M.; JOSHI, TANUJA ABHAY; KHURANA, UDAYAN; KUMARAN, ARUMUGAM; SENGAR, VIBHUTI SINGH; KELLNER, TOBIAS W. M.
To: MICROSOFT CORPORATION
Reel/Frame 021399/0592 →
Continuity (1)
Related Publication 20090326914A1 · Dec 31, 2009