Internet Printing Protocol Working Group Pat Fleming INTERNET DRAFT IBM Expires 8 September 2000 Ken Jones Sun Microsystems Harry Lewis IBM Ira McDonald High North 8 March 2000 Internet Printing Protocol (IPP): LDAP Schema for Printer Services Copyright (C) The Internet Society (2000). All Rights Reserved. Status of This Memo This document is an Internet-Draft and is in full conformance with all provisions of Section 10 of RFC 2026. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF), its areas, and its working groups. Note that other groups may also distribute working documents as Internet-Drafts. Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress." To view the list of Internet-Draft Shadow Directories, see http://www.ietf.org/shadow.html. Abstract This document defines a common printer schema for use with LDAP directories (a directory service supporting the Lightweight Directory Access Protocol (LDAP)). Using this common printer schema enables client applications to use LDAP to search for printers using application or user specified search criteria. Searches are defined based on the entry's type and attributes independent of the LDAP directory being used. This document describes the LDAP schema, object classes and attributes, for SLP printer templates. This document uses the printer attributes defined in Appendix E. of [IPPMOD], the 'printer:' service template defined in [SLPPRT], and the mapping between SLP service advertisements and LDAP descriptions of services defined in [SLPLDAP] to define an LDAP printer schema. The goal of this document is to define a consistent schema to be used by printers and print servers. The LDAP printer schema described in this document MAY be used in part or whole. Fleming, Jones, Lewis, McDonald Expires 8 September 2000 [Page 1] Internet Draft LDAP Schema for Printer Services 8 March 2000 Table of Contents 1. Introduction ............................................... 4 2. Terminology ................................................ 4 3. Definition of Object Classes ............................... 5 3.1. slpServicePrinter ...................................... 6 3.2. servicePrinter ......................................... 6 3.3. printerService ......................................... 7 3.4. printerServiceAuxClass ................................. 7 3.5. printerIPP ............................................. 7 3.6. printerLPR ............................................. 8 3.7. sunPrinter ............................................. 8 4. Definition of Attribute Types .............................. 9 4.1. printer-uri ............................................ 10 4.2. printer-xri-supported .................................. 10 4.3. printer-name ........................................... 11 4.4. printer-natural-language-configured .................... 12 4.5. printer-location ....................................... 12 4.6. printer-info ........................................... 12 4.7. printer-more-info ...................................... 13 4.8. printer-make-and-model ................................. 13 4.9. printer-ipp-versions-supported ......................... 13 4.10. printer-multiple-document-jobs-supported .............. 14 4.11. printer-charset-configured ............................ 14 4.12. printer-charset-supported ............................. 14 4.13. printer-generated-natural-language-supported .......... 15 4.14. printer-document-format-supported ..................... 15 4.15. printer-color-supported ............................... 15 4.16. printer-compression-supported ......................... 15 4.17. printer-pages-per-minute .............................. 16 4.18. printer-pages-per-minute-color ........................ 16 4.19. printer-finishings-supported .......................... 16 4.20. printer-number-up-supported ........................... 17 4.21. printer-sides-supported ............................... 17 4.22. printer-media-supported ............................... 17 4.23. printer-media-local-supported ......................... 18 4.24. printer-resolution-supported .......................... 18 4.25. printer-print-quality-supported ....................... 18 4.26. printer-job-priority-supported ........................ 19 4.27. printer-copies-supported .............................. 19 4.28. printer-job-k-octets-supported ........................ 19 4.29. printer-current-operator .............................. 20 4.30. printer-service-person ................................ 20 4.31. printer-delivery-orientation-supported ................ 20 4.32. printer-stacking-order-supported ...................... 21 4.33. printer-output-features-supported ..................... 21 4.34. sun-printer-bsdaddr ................................... 21 4.35. sun-printer-kvp ....................................... 21 5. Definition of Syntaxes ..................................... 23 6. IANA Considerations ........................................ 23 7. Internationalization Considerations ........................ 23 8. Security Considerations .................................... 23 Fleming, Jones, Lewis, McDonald Expires 8 September 2000 [Page 2] Internet Draft LDAP Schema for Printer Services 8 March 2000 9. References ................................................. 23 10. Acknowledgments ........................................... 24 11. Author's Addresses ........................................ 25 12. Full Copyright Statement .................................. 26 Fleming, Jones, Lewis, McDonald Expires 8 September 2000 [Page 3] Internet Draft LDAP Schema for Printer Services 8 March 2000 1. Introduction The use of directory services based on the Lightweight Directory Access Protocol [RFC 2251] is becoming increasingly popular for distributed services. To ensure interoperability between vendor implementations it is crucial to standardize the schemas which describe these services. Under the auspices of the IETF IPP Working Group the IPP protocol is being developed to bring a standards based printing solution to the Internet. Section 16 of [IPPMOD] describes a list of attributes which should be included in a general directory schema describing IPP print services. The syntax for each of these attributes is described in detail in [IPPMOD] and [SLPPRT]. This document will take these attributes and map them to LDAP attributes and object classes. This document defines several object classes to provide LDAP applications with multiple options in defining printer information using LDAP schema. Classes are provided for defining directory entries with common printer information and for extending existing directory entries with SLP, IPP, and LPR specific information. An additional object class, sunPrinter, is defined to illustrate how Sun Microsystems will support its current installed base. These systems currently use a "nameservice" to obtain information about printers. The nameservice may be, at its simplest, a collection of files in the local filesystem which are opened and searched. Other nameservices include the Network Information Name Service (NIS) and the next version of this product (NIS+). Printer information which is now being kept in these nameservices will be available in LDAP through the use of this Sun specific object class. This extends current support for [RFC 2307]. The reader is encouraged to refer to this RFC for more information regarding LDAP as a nameservice. Extensions for similar mapping of nameservices to LDAP are anticipated on various other operating system platforms. 2. Terminology The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in [RFC 2119]. Fleming, Jones, Lewis, McDonald Expires 8 September 2000 [Page 4] Internet Draft LDAP Schema for Printer Services 8 March 2000 3. Definition of Object Classes We define the following LDAP object classes for use with both generic printer related information and services specific to SLP, IPP, LPR and Sun Microsystems. slpServicePrinter - auxiliary class for SLP registered printers servicePrinter - abstract class for all printer classes printerService - structural class for printers printerServiceAuxClass - auxiliary class for printers printerIPP - auxiliary class for IPP printers printerLPR - auxiliary class for LPR printers sunPrinter - auxiliary class for Sun Microsystems printers The following are some examples of how applications MAY choose to use these classes when creating directory entries: 1) Use printerService for directory entries containing common printer information. 2) Use both printerService and slpServicePrinter for directory entries containing common printer information for SLP registered printers. 3) Use printerService, printerLPR and printerIPP for directory entries containing common printer information for printers that support both LPR and IPP. 4) Use printerServiceAuxClass and object classes not defined by this document for directory entries containing common printer information. In this example, printerServiceAuxClass is used for extending other structural classes defining printer information with common printer information defined in this document. Note that the use of the abstract object class servicePrinter is OPTIONAL when using printerService or printerServiceAuxClass to create directory entries per [RFC 2251]. Refer to section 4 for definition of attribute types referenced by these object classes. We use names instead of OIDs in MUST and MAY for clarity. Some attribute names described in [IPPMOD] have been prefixed with 'printer-' as recommended in [SLPPRT] and [SLPLDAP]. For the object classes defined in this section, schema developers MAY modify the list of MAY OIDs, but MUST NOT modify the list of MUST OIDs. Schema developers MAY derive additional classes from the abstract and structural classes defined in this section. Note, an object class definition SHOULD NOT be changed without having a new name and OID assigned to it. Fleming, Jones, Lewis, McDonald Expires 8 September 2000 [Page 5] Internet Draft LDAP Schema for Printer Services 8 March 2000 3.1. slpServicePrinter This auxiliary class defines Service Location Protocol (SLP) specific information. It MUST be used with a structural class such as printerService. It MAY be used to create new or extend existing directory entries with SLP 'service:printer' abstract service type information as defined in [SLPPRT]. This object class is derived from 'slpService', the parent class for all SLP services, defined in [SLPLDAP]. ( 1.3.6.1.4.1.42.2.27.5.2.8 NAME 'slpServicePrinter' DESC 'Service Location Protocol (SLP) information.' SUP slpService AUXILIARY ) 3.2. servicePrinter This abstract class defines printer information. It is a base class for deriving other printer related classes, such as, but not limited to, classes defined in this document. It defines a common set of printer attributes that are not specific to any one type of service, protocol or operating system. ( 1.3.6.1.4.1.42.2.27.5.2.9 NAME 'servicePrinter' DESC 'Printer related information.' ABSTRACT SUP top MUST ( printer-uri $ printer-xri-supported $ printer-name ) MAY ( printer-natural-language-configured $ printer-location $ printer-info $ printer-more-info $ printer-make-and-model $ printer-multiple-document-jobs-supported $ printer-charset-configured $ printer-charset-supported $ printer-generated-natural-language-supported $ printer-document-format-supported $ printer-color-supported $ printer-compression-supported $ printer-pages-per-minute $ printer-pages-per-minute-color $ printer-finishings-supported $ printer-number-up-supported $ printer-sides-supported $ printer-media-supported $ printer-media-local-supported $ printer-resolution-supported $ printer-print-quality-supported $ printer-job-priority-supported $ printer-copies-supported $ printer-job-k-octets-supported $ printer-current-operator $ Fleming, Jones, Lewis, McDonald Expires 8 September 2000 [Page 6] Internet Draft LDAP Schema for Printer Services 8 March 2000 printer-service-person $ printer-delivery-orientation-supported $ printer-stacking-order-supported $ printer-output-features-supported ) ) 3.3. printerService This structural class defines printer information. It is derived from class servicePrinter and thus inherits common printer attributes. This class can be used with or without auxiliary classes to define printer information. Auxiliary classes can be used to extend the common printer information with protocol, service or operating system specific information. Note that when extending other structural classes with auxiliary classes, printerService MUST NOT be used. LDAP applications SHOULD use printer-uri as the naming attribute. That is, when using printerService, printer-uri MUST be used as the attribute type of the directory entry's relative distinguished name (RDN). ( 1.3.6.1.4.1.42.2.27.5.2.10 NAME 'printerService' DESC 'Printer information.' SUP servicePrinter STRUCTURAL ) 3.4. printerServiceAuxClass This auxiliary class defines printer information. It is derived from class servicePrinter and thus inherits common printer attributes. This class MUST be used with a structural class, such as printerService. ( 1.3.6.1.4.1.42.2.27.5.2.11 NAME 'printerServiceAuxClass' DESC 'Printer information.' SUP servicePrinter AUXILIARY ) 3.5. printerIPP This auxiliary class defines Internet Printing Protocol (IPP) information. It MUST be used with a structural class such as printerService. It is used to extend structural classes with IPP Fleming, Jones, Lewis, McDonald Expires 8 September 2000 [Page 7] Internet Draft LDAP Schema for Printer Services 8 March 2000 specific printer information. ( 1.3.6.1.4.1.42.2.27.5.2.12 NAME 'printerIPP' DESC 'Internet Printing Protocol (IPP) information.' SUP top AUXILIARY MAY ( printer-ipp-versions-supported $ printer-multiple-document-jobs-supported ) ) 3.6. printerLPR This auxiliary class defines LPR information. It MUST be used with a structural class such as printerService. It is used to extend structural classes with LPR specific printer information. ( 1.3.6.1.4.1.42.2.27.5.2.13 NAME 'printerLPR' DESC 'LPR information.' SUP top AUXILIARY ) 3.7. sunPrinter Current Sun Microsystems print implementations use the Line Printer Daemon (LPD) Protocol described in [RFC 1179] to communicate between print clients and servers. In addition to this print clients make use of nameservices to obtain information about the printer. It is desirable to extend the current print client nameservice support to include LDAP while keeping existing functionality. This is done by defining a Sun specific object class. The "sunPrinter" object contains two attributes. The sun-printer-bsdaddr attribute identifies the server host name associated with a print queue and whether or not Solaris specific extensions to the LPD protocol should be generated. The second attribute sun-printer-kvp contains a set of key values pairs. These values may have meaning to the print subsystem or they may be user defined. ( 1.3.6.1.4.1.42.2.27.5.2.14 NAME 'sunPrinter' DESC 'Sun printer information' SUP top AUXILIARY MAY ( sun-printer-bsdaddr $ sun-printer-kvp ) ) Fleming, Jones, Lewis, McDonald Expires 8 September 2000 [Page 8] Internet Draft LDAP Schema for Printer Services 8 March 2000 4. Definition of Attribute Types The following attribute types are referenced by the object classes defined in section 3. The following table is a summary of the attribute names referenced by this document and their corresponding names from [IPPMOD]. Some attribute names described in [IPPMOD] have been prefixed with 'printer-' as recommended in [SLPLDAP], to address the flat namespace for LDAP identifiers. LDAP & SLP Printer Schema IPP Model [IPPMOD] ------------------------------ ------------------------------------- printer-uri printer-xri-supported [IPP printer-uri-supported] [IPP uri-authentication-supported] [IPP uri-security-supported] printer-name printer-name printer-natural-language-configured natural-language-configured printer-location printer-location printer-info printer-info printer-more-info printer-more-info printer-make-and-model printer-make-and-model printer-ipp-versions-supported ipp-versions-supported printer-multiple-document-jobs-supported multiple-document-jobs-supported printer-charset-configured charset-configured printer-charset-supported charset-supported printer-generated-natural-language-supported generated-natural-language-supported printer-document-format-supported document-format-supported printer-color-supported color-supported printer-compression-supported compression-supported printer-pages-per-minute pages-per-minute printer-pages-per-minute-color pages-per-minute-color printer-finishings-supported finishings-supported printer-number-up-supported number-up-supported printer-sides-supported sides-supported printer-media-supported media-supported printer-media-local-supported [site names from IPP media-supported] printer-resolution-supported printer-resolution-supported printer-print-quality-supported print-quality-supported printer-job-priority-supported job-priority-supported printer-copies-supported copies-supported printer-job-k-octets-supported job-k-octets-supported printer-current-operator Fleming, Jones, Lewis, McDonald Expires 8 September 2000 [Page 9] Internet Draft LDAP Schema for Printer Services 8 March 2000 printer-service-person printer-delivery-orientation-supported printer-stacking-order-supported printer-output-features-supported sun-printer-bsdaddr sun-print-kvp In the following definitions, we use matching rule names instead of OIDs for clarity. Note that if the printer information is not known, the attribute value is not set (for optional attributes). In the following definitions, referenced matching rules are defined in section 8 of [RFC 2252]. The following definitions reference syntax OIDs as defined in [RFC 2252], which are summarized below: Syntax OID Syntax Description ----------------------------- ------------------ 1.3.6.1.4.1.1466.115.121.1.7 Boolean 1.3.6.1.4.1.1466.115.121.1.15 Directory String (UTF-8 [RFC 2279]) 1.3.6.1.4.1.1466.115.121.1.27 Integer 4.1. printer-uri Note, that for SLP registered printers, the LDAP printer-uri attribute should set to the value of the registered URL of the printer. ( 1.3.6.1.4.1.42.2.27.5.1.30 NAME 'printer-uri' DESC 'The URI supported by this printer.' EQUALITY caseIgnoreMatch ORDERING caseIgnoreOrderingMatch SUBSTR caseIgnoreSubstringMatch SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE ) 4.2. printer-xri-supported A list of XRI (extended resource identifiers) supported by this printer. Each value of this list consists of a URI (uniform resource identifier) followed by optional authentication and security metaparameters. The keywords for URI and their metaparameters are: 'uri' == IPP 'printer-uri-supported' value 'auth' == IPP 'uri-authentication-supported' value 'sec' == IPP 'uri-security-supported' value Legal values of the 'auth' metaparameter include Fleming, Jones, Lewis, McDonald Expires 8 September 2000 [Page 10] Internet Draft LDAP Schema for Printer Services 8 March 2000 'none' (no authentication for this URI) 'requesting-user-name' (from operation request) 'basic' (HTTP/1.1 Basic [RFC 2617]) 'digest' (HTTP/1.1 Basic, [RFC 2617]) 'certificate' (from certificate) per IPP Model [3] (extensions MAY also be used). A missing 'auth' metaparameter SHALL mean 'none'. Legal values of the 'sec' metaparameter include 'none' (no security for this URI) 'ssl3' (Netscape SSL3) 'tls' (IETF TLS/1.0, [RFC 2246]) per IPP Model [3] (extensions MAY also be used). A missing 'sec' metaparameter SHALL mean 'none'. Each metaparameter of a list member is delimited by '<'. For example: 'uri=ipp://foo.com< auth=digest< sec=tls<' 'uri=lpr://bar.com< auth=none< sec=none<' Registrations MAY consolidate values for metaparameters, as in the following example: 'uri=ipp://foo.com< auth=basic,digest< sec=tls,ssl3<' ( 1.3.6.1.4.1.42.2.27.5.1.31 NAME 'printer-xri-supported' DESC 'The unordered list of XRI (extended resource identifiers) supported by this printer. Each member of the list consists of a URI (uniform resource identifier) followed by optional authentication and security metaparameters.' EQUALITY caseIgnoreMatch ORDERING caseIgnoreOrderingMatch SUBSTR caseIgnoreSubstringMatch SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 ) 4.3. printer-name The site-specific administrative name of this printer. This value of this attribute SHOULD be in the language specified in 'printer-natural-language-configured' (although the printer's name may be in any language). This name MAY be the last part of the printer's URI or it MAY be completely unrelated. This name MAY contain characters that are not allowed in a conventional URI (which conforms to [RFC 2396]). ( 1.3.6.1.4.1.42.2.27.5.1.32 NAME 'printer-name' DESC 'The site-specific administrative name of this printer, more end-user friendly than a URI.' EQUALITY caseIgnoreMatch ORDERING caseIgnoreOrderingMatch SUBSTR caseIgnoreSubstringMatch SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{127} Fleming, Jones, Lewis, McDonald Expires 8 September 2000 [Page 11] Internet Draft LDAP Schema for Printer Services 8 March 2000 SINGLE-VALUE ) 4.4. printer-natural-language-configured ( 1.3.6.1.4.1.42.2.27.5.1.33 NAME 'printer-generated-natural-language-configured' DESC 'The configured language in which error and status messages will be generated (by default) by this printer. Also, a possible language for printer string attributes set by operator, system administrator, or manufacturer. Also, the (declared) language of the "printer-name", "printer-location", "printer-info", and "printer-make-and-model" attributes of this printer. For example: "en-us" (US English) or "fr-fr" (French in France) Legal values of language tags conform to [RFC 1766] "Tags for the Identification of Languages".' EQUALITY caseIgnoreMatch ORDERING caseIgnoreOrderingMatch SUBSTR caseIgnoreSubstringMatch SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{127} SINGLE-VALUE ) 4.5. printer-location ( 1.3.6.1.4.1.42.2.27.5.1.34 NAME 'printer-location' DESC 'Identifies the location of the printer. This could include things like: "in Room 123A", "second floor of building XYZ".' EQUALITY caseIgnoreMatch ORDERING caseIgnoreOrderingMatch SUBSTR caseIgnoreSubstringMatch SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{127} SINGLE-VALUE ) 4.6. printer-info ( 1.3.6.1.4.1.42.2.27.5.1.35 NAME 'printer-info' DESC 'Identifies the descriptive information about this printer. This could include things like: "This printer can be used for printing color transparencies for HR presentations", or "Out of courtesy for others, please print only small (1-5 page) jobs at this printer", or even "This printer is going away on July 1, 1997, please find a new printer".' EQUALITY caseIgnoreMatch ORDERING caseIgnoreOrderingMatch Fleming, Jones, Lewis, McDonald Expires 8 September 2000 [Page 12] Internet Draft LDAP Schema for Printer Services 8 March 2000 SUBSTR caseIgnoreSubstringMatch SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{127} SINGLE-VALUE ) 4.7. printer-more-info ( 1.3.6.1.4.1.42.2.27.5.1.36 NAME 'printer-more-info' DESC 'A URI used to obtain more information about this specific printer. For example, this could be an HTTP type URI referencing an HTML page accessible to a Web Browser. The information obtained from this URI is intended for end user consumption.' EQUALITY caseExactMatch ORDERING caseExactOrderingMatch SUBSTR caseExactSubstringMatch SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE ) 4.8. printer-make-and-model ( 1.3.6.1.4.1.42.2.27.5.1.37 NAME 'printer-make-and-model' DESC 'Identifies the make and model of the device. The device manufacturer may initially populate this attribute.' EQUALITY caseIgnoreMatch ORDERING caseIgnoreOrderingMatch SUBSTR caseIgnoreSubstringMatch SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{127} SINGLE-VALUE ) 4.9. printer-ipp-versions-supported ( 1.3.6.1.4.1.42.2.27.5.1.38 NAME 'printer-ipp-versions-supported' DESC 'Identifies the IPP protocol version(s) that this printer supports, including major and minor versions, i.e., the version numbers for which this Printer implementation meets the conformance requirements.' EQUALITY caseIgnoreMatch ORDERING caseIgnoreOrderingMatch SUBSTR caseIgnoreSubstringMatch SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{127} ) Fleming, Jones, Lewis, McDonald Expires 8 September 2000 [Page 13] Internet Draft LDAP Schema for Printer Services 8 March 2000 4.10. printer-multiple-document-jobs-supported ( 1.3.6.1.4.1.42.2.27.5.1.39 NAME 'printer-multiple-document-jobs-supported' DESC 'Indicates whether or not the printer supports more than one document per job, i.e., more than one Send-Document or Send-Data operation with document data.' EQUALITY booleanMatch SYNTAX 1.3.6.1.4.1.1466.115.121.1.7 SINGLE-VALUE ) 4.11. printer-charset-configured ( 1.3.6.1.4.1.42.2.27.5.1.40 NAME 'printer-charset-configured' DESC 'The configured charset in which error and status messages will be generated (by default) by this printer. Also, a possible charset for printer string attributes set by operator, system administrator, or manufacturer. For example: "utf-8" (ISO 10646/Unicode) or "iso-8859-1" (Latin1). Legal values are defined by the IANA Registry of Coded Character Sets and the "(preferred MIME name)" SHALL be used as the tag. For coherence with IPP Model, charset tags in this attribute SHALL be lowercase normalized. This attribute SHOULD be static (time of registration) and SHOULD NOT be dynamically refreshed (subsequently).' EQUALITY caseIgnoreMatch ORDERING caseIgnoreOrderingMatch SUBSTR caseIgnoreSubstringMatch SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{63} SINGLE-VALUE ) 4.12. printer-charset-supported ( 1.3.6.1.4.1.42.2.27.5.1.41 NAME 'printer-charset-supported' DESC 'Identifies the set of charsets supported for attribute type values of type Directory String for this directory entry. For example: "utf-8" (ISO 10646/Unicode) or "iso-8859-1" (Latin1). Legal values are defined by the IANA Registry of Coded Character Sets and the preferred MIME name.' EQUALITY caseIgnoreMatch ORDERING caseIgnoreOrderingMatch SUBSTR caseIgnoreSubstringMatch SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{63} Fleming, Jones, Lewis, McDonald Expires 8 September 2000 [Page 14] Internet Draft LDAP Schema for Printer Services 8 March 2000 ) 4.13. printer-generated-natural-language-supported ( 1.3.6.1.4.1.42.2.27.5.1.42 NAME 'printer-generated-natural-language-supported' DESC 'Identifies the natural language(s) supported for this directory entry. For example: "en-us" (US English) or "fr-fr" (French in France). Legal values conform to [RFC 1766], Tags for the Identification of Languages.' EQUALITY caseIgnoreMatch ORDERING caseIgnoreOrderingMatch SUBSTR caseIgnoreSubstringMatch SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{63} ) 4.14. printer-document-format-supported ( 1.3.6.1.4.1.42.2.27.5.1.43 NAME 'printer-document-format-supported' DESC 'The possible document formats in which data may be interpreted and printed by this printer. Legal values are MIME types come from the IANA Registry of Internet Media Types.' EQUALITY caseIgnoreMatch ORDERING caseIgnoreOrderingMatch SUBSTR caseIgnoreSubstringMatch SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{127} ) 4.15. printer-color-supported ( 1.3.6.1.4.1.42.2.27.5.1.44 NAME 'printer-color-supported' DESC 'Indicates whether this printer is capable of any type of color printing at all, including highlight color.' EQUALITY booleanMatch SYNTAX 1.3.6.1.4.1.1466.115.121.1.7 SINGLE-VALUE ) 4.16. printer-compression-supported ( 1.3.6.1.4.1.42.2.27.5.1.45 NAME 'printer-compression-supported' DESC 'Compression algorithms supported by this printer. For example: "deflate, gzip". Legal values include; "none", "deflate" (public domain ZIP), "gzip" (GNU ZIP), "compress" (UNIX).' Fleming, Jones, Lewis, McDonald Expires 8 September 2000 [Page 15] Internet Draft LDAP Schema for Printer Services 8 March 2000 EQUALITY caseIgnoreMatch ORDERING caseIgnoreOrderingMatch SUBSTR caseIgnoreSubstringMatch SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{255} ) 4.17. printer-pages-per-minute ( 1.3.6.1.4.1.42.2.27.5.1.46 NAME 'printer-pages-per-minute' DESC 'The nominal number of pages per minute which may be output by this printer (e.g., a simplex or black-and-white printer). This attribute is informative, NOT a service guarantee. Typically, it is the value used in marketing literature to describe this printer.' EQUALITY integerMatch ORDERING integerOrderingMatch SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE ) 4.18. printer-pages-per-minute-color ( 1.3.6.1.4.1.42.2.27.5.1.47 NAME 'printer-pages-per-minute-color' DESC 'The nominal number of color pages per minute which may be output by this printer (e.g., a simplex or color printer). This attribute is informative, NOT a service guarantee. Typically, it is the value used in marketing literature to describe this printer.' EQUALITY integerMatch ORDERING integerOrderingMatch SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE ) 4.19. printer-finishings-supported ( 1.3.6.1.4.1.42.2.27.5.1.48 NAME 'printer-finishings-supported' DESC 'The possible finishing operations supported by this printer. Legal values include; "none", "staple", "punch", "cover", "bind", "saddle-stitch", "edge-stitch", "staple-top-left", "staple-bottom-left", "staple-top-right", "staple-bottom-right", "edge-stitch-left", "edge-stitch-top", "edge-stitch-right", "edge-stitch-bottom", "staple-dual-left", "staple-dual-top", "staple-dual-right", "staple-dual-bottom".' EQUALITY caseIgnoreMatch Fleming, Jones, Lewis, McDonald Expires 8 September 2000 [Page 16] Internet Draft LDAP Schema for Printer Services 8 March 2000 ORDERING caseIgnoreOrderingMatch SUBSTR caseIgnoreSubstringMatch SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{255} ) 4.20. printer-number-up-supported ( 1.3.6.1.4.1.42.2.27.5.1.49 NAME 'printer-number-up-supported' DESC 'The possible numbers of print-stream pages to impose upon a single side of an instance of a selected medium. Legal values include; 1, 2, and 4. Implementations may support other values.' EQUALITY integerMatch ORDERING integerOrderingMatch SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 ) 4.21. printer-sides-supported ( 1.3.6.1.4.1.42.2.27.5.1.50 NAME 'printer-sides-supported' DESC 'The number of impression sides (one or two) and the two-sided impression rotations supported by this printer. Legal values include; "one-sided", "two-sided-long-edge", "two-sided-short-edge".' EQUALITY caseIgnoreMatch ORDERING caseIgnoreOrderingMatch SUBSTR caseIgnoreSubstringMatch SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{127} ) 4.22. printer-media-supported ( 1.3.6.1.4.1.42.2.27.5.1.51 NAME 'printer-media-supported' DESC 'The standard names/types/sizes (and optional color suffixes) of the media supported by this printer. For example: "iso-a4", "envelope", or "na-letter-white". Legal values conform to ISO 10175, Document Printing Application (DPA), and any IANA registered extensions.' EQUALITY caseIgnoreMatch ORDERING caseIgnoreOrderingMatch SUBSTR caseIgnoreSubstringMatch SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{255} ) Fleming, Jones, Lewis, McDonald Expires 8 September 2000 [Page 17] Internet Draft LDAP Schema for Printer Services 8 March 2000 4.23. printer-media-local-supported ( 1.3.6.1.4.1.42.2.27.5.1.52 NAME 'printer-media-local-supported' DESC 'Site-specific names of media supported by this printer, in the language in "printer-generated-natural-language-configured". For example: "purchasing-form" (site-specific name) as opposed to (in "printer-media-supported"): "na-letter" (standard keyword from ISO 10175).' EQUALITY caseIgnoreMatch ORDERING caseIgnoreOrderingMatch SUBSTR caseIgnoreSubstringMatch SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{255} ) 4.24. printer-resolution-supported ( 1.3.6.1.4.1.42.2.27.5.1.53 NAME 'printer-resolution-supported' DESC 'List of resolutions supported for printing documents by this printer. Each resolution value is a string with 3 fields: 1) Cross feed direction resolution (positive integer), 2) Feed direction resolution (positive integer), 3) Resolution unit. Legal values are "dpi" (dots per inch) and "dpcm" (dots per centimeter). Each resolution field is delimited by ">". For example: "300> 300> dpi>".' EQUALITY caseIgnoreMatch ORDERING caseIgnoreOrderingMatch SUBSTR caseIgnoreSubstringMatch SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{255} ) 4.25. printer-print-quality-supported ( 1.3.6.1.4.1.42.2.27.5.1.54 NAME 'printer-print-quality-supported' DESC 'List of print qualities supported for printing documents on this printer. For example: "draft, normal". Legal values include; "unknown", "draft", "normal", "high".' EQUALITY caseIgnoreMatch ORDERING caseIgnoreOrderingMatch SUBSTR caseIgnoreSubstringMatch SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{127} ) Fleming, Jones, Lewis, McDonald Expires 8 September 2000 [Page 18] Internet Draft LDAP Schema for Printer Services 8 March 2000 4.26. printer-job-priority-supported ( 1.3.6.1.4.1.42.2.27.5.1.55 NAME 'printer-job-priority-supported' DESC 'Indicates the number of job priority levels supported. An IPP conformant printer which supports job priority must always support a full range of priorities from "1" to "100" (to ensure consistent behavior), therefore this attribute describes the "granularity". Legal values of this attribute are from "1" to "100".' EQUALITY integerMatch ORDERING integerOrderingMatch SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE ) 4.27. printer-copies-supported ( 1.3.6.1.4.1.42.2.27.5.1.56 NAME 'printer-copies-supported' DESC 'The maximum number of copies of a document that may be printed as a single job. A value of "0" indicates no maximum limit. A value of "-1" indicates unknown.' EQUALITY integerMatch ORDERING integerOrderingMatch SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE ) 4.28. printer-job-k-octets-supported ( 1.3.6.1.4.1.42.2.27.5.1.57 NAME 'printer-job-k-octets-supported' DESC 'The maximum size in kilobytes (1,024 octets actually) incoming print job that this printer will accept. A value of "0" indicates no maximum limit. A value of "-1" indicates unknown.' EQUALITY integerMatch ORDERING integerOrderingMatch SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE ) Fleming, Jones, Lewis, McDonald Expires 8 September 2000 [Page 19] Internet Draft LDAP Schema for Printer Services 8 March 2000 4.29. printer-current-operator ( 1.3.6.1.4.1.42.2.27.5.1.58 NAME 'printer-current-operator' DESC 'The name of the current human operator responsible for operating this printer. It is suggested that this string include information that would enable other humans to reach the operator, such as a phone number.' EQUALITY caseIgnoreMatch ORDERING caseIgnoreOrderingMatch SUBSTR caseIgnoreSubstringMatch SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{127} SINGLE-VALUE ) 4.30. printer-service-person ( 1.3.6.1.4.1.42.2.27.5.1.59 NAME 'printer-service-person' DESC 'The name of the current human service person responsible for servicing this printer. It is suggested that this string include information that would enable other humans to reach the service person, such as a phone number.' EQUALITY caseIgnoreMatch ORDERING caseIgnoreOrderingMatch SUBSTR caseIgnoreSubstringMatch SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{127} SINGLE-VALUE ) 4.31. printer-delivery-orientation-supported ( 1.3.6.1.4.1.42.2.27.5.1.60 NAME 'printer-delivery-orientation-supported' DESC 'The possible delivery orientations of pages as they are printed and ejected from this printer. Legal values include; "unknown", "face-up", and "face-down".' EQUALITY caseIgnoreMatch ORDERING caseIgnoreOrderingMatch SUBSTR caseIgnoreSubstringMatch SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{127} ) Fleming, Jones, Lewis, McDonald Expires 8 September 2000 [Page 20] Internet Draft LDAP Schema for Printer Services 8 March 2000 4.32. printer-stacking-order-supported ( 1.3.6.1.4.1.42.2.27.5.1.61 NAME 'printer-stacking-order-supported' DESC 'The possible stacking order of pages as they are printed and ejected from this printer. Legal values include; "unknown", "first-to-last", "last-to-first".' EQUALITY caseIgnoreMatch ORDERING caseIgnoreOrderingMatch SUBSTR caseIgnoreSubstringMatch SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{127} ) 4.33. printer-output-features-supported ( 1.3.6.1.4.1.42.2.27.5.1.62 NAME 'printer-output-features-supported' DESC 'The possible output features supported by this printer. Legal values include; "unknown", "bursting", "decollating", "page-collating", "offset-stacking".' EQUALITY caseIgnoreMatch ORDERING caseIgnoreOrderingMatch SUBSTR caseIgnoreSubstringMatch SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{127} ) 4.34. sun-printer-bsdaddr ( 1.3.6.1.4.1.42.2.27.5.1.63 NAME 'sun-printer-bsdaddr' DESC 'Sets the server, print queue destination name and whether the client generates protocol extensions. "Solaris" specifies a Solaris print server extension. The value is represented by the following value: server "," destination ", Solaris".' EQUALITY caseIgnoreIA5Match SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE ) 4.35. sun-printer-kvp ( 1.3.6.1.4.1.42.2.27.5.1.64 NAME 'sun-print-kvp' DESC 'This attribute contains a set of key value pairs which may have meaning to the print subsystem or may be user defined. Each value is represented by the following: key "=" value.' Fleming, Jones, Lewis, McDonald Expires 8 September 2000 [Page 21] Internet Draft LDAP Schema for Printer Services 8 March 2000 EQUALITY caseIgnoreIA5Match SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 ) Fleming, Jones, Lewis, McDonald Expires 8 September 2000 [Page 22] Internet Draft LDAP Schema for Printer Services 8 March 2000 5. Definition of Syntaxes No new syntaxes are defined by this document. 6. IANA Considerations There are no IANA registration considerations defined by this document. 7. Internationalization Considerations All text string attribute values in objects of the printerService class MUST be encoded in UTF-8 [RFC 2279] characters, as required by the syntax 'Directory String' [RFC 2252]. Also, a language tag for all of the text string attributes in objects of the printerService class SHOULD be supplied in 'printer-natural-language-configured'. Therefore, all objects of the printerService class conform to "IETF Policy on Character Sets and Languages" [RFC 2277]. 8. Security Considerations As with any LDAP schema, it is important to protect specific entries and attributes with the appropriate access control. It is particularly important that only administrators can modify entries defined in this schema. For additional considerations of deploying printers in an IPP environment the reader is referred to section 8 of [IPPMOD]. By advertising the security methods for each supported printer URL the printer may expose information useful to attackers. Suitable security methods SHOULD be used to authenticate any service advertisements. Obtaining a reference to an object and storing it in the directory may make a handle to the object available to a wider audience. This may have security implications. 9. References [IPPMOD] deBry, Hastings, Herriot, Isaacson, Powell. Internet Printing Protocol/1.1: Model and Semantics, , (work in progress), March 2000. Fleming, Jones, Lewis, McDonald Expires 8 September 2000 [Page 23] Internet Draft LDAP Schema for Printer Services 8 March 2000 [SLPPRT] St. Pierre, Isaacson, McDonald. Definition of the Printer Abstract Service Type v2.0, , (work in progress), March 2000. [SLPLDAP] Kempf, Moats, St. Pierre. Conversion of LDAP Schemas to and from SLP Templates, , (work in progress), October 1999. [RFC 1179] McLaughlin. Line Printer Daemon Protocol, RFC 1179, August 1990. [RFC 1766] Alvestrand. Tags for the Identification of Languages, RFC 1766. March 1995. [RFC 2119] Bradner. Key words for use in RFCs to Indicate Requirement Levels, RFC 2119, March 1997. [RFC 2246] Dierks, Allen. TLS Protocol Version 1.0, RFC 2246, January 1999. [RFC 2251] Wahl, Howes, Kille. Lightweight Directory Access Protocol (v3), RFC 2251, December 1997. [RFC 2252] Wahl, Coulbeck, Howes, Kille. Lightweight Directory Access Protocol (v3): Attribute Syntax Definitions, RFC 2252, December 1997. [RFC 2277] Alvestrand. IETF Policy on Character Sets and Languages, RFC 2277, January 1998. [RFC 2279] Yergeau. UTF-8, a Transformation Format of ISO 10646, RFC 2279, January 1998. [RFC 2307] Howard. An Approach for Using LDAP as a Network Information Service, RFC 2307, March 1998. [RFC 2396] Berners-Lee, Fielding, Masinter. URI Generic Syntax, RFC 2396, August 1998. 10. Acknowledgments This document is a submission to the IPP Working group. Fleming, Jones, Lewis, McDonald Expires 8 September 2000 [Page 24] Internet Draft LDAP Schema for Printer Services 8 March 2000 11. Author's Addresses Pat Fleming IBM Highway 52 N. Rochester, MN 55901 USA Phone: 507-253-7583 EMail: flemingp@us.ibm.com Ken Jones Sun Microsystems Inc. 17 Network Circle Menlo Park, CA 94025 USA Phone: +1 650 786 4164 EMail: kenjones@eng.sun.com Harry Lewis IBM 6300 Diagonal Hwy Boulder, CO 80301 USA Phone: 303-924-5337 EMail: harryl@us.ibm.com Ira McDonald High North 221 Ridge Ave Grand Marais, MI 49839 USA Phone: 906-494-2434 (or 2697) Email: imcdonald@sharplabs.com Fleming, Jones, Lewis, McDonald Expires 8 September 2000 [Page 25] Internet Draft LDAP Schema for Printer Services 8 March 2000 12. Full Copyright Statement Copyright (C) The Internet Society (2000). All Rights Reserved. This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to the Internet Society or other Internet organizations, except as needed for the purpose of developing Internet standards in which case the procedures for copyrights defined in the Internet Standards process must be followed, or as required to translate it into languages other than English. The limited permissions granted above are perpetual and will not be revoked by the Internet Society or its successors or assigns. This document and the information contained herein is provided on an "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE." Fleming, Jones, Lewis, McDonald Expires 8 September 2000 [Page 26]