JobFile structure overview
XML prolog
The first line within a JobFile must be the XML prolog, which consists of an XML Declaration such as this:
<?xml version="1.0" encoding="UTF-16"?>
Comments or whitespace must not appear before the XML Prolog.
Text encoding
The value of the encoding attribute within the XML Prolog should correspond to the text encoding used in the JobFile, as follows:
JobFile text encoding |
Value of encoding attribute |
Byte order mark (in hex) |
Unicode* - UTF-16 Little Endian |
UTF-16 |
FF FE |
Unicode* - UTF-8 |
UTF-8 |
EF BB BF |
ANSI text |
windows-1252 |
(none) |
* If Unicode text encodings are used, the text editor or XML editor must save the corresponding Byte Order Mark at the beginning of the JobFile. Editors will hide this Byte Order Mark from view; however, it can be seen using a hex editor.
The Unicode text encodings are recommended, as they can store unusual characters sometimes found in file names and folder paths.
Root element
The opening tag of the first XML element in a JobFile – called the "root" element — appears just after the XML prolog. The closing element is the last element in the JobFile.
The root element's opening tag should also include optional attributes for the XML namespace and schema. For example, a Nuix Collector Suite JobFile for file collection begins as follows:
<?xml version="1.0" encoding="UTF-16"?>
<CliParameters
xmlns="-//nuix.com/2014/CollectorEngine"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="-//nuix.com/2014/CollectorEngine
./CollectorEngine.xsd">
These attribute values allow schema-aware XML editors and XML validation tools to reference the JobFile XML Schema. By referencing the XML Schema, these XML tools can make editing easier, and can "validate" the edited JobFile to ensure it conforms to the structure defined in the XML Schema. For details see topic Enabling XML Schema Validation, above.
All other JobFile settings are held within child elements between the opening and closing tags of the root element.
JobFile types
Nuix Collector JobFiles
JobFile types for Nuix Collector Suite begin with one of the following "root" elements:
Root element in JobFile |
JobFile type |
<CliParameters> |
File Collection, Extraction, Survey and Deletion jobs, as well as volatile information collection and RAM image collection jobs. Note: The <CollectionType> element further defines the particular kind of JobFile. |
<DiskImageParams> |
Disk Imaging jobs |
Below is a skeletal JobFile for a Nuix Collector Suite file collection job, showing the major elements:
<?xml version="1.0" encoding="UTF-16"?> <!-- XML Prolog -->
<CliParameters> <!-- 'root' element opening tag* -->
<Titan>..</Titan> <!-- general settings -->
<Input>..</Input> <!-- input settings -->
<SelectionSet>..</SelectionSet> <!-- file selection settings -->
<Target>..</Target> <!-- output settings -->
<Logs>..</Logs> <!-- log and report settings -->
</CliParameters> <!-- 'root' element closing tag -->
* Attributes for namespace and schema omitted here, for brevity.
Nuix Enterprise Collection Center JobFiles
Nuix Enterprise Collection Center (ECC) can process more types of jobs than Nuix Collector Suite. So in ECC, the JobFile structure is a little different. ECC JobFiles always begin with an opening <JobParameters> tag serving as the XML "root" element. This opening <JobParameters> tag should include optional attributes for the XML namespace and schema (the same attributes as described, above, for the root element in a Nuix Collector Suite JobFile).
The <JobParameters> element contains a child element called <Impersonation>. The <Impersonation> element can contain an optional <LoggedOnUser/> child element. When the <LoggedOnUser/> child element is present, the job will be run on the ECC Client computer under the currently logged in user's account. When the <LoggedOnUser/> child element is absent, the job will be run under the local SYSTEM account.
The <JobParameters> element contains another child element called <WorkerParameters>. The <WorkerParameters> element contains one of several possible child elements, depending on the type of job:
JobFile |
Description |
<CliParameters> |
File Collection, Extraction, Survey and Deletion jobs, as well as volatile information collection and RAM image collection jobs. |
<DiskImageParams> |
Disk Imaging jobs |
<LauncherParams> |
Launch Command jobs |
<NetworkCaptureParams> |
Network Packet Capture jobs |
<SmartMoverParams> |
Move/Relocate jobs and File/Folder Deployment jobs |
Below is a skeletal JobFile for a Nuix Enterprise Collection Center file collection job, showing the major elements:
<?xml version="1.0" encoding="UTF-16"?> <!-- XML Prolog -->
<JobParameters> <!-- 'root' element opening tag* -->
<Impersonation> <!-- impersonation opening tag -->
</Impersonation> <!-- impersonation closing tag -->
<WorkerParameters> <!-- WorkerParameters opening tag -->
<CliParameters> <!-- CliParameters opening tag -->
<Titan>..</Titan> <!-- general settings -->
<Input>..</Input> <!-- input settings -->
<SelectionSet>..</SelectionSet> <!-- file selection criteria -->
<Target>..</Target> <!-- output settings -->
<Logs>..</Logs> <!-- log and report settings -->
</CliParameters> <!-- CliParameters closing tag -->
</WorkerParameters> <!-- WorkerParameters closing tag -->
</JobParameters> <!-- 'root' element closing tag -->
* Attributes for namespace and schema omitted here, for brevity.
Settings for all ECC job types can be specified using the New Collection Wizard within ECC Admin Console.
If necessary, ECC JobFiles created via ECC Admin Console can be edited using the built-in XML editor (accessible from the final screen of the New Collection Wizard). For details regarding this schema-aware XML editor see the topic Advanced JobFile Editing within the ECC User Guide.