Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
This topic is not current. For the most current information, see the Print Schema Specification.
In addition to properly scoring an Option that contains ParameterRef instances (see Referencing Parameters), PrintCapabilities or PrintTicket providers and clients must be prepared to handle the following situations involving parameters.
User interface (UI) clients must prompt the user to provide parameter initializers (values for ParameterInit elements) for designated parameters at the appropriate time so that the appropriate ParameterInit elements are inserted into the PrintTicket. UI clients must be able to distinguish the two types of parameters, unconditionally mandatory, and conditionally mandatory, and must be able to handle each type appropriately. For an unconditionally mandatory parameter, the UI must ensure that a ParameterInit element is provided for this type of parameter. For a conditionally mandatory parameter, the UI must provide a ParameterInit value if the parameter is referenced by an Option that is selected in the PrintTicket. The Mandatory status of a parameter is specified in a ParameterDef instance. For more information, see ParameterDef and ParameterInit Elements. UI clients should validate user-supplied ParameterInit values to verify that they satisfy the requirements specified in the ParameterDef instance.
PrintTicket providers should also check the ParameterInit instances supplied by the PrintTicket to verify that all needed parameters are present, and that they satisfy the requirements specified in the ParameterDef instance. The validation code should supply reasonable defaults in the event that ParameterInit values are invalid or missing. Notice that a ParameterDef permits a default value to be supplied for this purpose. Also, if there are constraints involving the parameters, for example, "if CopyCount is larger than N, then do not use a small capacity input bin," the PrintTicket validation code should detect this constraint and modify the PrintTicket to avoid activating the constraint.
If there is any dependency of the PrintCapabilities on the parameters specified in the PrintTicket, PrintCapabilities providers must monitor the ParameterInit values and produce an appropriate PrintCapabilities document.
Related topics