IPP> About uri

IPP> About uri

Hastings, Tom N hastings at cp10.es.xerox.com
Tue Feb 16 18:21:22 EST 1999


Here is what the IIG says about URI comparison.  It looks good to me.  I
suggest that we also add a reference to the IIG in section 4.1.5 'uri' of
the Model, ok?

2.5 Case Sensitivity in URIs (issue 1.6)

IPP client and server implementations must be aware of the diverse
uppercase/lowercase nature of URIs.  RFC 2396 defines URL schemes and Host
names as case insensitive but reminds us that the rest of the URL may well
demonstrate case sensitivity.  When creating URL's for fields where the
choice is completely arbitrary, it is probably best to select lower case.
However, this cannot be guaranteed and implementations MUST NOT rely on any
fields being case-sensitive or case-insensitive in the URL beyond the URL
scheme and host name fields.

The reason that the IPP specification does not make any restrictions on
URIs, is so that implementations of IPP may use off-the-shelf components
that conform to the standards that define URIs, such as RFC 2396 and the
HTTP/1.1 specifications [RFC2068].  See these specifications for rules of
matching, comparison, and case-sensitivity.

It is also recommended that System Administrators and implementations avoid
creating URLs for different printers that differ only in their case.  For
example, don't have Printer1 and printer1 as two different IPP Printers. 
The HTTP/1.1 specification [RFC2068] contains more details on comparing
URLs.

>-----Original Message-----
>From: Hastings, Tom N [mailto:hastings at cp10.es.xerox.com]
>Sent: Tuesday, February 16, 1999 14:58
>To: kugler at us.ibm.com; ipp at pwg.org
>Subject: RE: IPP> About uri
>
>
>IPP Model and Semantics, section 4.1.5 'uri' says:
>
>The 'uri' attribute syntax is any valid Uniform Resource 
>Identifier or URI
>[RFC2396].  Most often, URIs are simply Uniform Resource 
>Locators or URLs.
>The maximum length of URIs used as values of IPP attributes is 
>1023 octets.
>Although most other IPP attribute syntax types allow for only 
>lower-cased
>values, this attribute syntax type conforms to the case-sensitive and
>case-insensitive rules specified in [RFC2396].
>
>Is that reference sufficient?
>
>
>The Implementer's Guide doesn't talk about URI comparison.  
>Should it?   
>
>Would it need to reference the HTTP specification as you did?
>
>Tom
>
>
>
>>-----Original Message-----
>>From: kugler at us.ibm.com [mailto:kugler at us.ibm.com]
>>Sent: Tuesday, February 16, 1999 08:11
>>To: ipp at pwg.org
>>Subject: Re: IPP> About uri
>>
>>
>>
>>
>>Yan Gao wrote:
>>Original Article: http://www.egroups.com/list/ipp/?start=5223
>>> Dear Sir,
>>>
>>> I did not found out in the IPP1.0 protocal whether uri should be
>>> case-sensitive or case-insensicive.
>>> Could anybody tell me please?
>>>
>>> Yan Gao
>>> gaoyan at excite.co.jp
>>>
>>
>>Part of it is case sensitive and part is case insensitive.  From
>>draft-ietf-http-v11-spec-rev-06:
>>
>>3.2.3     URI Comparison
>>When comparing two URIs to decide if they match or not, a 
>>client SHOULD use
>>a case-sensitive octet-by-octet comparison of the entire URIs, 
>>with these
>>exceptions:
>>
>>   · A port that is empty or not given is equivalent to the 
>>default port
>>     for that URI-reference;
>>   · Comparisons of host names MUST be case-insensitive;
>>   · Comparisons of scheme names MUST be case-insensitive;
>>   · An empty abs_path is equivalent to an abs_path of “/”.
>>Characters other than those in the “reserved” and “unsafe” sets (see
>>section 3.2) are equivalent to their “"%" HEX HEX” encoding.
>>
>>For example, the following three URIs are equivalent:
>>
>>      http://abc.com:80/~smith/home.html
>>      http://ABC.com/%7Esmith/home.html
>>      http://ABC.com:/%7esmith/home.html
>>
>>
>>
>



More information about the Ipp mailing list