@xyz.com/abc
@abc.xyz.comI think inverting this is also a sweet spot. It lets you drop context if on a locally federated node:
@abc/xyz.com
@abc[/xyz.com]
@abc
The username first prioritizes the human, and the host instance lookup can be added with tooling [1].
We should weigh ergonomics, visual distinguishability, ease of parsing from plaintext (important), ease of typing, visual aesthetics, simplicity, and extensibility.
We should collect dozens of candidate formats and weigh them on these (and more) dimensions.
[1] (eg. autocomplete that doesn't change the previous buffer, unlike, for instance, Google Docs chips).
Consider,
http://username:password@www.example.com/path?query=1#hash
Reduced to the parts that would actually matter (because username and path are redundant for this use case, and no one seriously embeds passwords in URLs),
scheme://username@www.example.com
So it seems that the design challenge is baking the scheme into zero or one glyphs.
username@www.example.com
Hey, that looks like an email address! A URL is an extended email address, an email address is a URL with default values.
As elegant as that would be, confusion could arise.
Email and federated identities might be intersecting sets, but not are not guaranteed to be either subsets or supersets of one another.
The ambiguity of this seems problematic.
Twitter and Facebook represent the principal using their own alternative formats to assert ownership over the domain, not because they're good formats (@foo, fb.com/you). They've normalized the idea that the textual representation of the principal should be different between different services, but there's no fundamental reason it should be so.
@xyz.com/abc has the nice benefit that it is like https://xyz.com/abc with only the https:// part is changed.
But "Written by @joe@someinstance.com" reads much nicer than "Written by @someinstance.com/joe".