Any::Renderer::XSLT renders a Perl data structure as an interstitial XML representation (via Any::Renderer::XML) and then proceeds to apply a XSLT transformation to it to generate the final output.

XSL Templates expressed as filenames are cached using a package-level in-memory cache with Cache::AgainstFile. This will stat the file to validate the cache before using the cached object, so if the template is updated, this will be immediately picked up by all processes holding a cached copy.

Set the XML root element name in the interstitial XML. You can also achieve this by setting the RootName or rootname options passed to XML::Simple in the XML options hash. This is a shortcut to make this renderer behave like some of the other renderer backends.