Re: [URN] Potential inconsistency between URL and URN syntaxes...

Martin J. Duerst (mduerst@ifi.unizh.ch)
Wed, 18 Dec 1996 19:21:06 +0100 (MET)


Date: Wed, 18 Dec 1996 19:21:06 +0100 (MET)
From: "Martin J. Duerst" <mduerst@ifi.unizh.ch>
To: Ryan Moats <jayhawk@ds.internic.net>
Cc: uri@bunyip.com, urn-ietf@bunyip.com
Subject: Re: [URN] Potential inconsistency between URL and URN syntaxes...
In-Reply-To: <32B80993.5785@ds.internic.net>
Message-Id: <Pine.SUN.3.95.961218190227.245T-100000@enoshima>

On Wed, 18 Dec 1996, Ryan Moats wrote:

> Folks-
> 
> I was reminded this morning that there is a potential inconsistency
> between the URL and URN syntax specifications
> (draft-fielding-url-syntax-02.txt and draft-ietf-urn-syntax-01.txt).
> Because of this, I am cross-posting this to both lists, so I apologize
> to those folks that will see this multiple times (I know I will...)

I have noticed this inconsistency, too, and am glad Ryan brought it up.
 
> The inconsistency arises from the following:
> 
> In the URL syntax draft the following statement is made:
> 
> > 1.1. URL, URN, and URI
> > 
> >    URLs are a subset of Uniform Resource Identifiers (URI), which also
> >    includes the notion of Uniform Resource Names (URN).  A URN differs
> >    from a URL in that it identifies a resource in a location-independent
> >    fashion (see RFC 1737, [10]).  URNs are defined by a separate set of
> >    specifications.
> > 
> >    Although this specification restricts its discussion to URLs, the
> >    syntax defined is that of URI in general.  Any requirements placed on
> >    the URL syntax also apply to the URI syntax.  This uniform syntax for
> >    all resource identifiers allows a URN to be used in any data field
> >    that might otherwise hold a URL.
> 
> However, in the latest draft URN syntax spec (circulating on the urn
> mailing list), the syntax for a URN is
> 
> >    "urn:" <NID> ":" <NSS>
> 
> I don't beleive that the URN specification "can be used in any data
> field that might otherwise hold a URL" as it currently stands (If
> somebody thinks otherwise, please let me know).  Therefore, either the
> syntax specs need to be aligned or the statements about the URL
> specification refering to the URI syntax need to be modulated
> (neither of which are pleasant topics...).  My current preference
> is to modulate the URL syntax specification to support the URN syntax
> and move forward.

I think there is very much to be gained from URLs and URNs being
syntactically alligned. Currenty, it looks to me as if this is
the case; the "urn" part is a <scheme>, and everything after
that is scheme-specific. The greedy algorithm (Section 4.4)
and the exclusion of ":" in schemes assures that this parsing
will be done correctly.
The treatment of reserved characters could cause some problems,
however. To allow substitution of "%7E" by "~" (URL, 2.2/2.3.2)
while that character is not available on many keyboards is
problematic. Therefore, that aspect has to be reconsidered
anyway.
The URL draft also does not agree with the URN draft on i18n
issues. I18N in URLs is a large topic, and I hope to get the
time tomorrow to comment on its treatment in the URL draft.

In the context of this thread, it is at least required that
consequences in these differences are analysed/understood,
and that there is language in the URL draft (given it is kept
to be responsible for URIs in general) that the syntax
alignement does not include these issues. This most probably
should be done with a general statement explaining what
exactly is covered, and what not, by "uniform syntax".

Regards,	Martin.