Service Location Working Group Pete St. Pierre
INTERNET DRAFT Sun Microsystems, Inc
Scott Isaccson
Novell, Inc
14 March 1998
Definition of printer: URLs for use with Service Location
draft-ietf-srvloc-printer-scheme-02.txt
Status of This Memo
This document is a submission by the Service Location Working Group
of the Internet Engineering Task Force (IETF). Comments should be
submitted to the srvloc@corp.home.net mailing list.
Distribution of this memo is unlimited.
This document is an Internet-Draft. 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 entire list of current Internet-Drafts, please check
the ``1id-abstracts.txt'' listing contained in the Internet-Drafts
Shadow Directories on ftp.is.co.za (Africa), ftp.nordu.net (Northern
Europe), ftp.nis.garr.it (Southern Europe), munnari.oz.au (Pacific
Rim), ftp.ietf.org (US East Coast), or ftp.isi.edu (US West Coast).
Distribution of this memo is unlimited.
Abstract
This document defines the printer service type and the attributes
associated with it. This template is designed to be used in
conjuction with the Service Location Protocol [1], but may be
used with any directory service supporting attribute/value pair
registration.
The printer service type is designed as an abstract service type. It
is expected that printers advertised with the printer type may be
accessible by one or more protocols. IPP and lpr are a two examples
St.Pierre Expires 14 September 1998 [Page i]
Internet Draft Service Templates and URLs 14 March 1998
of printing protocols that may be used to perform the actual printing
function.
St.Pierre Expires 14 September 1998 [Page ii]
Internet Draft Service Templates and URLs 14 March 1998
Contents
Status of This Memo i
Abstract i
1. Printer service: URL Scheme 1
2. urlpath Definition 1
2.1. IPP . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
2.2. lpr . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
3. Printer Scheme Background 2
4. Printer Service Template 3
5. Summary of Required Attributes 7
6. Acknowledgments 7
A. Attribute Origins 8
B. References 8
1. Printer service: URL Scheme
Service Type templates are used to describe in a standard way those
services which use the service: URL. The template described in this
document is an abstract type that includes concrete types such as
the printing protocol defined in RFC 1179 [2], "Line Printer Daemon
Protocol". The service type for this service: URL is printer.
2. urlpath Definition
The printer type is an abstract service type. Because an abstract
service type may contain one of many concrete types, the urlpath
associated with a printer URL may vary. Two types of printers that
are expected to be common in printer URLs are ipp and lpr.
2.1. IPP
An IPP printer MAY support 'http', 'https', 'mailto', or other
underlying transport protocols. The definition of an IPP Printer
St.Pierre Expires 14 September 1998 [Page 1]
Internet Draft Service Templates and URLs 14 March 1998
object is specified in section 2.1 'Printer Object' of the IPP/1.0
Model and Semantics draft [3]. Examples of valid Service URLs for
IPP printers include:
service:printer:http://server.sun.com/cgi-bin/public-printer
service:printer:http://www.sun.com/cgi-bin/printers?public-printer
2.2. lpr
An lpr accessible printer includes a queue name as the last part of
the URL. If a queue name is absent, the print server is assumed to
use a default print queue.
service:printer:lpr://server.sun.com
service:printer:lpr://server.sun.com/public-printer
3. Printer Scheme Background
The printer scheme provides for consistent registration of printer
services. The attributes described within this draft are a
combination of previous works conducted by the IETF Printer MIB WG,
the IETF IPP WG and the Salutation Consortium.
The attributes specified are intended to facilitate both automatic
as well as manual selection of services not to provide service
statistics or notification. In short, the target audience of service
attributes are users, either programatic or end users, whereas the
audience of MIB statistics are network managers.
St.Pierre Expires 14 September 1998 [Page 2]
Internet Draft Service Templates and URLs 14 March 1998
4. Printer Service Template
The printer template, as defined below, conforms to the grammar
described in "Service Templates and service: Schemes". Please refer
to [4] for detailed explaination of the syntax.
-------------------- template begins here --------------------
type = printer
version = 0.1
language = en
description =
The printer service template describes the attributes
supported by network printing devices. Devices may be
either directly connected to a network, or connected to a
printer spooler that understands the a network queuing
protocol such as IPP, lpr or the Salutation Architecture.
url-syntax =
url-path = ippurl / lprurl
ippurl = url as defined in [3]
lprurl = "lpr://" hostport [ "/" qname ]
hostport = host [ ":" port ]
host = hostname / hostnumber
hostname = *( domainlavel "." ) toplabel
domainlabel = alphanum /
alphanum * [alphanum / "-"] alphanum
toplabel = alpha / alpha * [alphanum / "-"] alphanum
hostnumber = ipv4-number / ipv6-number
ipv4-number = 1*3digit 3*3("." 1*3digit)
ipv6-number = 32*hex
3digit = digit digit digit
port = 1*digit
alphanum = alpha / digit
alpha = "a" / "b" / "c" / "d" / "e" / "f" / "g" /
"h" / "i" / "j" / "k" / "l" / "m" / "n" /
"o" / "p" / "q" / "r" / "s" / "t" / "u" /
"v" / "w" / "x" / "y" / "z" /
"A" / "B" / "C" / "D" / "E" / "F" / "G" /
"H" / "I" / "J" / "K" / "L" / "M" / "N" /
"O" / "P" / "Q" / "R" / "S" / "T" / "U" /
"V" / "W" / "X" / "Y" / "Z"
digit = "0" / "1" / "2" / "3" / "4" / "5" / "6" /
"7" / "8" / "9"
name = STRING
# This attribute contains the name of the printer.
St.Pierre Expires 14 September 1998 [Page 3]
Internet Draft Service Templates and URLs 14 March 1998
# An administrator determines a printer's name and sets this
# attribute to that name. This name may be the last part of
# the printer's URI or it may be unrelated. In
# non-US-English locales, a name may contain characters
# that are not allowed in a URI.
description = STRING
# A free form string that can contain any site-specific
# descriptive information about this printer.
printer-info = STRING L O
# 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. Features
# outside the scope of IPP can be accessed from this URI.
uri-security-supported = STRING L
none
# The types of security that is supported for this uri.
# TLS is one example. URIs that do not support a security
# mechanism should specify 'none'.
none, tls, ssl3
concrete-protocols = STRING L M
# The names of the concrete protocol types supported
# by the printer abstract service type. Example values
# include http and lpr
abstract-protocol = STRING L O
# The name of the abstract protocol which may be run over
# any concrete types listed. For example, the abstract
# protocol 'ipp' may be run over the concrete types of http
# or 'mailto'
make-model = STRING O
# A simple text string defined by the manufacturer
# It should provide the name of the vendor and the model
# name or number
location = STRING O
# A free form description of this printer's physical
# location For example: "2nd floor, near the fire escape"
operator = STRING M O
# A person, or persons responsible for maintaining a
# printer on a day-to-day basis.
St.Pierre Expires 14 September 1998 [Page 4]
Internet Draft Service Templates and URLs 14 March 1998
natural-language-supported = STRING L M
# The languages in which error and status messages
# may be delivered in. Legal values come from RFC 1766
# "Tags for the Identification of Languages"[5]
charset-supported = STRING L M
utf-8
# The character sets supported by this printer, for example
# UTF-8, Shift-JIS or ISO-Latin-1. Legal values come from
# the IANA Registry of Coded Character Sets. [6]
duplex-mode = STRING L M O
simplex
# The duplex capabilities a printer can handle.
simplex, duplex, tumble, one-sided, two-sided-long-edge,
two-sided-short-edge
priority-levels-supported = INTEGER O
1
# The number of priority levels supported by this printer.
# a value of 1 indicates all jobs have the same priority.
number-up = INTEGER O
1
# Specifies the number of source page-images to impose
# upon a single side of an instance of a selected
# medium.
media-supported = STRING L M O
# The names or sizes of the media supported by this printer
# This value is based on the legal values defined in ISO
# 10175
media-local-supported = STRING M O
# The site-specific names, types, and/or sizes of the
# media supported by this printer. The values specified
# are localized according to the value of
# 'natural-language-configured'. For example
# 'purchasing-form' as opposed to 'na-letter'.
color-supported = BOOLEAN O
false
# Indicates whether color is supported
document-format = STRING L M O
# The format of the data to be printed. The standard
# values for this attribute are Internet Media types
# which are sometimes called MIME types.
St.Pierre Expires 14 September 1998 [Page 5]
Internet Draft Service Templates and URLs 14 March 1998
paper-output = STRING L M O
standard
# The mode in which pages output are arranged.
standard, noncollated sort, collated sort, stack, unknown
print-quality = STRING L O
normal
# Subjective evaluation of the overall printing quality.
draft, normal, high
resolution = STRING L M O
unknown
# A string reprentation of 3 comma (",") separated integers
# where each integer itself is represented as a string.
# The 3 integers represent in order: 1) a cross feed
# direction resolution (positive integer value), 2) a feed
# direction resolution (positive integer value), and 3)
# a units value. In the latter case, a '3' indicates
# dots per inch and a '4' indicates dots per centimeter.
# These values are derived from the Printer MIB [6].
copy-count = INTEGER O
-1
# The maximum number of copies of a document
# that will be printed as a single job. A value of -1
# indicates there is no limit.
job-k-octet-supported = INTEGER O
-1
# The maximum size, in Kilobytes, of a print job that
# the print queue will accept." A value of -1 indicates
# there is no limit.
finishing = STRING M O
none
# Identifies the finishing operationssupported by the
# printer. none, staple, staple-top-left, staple-bottom-left,
staple-top-right, staple-bottom-right, saddle-stitch,
edge-stitch, punch, bind, cover
delivery-orientation = STRING O
unknown
# Orientation of pages as the are printed and ejected from
# the printer.
unknown, face up, face down
service-person = STRING O M
# A list of service contact names for this printer.
St.Pierre Expires 14 September 1998 [Page 6]
Internet Draft Service Templates and URLs 14 March 1998
-------------------- template ends here ----------------------
5. Summary of Required Attributes
The purpose of having attributes associated with a service URL is
to provide a dynamic search capability to service location clients.
It is not intended to burden server implementations with additional
information to provide in a registration. For this reason, the only
a subset of the attributes included in this template are required in
compliant implemenations.
Mandatory Optional
name printer-info
description abstract-protocol
uri-security-supported make-model
concrete-protocols location
natural-language-supported operator
charset-supported duplex-mode
priority-levels-supported
number-up
media-supported
media-local-supported
color-supported
document-format
paper-output
print-quality
resolution
copy-count
job-k-octet-supported
finishing
delivery-orientation
service-person
6. Acknowledgments
This document is a product of the Service Location Working group.
Thanks go out to Ira McDonald and Jean Beah at Xerox, Jim Erwin
and Todd Rupper of Novell and Randy Turner of Sharp Labs. The IPP
working group's efforts on a directory schema have been instrumental
in making this template happen.
St.Pierre Expires 14 September 1998 [Page 7]
Internet Draft Service Templates and URLs 14 March 1998
A. Attribute Origins
The following table summarizes the attributes included in the printer
scheme and their origins. This table does not include attributes
required in the "Service Templates and URLs" Draft. It also includes
attributes that may not have a specific origin, but were deemed
useful in locating a printer service.
Attribute Printer MIB[6] IPP[3] Salutation[7]
name X
description X
printer-info X
uri-security-supported X
concrete-protocols
abstract-protocol
make-model X
location X
operator X
natural-language-supported X
charset-supported X
duplex-mode X X
priority-levels-supported X X
number-up X
media-supported X X
media-local-supported X
color-supported X
document-format X X
paper-output X
print-quality X
resolution X X
copy-count X X
job-k-octet-supported X X
finishing X
delivery-orientation X X
service-person X
B. References
[1]J. Veizades, E. Guttman, C. Perkins, and S. Kaplan. "Service
Location Protocol", RFC 2165. June 1997.
[2]L. McLaughlin III, "Line Printer Daemon Protocol",
RFC 1179. August 1990.
[3]R. deBry, T. Hastings, R. Herriot, S. Isaacson,
P. Powell, "IPP/1.0: Model and Semantics", Work
St.Pierre Expires 14 September 1998 [Page 8]
Internet Draft Service Templates and URLs 14 March 1998
in progress, January 1998.
[4]E. Guttman, C. Perkins, J. Kempf, "Service Templates and service:
Schemes", Work in Progress, March, 1998
[5]H. Alvestrand, "Tags for the Identification of Languages",
RFC 1766. March 1995.
[6]IANA Registry of Coded Character Sets:
ftp://ftp.isi.edu/in-notes/iana/assignments/character-sets
[7]R. Smith, F. Wright, T. Hastings, S. Zilles, J. Gyllenskog,
"Printer MIB", RFC 1759. 03/28/1995.
[8]Salutation Consortium, Inc., "Salutation Architecture
Specification V2.0", December 1996.
Full Copyright Statement
Copyright (C) The Internet Society (1997). 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."
St.Pierre Expires 14 September 1998 [Page 9]
Internet Draft Service Templates and URLs 14 March 1998
Authors' Addresses
Questions about this memo can be directed to:
Pete St. Pierre
Sun Microsystems
901 San Antonio Avenue
Palo Alto, CA 94043
USA
Phone: +1 650 786-5790
email: Pete.StPierre@Eng.Sun.COM
Scott Isaccson
Novell, Inc
122 E 1700 S
Provo, UT 84606
Phone: 801-861-7366
Fax: 801-861-2517
e-mail: sisaacson@novell.com
St.Pierre Expires 14 September 1998 [Page 10]