Internet Printing Protocol Working Group                     Pat Fleming
INTERNET DRAFT                                                       IBM
Expires 27 October 2000                                        Ken Jones
                                                        Sun Microsystems
                                                             Harry Lewis
                                                                     IBM
                                                            Ira McDonald
                                                          High North Inc
                                                           27 April 2000

                   Internet Printing Protocol (IPP):
                    LDAP Schema for Printer Services
              <draft-ietf-ipp-ldap-printer-schema-01.txt>

    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."

     The list of current Internet-Drafts can be accessed at
     http://www.ietf.org/ietf/1id-abstracts.txt

     The list of Internet-Draft Shadow Directories can be accessed at
     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 printers and printer services.  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 27 October 2000     [Page 1]


Internet Draft      LDAP Schema for Printer Services       27 April 2000

                           Table of Contents
1.  Introduction ...............................................       4
2.  Terminology ................................................       4
3.  Definition of Object Classes ...............................       5
  3.1.  slpServicePrinter ......................................       6
  3.2.  printerAbstract ........................................       6
  3.3.  printerService .........................................       7
  3.4.  printerServiceAuxClass .................................       7
  3.5.  printerIPP .............................................       8
  3.6.  printerLPR .............................................       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 .........................      17
  4.24.  printer-resolution-supported ..........................      18
  4.25.  printer-print-quality-supported .......................      18
  4.26.  printer-job-priority-supported ........................      18
  4.27.  printer-copies-supported ..............................      19
  4.28.  printer-job-k-octets-supported ........................      19
  4.29.  printer-current-operator ..............................      19
  4.30.  printer-service-person ................................      20
  4.31.  printer-delivery-orientation-supported ................      20
  4.32.  printer-stacking-order-supported ......................      20
  4.33.  printer-output-features-supported .....................      20
5.  Definition of Syntaxes .....................................      22
6.  IANA Considerations ........................................      22
7.  Internationalization Considerations ........................      22
8.  Security Considerations ....................................      22
9.  References .................................................      22
10.  Acknowledgments ...........................................      23
11.  Author's Addresses ........................................      24

Fleming, Jones, Lewis, McDonald     Expires 27 October 2000     [Page 2]


Internet Draft      LDAP Schema for Printer Services       27 April 2000

12.  Full Copyright Statement ..................................      25



















































Fleming, Jones, Lewis, McDonald     Expires 27 October 2000     [Page 3]


Internet Draft      LDAP Schema for Printer Services       27 April 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.




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 27 October 2000     [Page 4]


Internet Draft      LDAP Schema for Printer Services       27 April 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, and
   LPR.

   slpServicePrinter - auxiliary class for SLP registered printers
   printerAbstract - 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

   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 specifying the abstract object class printerAbstract 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
   add to the list of MAY OIDs, but MUST NOT modify the list of MUST
   OIDs and MUST NOT remove OIDs from the list of MAY 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 27 October 2000     [Page 5]


Internet Draft      LDAP Schema for Printer Services       27 April 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].

   ( <id-oc>.8
   NAME  'slpServicePrinter'
   DESC  'Service Location Protocol (SLP) information.'
   SUP   slpService
   AUXILIARY
   )


3.2.  printerAbstract

   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.

   ( <id-oc>.9
   NAME  'printerAbstract'
   DESC  'Printer related information.'
   ABSTRACT
   SUP   top
   MAY   ( printer-name $
           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 27 October 2000     [Page 6]


Internet Draft      LDAP Schema for Printer Services       27 April 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 printerAbstract 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 SHOULD be used as the
   attribute type of the directory entry's relative distinguished name
   (RDN).  printer-uri uniquely identifies each of the printer services
   for a given printer.  Note that if the printer service changes
   domains, printer-uri must be updated with the new domain name.

   ( <id-oc>.10
   NAME  'printerService'
   DESC  'Printer information.'
   SUP   printerAbstract
   MAY   ( printer-uri $ printer-xri-supported )
   STRUCTURAL
   )


3.4.  printerServiceAuxClass

   This auxiliary class defines printer information.  It is derived from
   class printerAbstract and thus inherits common printer attributes.
   This class MUST be used with a structural class.

   LDAP applications SHOULD use printer-uri as the naming attribute.
   That is, when using printerService, printer-uri SHOULD be used as the
   attribute type of the directory entry's relative distinguished name
   (RDN).  printer-uri uniquely identifies each of the printer services
   for a given printer.  Note that if the printer service changes
   domains, printer-uri must be updated with the new domain name.

   ( <id-oc>.11
   NAME  'printerServiceAuxClass'
   DESC  'Printer information.'
   SUP   printerAbstract

Fleming, Jones, Lewis, McDonald     Expires 27 October 2000     [Page 7]


Internet Draft      LDAP Schema for Printer Services       27 April 2000

   MAY   ( printer-uri $ printer-xri-supported )
   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
   specific printer information.

   ( <id-oc>.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 identify
   directory entries that support LPR.

   ( <id-oc>.13
   NAME  'printerLPR'
   DESC  'LPR information.'
   SUP   top
   AUXILIARY
   )


















Fleming, Jones, Lewis, McDonald     Expires 27 October 2000     [Page 8]


Internet Draft      LDAP Schema for Printer Services       27 April 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 27 October 2000     [Page 9]


Internet Draft      LDAP Schema for Printer Services       27 April 2000

   printer-service-person
   printer-delivery-orientation-supported
   printer-stacking-order-supported
   printer-output-features-supported

   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.

   ( <id-at>.1
   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
      'none' (no authentication for this URI)
      'requesting-user-name' (from operation request)
      'basic' (HTTP/1.1 Basic [RFC 2617])

Fleming, Jones, Lewis, McDonald    Expires 27 October 2000     [Page 10]


Internet Draft      LDAP Schema for Printer Services       27 April 2000

      '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<'

   ( <id-at>.2
   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]).

   ( <id-at>.3
   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}
   SINGLE-VALUE
   )


Fleming, Jones, Lewis, McDonald    Expires 27 October 2000     [Page 11]


Internet Draft      LDAP Schema for Printer Services       27 April 2000



4.4.  printer-natural-language-configured

   ( <id-at>.4
   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

   ( <id-at>.5
   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

   ( <id-at>.6
   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
   SUBSTR caseIgnoreSubstringMatch
   SYNTAX  1.3.6.1.4.1.1466.115.121.1.15{127}

Fleming, Jones, Lewis, McDonald    Expires 27 October 2000     [Page 12]


Internet Draft      LDAP Schema for Printer Services       27 April 2000

   SINGLE-VALUE
   )


4.7.  printer-more-info

   ( <id-at>.7
   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 caseIgnoreMatch
   ORDERING caseIgnoreOrderingMatch
   SUBSTR caseIgnoreSubstringMatch
   SYNTAX  1.3.6.1.4.1.1466.115.121.1.15
   SINGLE-VALUE
   )


4.8.  printer-make-and-model

   ( <id-at>.8
   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

   ( <id-at>.9
   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 27 October 2000     [Page 13]


Internet Draft      LDAP Schema for Printer Services       27 April 2000



4.10.  printer-multiple-document-jobs-supported

   ( <id-at>.10
   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

   ( <id-at>.11
   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
   SUBSTR caseIgnoreSubstringMatch
   SYNTAX  1.3.6.1.4.1.1466.115.121.1.15{63}
   SINGLE-VALUE
   )


4.12.  printer-charset-supported

   ( <id-at>.12
   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
   SUBSTR caseIgnoreSubstringMatch
   SYNTAX  1.3.6.1.4.1.1466.115.121.1.15{63}
   )


Fleming, Jones, Lewis, McDonald    Expires 27 October 2000     [Page 14]


Internet Draft      LDAP Schema for Printer Services       27 April 2000



4.13.  printer-generated-natural-language-supported

   ( <id-at>.13
   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

   ( <id-at>.14
   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
   SUBSTR caseIgnoreSubstringMatch
   SYNTAX  1.3.6.1.4.1.1466.115.121.1.15{127}
   )


4.15.  printer-color-supported

   ( <id-at>.15
   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

   ( <id-at>.16
   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).'
   EQUALITY caseIgnoreMatch
   SUBSTR caseIgnoreSubstringMatch

Fleming, Jones, Lewis, McDonald    Expires 27 October 2000     [Page 15]


Internet Draft      LDAP Schema for Printer Services       27 April 2000

   SYNTAX  1.3.6.1.4.1.1466.115.121.1.15{255}
   )


4.17.  printer-pages-per-minute

   ( <id-at>.17
   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

   ( <id-at>.18
   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

   ( <id-at>.19
   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
   SUBSTR caseIgnoreSubstringMatch
   SYNTAX  1.3.6.1.4.1.1466.115.121.1.15{255}
   )

Fleming, Jones, Lewis, McDonald    Expires 27 October 2000     [Page 16]


Internet Draft      LDAP Schema for Printer Services       27 April 2000



4.20.  printer-number-up-supported

   ( <id-at>.20
   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

   ( <id-at>.21
   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
   SUBSTR caseIgnoreSubstringMatch
   SYNTAX  1.3.6.1.4.1.1466.115.121.1.15{127}
   )


4.22.  printer-media-supported

   ( <id-at>.22
   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
   SUBSTR caseIgnoreSubstringMatch
   SYNTAX  1.3.6.1.4.1.1466.115.121.1.15{255}
   )


4.23.  printer-media-local-supported

   ( <id-at>.23
   NAME 'printer-media-local-supported'
   DESC 'Site-specific names of media supported by this printer, in the
         language in "printer-generated-natural-language-configured".

Fleming, Jones, Lewis, McDonald    Expires 27 October 2000     [Page 17]


Internet Draft      LDAP Schema for Printer Services       27 April 2000

         For example: "purchasing-form" (site-specific name) as opposed
         to (in "printer-media-supported"): "na-letter" (standard
         keyword from ISO 10175).'
   EQUALITY caseIgnoreMatch
   SUBSTR caseIgnoreSubstringMatch
   SYNTAX  1.3.6.1.4.1.1466.115.121.1.15{255}
   )


4.24.  printer-resolution-supported

   ( <id-at>.24
   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
   SUBSTR caseIgnoreSubstringMatch
   SYNTAX  1.3.6.1.4.1.1466.115.121.1.15{255}
   )


4.25.  printer-print-quality-supported

   ( <id-at>.25
   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
   SUBSTR caseIgnoreSubstringMatch
   SYNTAX  1.3.6.1.4.1.1466.115.121.1.15{127}
   )


4.26.  printer-job-priority-supported

   ( <id-at>.26
   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

Fleming, Jones, Lewis, McDonald    Expires 27 October 2000     [Page 18]


Internet Draft      LDAP Schema for Printer Services       27 April 2000

   SYNTAX  1.3.6.1.4.1.1466.115.121.1.27
   SINGLE-VALUE
   )


4.27.  printer-copies-supported

   ( <id-at>.27
   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

   ( <id-at>.28
   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
   )


4.29.  printer-current-operator

   ( <id-at>.29
   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
   )




Fleming, Jones, Lewis, McDonald    Expires 27 October 2000     [Page 19]


Internet Draft      LDAP Schema for Printer Services       27 April 2000



4.30.  printer-service-person

   ( <id-at>.30
   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

   ( <id-at>.31
   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
   SUBSTR caseIgnoreSubstringMatch
   SYNTAX  1.3.6.1.4.1.1466.115.121.1.15{127}
   )


4.32.  printer-stacking-order-supported

   ( <id-at>.32
   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
   SUBSTR caseIgnoreSubstringMatch
   SYNTAX  1.3.6.1.4.1.1466.115.121.1.15{127}
   )


4.33.  printer-output-features-supported

   ( <id-at>.33
   NAME 'printer-output-features-supported'
   DESC 'The possible output features supported by this printer. Legal
         values include; "unknown", "bursting", "decollating",
         "page-collating", "offset-stacking".'

Fleming, Jones, Lewis, McDonald    Expires 27 October 2000     [Page 20]


Internet Draft      LDAP Schema for Printer Services       27 April 2000

   EQUALITY caseIgnoreMatch
   SUBSTR caseIgnoreSubstringMatch
   SYNTAX  1.3.6.1.4.1.1466.115.121.1.15{127}
   )
















































Fleming, Jones, Lewis, McDonald    Expires 27 October 2000     [Page 21]


Internet Draft      LDAP Schema for Printer Services       27 April 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,
   <draft-ietf-ipp-model-v11-06.txt>, (work in progress), March 2000.


Fleming, Jones, Lewis, McDonald    Expires 27 October 2000     [Page 22]


Internet Draft      LDAP Schema for Printer Services       27 April 2000


   [SLPPRT] St. Pierre, Isaacson, McDonald.  Definition of the Printer
   Abstract Service Type v2.0,
   <draft-ietf-svrloc-printer-schema-06.txt>, (work in progress), March
   2000.

   [SLPLDAP] Kempf, Moats, St. Pierre.  Conversion of LDAP Schemas to
   and from SLP Templates,
   <draft-ietf-svrloc-template-conversion-05.txt>, (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.

   Thanks to Kimberly Reger (IBM), Robert Moore (IBM) and Lee Rafalow
   (IBM) for their review comments and help in preparing this document.


Fleming, Jones, Lewis, McDonald    Expires 27 October 2000     [Page 23]


Internet Draft      LDAP Schema for Printer Services       27 April 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 Inc
   221 Ridge Ave
   Grand Marais, MI 49839
   USA
   Phone: 906-494-2434 (or 2697)
   Email: imcdonald@sharplabs.com
   Email: imcdonal@sdsp.mc.xerox.com
















Fleming, Jones, Lewis, McDonald    Expires 27 October 2000     [Page 24]


Internet Draft      LDAP Schema for Printer Services       27 April 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 27 October 2000     [Page 25]