3112N/A ! The contents of this file are subject to the terms of the 3112N/A ! Common Development and Distribution License, Version 1.0 only 3112N/A ! (the "License"). You may not use this file except in compliance 3112N/A ! See the License for the specific language governing permissions 3112N/A ! and limitations under the License. 4251N/A ! When distributing Covered Code, include this CDDL HEADER in each 6982N/A ! If applicable, add the following below this CDDL HEADER, with the 6982N/A ! fields enclosed by brackets "[]" replaced with your own identifying 3112N/A ! Portions Copyright [yyyy] [name of copyright owner] 4251N/A ! Copyright 2007-2009 Sun Microsystems, Inc. 2889N/A STAf eXecution (STAX) Document Type Definition (DTD) 4714N/A Generated Date: 20090818-11:49:53 2889N/A This DTD module is identified by the SYSTEM identifier: 2889N/A<!-- Parameter entities referenced in Element declarations --> 2889N/A<!
ENTITY %
stax-
elems 'function | script | signalhandler'>
4714N/A<!
ENTITY %
task 'timer | parallel | log | 4714N/A tcstatus | message | iterate | 4714N/A sequence | import | raise | 4714N/A paralleliterate | continue | throw | 4714N/A release | signalhandler | rethrow | 4714N/A return | if | call-with-list | 2889N/A<!--================= STAX Job Definition ========================== --> 2889N/A The root element STAX contains all other elements. It consists 2889N/A of an optional defaultcall element and any number of function, 2889N/A<!
ELEMENT stax ((%
stax-
elems;)*,
defaultcall?, (%
stax-
elems;)*)>
2889N/A<!--================= The Default Call Function Element ============ --> 2889N/A The defaultcall element defines the function to call by default 2889N/A to start the job. This can be overridden by the 'FUNCTION' 2889N/A parameter when submitting the job to be executed. 2889N/A The function attribute's value is a literal. 2889N/A<!
ELEMENT defaultcall (#
PCDATA)>
4714N/A<!--================= The Timer Element ============================ --> 4714N/A The timer element runs a task for a specified duration. 4714N/A If the task is still running at the end of the specified duration, 4714N/A then the RC variable is set to 1, else if the task ended before 4714N/A the specified duration, the RC variable is set to 0, else if the 4714N/A timer could not start due to an invalid duration, the RC variable 4714N/A<!-- duration is the maximum length of time to run the task. 4714N/A Time can be expressed in milliseconds, seconds, minutes, 4714N/A hours, days, weeks, or years. It is evaluated via Python. 4714N/A Examples: duration='50' (50 milliseconds) 4714N/A duration='90s' (90 seconds) 4714N/A<!--================= The Parallel Element ========================= --> 4714N/A The parallel element performs one or more tasks in parallel. 4714N/A<!
ELEMENT parallel (%
task;)+>
4714N/A<!--================= The Log Element ============================== --> 4714N/A Writes a message and its log level to a STAX Job User Log file. 4714N/A The message must evaluate via Python to a string. 4714N/A The log level specified defaults to 'info'. If specified, it 4714N/A must evaluate via Python to a string containing one of the 4714N/A following STAF Log Service Log levels: 4714N/A fatal, warning, info, trace, trace2, trace3, debug, debug2, 4714N/A debug3, start, stop, pass, fail, status, user1, user2, user3, 4714N/A user4, user5, user6, user7, user8 4714N/A The message attribute is evaluated via Python. If it evaluates 4714N/A to true, the message text will also be sent to the STAX Job Monitor. 4714N/A The message attribute defaults to the STAXMessageLog variable whose 4714N/A value defaults to 0 (false) but can by changed within the STAX job 4714N/A If an if attribute is specified and it evaluates via Python to 4714N/A false, then the log element is ignored. 4714N/A message CDATA "STAXMessageLog" 2889N/A<!--================= The Call Element ============================= --> 2889N/A Perform a function with the referenced name. 2889N/A The function attribute value is evaluated via Python. 2889N/A Arguments can be specified as data to the call element. 2889N/A Arguments are evaluated via Python. 4714N/A<!--================= The STAF Command Element ===================== --> 4714N/A Specifies a STAF command to be executed. 4714N/A Its name and all of its element values are evaluated via Python. 4714N/A<!
ELEMENT stafcmd (
location,
service,
request)>
4714N/A<!
ELEMENT service (#
PCDATA)>
4714N/A<!
ELEMENT request (#
PCDATA)>
4714N/A<!--================= The Script Element =========================== --> 4714N/A Specifies Python code to be executed. 4714N/A<!--================= The Testcase Status Element ================== --> 4714N/A Marks status result ('pass' or 'fail' or 'info') for a testcase 4714N/A and allows additional information to be specified. The status 4714N/A result and the additional info is evaluated via Python. 4714N/A<!
ELEMENT tcstatus (#
PCDATA)>
4714N/A<!--================= The Message Element ========================== --> 4714N/A Generates an event and makes the message value available to the 4714N/A STAX Job Monitor. The message must evaluate via Python to a string. 4714N/A The log attribute is evaluated via Python to a boolean. If it 4714N/A evaluates to true, the message text will also be logged in the STAX 4714N/A Job User log. The log attribute defaults to the STAXLogMessage 4714N/A variable whose value defaults to 0 (false) but can by changed within 4714N/A the STAX job to turn on logging. 4714N/A The log level is ignored if the log attribute does not evaluate to 4714N/A true. It defaults to 'info'. If specified, it must evaluate via 4714N/A Python to a string containing one of the following STAF Log Service 4714N/A fatal, warning, info, trace, trace2, trace3, debug, debug2, 4714N/A debug3, start, stop, pass, fail, status, user1, user2, user3, 4714N/A user4, user5, user6, user7, user8 4714N/A If an if attribute is specified and it evaluates via Python to 4714N/A false, the message element is ignored. 4714N/A<!
ELEMENT message (#
PCDATA)>
4714N/A<!--================= The Iterate Element ========================= --> 4714N/A The iterate element iterates through a list of items, performing 4714N/A its contained task while substituting each item in the list. 4714N/A The iterated tasks are performed in sequence. 4714N/A<!-- var is the name of the variable which will contain the 4714N/A current item in the list or tuple being iterated. 4714N/A in is the list or tuple to be iterated. It is evaluated 4714N/A via Python and must evaluate to be a list or tuple. 4714N/A indexvar is the name of a variable which will contain the index of 4714N/A the current item in the list or tuple being iterated. 4714N/A It is a literal. The value for the first index is 0. 2889N/A<!--================= The Function Element ========================= --> 2889N/A The function element defines a named task which can be called. 2889N/A The name and scope attribute values are literals. 2889N/A If desired, the function can be described using a function-prolog 2889N/A element (or the deprecated function-description element) and/or a 2889N/A function-epilog element. Also, if desired, the function element 2889N/A can define the arguments that can be passed to the function. 2889N/A<!
ELEMENT function ((
function-
prolog |
function-
description)?,
2889N/A (
function-
no-
args |
function-
single-
arg |
2889N/A function-
list-
args |
function-
map-
args)?,
2889N/A scope (
local |
global)
"global" 2889N/A<!
ELEMENT function-
prolog (#
PCDATA)>
2889N/A<!
ELEMENT function-
epilog (#
PCDATA)>
2889N/A<!
ELEMENT function-
description (#
PCDATA)>
2889N/A<!
ELEMENT function-
no-
args EMPTY>
2889N/A<!
ELEMENT function-
single-
arg (
function-
required-
arg |
2889N/A<!
ELEMENT function-
list-
args ((((
function-
required-
arg+,
2889N/A<!
ELEMENT function-
map-
args (((
function-
required-
arg |
2889N/A<!
ELEMENT function-
required-
arg (#
PCDATA)>
2889N/A<!
ATTLIST function-
required-
arg 2889N/A<!
ELEMENT function-
optional-
arg (#
PCDATA)>
2889N/A<!
ATTLIST function-
optional-
arg 2889N/A<!
ELEMENT function-
other-
args (#
PCDATA)>
2889N/A<!
ATTLIST function-
other-
args 2889N/A<!
ELEMENT function-
arg-
def (
function-
arg-
description?,
2889N/A type (
required |
optional |
other)
"required" 2889N/A<!
ELEMENT function-
arg-
description (#
PCDATA)>
2889N/A<!
ELEMENT function-
arg-
private EMPTY>
2889N/A<!
ELEMENT function-
arg-
property (
function-
arg-
property-
description?,
2889N/A function-
arg-
property-
data*)>
2889N/A<!
ATTLIST function-
arg-
property 2889N/A<!
ELEMENT function-
arg-
property-
description (#
PCDATA)>
2889N/A<!
ELEMENT function-
arg-
property-
data (
function-
arg-
property-
data)*>
2889N/A<!
ATTLIST function-
arg-
property-
data 4714N/A<!--================= The Sequence Element ========================= --> 4714N/A The sequence element performs one or more tasks in sequence. 4714N/A<!
ELEMENT sequence (%
task;)+>
2889N/A<!--================= The Import Element ========================== --> 2889N/A Allows importing of functions from another STAX XML job file. 2889N/A<!
ELEMENT import (
import-
include?,
import-
exclude?)?>
2889N/A<!
ELEMENT import-
include (#
PCDATA)>
2889N/A<!
ELEMENT import-
exclude (#
PCDATA)>
4714N/A<!--================= The Raise Element ============================ --> 4714N/A A raise signal element raises a specified signal. 4714N/A Signals can also be raised by the STAX execution engine. 4714N/A The signal attribute value is evaluated via Python. 2889N/A<!--================== The STAX Job Element ===================== --> 2889N/A Specifies a STAX sub-job to be executed. This element is equivalent 2889N/A The name attribute specifies the name of the job. The job name 2889N/A defaults to the value of the function name called to start the job. 2889N/A Its name and all of its element values are evaluated via Python. 2889N/A The job element must contain a location element and either a 2889N/A file or data element. This attribute is equivalent to the 2889N/A JOBNAME option for a STAX EXECUTE command. 2889N/A The clearlogs attribute specifies to delete the STAX Job and Job 2889N/A User logs before the job is executed to ensure that only one job's 2889N/A contents are in the log. This attribute is equivalent to the 2889N/A CLEARLOGS option for a STAX EXECUTE command. The default is the 2889N/A same option that was specified for the parent job. Valid values 2889N/A include 'parent', 'default', 'enabled', and 'disabled'. 2889N/A The monitor attribute specifies whether to automatically monitor the 2889N/A subjob. Note that 'Automatically monitor recommended sub-jobs' must 2889N/A be selected in the STAX Job Monitor properties in order for it to be 2889N/A used. The default value for the monitor attribute is 0, a false 2889N/A The logtcelapsedtime attribute specifies to log the elapsed time 2889N/A for a testcase in the summary record in the STAX Job log and on a 2889N/A LIST TESTCASES request. This attribute is equivalent to the 2889N/A LOGTCELAPSEDTIME option for a STAX EXECUTE command. The default is 2889N/A the same option that was specified for the parent job. Valid values 2889N/A include 'parent', 'default', 'enabled', and 'disabled'. 2889N/A The logtcnumstarts attribute specifies to log the number of starts 2889N/A for a testcase in the summary record in the STAX Job log and on a 2889N/A LIST TESTCASES request. This attribute is equivalent to the 2889N/A LOGNUMSTARTS option for a STAX EXECUTE command. The default is 2889N/A the same option that was specified for the parent job. Valid values 2889N/A include 'parent', 'default', 'enabled', and 'disabled'. 2889N/A for testcases in the STAX Job log. This attribute is equivalent to 2889N/A the LOGTCSTARTSTOP option for a STAX EXECUTE command. The default 2889N/A is the same option that was specified for the parent job. Valid 2889N/A values include 'parent', 'default', 'enabled', and 'disabled'. 4251N/A (e.g. from a print statement in a script element). This attribute 4251N/A is equivalent to the PYTHONOUTPUT option for a STAX EXECUTE command. 4251N/A The default is the same option that was specified for the parent job. 4251N/A Valid values include 'parent', 'default', 'jobuserlog', 'message', 4251N/A 'jobuserlogandmsg', and 'jvmlog'. 4251N/A The pythonloglevel attribute specifies the log level to use when writing 4251N/A Python stdout (e.g. from a print statement in a script element) if the 4251N/A python output is written to the STAX Job User Log. This attribute is 4251N/A equivalent to the PYTHONLOGLEVEL option for a STAX EXECUTE command. 4251N/A The default is the same option that was specified for the parent job. 4251N/A Valid values include 'parent', 'default', or a valid STAF log level 4251N/A such as 'Info', 'Trace', 'User1', etc. 2889N/A The job element must contain either a job-file or job-data element. 2889N/A The job element has the following optional elements: 2889N/A job-function, job-function-args, job-scriptfile(s), and job-script 2889N/A Each of these optional elements may specify an if attribute. 2889N/A The if attribute must evaluate via Python to a true or false value. 2889N/A If it does not evaluate to a true value, the element is ignored. 2889N/A The default value for the if attribute is 1, a true value. 2889N/A Note that in Python, true means any nonzero number or nonempty 2889N/A object; false means not true, such as a zero number, an empty 2889N/A object, or None. Comparisons and equality tests return 1 or 0 2889N/A<!
ELEMENT job ((
job-
file |
job-
data),
2889N/A job-
function?,
job-
function-
args?,
2889N/A (
job-
scriptfile |
job-
scriptfiles)?,
2889N/A logtcelapsedtime CDATA "'parent'" 2889N/A logtcnumstarts CDATA "'parent'" 2889N/A logtcstartstop CDATA "'parent'" 4251N/A pythonoutput CDATA "'parent'" 4251N/A pythonloglevel CDATA "'parent'" 2889N/A The job-file element specifies the fully qualified name of a file 2889N/A containing the XML document for the STAX job to be executed. 2889N/A The job-file element is equivalent to the FILE option for a STAX 2889N/A The machine attribute specifies the name of the machine where the 2889N/A xml file is located. If not specified, it defaults to Python 2889N/A variable STAXJobXMLMachine. The machine attribute is equivalent 2889N/A to the MACHINE option for a STAX EXECUTE command. 2889N/A<!
ELEMENT job-
file (#
PCDATA)>
2889N/A machine CDATA "STAXJobXMLMachine" 2889N/A The job-data element specifies a string containing the XML document 2889N/A for the job to be executed. This element is equivalent to the 2889N/A DATA option for a STAX EXECUTE command. 2889N/A The eval attribute specifies whether the data is be evaluated by 2889N/A Python in the parent job. For example, if the job-data information 2889N/A is dynamically generated and assigned to a Python variable, rather 2889N/A than just containing the literal XML information, then you would 2889N/A need to set the eval attribute to true (e.g. eval="1"). 2889N/A The default for the eval attribute is false ("0"). 2889N/A<!
ELEMENT job-
data (#
PCDATA)>
2889N/A The job-function element specifies the name of the function element 2889N/A to call to start the job, overriding the defaultcall element, if any, 2889N/A specified in the XML document. The <function name> must be the name 2889N/A of a function element specified in the XML document. This element is 2889N/A equivalent to the FUNCTION option for a STAX EXECUTE command. 2889N/A<!
ELEMENT job-
function (#
PCDATA)>
2889N/A The job-function-args element specifies arguments to pass to the 2889N/A function element called to start the job, overriding the arguments, 2889N/A if any, specified for the defaultcall element in the XML document. 2889N/A This element is equivalent to the ARGS option for a STAX EXECUTE 2889N/A The eval attribute specifies whether the data is to be evaluated 2889N/A by Python in the parent job. The default for the eval attribute 2889N/A<!
ELEMENT job-
function-
args (#
PCDATA)>
2889N/A The job-script element specifies Python code to be executed. 2889N/A This element is equivalent to the SCRIPT option for a STAX 2889N/A EXECUTE command. Multiple job-script elements may be specified. 2889N/A The eval attribute specifies whether the data is to be evaluated 2889N/A by Python in the parent job. The default for the eval attribute 2889N/A<!
ELEMENT job-
script (#
PCDATA)>
2889N/A The job-scriptfile element (equivalent to the job-scriptfiles 2889N/A element) specifies the fully qualified name of a file containing 2889N/A Python code to be executed, or a list of file names containing 2889N/A Python code to be executed. The value must evaluate via Python to 2889N/A a string or a list of strings. This element is equivalent to the 2889N/A SCRIPTFILE option for a STAX EXECUTE command. 2889N/A Specifying only one scriptfile could look like either: 2889N/A Specifying a list containing 3 scriptfiles could look like: 2889N/A The machine attribute specifies the name of the machine where the 2889N/A SCRIPTFILE(s) are located. If not specified, it defaults to Python 2889N/A variable STAXJobScriptFileMachine. This attribute is equivalent 2889N/A to the SCRIPTFILEMACHINE option for a STAX EXECUTE command. 2889N/A<!
ELEMENT job-
scriptfile (#
PCDATA)>
2889N/A machine CDATA "STAXJobScriptFileMachine" 2889N/A<!
ELEMENT job-
scriptfiles (#
PCDATA)>
2889N/A machine CDATA "STAXJobScriptFileMachine" 2889N/A The job-action element specifies a task to be executed after the 2889N/A sub-job has started. This task will be executed in parallel with 2889N/A the sub-job via a new STAX-Thread. The task will be able to use the 2889N/A STAXSubJobID variable to obtain the sub-job ID in order to interact 2889N/A with the job. If the job completes before the task completes, the 2889N/A job will remain in a non-complete state until the task completes. 2889N/A If the job cannot be started, the job-action task is not executed. 2889N/A<!
ELEMENT job-
action (%
task;)>
2889N/A<!--================= The STAF Process Element ===================== --> 2889N/A Specifies a STAF process to be started. 2889N/A All of its non-empty element values are evaluated via Python. 2889N/A<!
ENTITY %
procgroup1 '((parms?, workdir?) | (workdir?, parms?))'>
2889N/A<!
ENTITY %
procgroup2 '((title?, workload?) | (workload?, title?))'>
2889N/A<!
ENTITY %
procgroup1a '((parms?, workload?) | (workload?, parms?))'>
2889N/A<!
ENTITY %
procgroup2a '((title?, workdir?) | (workdir?, title?))'>
2889N/A<!
ENTITY %
procgroup3 '(((vars | var | envs | env)*, useprocessvars?) | 2889N/A (useprocessvars?, (vars | var | envs | env)*))'>
2889N/A<!
ENTITY %
procgroup4 '(((username, password?)?, disabledauth?) | 2889N/A ((disabledauth?, (username, password?)?)))'>
2889N/A<!
ENTITY %
procgroup5 '((stdin?, stdout?, stderr?) | 2889N/A (stdout?, stderr?, stdin?) | 2889N/A (stderr?, stdin?, stdout?) | 2889N/A (stdin?, stderr?, stdout?) | 2889N/A (stdout?, stdin?, stderr?) | 2889N/A (stderr?, stdout?, stdin?))'>
2889N/A<!
ENTITY %
returnfileinfo '(returnfiles | returnfile)*'>
2889N/A<!
ENTITY %
procgroup5a '((%returnfileinfo;, returnstdout?, returnstderr?) | 2889N/A (returnstdout?, returnstderr?, %returnfileinfo;) | 2889N/A (returnstderr?, %returnfileinfo;, returnstdout?) | 2889N/A (%returnfileinfo;, returnstderr?, returnstdout?) | 2889N/A (returnstdout?, %returnfileinfo;, returnstderr?) | 2889N/A (returnstderr?, returnstdout?, %returnfileinfo;))'>
2889N/A<!
ENTITY %
procgroup6 '((stopusing?, console?, focus?, statichandlename?) | 2889N/A (stopusing?, console?, statichandlename?, focus?) | 2889N/A (stopusing?, focus?, console?, statichandlename?) | 2889N/A (stopusing?, focus?, statichandlename?, console?) | 2889N/A (stopusing?, statichandlename?, console?, focus?) | 2889N/A (stopusing?, statichandlename?, focus?, console?) | 2889N/A (console?, focus?, stopusing?, statichandlename?) | 2889N/A (console?, focus?, statichandlename?, stopusing?) | 2889N/A (console?, stopusing?, focus?, statichandlename?) | 2889N/A (console?, stopusing?, statichandlename?, focus?) | 2889N/A (console?, statichandlename?, focus?, stopusing?) | 2889N/A (console?, statichandlename?, stopusing?, focus?) | 2889N/A (focus?, console?, stopusing?, statichandlename?) | 2889N/A (focus?, console?, statichandlename?, stopusing?) | 2889N/A (focus?, stopusing?, console?, statichandlename?) | 2889N/A (focus?, stopusing?, statichandlename?, console?) | 2889N/A (focus?, statichandlename?, console?, stopusing?) | 2889N/A (focus?, statichandlename?, stopusing?, console?) | 2889N/A (statichandlename?, stopusing?, console?, focus?) | 2889N/A (statichandlename?, stopusing?, focus?, console?) | 2889N/A (statichandlename?, console?, focus?, stopusing?) | 2889N/A (statichandlename?, console?, stopusing?, focus?) | 2889N/A (statichandlename?, focus?, console?, stopusing?) | 2889N/A (statichandlename?, focus?, stopusing?, console?))'>
2889N/A<!
ELEMENT process (
location,
command,
2889N/A ((%
procgroup1;, %
procgroup2;) |
2889N/A (%
procgroup2;, %
procgroup1;) |
2889N/A (%
procgroup1a;, %
procgroup2a;) |
2889N/A (%
procgroup2a;, %
procgroup1a;)),
2889N/A ((%
procgroup4;, %
procgroup5;, %
procgroup5a;, %
procgroup6;) |
2889N/A (%
procgroup4;, %
procgroup6;, %
procgroup5;, %
procgroup5a;) |
2889N/A (%
procgroup5;, %
procgroup5a;, %
procgroup4;, %
procgroup6;) |
2889N/A (%
procgroup5;, %
procgroup5a;, %
procgroup6;, %
procgroup4;) |
2889N/A (%
procgroup6;, %
procgroup4;, %
procgroup5;, %
procgroup5a;) |
2889N/A (%
procgroup6;, %
procgroup5;, %
procgroup5a;, %
procgroup4;)),
2889N/A The process element must contain a location element and a 2889N/A<!
ELEMENT location (#
PCDATA)>
2889N/A<!
ELEMENT command (#
PCDATA)>
2889N/A The parms element specifies any parameters that you wish to 2889N/A The value is evaluated via Python to a string. 2889N/A The workload element specifies the name of the workload for 2889N/A which this process is a member. This may be useful in 2889N/A conjunction with other process elements. 2889N/A The value is evaluated via Python to a string. 2889N/A<!
ELEMENT workload (#
PCDATA)>
2889N/A The title element specifies the program title of the process. 2889N/A Unless overridden by the process, the title will be the text 2889N/A that is displayed on the title bar of the application. 2889N/A The value is evaluated via Python to a string. 2889N/A The workdir element specifies the directory from which the 2889N/A command should be executed. If you do not specify this 2889N/A element, the command will be started from whatever directory 2889N/A The value is evaluated via Python to a string. 2889N/A<!
ELEMENT workdir (#
PCDATA)>
2889N/A The vars (and var) elements specify STAF variables that go into the 2889N/A process specific STAF variable pool. 2889N/A The value must evaluate via Python to a string or a list of 2889N/A strings. Multiple vars elements may be specified for a process. 2889N/A The format for each variable is: 2889N/A So, a list containing 3 variables could look like: 2889N/A ['var1=value1', 'var2=value2', 'var3=value3'] 2889N/A Specifying only one variable could look like either: 2889N/A The envs (and env) elements specify environment variables that will 2889N/A be set for the process. Environment variables may be mixed case, 2889N/A however most programs assume environment variable names will 2889N/A be uppercase, so, in most cases, ensure that your environment 2889N/A variable names are uppercase. 2889N/A The value must evaluate via Python to a string or a list of 2889N/A strings. Multiple envs elements may be specified for a process. 2889N/A The format for each variable is: 2889N/A So, a list containing 3 variables could look like: 2889N/A ['ENV_VAR_1=value1', 'ENV_VAR_2=value2', 'ENV_VAR_3=value3'] 2889N/A Specifying only one variable could look like either: 2889N/A The useprocessvars element specifies that STAF variable 2889N/A references should try to be resolved from the STAF variable 2889N/A pool associated with the process being started first. 2889N/A If the STAF variable is not found in this pool, the STAF 2889N/A global variable pool should then be searched. 2889N/A<!
ELEMENT useprocessvars EMPTY>
2889N/A The stopusing element allows you to specify the method by 2889N/A which this process will be STOPed, if not overridden on the 2889N/A The value is evaluated via Python to a string. 2889N/A<!
ELEMENT stopusing (#
PCDATA)>
2889N/A The console element allows you to specify if the process should 2889N/A get a new console window or share the STAFProc console. 2889N/A use Must evaluate via Python to a string containing either: 2889N/A - 'new' specifies that the process should get a new console 2889N/A window. This option only has effect on Windows systems. 2889N/A This is the default for Windows systems. 2889N/A - 'same' specifies that the process should share the 2889N/A STAFProc console. This option only has effect on Windows 2889N/A systems. This is the default for Unix systems. 2889N/A The focus element allows you to specify the focus that is to be 2889N/A given to any new windows opened when starting a process on a Windows 2889N/A system. The window(s) it effects depends on whether you are using 2889N/A the 'default' or the 'shell' command mode: 2889N/A - Default command mode (no SHELL option): The focus specified is 2889N/A given to any new windows opened by the command specified. 2889N/A - Shell command mode: The focus specified is given only to the 2889N/A new shell command window opened, not to any windows opened by 2889N/A The focus element only has effect on Windows systems and requires 2889N/A STAF V3.1.4 or later on the machine where the process is run. 2889N/A mode Must evaluate via Python to a string containing one of the 2889N/A - 'background' specifies to display a window in the background 2889N/A (e.g. not give it focus) in its most recent size and position. 2889N/A - 'foreground' specifies to display a window in the foreground 2889N/A (e.g. give it focus) in its most recent size and position. 2889N/A - 'minimized' specifies to display a window as minimized. 2889N/A The username element specifies the username under which 2889N/A the process should be started. 2889N/A The value is evaluated via Python to a string. 2889N/A<!
ELEMENT username (#
PCDATA)>
2889N/A The password element specifies the password with which to 2889N/A authenticate the user specified with the username element. 2889N/A The value is evaluated via Python to a string. 2889N/A<!
ELEMENT password (#
PCDATA)>
2889N/A<!-- The disabledauth element specifies the action to take if a 2889N/A action Must evaluate via Python to a string containing either: 2889N/A - 'error' specifies that an error should be returned. 2889N/A is ignored if authentication is desabled. 2889N/A This action overrides any default specified in the STAF 2889N/A<!
ELEMENT disabledauth EMPTY>
2889N/A Specifies that a static handle should be created for this process. 2889N/A The value is evaluated via Python to a string. It will be the 2889N/A registered name of the static handle. Using this option will also 2889N/A cause the environment variable STAF_STATIC_HANDLE to be set 2889N/A appropriately for the process. 2889N/A<!
ELEMENT statichandlename (#
PCDATA)>
2889N/A The stdin element specifies the name of the file from which 2889N/A standard input will be read. The value is evaluated via 2889N/A The stdout element specifies the name of the file to which 2889N/A standard output will be redirected. 2889N/A The mode and filename are evaluated via Python to a string. 2889N/A<!-- mode specifies what to do if the file already exists. 2889N/A The value must evaluate via Python to one of the 2889N/A 'replace' - specifies that the file will be replaced. 2889N/A 'append' - specifies that the process' standard 2889N/A output will be appended to the file. 2889N/A The stderr element specifies the file to which standard error will 2889N/A be redirected. The mode and filename are evaluated via Python to a 2889N/A<!-- mode specifies what to do if the file already exists or to 2889N/A redirect standard error to the same file as standard output. 2889N/A The value must evaluate via Python to one of the following: 2889N/A 'replace' - specifies that the file will be replaced. 2889N/A 'append' - specifies that the process's standard error will 2889N/A 'stdout' - specifies to redirect standard error to the 2889N/A same file to which standard output is redirected. 2889N/A If a file name is specified, it is ignored. 2889N/A The returnstdout element specifies to return in STAXResult 2889N/A the contents of the file where standard output was redirected 2889N/A when the process completes. 2889N/A<!
ELEMENT returnstdout EMPTY>
2889N/A The returnstderr element specifies to return in STAXResult 2889N/A the contents of the file where standard error was redirected 2889N/A when the process completes. 2889N/A<!
ELEMENT returnstderr EMPTY>
2889N/A The returnfiles (and returnfile) elements specify that the 2889N/A contents of the specified file(s) should be returned in 2889N/A STAXResult when the process completes. The value must evaluate 2889N/A via Python to a string or a list of strings. Multiple returnfile(s) 2889N/A elements may be specified for a process. 2889N/A<!
ELEMENT returnfiles (#
PCDATA)>
2889N/A<!
ELEMENT returnfile (#
PCDATA)>
2889N/A The process-action element specifies a task to be executed 2889N/A when a process has started. 2889N/A<!
ELEMENT process-
action (%
task;)>
2889N/A The other element specifies any other STAF parameters that 2889N/A may arise in the future. It is used to pass additional data 2889N/A to the STAF PROCESS START request. 2889N/A The value is evaluated via Python to a string. 4714N/A<!--================= The No Operation Element ===================== --> 4714N/A<!--=============== The Try / Catch / Finally Elements ============= --> 4714N/A The try element allows you to perform a task and to catch 4714N/A exceptions that are thrown. Also, if a finally element is 4714N/A specified, then the finally task is executed, no matter whether 4714N/A the try task completes normally or abruptly, and no matter whether 4714N/A a catch element is first given control. 4714N/A<!
ELEMENT try ((%
task;), ((
catch+) | ((
catch*),
finally)))>
4714N/A The catch element performs a task when the specified exception is 4714N/A caught. The var attribute specifies the name of the variable to 4714N/A receive the data specified within the throw element. The typevar 4714N/A attribute specifies the name of the variable to receive the type 4714N/A of the exception. The sourcevar attribute specifies the name 4714N/A of the variable to receive the source information for the exception. 4714N/A<!--================= Break Element ================================ --> 4714N/A The break element can be used to break out of a loop or iterate 4714N/A<!--================= The Testcase Element ========================= --> 4714N/A Defines a testcase. Used in conjunction with the tcstatus 4714N/A element to mark the status for a testcase. 4714N/A The name attribute value is evaluated via Python. 4714N/A<!
ELEMENT testcase (%
task;)>
4714N/A<!--================= The Parallel Iterate Element ================ --> 4714N/A The parallel iterate element iterates through a list of items, 4714N/A performing its contained task while substituting each item in 4714N/A the list. The iterated tasks are performed in parallel. 4714N/A<!
ELEMENT paralleliterate (%
task;)>
4714N/A<!-- var is the name of a variable which will contain the current 4714N/A item in the list or tuple being iterated. 4714N/A in is the list or tuple to be iterated. It is evaluated 4714N/A via Python and must evaluate to be a list or tuple. 4714N/A indexvar is the name of a variable which will contain the index of 4714N/A the current item in the list or tuple being iterated. 4714N/A It is a literal. The value of the first index is 0. 4714N/A<!--================= Continue Element ============================= --> 4714N/A The continue element can be used to continue to the top of a loop 4714N/A<!--================= The Throw Element ============================ --> 4714N/A The throw element specifies an exception to throw. 4714N/A The exception attribute value and any additional information 4714N/A<!--================= The Release Element ========================== --> 4714N/A The release element specifies to release a block in the job. 4714N/A If an if attribute is specified and it evaluates via Python to 4714N/A false, the release element is ignored. 2889N/A<!--================= The Signal Handler Element =================== --> 2889N/A The signalhandler element defines how to handle a specified signal. 2889N/A The signal attribute value is evaluated via Python. 2889N/A<!
ELEMENT signalhandler (%
task;)>
4714N/A<!--================= The Rethrow Element ========================= --> 4714N/A The rethrow element specifies to rethrow the current exception. 4714N/A<!--================= The Block Element ============================ --> 4714N/A Defines a task block that can be held, released, or terminated. 4714N/A define a task block that can be held, terminated, or released. 4714N/A The name attribute value is evaluated via Python. 4714N/A<!--================= The Hold Element ============================= --> 4714N/A The hold element specifies to hold a block in the job. 4714N/A If an if attribute is specified and it evaluates via Python to 4714N/A false, the hold element is ignored. 4714N/A<!--================= The Terminate Element ======================== --> 4714N/A The terminate element specifies to terminate a block in the job. 4714N/A If an if attribute is specified and it evaluates via Python to 4714N/A false, the terminate element is ignored. 4714N/A<!--================= The Return Element =========================== --> 4714N/A Specifies a value to return from a function. 4714N/A<!--================= The Conditional Element (if-then-else) ======= --> 4714N/A Allows you to write an if or a case construct with zero or more 4714N/A elseifs and one or no else statements. 4714N/A The expr attribute value is evaluated via Python and must evaluate 4714N/A<!
ELEMENT if ((%
task;),
elseif*,
else?)>
4714N/A<!--================= The Call-With-List Element =================== --> 4714N/A Perform a function with the referenced name with any number of 4714N/A arguments in the form of a list. The function attribute value 4714N/A and argument values are evaluated via Python. 4714N/A<!
ELEMENT call-
with-
list (
call-
list-
arg*)>
4714N/A<!
ELEMENT call-
list-
arg (#
PCDATA)>
4714N/A<!--================= The Loop Element ============================= --> 4714N/A The loop element performs a task a specified number of times, 4714N/A allowing specification of an upper and lower bound with an 4714N/A increment value and where the index counter is available to 4714N/A sub-tasks. Also, while and/or until expressions can be 4714N/A<!-- var is the name of a variable which will contain the loop 4714N/A index variable. It is a literal. 4714N/A from is the starting value of the loop index variable. 4714N/A It must evaluate to an integer value via Python. 4714N/A to is the maximum value of the loop index variable 4714N/A It must evaluate to an integer value via Python. 4714N/A by is the increment value for the loop index variable 4714N/A It must evaluate to an integer value via Python. 4714N/A while is an expression that must evaluate to a boolean value 4714N/A and is performed at the top of each loop. If it 4714N/A evaluates to false, it breaks out of the loop. 4714N/A until is an expression that must evaluate to a boolean value 4714N/A and is performed at the bottom of each loop. If it 4714N/A evaluates to false, it breaks out of the loop. 2889N/A<!--================= The Call-With-Map Element ==================== --> 2889N/A Perform a function with the referenced name with any number of 2889N/A arguments in the form of a map of named arguments. The function 2889N/A and name attribute values as well as the argument value are 2889N/A<!
ELEMENT call-
with-
map (
call-
map-
arg*)>
2889N/A<!
ELEMENT call-
map-
arg (#
PCDATA)>