2.2.4 Driver Selection Request

The Driver Selection Request is a standard HTTP GET request ([RFC2616] section 9.3) that sends the printer driver selection criteria to the server in a PrinterDriverQuery. The format of the HTTP request URL is specified by the following ABNF grammar rule [RFC5234].

 PrinterDriverQuery = [PRINT_SERVER] PRINTER_RESOURCE "?" DRIVER_QUERY
 PRINT_SERVER       = "http:" "//" host [":" port]
 PRINTER_RESOURCE   = abs_path
 DRIVER_QUERY       = "createexe" "&" CLIENT_INFO
 CLIENT_INFO        = 1*DIGIT

Here, "1*DIGIT" indicates "one or more occurrences of DIGIT". For the definitions of host, port, abs_path, and DIGIT, see [RFC2616] sections 2.2 and 3.2, and [RFC2396] sections 3.2.2 and 3.3.

How the client determines the host, port, and abs_path is not specified by this protocol. Typically, the port is either the HTTP default port "80" or another port that is configured by an administrator.

DRIVER_QUERY: The HTTP query component ([RFC2396] section 3.4), which constrains the selection of printer driver instances for the printer resource.

PRINT_SERVER: The address of the Web Point-and-Print Protocol server, whether or not the request is to be routed through a proxy.

PRINTER_RESOURCE: The name of the printer resource.

CLIENT_INFO: The environmental information on the client that is making the request, computed as a ClientInfo value (section 2.2.2) and formatted as the ASCII representation of a decimal integer.