// The "engine" attribute is required unless "file" is specified, in which case the
// file extension will be used to determine the appropriate script engine.
String[][] requiredAttributeSets = new String[2][];
requiredAttributeSets[0] = new String[]{"engine"};
requiredAttributeSets[1] = new String[]{"file"};
registerPreProcessor(new CheckRequiredAttributes(requiredAttributeSets));
}