{parameter-value-URI}]* For example, the following URI calls a random number generator active:random and the following uses an XSLT service to transform an XML document with an XSLT stylesheet: active:xslt+operator@file:/style.xsl+operand@file:/document.xml Because the argument values may be URI addresses themselves, a tree-structured set of function calls can be encoded in a single URI. Transports Transports are a mechanism used to introduce requests from outside of NetKernel to the NetKernel address space. Transports are available for the HTTP protocol, JMS (Java Message Service), and CRON. Other transports can be easily added as they are independent from the rest of NetKernel. The role of the transport is to translate an external request based on one protocol into a NetKernel request with a URI and a specific verb (SOURCE, SINK, etc.) and then to send the returned representation back to the client via the supported protocol. Two mappings are handled by a transport. The first is between the address space of the externally supported protocol to the internal NetKernel address space. And the second is between the verb or action specified externally into a NetKernel verb. For example, in the case of the HTTP transport, the external address space is a sub-space of a URL. The following mapping illustrates this point. http://www.mywebsite.com/publications/... | v file:/src/publications/... In addition, the HTTP protocol supports methods such as GET, PUT, HEAD, etc. which are mapped to NetKernel verbs. Scripting languages A mechanism is needed to issue the URI requests, capture the returned representations, and communicate with clients. Scripting languages are executed by their runtime engine, which is itself a service. For example, the Groovy language runtime will run a program contained in the file file:/program.gy with the following: active:groovy+operator@file:/program.gy See also Representational State Transfer Web resource Jolie List of user interface markup languages References External links 1060 Research Cross-platform software Serverless computing Distributed computing