On 10/03/2011 17:48, Evangelos Chaniotakis wrote:
Jerry,
If I may distill your email to:
"Let's define an NSI-CS endpoint reference as this tuple: (globally unique domain identifier, locally scoped opaque identifier)."
I'm fine with that definition.
The actual implementation/representation/format of such a tuple should be left to the implementors of the protocol. It's just an ordered pair of strings, it does not deserve a big discussion about formats.
GLIF has indeed adopted a simple scheme using a "urn:ogf:network:<domain-name>:<local-part>" identifier. There are some procedures setup to define who creates these things, et cetera. You could argue that the urn:ogf:network part is superfluous, in the end you just need a string that is a globally unique identifier for the connection, or in this case the endpoints. My case for using URNs is that they make it immediately clear what kind of thing you are identifying. They signal to the reader what kind of format the rest of the identifier is going to be, and the reader is also pretty sure that the sender intended it to be like this too. Also, when using URNs you avoid all kinds of nasty confusing things like the allowed characters, encoding, syntax, comparison et cetera. Saying that strings are just simple strings is hopelessly naive in this day and age. Note that NSI does not have to limit itself to urn:ogf:network, this is a prefix that NML has requested in order to identify things. If the NSI wants, it can make the case to get another urn:ogf:<something> prefix. Jeroen.