What is an Active URI?
An Active URI addresses a resource which is explicitly computed by the application of a function to a set of other resources.
An Active URI is a URI which contains multiple named inner URIs. It is 100% compatible with
the IETF [RFC2396,RFC1738] URI specification and so can be used everywhere a URI can be used. A compound URI
has the form
{scheme}:{type}+{arg}@{value}+{arg}@{value}+....
Where {scheme} is any valid URI scheme. {type} is an application specific
type declaration and may itself be an escaped URI. {arg} is an argument name. {value} is an escaped inner URI.
Active URIs can be used to nest URI's to arbitrary depth provided all inner URI's are correctly escaped. Therefore
a compound URI can hold another compound URI as an argument value.
Active URI Manipulation
In order to be valid a URI a compound URI must be carefully escaped. The layer1 module provides
a utility class org.ten60.netkernel.layer1.util.CompoundURIdentifier which can be used to add, remove
and query the parts of a compound URI and which performs all necessary escaping.
Using Active URIs to address Accessors
Active URIs are the primary addressing scheme for invoking Active accessors.
An accessor requests arguments can be be either by reference or by value.
It queries the compound URI for a set of named arguments to obtain the URI of an argument.
The convention for invoking an accessor is to use the active: scheme.