A method for operating a data matching system having a plurality of clients and a master catalog, the master catalog including entries having multiple fields including at least one search field, comprising: processing input requests from requesting clients in the plurality of clients, wherein each input request is a contact lens prescription, each of the input requests including a request field storing an input variant of a data element and a plurality of additional data fields to identify a requested entry in the master catalog; maintaining client matching tables for respective clients in the plurality of clients, entries in the client matching tables matching the input variants of data elements in the request field with specific variants of the data element in the search field of a set of entries in the master catalog; wherein the entries in the master catalog are hierarchical with one parent entry with a specific variant of the data element in the search field having multiple child entries with different values of the data elements in additional fields; the processing of input requests for a current input request of a particular requesting client, including during a learning phase using a first procedure comprising,: searching, using a two-step match process, plural sets of entries in the master catalogue having different variants of the data element in the search fields for a specific entry that matches the plurality of additional fields of the current input request, and generating a response to the current input request identifying the specific entry; and adding the match of the input variant of the data element in the request field of the current input request with the specific variant of the data element in a master search field of the set of entries of which the specific entry is a member to the client matching table of the requesting client; and after the learning phase, using a second procedure comprising: using the client matching table to match the current input request with a matched set of entries in the master catalog; searching the matched set of entries for a specific entry that matches the plurality of additional fields of the current input request and generating a response to the current input request identifying the specific entry; and when the client matching table does not include a match for the current input request, using the first procedure. processing input requests from requesting clients in the plurality of clients, wherein each input request is a contact lens prescription, each of the input requests including a request field storing an input variant of a data element and a plurality of additional data fields to identify a requested entry in the master catalog; maintaining client matching tables for respective clients in the plurality of clients, entries in the client matching tables matching the input variants of data elements in the request field with specific variants of the data element in the search field of a set of entries in the master catalog; wherein the entries in the master catalog are hierarchical with one parent entry with a specific variant of the data element in the search field having multiple child entries with different values of the data elements in additional fields; the processing of input requests for a current input request of a particular requesting client, including during a learning phase using a first procedure comprising,: searching, using a two-step match process, plural sets of entries in the master catalogue having different variants of the data element in the search fields for a specific entry that matches the plurality of additional fields of the current input request, and generating a response to the current input request identifying the specific entry; and adding the match of the input variant of the data element in the request field of the current input request with the specific variant of the data element in a master search field of the set of entries of which the specific entry is a member to the client matching table of the requesting client; and searching, using a two-step match process, plural sets of entries in the master catalogue having different variants of the data element in the search fields for a specific entry that matches the plurality of additional fields of the current input request, and generating a response to the current input request identifying the specific entry; and adding the match of the input variant of the data element in the request field of the current input request with the specific variant of the data element in a master search field of the set of entries of which the specific entry is a member to the client matching table of the requesting client; and after the learning phase, using a second procedure comprising: using the client matching table to match the current input request with a matched set of entries in the master catalog; searching the matched set of entries for a specific entry that matches the plurality of additional fields of the current input request and generating a response to the current input request identifying the specific entry; and when the client matching table does not include a match for the current input request, using the first procedure. using the client matching table to match the current input request with a matched set of entries in the master catalog; searching the matched set of entries for a specific entry that matches the plurality of additional fields of the current input request and generating a response to the current input request identifying the specific entry; and when the client matching table does not include a match for the current input request, using the first procedure.