The confusion with email addresses, social, technical or otherwise,
is not the only problematic aspect of the @ GCS character.
XMPP addresses take the form of username@host/optional/path. The
username part (known as a JID or Jabber Identifier) has only a very
few disallowed characters, including whitespace and control chars
and : / " ' and of course @.
The = and @ GCS characters both denote a reassignable identifier for
an entity, as opposed to + and $ which identify terms.
@ and = also serve as configurable aliases for an XRD discovery
function $f(x), for example $dns(xri.net).
If we didn't have to deal with @, we could define a very simple and
expandable set of transformations for XRD discovery:
Given an abstract ID =drummond with $f(x) configured as $dns
(xri.net), here are some possible discovery transformations:
https https://xri.net/=drummond
http http://xri.net/=drummond
xmpp =
mailto = (I think there is an attractive case for an
XRI aware mailserver that can resolve the XRI and make service
selections based on the XRD and x-headers.)
Other as yet to be invented communication protocols could all be
accommodated with this simple and very abstract spec. We shouldn't
let the current kerfluffle with the W3C derail us into thinking that
http is the whole universe of possibility.
Since @ and = behave exactly the same way, and =ids --can-- be used
as community roots already, I've never really understood any strong
necessity for the overloading of the entity identifier to distinguish
individuals from collections of individuals, and the disregard of the
fact that there could be other kinds of entities besides those two.
So at the risk of making everyone's head explode, I'm proposing that
we deprecate the @ GCS character in XRI 3, and make = the single GCS
character that denotes a reassignable identifier for any kind of
entity. An entity would be defined as anything that can have an XRD.
=vg