Hello,

(after having written all the below, I see it is touched already by 
https://tools.ietf.org/html/draft-blanchet-regext-rdap-deployfindings-05#section-2.2
 for most points, so there is some overlap but still sending my views below, 
because that draft hints at just changing things in the current IANA registry, 
where I think some RFC changes are needed too)
(so CCing the designated experts for the IANA registry, and Marc as author of 
the above draft)

IANA registry at
https://www.iana.org/assignments/rdap-extensions/rdap-extensions.xhtml#rdap-extensions-1
lists extensions names.

The examples in RFC7483 with lunarNic makes me think that
* the prefix is lunarNic
* which is what should be registered at IANA
* the conformance list has lunarNic_level_0
* fields have lunarNic as prefix.

So "_level_0" is a kind of suffix, under control of the relevant party (of the 
namespace
being registered), but is it free-form or should it be always _level_XXXX?
Once "foobar" is registered at IANA, what is its owner allowed to do?
Can it uses any of the following in rdapConformance:
- foobar
- foobar_0
- foobar0
- foobar_level_0
- foobar_buzz
- foobar_level_0_sublevel_42
?

RFC7483 §4.1 goes over this without explaining it.

So some observations/questions:

1) _level_0 is not the only case.
"fred" as registered, appears in rdapConformance as "fred_version_0"

So this would make me think the _level_0 syntax is not mandatory

2) some extensions do not appear used with any suffix:
"arin_originas0" and "cidr0" as registered as such and appear as such in 
rdapConformance.

However, the final 0 seems like a "version" indicator, so why "cidr0" vs 
"cidr_level_0"?
If so, should the registration be instead for "arin_originas" and "cidr" so 
that the relevant owners can "upgrade" to a later version without a new IANA 
registration?
But if so, this creates a collision. Shouldn't the RFC mention that when you 
register X you own X_anything, not Xanything, that is make at least a _ 
character mandatory after the prefix
if what is used in the rdapConformance is not exactly the prefix?

3) kind of same case for:
icann_rdap_response_profile_0
icann_rdap_technical_implementation_guide_0

they are used as is in rdapConformation, but shouldn't the IANA registration 
really be for the prefix, without consideration of the "version"? And they do 
not use either _level_0, _version_0, or 0 like other extensions, but now _0.

Even their own specification says:
At the time of publication,"icann_rdap_technical_implementation_guide" is 
pending registration in the IANA RDAP Extensions Registry

So what was registered at IANA is not what the specification says, there is a 
"_0" difference.

Again, it seems the _level_0 part is completely optional, is that the intent?


4) RFC 7480 says about extension prefixes: "and they
   SHOULD NOT begin with an underscore character, numerical digit, or
   the characters "xml"." 

I would suggest this is amended at some point in the future to reserve 
everything starting with "rdap_" to only be used by extensions defined in RFCs, 
like RFC8521 does.
(I am not sure what is the gain by refusing "xml" as prefix, even if I do not 
see it as a useful prefix either. RDAP is far more JSON than XML stuff so if we 
had to restrict something "json" would have made more sense than "xml" to me, 
even if neither makes sense to me in some way here; explanations in RFC7480 §6 
do not really convince me there)


What do I miss for the above discussion on prefix/suffix/version?
Are there other documents explaining in more details this prefix/version schema 
and its rules?

I am not asking all the above for the beauty(?) of it, things like that have 
strong interoperability consequences and needs to be taken into account to 
properly design a client connecting to various servers, which I sadly discover 
only now as working in RDAP-land.


PS: unrelated additional petpeeve, for here or anywhere else, any link taken to 
a "reference" but which points to a git repository, without enforcing in the 
URL a specific commit, is not really a reference. It points to the latest 
"master" version of that file, which can change over time, as a branch tip is 
not a stable reference. Links to repositories should be refused if they do not 
include a stable reference, which means a commit ID (a tag can also move, so it 
is not good enough)

Of course for any other link, the content can also change at any time.
Wikipedia solves that by adding to each link something like "retrieved on 
XXXX-XX-XX" so that you have at least a timestamp. IANA registration could at 
least include a timestamp (when the extension was registered)

PS2: seeing that all of the above come from the fact that we are basically 
trying to reinvent XML namespaces but in JSON... and arriving at the situation 
where we get all the drawbacks without any strong advantage, at least not until 
things are clearer/stricter.

-- 
  Patrick Mevzek
  p...@dotandco.com

_______________________________________________
regext mailing list
regext@ietf.org
https://www.ietf.org/mailman/listinfo/regext

Reply via email to