Patent ID: 8164785

Claim:
A method for selecting one or more printing devices from a printing pool including at least a first printing device and a second printing device, the method comprising: identifying resources required in addition to print data for executing a print job, wherein the print job includes resource data commands and the print data; prior to a printer selection process, parsing and separating the print job to generate a resource reference index that identifies the resources to be used in the print job, wherein the separating preserves embedded resource data for performing the print job; identifying which of the resources in the resource reference index comprise resident and non-resident resources on each of the printing devices of the printing pool; determining a first time required for downloading a first set of the resource data commands by the first printing device; determining a second time required for downloading a second set of the resource data commands by the second printing device; assigning a composite rank to each of the printing devices according to respective download times and at least one of the following: device availability, device load, device performance, device capabilities, device locality, consumable status or cost; selecting one or more of the printing devices for printing the print job according to the ranking; after the selecting the one or more of the printing devices, removing at least one subset of the embedded resource data identified as resident on the selected one or more printing devices from the print job; and printing the print job with the one or more printing devices.