in reply to XML::Simple forcearray problem

the 'XMLin' function doesn't take a file handle, but rather the file name as argument. From the perldoc:
my $ref = XMLin([xml file or string>], [, <options>]);
Try this instead:
my $config = XMLin("someFile.DTD", forcearray => 1);
In your code, you XMLin $FILE, but you don't declare $FILE in your code submitted. What I expect is happening is that you are trying to XMLin '$FILE' (the undeclared variable) thinking it is 'FILE' (the file handle). By XMLin'ing '$FILE' (which is empty) you are calling XMLin without all of the required arguments, thus throwing the error message mentioned.