Subject: [urn] draft-ietf-urnbis-rfc2141bis-urn-16: 'name' and 'namespace'

From: [email-masked] (Henry S. Thompson)
Date: Thu, 05 May 2016 12:48:27 +0100

The words 'namespace' and 'name' are used throughout the spec in ways
that for this reader at least appear to have different meanings at
different points, sometimes to the point of apparent contradiction.
Consider for example the following from section 2.2:

  "Depending on the rules governing a namespace, strings that are
   valid in an NSS associated with that namespace might contain
   characters that are not allowed by the "pchar" production
   referenced above (e.g., characters outside the ASCII range or,
   consistent with the restrictions in RFC 3986, the characters '/',
   '?', '#', '[', and ']').  While such a string might be a valid
   name, it is not a valid URN until it has been translated into a
   conformant NSS."

Stripping out a lot of detail, this says "[there are] strings that are
valid in an NSS [which render it not] a conformant NSS".

While some readers will be familiar with the sense of these words
which I think you are relying on, where e.g. 0-205-31342-6 is a name
in the ISBN namespace, others will not be.

I would strongly recommend that you adhere much more closely to, and
document, something close to the pattern of usage in the following,
from section 1:

  Some URN namespaces create names that exist only as URNs, whereas
  others create URNs out of names that already exist in other
  identifier systems

That is, always use
  'URN namespace' when you mean the thing assigned to an NID;
  'identifier systems' when you mean other (usually pre-existing)
     kinds of managed collections of names;
  'URN' when you mean a member of a URN namespace;
  'NSS' when you mean the URN-namespace-specific part of a URN;
  'name' _only_ when you mean a member of a non-URN identifier system.

And make these definitions explicit in 1.2, and make it explicit that
by 'URN namespace' you mean _only_ the set of URNs allowed by the
rules governing that URN namespace (extension) or those rules
themselves (intension), _not_ the corresponding names or management of
any related non-URN namespace.

It will be tedious, and occasionally lead to less concise statements,
to make a pass over the document to do this, but the improvement in
clarity will IMO be worth it.  Give me the write token for a week, and
I'll do it, if you like.

-- 
       Henry S. Thompson, School of Informatics, University of Edinburgh
      10 Crichton Street, Edinburgh EH8 9AB, SCOTLAND -- (44) 131 650-4440
                Fax: (44) 131 650-4587, e-mail: [email-masked]
                       URL: http://www.ltg.ed.ac.uk/~ht/
 [mail from me _always_ has a .sig like this -- mail without it is forged spam]