| definition: |  
main :: IO ()
main = do
    args <- getArgs
    when (length args < 1 || length args > 4) $ error
      "Too many/few arguments. Provide between one and four arguments"
    let (inFile, outFile, graphSvgFunc) = processArgs args
    xmlGraphs <- readXmlFile inFile
    graphSvgFunc outFile xmlGraphs | 
| demand: | no demanded arguments | 
| deterministic: | deterministic operation | 
| failfree: | <FAILING> | 
| indeterministic: | referentially transparent operation | 
| infix: | no fixity defined | 
| iotype: |  {() |-> _} | 
| name: | main | 
| precedence: | no precedence defined | 
| result-values: | _ | 
| signature: | Prelude.IO () | 
| solution-complete: | operation might suspend on free variables | 
| terminating: | possibly non-terminating | 
| totally-defined: | possibly non-reducible on same data term |