×

System, method and apparatus for generating phrases from a database

  • US 6,697,793 B2
  • Filed: 03/02/2001
  • Issued: 02/24/2004
  • Est. Priority Date: 03/02/2001
  • Status: Expired due to Fees
First Claim
Patent Images

1. A method of generating phrases from a database comprising:

  • providing a database;

    providing one or more stopterms;

    creating a relational model of the database by a process comprising determining a plurality of relations, wherein each of the plurality of relations includes at least one term pair and one or more directional metric values;

    outputting the relational model for the database;

    inputting a query for the database, wherein the query includes one or more base phrases, each base phrase including at least one of a group of one or more terms; and

    one or more phrases;

    determining a plurality of phrases from the relational model of the database, wherein each of the plurality of phrases is contextually related to the query;

    sorting the plurality of phrases;

    outputting the sorted plurality of phrases;

    wherein each of the plurality of phrases is contextually related to the query by a process comprising;

    (1) creating an empty phrase list (PL), wherein a phrase list is a list of base phrases;

    (2) setting a weight of each base phrase of the query to a threshold level, and replacing the PL with the query;

    (3) selecting one of the plurality of relations from the model of the database;

    (4) selecting a first term from the selected relation;

    (5) identifying the selected term as a contained term;

    (6) identifying a second term of the selected relation as an appended term;

    (7) determining if the contained term is included in the one or more base phrases in the PL;

    (8) when the contained term is included in the PL;

    (8-i) selecting one of the one or more base phrases from the PL, wherein the selected base phrase includes the contained term;

    (8-ii) concatenating the selected base phrase and the appended term into a first candidate jtrase and a second candidate phrase, wherein the first candidate phrase includes the selected base phrase followed by the appended term and the second candidate phrase includes the appended term followed by the selected base phrase, and determining for each of the candidate phrases a link count consisting of a count of known relations associated with each of the candidate phrases, and associating with each of the candidate phrases one or more link weights, each link weight consisting of one of the one or more directional metric values included in the selected relation whose magnitude represents a degree of contextual association between the contained term and the appended term;

    (8-iii) updating a conditional list of phrases (CLP);

    (8-iv) selecting the first candidate phrase; and

    (8-v) determining number of stopterms in the selected candidate phrase;

    (9) determining if number of the stopterms is greater than a first pre-selected number;

    (10) when (i) the number of the stoptemis is greater than the first pre-selected number or (ii-a) the number of stopterms is not greater than the first preselected number and (ii-b) the link count is equal to a number of terms in the base phrase included in the selected candidate phrases and (ii-c) at least one link weight is non-positive, deleting the selected candidate phrase and continuing to step (13);

    (11) when (i) the number of the stopterms is not greater than the first pre-selected number and (ii) the link count is not equal to number of terms in the base phrase, continuing to step (13);

    (12) when (i) the number of the stopterms is not greater than the first pre-selected number and (ii) the link count is equal to number of terms in the base phrase included in the selected candidate phrase and (iii) all the link weights are positive, including the selected candidate phrase in an interim phrase list (IPL) and continuing to step (13);

    (13) determining if the second candidate phrase has been processed;

    (14) when the second candidate phrase has not been processed, selecting the second candidate phrase and returning to step (8-v);

    (15) when the second candidate phrase has been processed, determining if a subsequent phrase in the PL contains the contained term; and

    (16) when a subsequent phrase in the PL contains the contained term, selecting a subsequent base phrase containing the contained term and returning to step (8-ii).

View all claims
  • 1 Assignment
Timeline View
Assignment View
    ×
    ×