Presentation on theme: "Service Capabilities vs. Attributes There is a difference between a services capabilities, and a direct attribute query. Lets consider them independent."— Presentation transcript:
Service Capabilities vs. Attributes There is a difference between a services capabilities, and a direct attribute query. Lets consider them independent.
Get Printer Attributes Currently, IPP has the concept of requesting information about attributes. It returns the attributes, and the values that they can take on, and the current value for that attribute. -supported, -default, -ready
Use Cases / Requirements Simple Client – Can you do Color? –Should a constraint be returned as well? Fully dynamic client UI Partially dynamic client UI Printer Status
GetJobAttributes, GetDocumentAttributes: The requestedAttributes Parameter Pass in instance documents that correspond to the object schema definitions. For Example: GetDocumentAttributes –Pass in document.xml that is defined by document.xsd –This includes structure Values in elements are ignored, since this is a request Elements that are requested that the job and document dont have simply do not get returned. If the group does not have any elements listed, then you get back all of the supported elements within the group.
Capabilities If we have constraints, if you ask for only one element that has constraints that relate to other elements, then what happens? Perhaps Capabilities always returns the whole enchilada? Proposal to not have requestedAttributes in GetServiceCapabilities method – always return the whole thing. (TBD) Also, the GetServiceCapabilties method has a targetDeviceIdentifier – if this method is on the target device directly, then this parameter is ignored. It is required on the print service.
Attributes In the same way you can ask a Job about its attributes, we need to be able to ask a Printer about its attributes, or ask a Service about the printers attributes. This is a new method in the SeviceCapabilitiesInterface called GetTargetDeviceAttributes(targetDevice,requestedAttribut es) requestedAttributes is defined by Printer.xsd targetDevice is required on the PrintService, but ignored on a targetDevice