Re: We should drop the useless urn: prefix

Keith Moore <moore@network-heretics.com> Sat, 28 March 2015 14:20 UTC

Return-Path: <moore@network-heretics.com>
X-Original-To: ietf@ietfa.amsl.com
Delivered-To: ietf@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id A81BC1A8833 for <ietf@ietfa.amsl.com>; Sat, 28 Mar 2015 07:20:25 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -0.7
X-Spam-Level:
X-Spam-Status: No, score=-0.7 tagged_above=-999 required=5 tests=[DKIM_SIGNED=0.1, DKIM_VALID=-0.1, RCVD_IN_DNSWL_LOW=-0.7] autolearn=ham
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 2vgGOJ2sIQq4 for <ietf@ietfa.amsl.com>; Sat, 28 Mar 2015 07:20:22 -0700 (PDT)
Received: from out2-smtp.messagingengine.com (out2-smtp.messagingengine.com [66.111.4.26]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 985CA1A8822 for <ietf@ietf.org>; Sat, 28 Mar 2015 07:20:22 -0700 (PDT)
Received: from compute6.internal (compute6.nyi.internal [10.202.2.46]) by mailout.nyi.internal (Postfix) with ESMTP id B0495207C8 for <ietf@ietf.org>; Sat, 28 Mar 2015 10:20:18 -0400 (EDT)
Received: from frontend2 ([10.202.2.161]) by compute6.internal (MEProxy); Sat, 28 Mar 2015 10:20:21 -0400
DKIM-Signature: v=1; a=rsa-sha1; c=relaxed/relaxed; d= messagingengine.com; h=content-transfer-encoding:content-type :date:from:in-reply-to:message-id:mime-version:references :subject:to:x-sasl-enc:x-sasl-enc; s=smtpout; bh=kWcdk0w0emKkJeU tPN+8WJ5m/4M=; b=ecm24w0YkcJlPKqc97aSmLOiQ6Xc7e4TYFg/Fq/Q4TIG7pu ed1tZt464N0f+aaDHLSTFLG1G5tanZRquD3U6kOt64uhRLE5JLuSElUXkFsexbtI 33WEQmtPl4tvybs60Z526oTYMAXFXoTRNxrMLCZc8sBOpoV3VIs+2SecLAtk=
X-Sasl-enc: N1pBeyr0tkuqiZO4+gUkyAYprjJzysMQV09rBaZPkHzU 1427552421
Received: from [104.55.94.41] (unknown [104.55.94.41]) by mail.messagingengine.com (Postfix) with ESMTPA id 4ED37680100; Sat, 28 Mar 2015 10:20:21 -0400 (EDT)
Message-ID: <5516B8A3.1090605@network-heretics.com>
Date: Sat, 28 Mar 2015 10:20:19 -0400
From: Keith Moore <moore@network-heretics.com>
User-Agent: Mozilla/5.0 (X11; Linux i686; rv:31.0) Gecko/20100101 Thunderbird/31.5.0
MIME-Version: 1.0
To: ietf@ietf.org
Subject: Re: We should drop the useless urn: prefix
References: <CAMm+Lwj7a3jwUV0=iZVtuk+3No1KxJ7rwkUgczbm+s7WjRKeoQ@mail.gmail.com> <F146339D-077E-4387-A1D7-EC18728B94C2@adobe.com>
In-Reply-To: <F146339D-077E-4387-A1D7-EC18728B94C2@adobe.com>
Content-Type: text/plain; charset="utf-8"; format="flowed"
Content-Transfer-Encoding: 8bit
Archived-At: <http://mailarchive.ietf.org/arch/msg/ietf/Sn1LEzgb6Uhoy0CwV4UHrRkBba8>
X-BeenThere: ietf@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: IETF-Discussion <ietf.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/ietf>, <mailto:ietf-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/ietf/>
List-Post: <mailto:ietf@ietf.org>
List-Help: <mailto:ietf-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/ietf>, <mailto:ietf-request@ietf.org?subject=subscribe>
X-List-Received-Date: Sat, 28 Mar 2015 14:20:25 -0000

On 03/27/2015 11:54 AM, Larry Masinter wrote:
> I think this discussion is missing the original requirements
> that led to “urn:”  https://tools.ietf.org/html/rfc1737
> “Functional Requirements for Uniform Resource Names”.
>
>
>
>
>> That conversation predates the mistake of introducing the false
>> distinction between URLs and URNs.
> The distinction between URLs and URNs is not merely that
> one is a “location” and the other is a “name” in some
> abstract sense.
>
> I think the practical distinction between “urn:<nsid>:<blah>”
> and “<nsid>:<blah>” is that the “urn:” form provides some
> useful information in the cases where <nsid> identifies
> an externally, non-algorithmic organization that maintains
> the authority of deciding when two expressions are “the same”
> (see paragraph 2 of section 5 of RFC 1737).
[...]
> So while I agree that in many cases, the initial four
> characters “urn:” are unnecessary, at least in some
> situations, the prefix is useful in pointing out that no
> resolution service that ultimately doesn’t consult
> the identified naming authority for dispute resolution
> can be authoritative.

Indeed, advertising the urn: prefix does expose valuable information 
about the identifier to both human and machine readers of those identifiers.

There's another difference that was at least intended and is still 
feasible.   With the browsers available as of the time that URNs were 
designed, there was no extension mechanism that would permit handlers 
for new URI types to be added to a browser without changing the browser 
source code.  We knew that there would be a variety of URN namespaces 
and didn't want to burden browser vendors/authors with having to 
explicitly support each of them in order for all of those URN namespaces 
to be resolvable.   By having a common syntax for all URNs and at least 
one means by which browsers could discover resolvers for each of those 
URN types, we hoped that we could lower the burden for browser 
vendors/authors to support URNs.

These days, I gather that there are ways that browsers can be extended 
to support new URI types without having to modify the browser source 
code.   But it's still easier to install one plugin than N plugins, one 
for each URN namespace that has a resolver.

(Note that one (perhaps subtle) requirement that results from the 
intention that URNs be usable for the very long term is that you don't 
want to inherently tie URN resolution (either in general or for URNs of 
any namespace) to any particular protocol, since some protocols will 
likely need to evolve over time, and others may simply fall out of 
favor.   Indeed, we've seen both of these happen.   So a URN 
architecture that assumes that resolution protocols aren't static makes 
good sense.)

Keith