So the idea would be that if "nxt:notsoshifty" was entered into a browser, the browser extension would fetch the alias, look for the 'web' entry, and go to that URL (
http://www.notsoshifty.de/). A nxt client would look for the 'nxtacct' entry if it was in reference to making a payment; an email client would look for 'smtp', etc.
Ferment: if you think this is a good idea, perhaps you could modify the 22k.io site (and browser extensions?) to check for json and act accordingly? (It should also support the existing method of course). Also anybody who might be developing nxt clients using aliases as account numbers.
I've been thinking about this too. The cool thing is that Service Providers (like 22k) can define what they support in alias URI strings. So a couple ideas pop out:
1. Support for json arrays. Arrays in a json could solve the problem of list multiple options for URI. So, you could set an alias to be an array of hostnames to stash well known peers in an alias!
["node1.nxtbase.com","vps1.nxtcrypto.org","nxt1.tweetmondo.com"]
2. Support for json hashes. The approach would be like your contact alias example. However, what I would do is just do other aliases to keep things small.
{"web":"mywebalias","mail":"mymailalias","bitcointalk":"bctalias"}
3. Tagging aliases with semantics by using substrings. So say you wanted 22k.io to send you an email when your nxt account received funds, create an alias in your account starting with the "22knotify" in it like "22knotify2014yeehaw" with a "mailto" URI. (NOT IMPLEMENTED - yet!)
All of these would require a new URI scheme for each format so a parser could handle it.
Fun!