IP Library Granted Patent US 9,990,432
Granted Patent B1
US 9,990,432 · App. 14/569,348 · Granted Jun 5, 2018

Generic folksonomy for concept-based domain name searches

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 9,990,432
App. No.
14/569,348
Granted
Jun 5, 2018
Kind
B1
Abstract

Systems and methods of the present invention provide for one or more server computers communicatively coupled to a network and configured to: receive a domain name search string; tokenize the domain name search string; identify, based on at least one token in the domain name search string, one or more concepts comprising a collection of data records comprising a common concept id and/or one or more languages; and recommend at least one available domain name comprising the one or more concepts and in the one or more languages.

Claims (110)

1. A method, comprising the steps of:

receiving, by a server computer communicatively coupled to a network and comprising at least one processor executing specific computer-executable instructions within a memory, via a first graphical user interface (GUI) for a multi-lingual domain name search engine displayed on a client computer, a domain name search string;

tokenizing, by the server computer, the domain name search string;

identifying, by the server computer, a search string token within the domain name search string as a concept seed;

executing, by the server computer, a first database command to create a data record storing the search string token in association with a concept id;

executing, by the server computer, a crawl of:

a domain name search log, or

at least one domain name system (DNS) zone file;

tokenizing, by the server computer, at least one domain name text string within the domain name search log or the at least one DNS zone file;

identifying, by the server computer, within the at least one domain name text string, at least one synonym or translation of the search string token;

executing, by the server computer, a second database command to create at least one data record storing:

the at least one synonym or translation of the search string token;

the concept id; and

at least one language associated with the at least one synonym or translation;

identifying, by the server computer, based on the search string token in the domain name search string, at least one concept comprising a collection of the at least one data record sharing the concept id;

generating, by the server computer, a second GUI including a displayed list recommending at least one available domain name comprising the at least one concept in the at least one language, the displayed list being ordered according to a frequency of use of the at least one concept; and

transmitting, by the server computer, the second GUI to the client computer for display.

2. The method of claim 1 , further comprising a tokenizer configured to:

tokenize the domain name search string into a sequence of tokens corresponding to the at least one concept; and

detect the at least one language.

3. The method of claim 1 , wherein the at least one concept comprises a plurality of tokens each comprising a base word and:

at least one translation of the base word into an additional language;

at least one lemma of the base word; or

at least one synonym of the base word.

4. The method of claim 1 , wherein recommending the at least one available domain name comprises:

determining, by the server computer, a co-occurrence frequency of the at least one concept from:

at least one user session; or

at least one domain name zone file; and

identifying, by the server computer, the at least one available domain name according to a concept dictionary using the co-occurrence frequency of the at least one concept.

5. The method of claim 1 , wherein recommending the at least one available domain name further comprises the steps of:

running, by the server computer, a relatedness calculation;

generating, by the server computer, a relatedness dictionary from the relatedness calculation; and

ranking, by the server computer, the at least one available domain name according to the relatedness dictionary.

6. The method of claim 5 , wherein running the relatedness calculation further comprises the steps of:

tokenizing, by the server computer, a plurality of tokens from a plurality of domain names across a plurality of user session logs, domain name zone files or Internet documents;

generating, by the server computer:

a plurality of pointwise mutual information measurements; and

a final association score from the plurality of tokens; and

identifying, by the server computer:

at least one concept based on the search string token; and

at least one top level domain based on the final association score for the plurality of tokens; and

ranking the at least one top level domain for each at least one concept according to the final association score.

7. The method of claim 1 , further comprising the steps of:

identifying, by the server computer, a geographic location data associated with the domain name search string; and

customizing, by the server computer, the at least one available domain name to at least one concept coming into higher usage in the geographic location associated with the geographic location data.

8. The method of claim 1 , wherein recommending the at least one available domain name further comprises the steps of:

identifying, by the server computer, at least one interchangeable term;

generating, by the server computer, an interchangeable term dictionary from the at least one interchangeable term; and

ranking, by the server computer, the at least one available domain name according to the interchangeable term dictionary.

9. The method of claim 8 , wherein identifying the at least one interchangeable term further comprises the steps of:

applying, by the server computer, an algorithm identifying a string alignment for a common concept between a plurality of consecutive domain name queries;

identifying, by the server computer, a relative position for the string alignment between the plurality of consecutive domain name queries; and

extracting, by the server computer, a coupling for at least one interchangeable term.

10. The method of claim 2 , wherein recommending at least one available domain name comprises:

calculating, by the server computer, a ratio of the at least one language compared to at least one other language stored in a database; and

recommending, by the server computer, the at least one available domain name proportionate to the ratio.

11. The method of claim 1 , further comprising the step of identifying at least one word in the at least one language corresponding to a concept unit stored in the database.

12. A system, comprising a server computer communicatively coupled to a network and comprising at least one processor executing computer-executable instructions within a memory that, when executed, cause the system to:

receive, via a first graphical user interface (GUI) for a multi-lingual domain name search engine displayed on a client computer, a domain name search string;

tokenize the domain name search string;

identify a search string token within the domain name search string as a concept seed;

execute a first database command to create a data record storing the search string token in association with a concept id;

execute a crawl of:

a domain name search log, or

at least one domain name system (DNS) zone file;

tokenize at least one domain name text string within the domain name search log or the at least one DNS zone file;

identify, within the at least one domain name text string, at least one synonym or translation of the search string token;

execute a second database command to create at least one data record storing:

the at least one synonym or translation of the search string token;

the concept id; and

at least one language associated with the at least one synonym or translation;

identify, based on the search string token in the domain name search string, at least one concept comprising a collection of the at least one data record sharing the concept id;

generate a second GUI including a displayed list recommending at least one available domain name comprising the at least one concept in the at least one language, the displayed list being ordered according to a frequency of use of the at least one concept; and

transmit the second GUI to the client computer for display.

13. The system of claim 1 , further comprising a tokenizer configured to:

tokenize the domain name search string into a sequence of tokens corresponding to the at least one concept; and

detect the at least one language.

14. The system of claim 12 , wherein the at least one concept comprises a plurality of tokens comprising a base word and:

at least one translation of the base word into an additional language;

at least one lemma of the base word; or

at least one synonym of the base word.

15. The system of claim 12 , wherein the server computer is further configured to:

determine a co-occurrence frequency of the at least one concept from:

at least one user session; or

at least one domain name zone file; and

identify the at least one available domain name according to a concept dictionary using the co-occurrence frequency of the at least one concept.

16. The system of claim 12 , wherein the server computer is further configured to:

run a relatedness calculation;

generate a relatedness dictionary from the relatedness calculation; and

rank the at least one available domain name according to the relatedness dictionary.

17. The system of claim 16 , wherein running the relatedness calculation further comprises the steps of:

tokenizing a plurality of tokens from a plurality of domain names across a plurality of user session logs, domain name zone files or Internet documents;

generating:

a plurality of pointwise mutual information measurements; and

a final association score from the plurality of tokens; and

identifying:

at least one concept based on the search string token; and

at least one top level domain based on the final association score for the plurality of tokens; and

ranking the at least one top level domain for each at least one concept according to the final association score.

18. The system of claim 12 , wherein the server computer is further configured to:

identify a geographic location data associated with the domain name search string; and

customize the at least one available domain name to at least one concept coming into higher usage in the geographic location associated with the geographic location data.

19. The system of claim 12 , wherein the server computer is further configured to:

identify at least one interchangeable term;

generate an interchangeable term dictionary from the at least one interchangeable term; and

rank the at least one available domain name according to the interchangeable term dictionary.

20. The system of claim 19 , wherein identifying the at least one interchangeable term further comprises the steps of:

applying an algorithm identifying a string alignment for a common concept between a plurality of consecutive domain name queries;

identifying a relative position for the string alignment between the plurality of consecutive domain name queries; and

extracting a coupling for the interchangeable term.

Assignments (3)
SECURITY AGREEMENT Recorded Feb 17, 2023
From: GO DADDY OPERATING COMPANY, LLC; GD FINANCE CO, LLC; GODADDY MEDIA TEMPLE INC.; GODADDY.COM, LLC; LANTIRN INCORPORATED; POYNT, LLC
To: ROYAL BANK OF CANADA
Reel/Frame 062782/0489 →
SECURITY AGREEMENT Recorded Oct 12, 2020
From: GO DADDY OPERATING COMPANY, LLC; GD FINANCE CO., INC.
To: BARCLAYS BANK PLC
Reel/Frame 054045/0829 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 23, 2014
From: JHEETA, MONINDER; KAMDAR, TAPAN; LAI, WEI-CHENG; ZHAO, YANG
To: GO DADDY OPERATING COMPANY, LLC
Reel/Frame 034579/0914 →