draft-ietf-ipp-url-scheme-01.txt   draft-ietf-ipp-url-scheme-02.txt 
Internet Printing Protocol Working Group Bob Herriot Internet Printing Protocol Working Group Bob Herriot
INTERNET DRAFT Xerox Corporation INTERNET DRAFT Xerox Corporation
Expires 5 August 2001 Ira McDonald Expires 13 August 2001 Ira McDonald
High North Inc High North Inc
[Target Category: Standards Track] 5 February 2001 [Target Category: Standards Track] 13 February 2001
Internet Printing Protocol (IPP): Internet Printing Protocol (IPP):
IPP URL Scheme IPP URL Scheme
<draft-ietf-ipp-url-scheme-01.txt> <draft-ietf-ipp-url-scheme-02.txt>
Copyright (C) The Internet Society (2001). All Rights Reserved. Copyright (C) The Internet Society (2001). All Rights Reserved.
Status of this Memo Status of this Memo
This document is an Internet-Draft and is in full conformance with This document is an Internet-Draft and is in full conformance with
all provisions of Section 10 of RFC2026. Internet-Drafts are working all provisions of Section 10 of RFC2026. Internet-Drafts are working
documents of the Internet Engineering Task Force (IETF), its areas, documents of the Internet Engineering Task Force (IETF), its areas,
and its working groups. Note that other groups may also distribute and its working groups. Note that other groups may also distribute
working documents as Internet-Drafts. working documents as Internet-Drafts.
Internet-Drafts are draft documents valid for a maximum of six months Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
To view the list of Internet-Draft Shadow Directories, see 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. http://www.ietf.org/shadow.html.
Abstract Abstract
This document is a product of the Internet Printing Protocol Working This document is a product of the Internet Printing Protocol Working
Group of the Internet Engineering Task Force (IETF). Comments should Group of the Internet Engineering Task Force (IETF). Comments should
be submitted to the ipp@pwg.org mailing list. be submitted to the ipp@pwg.org mailing list.
This document is intended for use in registering the "ipp" URL scheme This document is intended for use in registering the "ipp" URL scheme
with IANA and fully conforms to the requirements in [RFC-2717]. This with IANA and fully conforms to the requirements in [RFC-2717]. This
skipping to change at page 2, line 12 skipping to change at page 2, line 12
is transformed into an HTTP URL according to the rules specified in is transformed into an HTTP URL according to the rules specified in
section 5 of the IPP/1.1 Protocol [RFC-2910]. section 5 of the IPP/1.1 Protocol [RFC-2910].
Table of Contents Table of Contents
1. Introduction ............................................... 3 1. Introduction ............................................... 3
2. Terminology ................................................ 4 2. Terminology ................................................ 4
2.1. Conformance Terminology ................................ 4 2.1. Conformance Terminology ................................ 4
2.2. Model Terminology ...................................... 4 2.2. Model Terminology ...................................... 4
3. IPP Model for Printers and Jobs ............................ 4 3. IPP Model for Printers and Jobs ............................ 4
4. IPP URL Scheme ............................................. 5 4. IPP URL Scheme ............................................. 6
4.1. IPP URL Scheme Applicability and Intended Usage ........ 5 4.1. IPP URL Scheme Applicability and Intended Usage ........ 6
4.2. IPP URL Scheme Associated IPP Port ..................... 5 4.2. IPP URL Scheme Associated IPP Port ..................... 6
4.3. IPP URL Scheme Associated MIME Type .................... 5 4.3. IPP URL Scheme Associated MIME Type .................... 6
4.4. IPP URL Scheme Character Encoding ...................... 5 4.4. IPP URL Scheme Character Encoding ...................... 6
4.5. IPP URL Scheme Syntax in ABNF .......................... 6 4.5. IPP URL Scheme Syntax in ABNF .......................... 7
4.5.1. IPP URL Examples ................................... 7 4.5.1. IPP URL Examples ................................... 8
4.5.2. IPP URL Comparisons ................................ 8 4.5.2. IPP URL Comparisons ................................ 9
5. Conformance Requirements ................................... 9 5. Conformance Requirements ................................... 10
5.1. Conformance Requirements for IPP Clients ............... 9 5.1. Conformance Requirements for IPP Clients ............... 10
5.2. Conformance Requirements for IPP Printers .............. 9 5.2. Conformance Requirements for IPP Printers .............. 10
6. IANA Considerations ........................................ 10 6. IANA Considerations ........................................ 11
7. Internationalization Considerations ........................ 10 7. Internationalization Considerations ........................ 11
8. Security Considerations .................................... 10 8. Security Considerations .................................... 11
9. References ................................................. 11 9. References ................................................. 12
10. Acknowledgments ........................................... 12 10. Acknowledgments ........................................... 13
11. Authors' Addresses ........................................ 13 11. Authors' Addresses ........................................ 14
12. Appendix X - Change History ............................... 13 12. Appendix X - Change History ............................... 14
13. Full Copyright Statement .................................. 14 13. Full Copyright Statement .................................. 15
1. Introduction 1. Introduction
See section 1 'Introduction' in [RFC-2911] for a full description of See section 1 'Introduction' in [RFC-2911] for a full description of
the IPP document set and overview information about IPP. the IPP document set and overview information about IPP.
The open issues in this document each begin 'ISSUE_n:'. The open issues in this document each begin 'ISSUE_n:'.
This document is a product of the Internet Printing Protocol Working This document is a product of the Internet Printing Protocol Working
Group of the Internet Engineering Task Force (IETF). Comments should Group of the Internet Engineering Task Force (IETF). Comments should
skipping to change at page 5, line 5 skipping to change at page 4, line 46
IPP from an "IPP Client". IPP from an "IPP Client".
In this document, "IPP Printer" is a synonym for "IPP Printer In this document, "IPP Printer" is a synonym for "IPP Printer
object". object".
In this document, "IPP Job object" means the set of attributes and In this document, "IPP Job object" means the set of attributes and
documents for one print job on an "IPP Printer". documents for one print job on an "IPP Printer".
In this document, "IPP Job" is a synonym for "IPP Job object". In this document, "IPP Job" is a synonym for "IPP Job object".
In this document, "IPP URL" means a URL with the "ipp" scheme.
Note: In this document, "IPP URL" is a synonym for "ipp_URL" (in
section 4 'IPP URL Scheme' of this document) and "ipp-URL" (in
section 5 'IPP URL Scheme' of [RFC-2910]).
4. IPP URL Scheme 4. IPP URL Scheme
4.1. IPP URL Scheme Applicability and Intended Usage 4.1. IPP URL Scheme Applicability and Intended Usage
This document is intended for use in registering the "ipp" URL scheme This document is intended for use in registering the "ipp" URL scheme
with IANA and fully conforms to the requirements in [RFC-2717]. This with IANA and fully conforms to the requirements in [RFC-2717]. This
document defines the "ipp" URL (Uniform Resource Locator) scheme for document defines the "ipp" URL (Uniform Resource Locator) scheme for
specifying the location of an IPP Printer, IPP Job, or other IPP specifying the location of an IPP Printer, IPP Job, or other IPP
object (defined in some future version of IPP) which implements the object (defined in some future version of IPP) which implements the
IPP/1.1 Model [RFC-2911] and the IPP/1.1 Protocol encoding over HTTP IPP/1.1 Model [RFC-2911] and the IPP/1.1 Protocol encoding over HTTP
skipping to change at page 6, line 7 skipping to change at page 7, line 7
the HTTP URL scheme defined in HTTP/1.1 [RFC-2616], which is derived the HTTP URL scheme defined in HTTP/1.1 [RFC-2616], which is derived
from the URI Generic Syntax [RFC-2396] and further updated by from the URI Generic Syntax [RFC-2396] and further updated by
[RFC-2732] and [RFC-2373] (for IPv6 addresses in URLs). The IPP URL [RFC-2732] and [RFC-2373] (for IPv6 addresses in URLs). The IPP URL
scheme is case-insensitive in the host name or host address part; scheme is case-insensitive in the host name or host address part;
however the path part is case-sensitive, as in [RFC-2396]. however the path part is case-sensitive, as in [RFC-2396].
Codepoints outside [US-ASCII] MUST be hex escaped by the mechanism Codepoints outside [US-ASCII] MUST be hex escaped by the mechanism
specified in [RFC-2396]. specified in [RFC-2396].
4.5. IPP URL Scheme Syntax in ABNF 4.5. IPP URL Scheme Syntax in ABNF
Note: In this document, "IPP URL" is a synonym for "ipp_URL" (in
section 4 'IPP URL Scheme' of this document) and "ipp-URL" (in
section 5 'IPP URL Scheme' of [RFC-2910]).
This document is intended for use in registering the "ipp" URL scheme This document is intended for use in registering the "ipp" URL scheme
with IANA and fully conforms to the requirements in [RFC-2717]. This with IANA and fully conforms to the requirements in [RFC-2717]. This
document defines the "ipp" URL (Uniform Resource Locator) scheme for document defines the "ipp" URL (Uniform Resource Locator) scheme for
specifying the location of an IPP Printer, IPP Job, or other IPP specifying the location of an IPP Printer, IPP Job, or other IPP
object (defined in some future version of IPP) which implements the object (defined in some future version of IPP) which implements the
IPP/1.1 Model [RFC-2911] and the IPP/1.1 Protocol encoding over HTTP IPP/1.1 Model [RFC-2911] and the IPP/1.1 Protocol encoding over HTTP
[RFC-2910] or any later version of IPP. The intended usage of the [RFC-2910] or any later version of IPP. The intended usage of the
"ipp" URL scheme is COMMON. "ipp" URL scheme is COMMON.
The IPP protocol places a limit 1023 octets (NOT characters) on the The IPP protocol places a limit of 1023 octets (NOT characters) on
length of a URI in section 4.1.5 'uri' in [RFC-2911]. An IPP Printer the length of a URI (see section 4.1.5 'uri' in [RFC-2911]). An IPP
implementation MUST be able to handle the URI of any resource that it Printer MUST return 'client-error-request-value-too-long' (see
supports. An IPP Printer MUST return section 13.1.4.10 in [RFC-2911]) when a URI received in a request
'client-error-request-value-too-long' (see section 13.1.4.10 in (e.g., in the "printer-uri" attribute) is too long.
[RFC-2911]) when a URI received in a request (e.g., in the
"printer-uri" attribute) is too long.
Note: IPP Printers ought to be cautious about depending on URI Note: IPP Printers ought to be cautious about depending on URI
lengths above 255 bytes, because some older client or proxy lengths above 255 bytes, because some older client or proxy
implementations might not properly support these lengths. implementations might not properly support these lengths.
IPP URLs MUST be represented in absolute form. Absolute URLs always IPP URLs MUST be represented in absolute form. Absolute URLs always
begin with a scheme name followed by a colon. For definitive begin with a scheme name followed by a colon. For definitive
information on URL syntax and semantics, see "Uniform Resource information on URL syntax and semantics, see "Uniform Resource
Identifiers (URI): Generic Syntax and Semantics" [RFC-2396]. This Identifiers (URI): Generic Syntax and Semantics" [RFC-2396]. This
specification adopts the definitions of "URI-reference", specification adopts the definitions of "URI-reference",
"absoluteURI", "relativeURI", "port", "host","abs_path", "rel_path", "absoluteURI", "relativeURI", "port", "host","abs_path", "rel_path",
and "authority" from [RFC-2396], as updated by [RFC-2732] and and "authority" from [RFC-2396], as updated by [RFC-2732] and
[RFC-2373] (for IPv6 addresses in URLs). [RFC-2373] (for IPv6 addresses in URLs).
The IPP URL scheme syntax in ABNF is as follows: The IPP URL scheme syntax in ABNF is as follows:
ipp_URL = "http:" "//" host [ ":" port ] [ abs_path [ "?" query ]] ipp_URL = "ipp:" "//" host [ ":" port ] [ abs_path [ "?" query ]]
If the port is empty or not given, port 631 is assumed. The If the port is empty or not given, port 631 is assumed. The
semantics are that the identified resource (see section 5.1.2 of semantics are that the identified resource (see section 5.1.2 of
[RFC-2616]) is located at the IPP Printer or IPP Job listening for [RFC-2616]) is located at the IPP Printer or IPP Job listening for
HTTP connections on that port of that host, and the Request-URI for HTTP connections on that port of that host, and the Request-URI for
the identified resource is 'abs_path'. The use of IP addresses in the identified resource is 'abs_path'.
URLs SHOULD be avoided whenever possible (see [RFC-1900]).
Note: The use of IP addresses in URLs SHOULD be avoided whenever
possible (see [RFC-1900]).
If the 'abs_path' is not present in the URL, it MUST be given as "/" If the 'abs_path' is not present in the URL, it MUST be given as "/"
when used as a Request-URI for a resource (see section 5.1.2 of when used as a Request-URI for a resource (see section 5.1.2 of
[RFC-2616]). If a proxy receives a host name which is not a fully [RFC-2616]). If a proxy receives a host name which is not a fully
qualified domain name, it MAY add its domain to the host name it qualified domain name, it MAY add its domain to the host name it
received. If a proxy receives a fully qualified domain name, the received. If a proxy receives a fully qualified domain name, the
proxy MUST NOT change the host name. proxy MUST NOT change the host name.
4.5.1. IPP URL Examples 4.5.1. IPP URL Examples
skipping to change at page 7, line 43 skipping to change at page 8, line 47
paths: paths:
ipp://abc.com ipp://abc.com
ipp://abc.com/~smith/printer ipp://abc.com/~smith/printer
ipp://abc.com:631/~smith/printer ipp://abc.com:631/~smith/printer
The first and second IPP URLs above MUST be resolved to port 631 The first and second IPP URLs above MUST be resolved to port 631
(IANA assigned well-known port for IPP). The second and third IPP (IANA assigned well-known port for IPP). The second and third IPP
URLs above are equivalent (see section 4.5.2 below). URLs above are equivalent (see section 4.5.2 below).
Note: The use of IP addresses in URLs SHOULD be avoided whenever
possible (see [RFC-1900]).
The following literal IPv4 addresses:
192.9.5.5 ; IPv4 address in IPv4 style
186.7.8.9 ; IPv4 address in IPv4 style
are represented in the following example IPP URLs:
ipp://192.9.5.5/prt1
ipp://186.7.8.9/printers/tiger/bob
The following literal IPv6 addresses (conformant to [RFC-2373]): The following literal IPv6 addresses (conformant to [RFC-2373]):
::192.9.5.5 ; IPv4 address in IPv6 style ::192.9.5.5 ; IPv4 address in IPv6 style
::FFFF:129.144.52.38 ; IPv4 address in IPv6 style ::FFFF:129.144.52.38 ; IPv4 address in IPv6 style
2010:836B:4179::836B:4179 ; IPv6 address per RFC 2373 2010:836B:4179::836B:4179 ; IPv6 address per RFC 2373
are represented in the following example IPP URLs: are represented in the following example IPP URLs:
ipp://[::192.9.5.5]/prt1 ipp://[::192.9.5.5]/prt1
ipp://[::FFFF:129.144.52.38]:631/printers/tiger ipp://[::FFFF:129.144.52.38]:631/printers/tiger
skipping to change at page 13, line 31 skipping to change at page 14, line 31
Grand Marais, MI 49839 Grand Marais, MI 49839
Phone: +1 906-494-2434 Phone: +1 906-494-2434
Email: imcdonald@crt.xerox.com Email: imcdonald@crt.xerox.com
Email: imcdonald@sharplabs.com Email: imcdonald@sharplabs.com
12. Appendix X - Change History 12. Appendix X - Change History
[To be deleted before RFC publication] [To be deleted before RFC publication]
13 February 2001 - draft-ietf-ipp-url-scheme-02.txt
- revised section 3 'IPP Model for Printers and Jobs' and section 4.5
'IPP URL Scheme Syntax in ABNF' to add notes stating that "IPP URL"
(in this document) is a synonym for "ipp-URL" in [RFC-2910], per
request of Bob Herriot;
- revised section 4.5 'IPP URL Scheme Syntax in ABNF' to correct typo
that showed "http:" rather than "ipp:" in the one-line ABNF, per
request of Tom Hastings;
- revised section 4.5.1 'IPP URL Examples' to add a note discouraging
the use of literal IP addresses in URLs, per [RFC-2616] and
[RFC-1900];
5 February 2001 - draft-ietf-ipp-url-scheme-01.txt 5 February 2001 - draft-ietf-ipp-url-scheme-01.txt
- revised section 4.1 'IPP URL Applicability and Intended Usage' to - revised section 4.1 'IPP URL Applicability and Intended Usage' to
clarify that a given IPP URL MAY identify an IPP Printer object or clarify that a given IPP URL MAY identify an IPP Printer object or
an IPP Job object, per request of Tom Hastings; an IPP Job object, per request of Tom Hastings;
- revised section 4.5 'IPP URL Scheme Syntax in ABNF' to define IPP - revised section 4.5 'IPP URL Scheme Syntax in ABNF' to define IPP
URLs consistently with section 3.2.2 'http URL' of HTTP/1.1 URLs consistently with section 3.2.2 'http URL' of HTTP/1.1
[RFC-2616], per request of Tom Hastings; [RFC-2616], per request of Tom Hastings;
- revised section 4.5 'IPP URL Scheme Syntax in ABNF' to clarify that - revised section 4.5 'IPP URL Scheme Syntax in ABNF' to clarify that
IPP URLs may reference IPP Printer objects, IPP Job objects, or IPP URLs may reference IPP Printer objects, IPP Job objects, or
(possibly other future) IPP objects, per request of Bob Herriot; (possibly other future) IPP objects, per request of Bob Herriot;
skipping to change at page 14, line 27 skipping to change at page 15, line 39
per request of Don Wright; per request of Don Wright;
- revised section 6 'IANA Considerations' to clarify that the sole - revised section 6 'IANA Considerations' to clarify that the sole
purpose of the entire document is IANA registration of the "ipp" purpose of the entire document is IANA registration of the "ipp"
URL scheme; URL scheme;
- deleted Appendix A 'Registration of IPP Port' as unnecessary (port - deleted Appendix A 'Registration of IPP Port' as unnecessary (port
is already registered); is already registered);
- deleted Appendix B 'Registration of MIME "application/ipp" as - deleted Appendix B 'Registration of MIME "application/ipp" as
unnecessary (MIME registry has recently caught up to RFC 2910); unnecessary (MIME registry has recently caught up to RFC 2910);
11 January 2001 - draft-ietf-ipp-url-scheme-00.txt 11 January 2001 - draft-ietf-ipp-url-scheme-00.txt
- initial version - simple 'ipp:' URL scheme without parameters or - initial version - simple "ipp" URL scheme without parameters or
query part (consistent with existing and IPP/1.1 implementations); query part (consistent with existing and IPP/1.1 implementations);
- added Appendix A 'Registration of IPP Port' (placeholder) for - added Appendix A 'Registration of IPP Port' (placeholder) for
updated IANA registration of port 631 with references to IPP/1.1; updated IANA registration of port 631 with references to IPP/1.1;
- added Appendix B 'Registration of MIME "application/ipp"' with - added Appendix B 'Registration of MIME "application/ipp"' with
updated IANA registration for IPP MIME type with references to both updated IANA registration for IPP MIME type with references to both
IPP/1.0 and IPP/1.1; IPP/1.0 and IPP/1.1;
13. Full Copyright Statement 13. Full Copyright Statement
Copyright (C) The Internet Society (2001). All Rights Reserved. Copyright (C) The Internet Society (2001). All Rights Reserved.
 End of changes. 

This html diff was produced by rfcdiff 1.25, available from http://www.levkowetz.com/ietf/tools/rfcdiff/