1. A method comprising: receiving a print request and corresponding data to be printed; converting the print request and corresponding data to an operating system independent and printer independent representation; using, while the data is in the operating system independent and printer independent representation, at least one of a plurality of print filters to alter the data; and converting the altered data to a printer-dependent representation.