Jump to content

URI scheme: Difference between revisions

From Wikipedia, the free encyclopedia
Content deleted Content added
Odarcan (talk | contribs)
Line 12: Line 12:
<code><nowiki><scheme name> : <hierarchical part> [ ? <query> ] [ # <fragment> ]</nowiki></code>
<code><nowiki><scheme name> : <hierarchical part> [ ? <query> ] [ # <fragment> ]</nowiki></code>


The '''scheme name''' consists of a letter followed by any combination of letters, digits, and the plus ("+"), period ("."), or hyphen ("-") characters. It is followed by a colon (":").
The '''scheme name''' consist of a sequence of characters beginning with a letter and followed by any combination of letters, digits, plus ("+"), period ("."), or hyphen ("-"). Although schemes are case-insensitive, the canonical form is lowercase and documents that specify schemes must do so with lowercase letters. It is followed by a colon (":").


The '''hierarchical part''' of the URI is intended to hold identification information hierarchical in nature. Usually this part begins with a double forward slash ("//"), followed by an ''authority'' part and an optional ''path''.
The '''hierarchical part''' of the URI is intended to hold identification information hierarchical in nature. Usually this part begins with a double forward slash ("//"), followed by an ''authority'' part and an optional ''path''.

Revision as of 05:41, 15 June 2011

In the field of computer networking, a URI scheme is the top level of the Uniform Resource Identifier (URI) naming structure. All URIs and absolute URI references are formed with a scheme name, followed by a colon character (":"), and the remainder of the URI called (in the outdated RFCs 1738 and 2396, but not the current STD 66/RFC 3986) the scheme-specific part. The syntax and semantics of the scheme-specific part are left largely to the specifications governing individual schemes, subject to certain constraints such as reserved characters and how to "escape" them.

URI schemes are frequently erroneously referred to as "protocols", or specifically as URI protocols or URL protocols, since most were originally designed to be used with a particular protocol, and often have the same name. The http scheme, for instance, is generally used for interacting with Web resources using HyperText Transfer Protocol. Today, URIs with that scheme are also used for other purposes, such as RDF resource identifiers and XML namespaces, that are not related to the protocol. Furthermore, some URI schemes are not associated with any specific protocol (e.g. "file") and many others do not use the name of a protocol as their prefix (e.g. "news").

URI schemes should be registered with IANA, although non-registered schemes are used in practice. RFC 4395 describes the procedures for registering new URI schemes.

Generic syntax

Internet standard STD 66 (also RFC 3986) defines the generic syntax to be used in all URI schemes. Every URI is defined as consisting of four parts, as follows:

<scheme name> : <hierarchical part> [ ? <query> ] [ # <fragment> ]

The scheme name consist of a sequence of characters beginning with a letter and followed by any combination of letters, digits, plus ("+"), period ("."), or hyphen ("-"). Although schemes are case-insensitive, the canonical form is lowercase and documents that specify schemes must do so with lowercase letters. It is followed by a colon (":").

The hierarchical part of the URI is intended to hold identification information hierarchical in nature. Usually this part begins with a double forward slash ("//"), followed by an authority part and an optional path.

  • The authority part holds an optional user information part terminated with "@" (e.g. username:password@), a hostname (i.e. domain name or IP address), and an optional port number preceded by a colon ":".
  • The path part is a sequence of segments (conceptually similar to directories, though not necessarily representing them) separated by a forward slash ("/"). Each segment can contain parameters separated from it using a semicolon (";"), though this is rarely used in practice.

The query is an optional part separated with a question mark, which contains additional identification information which is not hierarchical in nature. The query string syntax is not generically defined, but is commonly organized as a sequence of <key>=<value> pairs separated by a semicolon[1][2][3] or separated by an ampersand, for example:

Semicolon: key1=value1;key2=value2;key3=value3
Ampersand: key1=value1&key2=value2&key3=value3

The fragment is an optional part separated from the front parts by a hash ("#"). It holds additional identifying information that provides direction to a secondary resource, e.g. a section heading in an article identified by the remainder of the URI. When the primary resource is an HTML document, the fragment is often an id attribute of a specific element and web browsers will make sure this element is visible.

Examples

The following are two example URIs and their component parts (taken loosely from RFC 3986 — STD 66):

  foo://username:password@example.com:8042/over/there/index.dtb?type=animal&name=narwhal#nose
  \_/   \_______________/ \_________/ \__/            \___/ \_/ \______________________/ \__/
   |           |               |       |                |    |            |                |
   |       userinfo         hostname  port              |    |          query          fragment
   |    \________________________________/\_____________|____|/
scheme                  |                          |    |    |
   |                authority                    path   |    |
   |                                                    |    |
   |            path                       interpretable as filename
   |   ___________|____________                              |
  / \ /                        \                             |
  urn:example:animal:ferret:nose               interpretable as extension

Official IANA-registered schemes

The official URI schemes registered with the IANA are as follows (note that "IETF Draft" in no way is a finalized specification and must not be treated so; refer to Section 2.2 of RFC 2026 for more details):

Scheme Purpose Defined by General format Notes
aaa Diameter Protocol RFC 3588 aaa://<host>[:<port>][;transport=<transport>][;protocol=<protocol>]

example:
aaa://host.example.com:1813;transport=udp;protocol=radius

aaas Secure equivalent of aaa RFC 3588 aaas://<host>[:<port>][;transport=<transport>][;protocol=<protocol>]
acap Application Configuration Access Protocol RFC 2244 acap://[<user>[;AUTH=<type>]@]<host>[:<port>]/<entry> URL scheme used within the ACAP protocol for the "subdataset" attribute, referrals and inheritance
cap Calendar access protocol RFC 4324 generic syntax URL scheme used to designate both calendar stores and calendars accessible using the CAP protocol
cid Referencing individual parts of an SMTP/MIME message RFC 2111
RFC 2392
cid:<content-id> e.g. referencing an attached image within a formatted e-mail. (See also mid:)
crid TV-Anytime Content Reference Identifier RFC 4078 crid://<host>/<data> Allow references to scheduled publications of broadcast media content.
data Inclusion of small data items inline RFC 2397 data:<mediatype>[;base64],<data>
dav HTTP Extensions for Distributed Authoring (WebDAV) RFC 2518
RFC 4918
dav: Used for internal identifiers only; WebDAV itself addresses resources using the http: and https: schemes. [1]
dict Dictionary service protocol RFC 2229 dict://<user>;<auth>@<host>:<port>/d:<word>:<database>:<n>

dict://<user>;<auth>@<host>:<port>/m:<word>:<database>:<strat>:<n>

refer to definitions or word lists available using the DICT protocol
dns Domain Name System RFC 4501 dns:[//<host>[:<port>]/]<dnsname>[?<dnsquery>]

examples:
dns:example?TYPE=A;CLASS=IN
dns://192.168.1.1/ftp.example.org?type=A

designates a DNS resource record set, referenced by domain name, class, type, and, optionally, the authority
fax Used for telefacsimile numbers RFC 2806 fax:<phonenumber> Seems to be deprecated in RFC 3966 in favour of tel:
file Addressing files on local or network file systems RFC 1738
RFC 3986
file://[host]/path or

(RFC 3986) file:[//host]/path

Since this usually used for local files the host from RFC 1738 is often empty leading to a starting triple /. RFC 3986 allows an absolute path with no host part.
ftp FTP resources RFC 1738
IETF Draft
Old IETF Draft
generic syntax
geo A Uniform Resource Identifier for Geographic Locations RFC 5870 geo:<lat>,<lon>[,<alt>][;u=<uncertainty>]
(for WGS-84)
Other coordinate reference systems (including those for non-terrestrial globes, such as The Moon and Mars) will be supported, once registered.
go Common Name Resolution Protocol RFC 3368 go://[<host>]?[<common-name>]*[;<attribute>=[<type>,]<value>] or
go:<common-name>*[;<attribute>=[<type>,]<value>]
gopher Used with Gopher protocol RFC 4266 gopher://<host>:<port>/<item type>/<path>
h323 Used with H.323 multimedia communications RFC 3508 h323:[<user>@]<host>[:<port>][;<parameters>]
http HTTP resources RFC 1738
RFC 2616
(makes
RFC 2068
obsolete)
generic syntax
https HTTP connections secured using SSL/TLS RFC 2817 generic syntax
iax Inter-Asterisk eXchange protocol version 2 RFC 5456 iax:[<username>@]<host>[:<port>][/<number>[?<context>]]

examples:
iax:[2001:db8::1]:4569/alice?friends
iax:johnQ@example.com/12022561414

icap Internet Content Adaptation Protocol RFC 3507
im Instant messaging protocol RFC 3860 im:<username>@<host> Works as xmpp: URI for single user chat sessions.
imap Accessing e-mail resources through IMAP RFC 2192
RFC 5092
imap://[<user>[;AUTH=<type>]@]<host>[:<port>]/<command>
info Information Assets with Identifiers in Public Namespaces RFC 4452
ipp Internet Printing Protocol RFC 3510
iris
iris.beep
iris.xpc
iris.xpcs
iris.lws
Internet Registry Information Service RFC 3981 RFC 3983 RFC 4992 RFC 4992 RFC 4993
ldap LDAP directory request RFC 2255
RFC 4516
ldap://[<host>[:<port>]][/<dn> [?[<attributes>][?[<scope>][?[<filter>][?<extensions>]]]]]

example:
ldap://ldap1.example.net:6666/o=University%20of%20Michigan, c=US??sub?(cn=Babs%20Jensen)

lsid[dubiousdiscuss] Life Science Identifier dtc/04-10-08 URN:LSID:<Authority>:<Namespace>:<ObjectID>[:<Version>]

example:
urn:lsid:ubio.org:namebank:11815

mailto SMTP e-mail addresses and default content RFC 1738
RFC 2368
IETF Draft
mailto:<address>[?<header1>=<value1>[&<header2>=<value2>]]

example:
mailto:jsmith@example.com?subject=A%20Test&body=My%20idea%20is%3A%20%0A

Headers are optional, but often include subject=; body= can be used to pre-fill the body of the message.
mid Referencing SMTP/MIME messages, or parts of messages. RFC 2111
RFC 2392
mid:<message-id>[/<content-id>] (See also cid:)
modem modem RFC 2806 Seems to be deprecated in RFC 3966 in favour of tel:
msrp
msrps
Message Session Relay Protocol RFC 4975
mtqp Message Tracking Query Protocol RFC 3887
mupdate Mailbox Update Protocol RFC 3656
news (Usenet) newsgroups and postings RFC 1738
RFC 5538
news:<newsgroupname> or
news:<message-id>
References a particular resource, regardless of location.
nfs Network File System resources RFC 2224 generic syntax
nntp Usenet NNTP RFC 1738
RFC 5538
nntp://<host>:<port>/<newsgroup-name>/<article-number> Referencing a specific host is often less useful than referencing the resource generically, as NNTP servers are not always publicly accessible
opaquelocktoken opaquelocktoken RFC 2518
RFC 4918
pop Accessing mailbox through POP3 RFC 2384 pop://[<user>[;AUTH=<auth>]@]<host>[:<port>]
pres Used in Common Profile for Presence (CPP) to identify presence RFC 3859 pres:<address>[?<header1>=<value1>[&<header2>=<value2>]] Similar to "mailto:"
prospero Prospero Directory Service RFC 1738
RFC 4157
Listed as "Historical" by IANA.
rsync rsync RFC 5781 rsync://<host>[:<port>]/<path>
rtsp Real Time Streaming Protocol RFC 2326
service RFC 2609
shttp Secure HTTP RFC 2660 Largely superseded by HTTPS.
sieve ManageSieve protocol RFC 5804
sip Used with Session Initiation Protocol (SIP) RFC 2543
RFC 3969
RFC 3261
sip:<user>[:<password>]@<host>[:<port>][;<uri-parameters>][?<headers>]

examples:
sip:alice@atlanta.com?subject=project%20x&priority=urgent
sip:+1-212-555-1212:1234@gateway.com;user=phone

sips Secure equivalent of sip RFC 3969
RFC 3261
sips:<user>[:<password>]@<host>[:<port>][;<uri-parameters>][?<headers>]
sms Interact with SMS capable devices for composing and sending messages. RFC 5724 sms:<phone number>?<action>

examples:
sms:+15105550101?body=hello%20there
sms:+15105550101,+15105550102?body=hello%20there

Should be used as a subset to the tel: schema. [citation needed]
snmp Simple Network Management Protocol RFC 4088 snmp://[user@]host[:port][/[<context>[;<contextEngineID>]][/<oid>]]

examples:
snmp://example.com//1.3.6.1.2.1.1.3+
snmp://tester5@example.com:8161/bridge1;800002b804616263

soap.beep
soap.beeps
RFC 3288
RFC 4227
tag Tag URI RFC 4151 tag:<email/domainname>,<date>:<Item> Represented entities do not necessarily have to be accessible electronically.
tel Used for telephone numbers RFC 5341
RFC 3966
RFC 2806
tel:<phonenumber>
telnet Used with telnet RFC 1738
RFC 4248
telnet://<user>:<password>@<host>[:<port>/]
tftp Trivial File Transfer Protocol RFC 3617
thismessage multipart/related relative reference resolution RFC 2557
tip Transaction Internet Protocol RFC 2371
tv TV Broadcasts RFC 2838
urn Uniform Resource Names RFC 2141 urn:<namespace>:<specificpart>
vemmi Versatile Multimedia Interface RFC 2122
wais Used with Wide area information server (WAIS) RFC 1738
RFC 4156
wais://<host>:<port>/<database>[?<search>] or wais://<host>:<port>/<database>/<wtype>/<wpath> Listed as "Historical" by IANA.
xmlrpc.beep
xmlrpc.beeps
RFC 3529
xmpp XMPP RFC 4622
RFC 5122
xmpp:<user>@<host>[:<port>]/[<resource>][?<query>]
z39.50r Z39.50 retrieval RFC 2056 z39.50r://<host>[:<port>]/<database>?<docid>[;esn=<elementset>][;rs=<recordsyntax>]
z39.50s Z39.50 session RFC 2056 z39.50s://<host>[:<port>]/[<database>][?<docid>][;esn=<elementset>][;rs=<recordsyntax>]

Unofficial but common URI schemes

Scheme Purpose Defined by General format Notes
about Displaying product information and internal information IETF Draft See about URI scheme for more details. Widely used by web browsers, sometimes even providing interactive resources. The Opera web browser uses opera: instead.
adiumxtra Direct installation of Adium Xtras (plugins). The Adium Team adiumxtra://www.adiumxtras.com/download/0000 0000 refers to a specific Xtra
aim Controlling AOL Instant Messenger. AOL aim:<function>?<parameters> Functions include goim, addbuddy, and buddyicon.
apt Experimental method of installing software using APT. apt:<package name> Commonly found on websites which contain Debian software repositories.
afp Accessing Apple Filing Protocol shares IETF Draft over TCP/IP: afp://[<user>@]<host>[:<port>][/[<path>]]

over AppleTalk: afp:/at/[<user>@]<host>[:<zone>][/]

aw Link to an Active Worlds world Activeworlds Inc. aw://<worldserver host>:<worldserver port>/<worldname> Mostly found in HTTP referers when users open a website from within a Active Worlds world.
bitcoin Send money to a Bitcoin address Bitcoin URI Scheme bitcoin:<address>[?[amount=<size>][&][label=<label>][&][message=<message>]]
bolo Join an existing bolo game. bolo://<hostname>/ Mostly passed via IRC or via tracker servers.
callto Launching Skype call (+And in Hungary the KLIP Software call too) (unofficial; see also skype:) Skype callto:<screenname> or
callto:<phonenumber> [2]
Introduced with Microsoft NetMeeting. Works with current version of Skype with Firefox, Internet Explorer and Safari
chrome Specifies user interfaces built using XUL in Mozilla-based browsers. Mozilla chrome://<package>/<section>/<path> (Where <section> is either "content", "skin" or "locale") Works only in Mozilla-based browsers such as Firefox, SeaMonkey and Netscape. Not related to the Google Chrome browser.
coap Accessing Constrained Application Protocol (CoAP) resources. IETF Draft coap://<host>[:<port>]/<path>[?<query>] Identify CoAP resources and provide a means of locating the resource.
content Accessing an Android content provider. Open Handset Alliance content://provider/<path> Performs a query on an Android Content Provider
cvs Provides a link to a Concurrent Versions System (CVS) Repository Concurrent Versions System cvs://<method:logindetails>@<repository>/<modulepath>;[date=date to retrieve | tag=tag to retrieve]
doi Digital object identifier, a digital identifier for any object of intellectual property. IETF Draft doi:10.<publisher number>/<suffix>
Example: doi:10.1000/182
Used e.g. for most scientific publications.
Can be resolved via HTTP (transormed into an URL) by appending http://dx.doi.org/ or http://hdl.handle.net/ in front.
ed2k Resources available using the eDonkey2000 network eDonkey2000 ed2k://|file|<filename>|<size of file>|<hash of file>|/ or
ed2k://|server|<host>|<port>|/
Links to servers are also possible, as are additional parameters. Official documentation from Template:Wayback
Facetime FaceTime is a video conferencing software developed by Apple for iPhone 4, the fourth generation iPod Touch, and computers running Mac OS X. Apple Inc. facetime://<address>|<MSISDN>|<mobile number>

example:
facetime://+19995551234

Apple has not published documentation on this protocol yet.
feed web feed subscription feed:<absolute_uri> or
feed://<hierarchical part>

examples:
feed://example.com/rss.xml
feed:https://example.com/rss.xml

See Feed URI scheme for a detailed overview of common implementations, supported software, and critics.
finger Querying user information using the Finger protocol IETF Draft finger://host[:port][/<request>]
fish Accessing another computer's files using the SSH protocol fish KDE kioslave fish://[<username>[:<password>]@]<hostname>[:<port>] See Files transferred over shell protocol for details about the protocol.
git Provides a link to a GIT repository Git Github example: git://github.com/user/project-name.git
gg Starting chat with Gadu-Gadu user Gadu-Gadu gg:<userid>
gizmoproject Gizmo5 calling link. gizmoproject://call?id=<gizmo_id> May use sip:// instead of gizmoproject:// in recent versions of Gizmo5.
gtalk Start a chat with a Google Talk user Google Talk gtalk:chat?jid=example@gmail.com See Google Talk, XMPP, and http://juberti.blogspot.com/2006/11/gtalk-uri.html for more information
irc Connecting to an Internet Relay Chat server to join a channel. IETF Draft
Old IETF Draft
irc://<host>[:<port>]/[<channel>[?<password>]] Assuming the client knows a server associated with the name, "host" may optionally be an IRC network name.
ircs Secure equivalent of irc IETF Draft ircs://<host>[:<port>]/[<channel>[?<password>]] See irc
irc6 IPv6 equivalent of irc irc6://<host>[:<port>]/[<channel>[?<password>]] See irc
itms Used for connecting to the iTunes Music Store Apple Inc itms:
jar Compressed archive member Java API jar:<url>!/[<entry>] Works for any ZIP based file.
javascript Execute JavaScript code IETF Draft javascript:<javascript to execute> Works in any modern browser.
keyparc Keyparc encrypt/decrypt resource. Bloombase keyparc://encrypt/<username>/<uri> or

keyparc://decrypt/<username>/<uri>

lastfm Connecting to a radio stream from Last.fm. Last.fm lastfm://<radio_stream> or lastfm://globaltags/<genre> or
lastfm://user/<username>/<stuff>
ldaps Secure equivalent of ldap Old version of IETF Draft ldaps://[<host>[:<port>]][/<dn> [?[<attributes>][?[<scope>][?[<filter>][?<extensions>]]]]] Not an IETF standard, but commonly used in applications.
magnet "magnet links" Magnet-URI Project magnet:?xt=urn:sha1:<hash of file>&dn=<display name>
(other parameters are also possible)
Used by various peer-to-peer clients, usually providing the hash of a file to be located on the network.
maps "map links" maps:q=<physical location> Some mobile web browsers will launch a dedicated mapping application. See also "geo:" (RFC 5870)
mms Windows streaming media mms://<host>:<port>/<path> Used by Windows Media Player to stream audio and/or video.
msnim Adding a contact, or starting a conversation in Windows Live Messenger Windows Live Messenger Add a contact to the buddy list

msnim:add?contact=nada@example.com
Start a conversation with a contact
msnim:chat?contact=nada@example.com
Start a voice conversation with a contact
msnim:voice?contact=nada@example.com
Start a video conversation with a contact
msnim:video?contact=nada@example.com

Can be invoked from a web page or via a run command or an Internet Explorer browser URL (won't work with Firefox 2.0.0.8). For web pages use this HTML: <a href="chat?contact=nada@example.com">Click to chat!</a>
mumble Joining a server. Mumble (software) mumble://[username[:password]@]<address>[:port]/[channelpath]?version=<serverversion>[&title=<servername>][&url=<serverurl>] Official documentation from Mumble website
mvn Access Apache Maven repository artifacts OPS4J mvn:org.ops4j.pax.web.bundles/service/0.2.0-SNAPSHOT
mvn:http://user:password@repository.ops4j.org/maven2!org.ops4j.pax.web.bundles/service/0.2.0
notes Open a Lotus Notes document or database Lotus Notes notes://<address> Used by IBM Lotus Notes to refer to documents and databases stored within the Lotus Notes system. When clicked in a browser on a computer with Lotus Notes client installed, Notes will open the document link as if a Notes DocLink were clicked within Notes.
palm Used to designate system services in HP webOS applications HP webOS palm:<servicename>[/<method>]]/ Official documentation from HP webOS Services Overview
paparazzi Used to launch and automatically take a screen shot using the application "Paparazzi!" (Mac only) Derailer paparazzi:[<options>]http:[//<host>[:[<port>][<transport>]]/ Official documentation from the Paparazzi! website
psyc Used to identify or locate a person, group, place or a service and specify its ability to communicate PSYC psyc:[//<host>[:[<port>][<transport>]]/[<object-name>][#<channel-name>] -
rmi Look up a Java object in an RMI registry. Sun rmi://<host>[:<port>]/<object-name> URI scheme understood by JNDI. Can be used to lookup a remote Java object within an RMI registry (typically for the purposes of RMI on that object). Host/port in the URI are of the rmiregistry process, not the remote object.
rtmp Real Time Messaging Protocol Adobe Systems rtmp://<host>/<application>/<media> URI schema used to connect to Adobe Flash Media Server.
secondlife Open the Map floater in Second Life application to teleport the resident to the location. Linden Lab secondlife://<region name>/<x position>/<y position>/<z position> Used by SLurl.com. Knowledge base article.
sgn Social Graph Node Mapper Google example:

sgn://social-network.example.com/?ident=bob

Official documentation from sgnodemapper project.
skype Launching Skype call (unofficial; see also callto:) Skype skype:<username|phonenumber>[?[add|call|chat|sendfile|userinfo]] Official documentation from Skype website.
spotify Load a track, album, artist, search, or playlist in Spotify Spotify spotify:<artist|album|track>:<id> or
spotify:search:<text> or
spotify:user:<username>:playlist:<id>

example:
spotify:track:2jCnn1QPQ3E8ExtLe6INsx

Informally specified in Spotify official blog post by CTO Andreas Ehn.
ssh SSH connections (like telnet:) and IETF Draft ssh://[<user>[;fingerprint=<host-key fingerprint>]@]<host>[:<port>]
sftp SFTP file transfers (not be to confused with FTPS (FTP/SSL)) IETF Draft sftp://[<user>[;fingerprint=<host-key fingerprint>]@]<host>[:<port>]/<path>/<file>
smb Accessing SMB/CIFS shares IETF Draft smb://[<user>@]<host>[:<port>][/[<path>]][?<param1>=<value1>[;<param2>=<value2>]] or
smb://[<user>@]<workgroup>[:<port>][/]
soldat Joining servers Soldat soldat://<host>:<port>/[password]

example:
soldat://127.0.0.1:23073/thatssecret!

Official note in Manual
steam Interact with Steam: install apps, purchase games, run games, etc. Steam, Valve Corporation steam:<command line arguments> or
steam://<action>/<id, addon, IP, hostname, etc.>
Official documentation from Valve Developer Community website
svn Provides a link to a Subversion (SVN) source control repository Subversion (software) svn[+ssh]://<logindetails>@<repository><:port>/<modulepath>
teamspeak Joining a server. TeamSpeak teamspeak://<server>[:<port>]/[?<parameter1>=<value1>[&<parameter2>=<value2>]] Official documentation from TeamSpeak Website
things Send a to-do to Things. Cultured Code things:add?title=Buy%20milk&notes=Low%20fat&dueDate=2011-12-24 This URI scheme works on Mac OS & iOS, providing Things by Cultured Code is installed.
unreal Joining servers Unreal unreal://<server>[:<port>]/ Unreal legacy "protocol"
ut2004 Joining servers Unreal Tournament 2004 ut2004://<server>[:<port>][/<map>?<options>] Documentation from Unreal Developer Network
ventrilo Joining a server. Ventrilo ventrilo://<server>[:<port>]/[?<parameter1>=<value1>[&<parameter2>=<value2>]] Official documentation from Ventrilo Website
view-source Shows a web page as code 'in the raw'. IETF Draft view-source:<URI>

example:
view-source:http://en.wikipedia.org/wiki/URI_scheme

See view-source URI scheme for details.
webcal Subscribing to calendars in iCalendar format iCalendar webcal://<hierarchical part>

example:
webcal://example.com/calendar.ics

HTTP as a transport protocol is assumed.
See Webcal for details.
ws
wss
WebSocket protocol IETF Draft ws:<hierarchical part>
wtai Wireless Telephony Application Interface WAP Forum wtai://wp/mc/+18165551212 See Application Protocol Wireless Application Environment Specification Version 1.1 for details.
wyciwyg What You Cache Is What You Get WYCIWYG Mozilla wyciwyg://<URI> See WYCIWYG for details.
xfire Adding friends and servers, joining servers, changing status text. Xfire xfire:<function>[?<parameter1>=<value1>[&<parameter2>=<value2>]] Official documentation from Xfire website
xri eXtensible Resource Identifier (XRI) OASIS XRI Technical Committee xri://<authority>[/[<path>]][?<query>][#fragment] Official documentation from OASIS XRI Technical Committee
ymsgr Sending an instant message to a Yahoo! Contact. Yahoo! Messenger ymsgr:sendIM?<screenname>

References

  1. ^ RFC 1866 section 8.2.1 : by Tim Berners-Lee in 1995 encourages CGI authors to support ';' in addition to '&'.
  2. ^ HTML 4.01 Specification: Implementation, and Design Notes: "CGI implementors support the use of ";" in place of "&" to save authors the trouble of escaping "&" characters in this manner."
  3. ^ Hypertext Markup Language - 2.0 "CGI implementors are encouraged to support the use of ';' in place of '&' "