DMTF Change Request

CR (Change Request)

All changes to be submitted by the Working Group Chair (or designee) after approval by the working group.

The Change Request sample (http://www.dmtf.org/members/zdata/CRTemplateSample.html) contains more detailed information on how to complete the template.

Number [CIMCoreCR00001.000]CIMCoreCR01610.000
Author NameRichard Landau
Author EmailRichard_Landau@dell.com
Alliance OrganizationPrinter Working Group
Alliance Data N/A
Errata [true|false]false
DescriptionUpdate enums and add properties to CIM_PrintService
Schema NameCIM
Schema ModelDevice
Schema Version2.29.0
Schema Status [Final | Experimental]experimental
Schema FilenameDevice/CIM_PrintService.mof
Date Originated2011-02-10
Date Last Revised2011-02-10
Dependencies [CIMCoreCR00555.007,CIMCoreCR00600.004,...]CIMCoreCR1609, CIMCoreCR1611, CIMCoreCR1612

Terminology

The terminology used in this CR should conform to the "Rules for the structure and drafting of International Standards", 5th Edition, 2005 available at:

http://isotc.iso.org/livelink/livelink.exe/fetch/2000/2122/3146825/4229629/4230450/4230456/ISO_IEC_Directives__Part_2__Rules_for_the_structure_and_drafting_of_International_Standards__2004__5th_edition___pdf_format_.pdf?nodeid=4230517&vernum=0

Particular attention shall be paid to Annex H which lays out guidelines for the expression of provisions.

Background/Rationale (Explanation of the background and reason(s) for the requested change, and supporting documentation):

This is one of four CRs updating the PrintService and PrintJob classes to 
match the existing print service standards.  Two additional classes are also 
added to describe PrintServiceCapabilities and PrintServiceSettings.  

This CR updates the CIM_PrintService class.

Requested Change (Change information such as details before/after the change and/or references documents (other than MOF) if the changes are too lengthy to include inline):

Deprecate several properties.  
Update several Description clauses.  
Add enum values for new XPS printer language. 
Add ModelCorrespondences to related properties in new classes.  
Add a number of new properties to bring PrintService up to date with 
standards.

MOF Changes (The complete CIM Class (ASCII) using blue text for new, red text for removed and black text for no change, only one CIM Class can be changed per CR):

   [Version ( "2.29.0" ), 
    Version ( "2.14.0" ), 
    UMLPackagePath ( "CIM::Device::Printing" ), 
    Description ( 
       "The Service that provides support for printing. The basic "
       "assumption of the Printing Model is that a PrintService "
       "accepts a PrintJob for processing, using its PrintSAP. The Job "
       "is then placed on a PrintQueue (that is indicated by the "
       "QueueForPrintService association). Printers take Jobs from "
       "Queues (indicated by the PrinterServicingQueue association). "
       "The ABNF for CIM references to PWG Standards and MIBs is in "
       "the directory \'ftp://ftp.pwg.org/pub/pwg/general/process\' in "
       "the file \'pwg-cim-references-format-20060309.txt\'. An "
       "example for a MappingStrings reference to a PWG Standard is "
       "\'PWG5101-1.PWG|Section 4 Media Color Names\'. An example for "
       "a MappingStrings reference to a PWG MIB is "
       "\'MIB.PWG|PWG-IMAGING-COUNTER-MIB.icMonitorCompletedJobs\'." )
    ]
class CIM_PrintService : CIM_Service {

      [Description ( 
          "An array of free-form strings that specifies the types "
          "and sizes of paper that can be used by Jobs that are "
          "submitted to this PrintService. This list can be "
          "different than the paper types that are installed on the "
          "Printer, because the PrintService can include support "
          "for manually making other types available or only a "
          "subset of paper types can be exported using this "
          "PrintService. The values of the property SHOULD conform "
          "to the requirements of the PWG Media Standardized Names "
          "specification [PWG5101.1], which defines the normative "
          "values for this property. See older Appendix B \'Media "
          "Size Names\' and Appendix C \'Media Names\' of IETF "
          "Printer MIB v2 [RFC3805] which list the values of "
          "standardized media names defined in ISO DPA [ISO10175]." ), 
       MappingStrings { "PWG5101-1.PWG|Media Standardized Names", 
          "MIB.IETF|Printer-MIB.prtInputMediaName", 
          "RFC2911.IETF|Printer.media-supported", 
          "RFC2911.IETF|Section 4.2 Job Template Attributes", 
          "RFC2911.IETF|Section 4.2.11 media", 
          "RFC2911.IETF|APPENDIX C \'media\' keyword values" }, 
       ModelCorrespondence { "CIM_Printer.PaperTypesAvailable", 
          "CIM_PrintJob.RequiredPaperType"
          , "CIM_PrintServiceSettings.Media" }
       ]
   string PaperTypesAvailable[];

      [Deprecated { "CIM_PrintService.MimeTypesSupported" }, 
       Description ( 
          "Note: The use of this property has been deprecated, due "
          "to ambiguity. Instead use MimeTypesSupported. \n"
          "Enumerated print languages are only available in the "
          "IETF Printer MIB v1/v2 (RFC 1759/3805) and are not "
          "available in open standard print protocols (i.e., no "
          "known mapping). \n"
          "Deprecated description: \n"
          "An array that indicates the print languages that are "
          "supported by the PrintService. A PrintService can "
          "support more languages than those available on the "
          "underlying Printer through the use of filters. An "
          "administrator can also choose to prevent some languages "
          "from being exported by the PrintService. \n"
          "Note: For legacy compatiblity reasons, this property is "
          "NOT exactly aligned (in order of values) with the "
          "authoritative PrtInterpreterLangFamilyTC in the IANA "
          "Printer MIB, unlike the newer property "
          "PrintInterpreter.LangType (which is exactly aligned with "
          "the IANA Printer MIB)." ), 
       Description ( 
          "An array that indicates the print languages that are "
          "supported by the PrintService. A PrintService can "
          "support more languages than those available on the "
          "underlying Printer through the use of filters. An "
          "administrator can also choose to prevent some languages "
          "from being exported by the PrintService." ), 
       ValueMap { "1", "2", "3", "4", "5", "6", "7", 
          "8", "9", "10", "11", "12", "13", "14", "15", "16", "17", 
          "18", "19", "20", "21", "22", "23", "24", "25", "26", 
          "27", "28", "29", "30", "31", "32", "33", "34", "35", 
          "36", "37", "38", "39", "40", "41", "42", "43", "44", 
          "45", "46", "47", "48", "50", "51", "52", "53", "54", 
          "55", "56", "57", "58", "59", "60", "61", "62", "63", 
          "64", "65", "66", "67", "68", "69", ".." }, 
       Values { "Other", "Unknown", "PCL", "HPGL", "PJL", "PS", 
          "PSPrinter", "IPDS", "PPDS", "EscapeP", "Epson", "DDIF", 
          "Interpress", "ISO6429", "Line Data", "MODCA", "REGIS", 
          "SCS", "SPDL", "TEK4014", "PDS", "IGP", "CodeV", "DSCDSE", 
          "WPS", "LN03", "CCITT", "QUIC", "CPAP", "DecPPL", 
          "Simple Text", "NPAP", "DOC", "imPress", "Pinwriter", 
          "NPDL", "NEC201PL", "Automatic", "Pages", "LIPS", "TIFF", 
          "Diagnostic", "CaPSL", "EXCL", "LCDS", "XES", "MIME", 
          "TIPSI", "Prescribe", "LinePrinter", "IDP", "XJCL", "PDF", 
          "RPDL", "IntermecIPL", "UBIFingerprint", 
          "UBIDirectProtocol", "Fujitsu", "PCLXL", "ART", "CGM", 
          "JPEG", "CALS1", "CALS2", "NIRS", "C4", "XPS", "OpenXPS"
          , "DMTF Reserved" }, 
       ArrayType ( "Indexed" ), 
       MappingStrings { 
          "MIB.IETF|Printer-MIB.prtInterpreterLangFamily" }, 
       ModelCorrespondence { "CIM_Printer.LanguagesSupported", 
          "CIM_PrintJob.Language"
          , "CIM_PrintService.MimeTypesSupported" }
       ]
   uint16 LanguagesSupported[];

      [Description ( 
          "An array of input document formats (MIME types) that are "
          "supported by the PrintService." ), 
       Description ( 
          "An array of free-form strings that provides more "
          "detailed explanations for any MIME types that are "
          "supported by the PrintService. Support for MIME types is "
          "indicated by specifying (value=47) in the "
          "LanguagesSupported array." ), 
       MappingStrings { 
          "RFC2911.IETF|Section 4.4.22 document-format-supported" }, 
       ModelCorrespondence { "CIM_Printer.MimeTypesSupported", 
          "CIM_PrintJob.MimeTypes"
          , "CIM_PrintService.LanguagesSupported"
          , "CIM_PrintServiceSettings.DocumentFormat" }
       ]
   string MimeTypesSupported[];

      [Deprecated { "No value" }, 
       Description ( 
          "Note: The use of this property has been deprecated, due "
          "to ambiguity. Instead use PrintServiceCapabilities "
          "properties (e.g., Finishings). \n"
          "Deprecated description: \n"
          "An array of integers that indicates the capabilities "
          "that are supported by this service. Information such as "
          "\"Duplex Printing\" (value=3) or \"Transparency "
          "Printing\" (value=7) is specified in this property." ), 
       Description ( 
          "An array of integers that indicates the capabilities "
          "that are supported by this service. Information such as "
          "\"Duplex Printing\" (value=3) or \"Transparency "
          "Printing\" (value=7) is specified in this property." ), 
       ValueMap { "0", "1", "2", "3", "4", "5", "6", 
          "7", "8", "9", "10", "11", "12", "13", "14", "15", "16", 
          "17", "18", "19", "20", "21" }, 
       Values { "Unknown", "Other", "Color Printing", 
          "Duplex Printing", "Copies", "Collation", "Stapling", 
          "Transparency Printing", "Punch", "Cover", "Bind", 
          "Black and White Printing", "One Sided", 
          "Two Sided Long Edge", "Two Sided Short Edge", "Portrait", 
          "Landscape", "Reverse Portrait", "Reverse Landscape", 
          "Quality High", "Quality Normal", "Quality Low" }, 
       ArrayType ( "Indexed" ), 
       MappingStrings { 
          "MIB.IETF|Printer-MIB.prtInterpreterLangFamily", 
          "MIB.IETF|IANA-PRINTER-MIB.PrtInterpreterLangFamilyTC", 
          "RFC2911.IETF|Section 4.4.22 document-format-supported" }, 
       ModelCorrespondence { "CIM_Printer.Capabilities", 
          "CIM_PrintJob.Finishing", 
          "CIM_PrintService.CapabilityDescriptions" }
       ]
   uint16 Capabilities[];

      [Deprecated { "No value" }, 
       Description ( 
          "Note: The use of this property has been deprecated, due "
          "to ambiguity. Instead use properties defined in the "
          "PrintServiceCapabilities class. \n"
          "Deprecated description: \n"
          "An array of free-form strings that provides more "
          "detailed explanations for any of the Printer features "
          "that are indicated in the Capabilities array. Note, each "
          "entry of this array is related to the entry in the "
          "Capabilities array that is located at the same index." ), 
       Description ( 
          "An array of free-form strings that provides more "
          "detailed explanations for any of the Printer features "
          "that are indicated in the Capabilities array. Note, each "
          "entry of this array is related to the entry in the "
          "Capabilities array that is located at the same index." ), 
       ArrayType ( "Indexed" ), 
       ModelCorrespondence { "CIM_PrintService.Capabilities" }
       ]
   string CapabilityDescriptions[];

      [Deprecated { "No value" }, 
       Description ( 
          "Note: The use of this property has been deprecated, due "
          "to ambiguity. \n"
          "Print filter information is not available in open "
          "standard print protocols (i.e., no known mapping). \n"
          "Deprecated description: \n"
          "Describes the filters that are available within this "
          "Print Service. For example, a PrintService can convert a "
          "Job that is submitted in one page description language "
          "to another, so that it can be passed to an available "
          "Printer." )
       Description ( 
          "Describes the filters that are available within this "
          "Print Service. For example, a PrintService can convert a "
          "Job that is submitted in one page description language "
          "to another, so that it can be passed to an available "
          "Printer." )
       ]
   string AvailableFilters[];

      [Experimental, Description ( 
          "The supported client authentication methods for this "
          "instance of PrintService and any associated PrintJobs. \n"
          "Value \'none\' means client authentication method is to "
          "allow anonymous access. \n"
          "Value \'requesting-user-name\' means client "
          "authentication method is to verify the requesting user "
          "name. \n"
          "Value \'basic\' means client authentication method is to "
          "use HTTP Basic (RFC 2617). \n"
          "Value \'digest\' means client authentication method is "
          "to use HTTP Digest (RFC 2617). \n"
          "Value \'certificate\' means client authentication method "
          "method is to verify the supplied certificate." ), 
       MappingStrings { 
          "RFC2911.IETF|Section 4.4.2 uri-authentication-supported" }, 
       ModelCorrespondence { "CIM_ServiceAccessURI.LabeledURI", 
          "CIM_PrintJob.JobURI" }
       ]
   string AuthenticationSupported[];

      [Experimental, Description ( 
          "The current charset for human-readable text output from "
          "this instance of PrintService to network clients. \n"
          "Values shall conform to section 4.1.2 Charset Parameter "
          "in RFC 2046 and be contained in IANA Charset Registry, "
          "e.g., \'utf-8\' and \'us-ascii\'." ), 
       MappingStrings { 
          "RFC2911.IETF|Section 4.4.17 charset-configured" }, 
       ModelCorrespondence { "CIM_PrintServiceCapabilities.Charset" }
       ]
   string Charset;

      [Required, Override ( "Description" ), 
       Description ( 
          "The description of this specific instance of "
          "PrintService. \n"
          "This text shall be generated as a factory default by the "
          "manufacturer and may be changed out-of-band by the "
          "system administrator." ), 
       MappingStrings { "RFC2911.IETF|Section 4.4.6 printer-info" }
       ]
   string Description;

      [Experimental, Description ( 
          "The URI for the driver installer for this PrintService. "
          "This URI may be generated as a factory default by the "
          "manufacturer and may be changed out-of-band to a "
          "site-specific URI by the system administrator." ), 
       MappingStrings { 
          "RFC2911.IETF|Section 4.4.8 printer-driver-installer" }
       ]
   string DriverInstallerURI;

      [Required, Override ( "ElementName" ), 
       Description ( 
          "The user-friendly name for this instance of "
          "PrintService. In addition, the user-friendly name can be "
          "used as an index property for a search or query. (Note: "
          "The name does not have to be unique within a namespace.) "
          "This name shall be generated as a factory default by the "
          "manufacturer and may be changed out-of-band to a "
          "site-specific name by the system administrator." ), 
       MappingStrings { "RFC2911.IETF|Section 4.4.4 printer-name" }
       ]
   string ElementName;

      [Experimental, Description ( 
          "Specifies whether this instance of PrintService is "
          "currently accepting incoming Jobs (i.e., Enabled) or "
          "iscurrently rejecting incoming Jobs (i.e., Disabled)." ), 
       MappingStrings { 
          "RFC2911.IETF|Section 4.4.23 printer-is-accepting-jobs" }, 
       ModelCorrespondence { "CIM_PrintService.State", 
          "CIM_PrintService.StateMessage", 
          "CIM_PrintService.StateReasons", 
          "CIM_SoftwareElement.SoftwareElementState", 
          "CIM_EnabledLogicalElement.EnabledState" }
       ]
   boolean IsAcceptingJobs;

      [Experimental, Description ( 
          "Physical location of the imaging system that hosts this "
          "instance of PrintService (i.e., location of the Printer "
          "if this is an embedded PrintService)." ), 
       MappingStrings { "RFC2911.IETF|Section 4.4.5 printer-location" }, 
       ModelCorrespondence { "CIM_ElementLocation.PhysicalLocation" }
       ]
   string Location;

      [Experimental, Description ( 
          "The make and model of the imaging system that hosts this "
          "instance of PrintService (i.e., the make and model of "
          "the Printer if this is an embedded PrintService)." ), 
       MappingStrings { 
          "RFC2911.IETF|Section 4.4.9 printer-make-and-model" }, 
       ModelCorrespondence { "CIM_PhysicalElement.Model" }
       ]
   string MakeAndModel;

      [Experimental, Description ( 
          "A human-readable message to end users from the operator, "
          "system administrator, or management software for this "
          "instance of PrintService." ), 
       MappingStrings { "RFC2911.IETF|Section 4.4.25" }, 
       ModelCorrespondence { "CIM_PrintService.NaturalLanguage" }
       ]
   string MessageFromOperator;

      [Experimental, Description ( 
          "The URI for more info about this type of PrintService "
          "(rather than this specific instance of PrintService). \n"
          "This URI shall be generated as a factory default by the "
          "manufacturer and may be changed out-of-band to a "
          "site-specific URI by the system administrator." ), 
       MappingStrings { "RFC2911.IETF|Section 4.4.10" }, 
       ModelCorrespondence { "CIM_PrintService.MoreInfoURI" }
       ]
   string MoreInfoManufacturerURI;

      [Experimental, Description ( 
          "The URI for more info about this specific instance of "
          "PrintService. \n"
          "This URI shall be generated as a factory default by the "
          "manufacturer and may be changed out-of-band to a "
          "site-specific URI by the system administrator." ), 
       MappingStrings { 
          "RFC2911.IETF|Section 4.4.7 printer-more-info" }, 
       ModelCorrespondence { 
          "CIM_PrintService.MoreInfoManufacturerURI" }
       ]
   string MoreInfoURI;

      [Experimental, Description ( 
          "Time in seconds for this instance of PrintService to "
          "wait for additional Job operations (e.g., IPP "
          "Send-Document) for an open Job before taking recovery "
          "actions (e.g., closing and processing the Job or "
          "aborting the Job). \n"
          "Value should be between 60 and 240 seconds." ), 
       Units ( "Seconds" ), 
       MappingStrings { 
          "RFC2911.IETF|Section 4.4.31 multiple-operation-time-out" }, 
       PUnit ( "second" )
       ]
   uint32 MultipleOperationTimeout;

      [Experimental, Description ( 
          "The natural language for human-readable text output from "
          "this instance of PrintService to network clients. \n"
          "Values shall conform to IETF Tags for Identifying "
          "Languages (RFC 5646) or successor and shall be contained "
          "in the IANA Language Subtag Registry (RFC 5645), e.g., "
          "\'en-us\' (US English) and \'fr\' (French)." ), 
       MappingStrings { 
          "RFC2911.IETF|Section 4.4.19 natural-language-configured" }, 
       ModelCorrespondence { 
          "CIM_PrintServiceCapabilities.NaturalLanguage" }
       ]
   string NaturalLanguage;

      [Experimental, Description ( 
          "The supported network security mechanisms for this "
          "instance of PrintService and any associated PrintJobs. \n"
          "Value \'none\' means network security mechanism is not "
          "used. \n"
          "Value \'ssl3\' means network security mechanism is to "
          "use SSL3 (Netscape SSL). \n"
          "Value \'tls\' means network security mechanism is to use "
          "TLS (RFC 2246 or successor)." ), 
       MappingStrings { 
          "RFC2911.IETF|Section 4.4.3 uri-security-supported" }, 
       ModelCorrespondence { "CIM_ServiceAccessURI.LabeledURI", 
          "CIM_PrintJob.JobURI" }
       ]
   string SecuritySupported[];

      [Experimental, Description ( 
          "The state of this instance of PrintService. \n"
          "1 (Other) means the PrintService is in some non-standard "
          "state. \n"
          "2 (Unknown) means the PrintService state is unknown. \n"
          "3 (Idle) means the PrintService is ready but idle. \n"
          "4 (Processing) means the PrintSevice is processing one "
          "or more Jobs. \n"
          "5 (Stopped) means the PrintSevice cannot process any "
          "Jobs and human intervention is required." ), 
       ValueMap { "1", "2", "3", "4", "5", ".." }, 
       Values { "Other", "Unknown", "Idle", "Processing", "Stopped", 
          "DMTF Reserved" }, 
       MappingStrings { "RFC2911.IETF|Section 4.4.11 printer-state" }, 
       ModelCorrespondence { "CIM_PrintService.StateMessage", 
          "CIM_PrintService.StateReasons", 
          "CIM_PrintService.IsAcceptingJobs", 
          "CIM_SoftwareElement.SoftwareElementState", 
          "CIM_EnabledLogicalElement.EnabledState" }
       ]
   uint16 State;

      [Experimental, Description ( 
          "The human-readable state message for this instance of "
          "PrintService, e.g., \'Paused by operator at 12:04\'." ), 
       MappingStrings { 
          "RFC2911.IETF|Section 4.4.13 printer-state-message" }, 
       ModelCorrespondence { "CIM_PrintService.State", 
          "CIM_PrintService.StateReasons", 
          "CIM_PrintService.IsAcceptingJobs", 
          "CIM_SoftwareElement.SoftwareElementState", 
          "CIM_EnabledLogicalElement.EnabledState" }
       ]
   string StateMessage;

      [Experimental, Description ( 
          "The state reasons (conditions) of this instance of "
          "PrintService, e.g., \'paused\' or \'toner-empty\'." ), 
       MappingStrings { 
          "RFC2911.IETF|Section 4.4.12 printer-state-reasons" }, 
       ModelCorrespondence { "CIM_PrintService.State", 
          "CIM_PrintService.StateMessage", 
          "CIM_PrintService.IsAcceptingJobs", 
          "CIM_SoftwareElement.SoftwareElementState", 
          "CIM_EnabledLogicalElement.EnabledState" }
       ]
   string StateReasons[];

      [Experimental, Description ( 
          "Time in seconds since the last startup of this instance "
          "of PrintService." ), 
       Units ( "Seconds" ), 
       MappingStrings { 
          "MIB.IETF|HOST-RESOURCES-MIB.hrSystemUptime", 
          "RFC2911.IETF|Section 4.4.29 printer-up-time" }, 
       ModelCorrespondence { "CIM_ApplicationSystem.StartupTime", 
          "CIM_OperatingSystem.LastBootUpTime" }, 
       PUnit ( "second" )
       ]
   uint32 Uptime;


};

Discussion Points (Summary of decisions and discussions of the WG in creating this CR) :

No comments found.

Change History (Mandatory after submission to the TC, May be used by the WGs):

VersionDateDescription
0002011-02-10Initial Version


Note that this document is labeled as " Confidential". It is intended only for member companies and alliance partners. This Change Request may be withdrawn or modified by subsequent Change Requests.

All submissions MUST comply with the DMTF Patent and Technology policy (http://www.dmtf.org/about/policies/patent-10-18-01.pdf)



Template Version 3.0.0
Copyright (c) 2009 Distributed Management Task Force, Inc. (DMTF). All Rights Reserved.