XRL is similar to XInclude - in that it will evaluate a template, locate inclusion statements and substitute these into the XML document tree. It differs from XInclude in that it is recursive and substitutions are recursively evaluated. In addition it supports the NetKernel declarative request syntax for specifying resource requests for inclusions.
XRL is very powerful as an XHTML composition tool for Web applications. It is equally valuable as a general XML templating language for example in the construction of Plain Old XML REST services.
Being recursive and consisting of requests into the NetKernel ROC space, each substitution is actually a cacheable resource. Therefore XRL is very high-performance in dynamic applications since only the parts a recursion tree that are not already cached will require computation.
XRL supports a number of processing declaration including xpath evaluation, attribute parsing and substution.