Patent Document ID: 6049796
Application ID: 08803814

Base Claim:
1. A method for operating a personal digital assistant having an input means, a file storage means, a data base, a search engine means, a display means, and an electronic communication means, comprising the steps of: storing in the data base one or more records, each of the records comprising data elements defining an identifier of a party and communication information required for communicating with the party through a communication link; in response to an input from a user, selecting one of a plurality of directories, each of said directories comprising one or more entries and being related to a respective type of communication, each of said entries corresponding to at least one of said data elements of one of said records; in response to the selecting step, displaying each of the one or more entries of the selected directory; inputting a search key corresponding to at least a portion of at least one of the displayed entries of the selected directory; comparing the search key to at least one data element corresponding to at least one of the displayed entries and further displaying those ones of the entries which correspond to data elements corresponding to the search key; and in response to another input by the user, selecting one of the further displayed entries for initiating a communication to a party, the party being identified by the identifier defined by data elements corresponding to the selected entry.

---

Claim 2:
2. The method as described in claim 1, wherein the step of comparing the search key comprises the steps of: setting a value of a first variable equal to a number representing a total number of the records to be searched; setting a value of a second, index variable equal to one; reading at least one of the data elements of a record corresponding to the value of the second, index variable; determining whether the search key matches at least one of the data elements of the record corresponding to the value of the second, index variable; and incrementing the value of the second, index variable by one and subsequently determining whether the value of the second, index variable equals the value of the first variable, and if the value of the second, index variable does not equal the value of the first variable, then the steps of reading, determining, incrementing, and subsequently determining are again performed until it is determined that the value of the second, index variable equals the value of the first variable.