Prospect for a tap uri (ie a uri to a constant):
tap://user:password@host:port/[root:]path
For example:
tap://localhost/dump
tap://localhost/tap:dump
tap://localhost/gems/tap-0.12.0:tasks/dump
Notice that this schema uses a semicolon to separate the two
path segments of hierarchical part. The host is necessary in
principle to identify a particular tap instance.
From the command line the host is always localhost and the path
is what gets entered to identify a task.
In a YAML file, at present the host is always localhost, but
there is no reason why it couldn't be something else. Maybe the
idea is that to specify something else you don't use a string
(which will implicitly be made localhost) and instead you feed it a
Root::Uri.
In the server, the hierarchical part is the entire first path
segment. Ex:
http://localhost/dump
http://localhost/gems%2Ftap-0.12.0%3Atasks%2Fdump
Subsequent segments are the action, args, etc.