WARNING: This server provides a static reference view of the NetKernel documentation. Links to dynamic content do not work. For the best experience we recommend you install NetKernel and view the documentation in the live system .


The XML Recursion Language, XRL, is an XML resource model composition and processing language. XRL is designed to generate dynamic XML based content such as (X)HTML web pages, but it can equally be used as a transformation in XML processing pipelines.

XRL is interpreted by the XRL runtime engine which is requested as active:xrl2. When requested, the required argument template provides the identifier for a well formed XML document that includes XRL language processing tags.

2009-05-02 10:29ZCanvas 1Layer 1{active:xrl2+template@*}(Template request)XRLRuntime

As the XRL runtime processes the XML template document, discovered XRL processing tags cause additional requests to be issued for content that is included in the resulting XML document.

2009-05-02 10:38ZCanvas 1Layer 1{active:xrl2+template@*}(Template request)XRLRuntime(XRL content request)(XRL content request)

If the retrieved content also includes XRL processing tags, these will cause additional requests to be issued. The XRL runtime will process all content recursively until all tags in all XML document parts are processed.

The XRL language is embedded in an XML document as normal XML elements that function as processing tags which must use the xrl: prefix namespace with the URI "http://netkernel.org/xrl". Typically the root element of the template is used to define the xrl: prefix name space, as shown here:

<div xmlns:xrl="http://netkernel.org/xrl">
  < !-- Omitted XML elements --> ...

The XRL processing tags are xrl:include, xrl:resolve and xrl:eval.