This module provides an Input Module interface to any XML document, by using
XPath expressions as attribute keys.
The XML can be obtained from any Cocoon Source (e.g.,
cocoon:/..., context://.., and regular URLs).
Sources can be held in memory for better performance and reloaded if
changed.
Caching and reloading can be turned on / off (default: caching on,
reloading off) through <reloadable>false</reloadable>
and <cacheable>false</cacheable>. The file
(source) to use is specified through <file
src="protocol:path/to/file.xml" reloadable="true"
cacheable="true"/> optionally overriding defaults for
caching and/or reloading.
In addition, xpath expressions are cached for higher performance.
Thus, if an expression has been evaluated for a file, the result
is cached and will be reused, the expression is not evaluated
a second time. This can be turned off using the cache-expressions
configuration option.
Static (cocoon.xconf) configuration.
Configuration is expected to be of the form:
<...>
<reloadable>true|false</reloadable>
<cacheable>true|false</cacheable>
<file src="src1" reloadable="true|false" cacheable="true|false"/>
<file src="src2" reloadable="true|false" cacheable="true|false"/>
...
</...>
Each <file/> element pre-loads an XML DOM for querying. Typically only one
<file> is specified, and its src is used as a default if not
overridden in the getContextObject(Configuration, Map)
Get the DOM object that JXPath will operate on when evaluating
attributes. This DOM is loaded from a Source, specified in the
modeConf, or (if modeConf is null) from the
configure(Configuration).
Parameters:
modeConf - The dynamic configuration for the current operation. May
be null, in which case static (cocoon.xconf) configuration
is used. Configuration is expected to have a <file> child node, and
be of the form:
<...>
<file src="..." reloadable="true|false"/>
</...>
objectModel - Object Model for the current module operation.