<?xml version="1.0" encoding="UTF-8"?>
<jsdl:JobDefinition xmlns="http://www.example.org/"
    xmlns:jsdl="http://schemas.ggf.org/jsdl/2005/04/jsdl"
    xmlns:jsdl-posix="http://schemas.ggf.org/jsdl/2005/04/jsdl-posix"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://schemas.ggf.org/jsdl/2005/04/jsdl file:/Users/mDrescher/Projects/GGF/OGSA-JSDL/1.0%20draft%2018/jsdl.xsd 
    http://schemas.ggf.org/jsdl/2005/04/jsdl-posix file:/Users/mDrescher/Projects/GGF/OGSA-JSDL/1.0%20draft%2018/jsdl-posix.xsd">
    <jsdl:JobDescription>
        <jsdl:JobIdentification>
            <jsdl:JobName>My Gnuplot invocation</jsdl:JobName>
            <jsdl:Description> Simple application invokation:
                User wants to run the application 'gnuplot' to produce a plotted
                graphical file based on some data shipped in from elsewhere
                (perhaps as part of a workflow).  A front-end application will then
                build into an animation of spinning data.
                Front-end application knows URL for data file which must be stage
                in. Front-end application wants to stage in a control file that it
                specifies directly which directs gnuplot to produce the output files.
                In case of error, messages should be produced on stderr (also to be
                staged on completion) and no images are to be transferred.
            </jsdl:Description>
        </jsdl:JobIdentification>
        <jsdl:Application>
            <jsdl:ApplicationName>gnuplot</jsdl:ApplicationName>
            <jsdl-posix:POSIXApplication>
                <jsdl-posix:Executable>/usr/local/bin/gnuplot</jsdl-posix:Executable>
                <jsdl-posix:Argument>control.txt</jsdl-posix:Argument>
                <jsdl-posix:Input>input.dat </jsdl-posix:Input>
                <jsdl-posix:Output>output1.png</jsdl-posix:Output>
            </jsdl-posix:POSIXApplication>
        </jsdl:Application>
        <jsdl:Resource>
            <jsdl:CPUCount>
                <jsdl:Exact> 1.0 </jsdl:Exact>
            </jsdl:CPUCount>
            <jsdl:PhysicalMemory>
                <jsdl:LowerBoundedRange>2097152.0</jsdl:LowerBoundedRange>
            </jsdl:PhysicalMemory>
        </jsdl:Resource>
        <jsdl:DataStaging>
            <jsdl:FileName>control.txt</jsdl:FileName>	
            <jsdl:CreationFlag>overwrite</jsdl:CreationFlag>
            <jsdl:DeleteOnTermination>true</jsdl:DeleteOnTermination>
            <jsdl:Source><jsdl:URL>http://foo.bar.com/~me/control.txt</jsdl:URL></jsdl:Source>
        </jsdl:DataStaging>
        <jsdl:DataStaging>
            <jsdl:FileName>input.dat</jsdl:FileName>
            <jsdl:CreationFlag>overwrite</jsdl:CreationFlag>
            <jsdl:DeleteOnTermination>true</jsdl:DeleteOnTermination>
            <jsdl:Source><jsdl:URL>http://foo.bar.com/~me/input.dat</jsdl:URL></jsdl:Source>
        </jsdl:DataStaging>
        <jsdl:DataStaging>
            <jsdl:FileName>output1.png</jsdl:FileName>
            <jsdl:CreationFlag>overwrite</jsdl:CreationFlag>
            <jsdl:DeleteOnTermination>true</jsdl:DeleteOnTermination>
            <jsdl:Target><jsdl:URL>rsync://spoolmachine/userdir</jsdl:URL></jsdl:Target>
        </jsdl:DataStaging>
    </jsdl:JobDescription>
</jsdl:JobDefinition>
