| width='120' | '''Signature'''
|<pre>proc:system(
$cmd command as xs:string, $args arguments as xs:string* := (), $options as map(*) ? := ()map { }
) as xs:string</pre>
|- valign="top"
| '''Summary'''
|Executes the specified command in a separate process and returns the result as string. {{Code|$cmdcommand}} is the name of the command, arguments to with the command may be specified via {{Code|$argsarguments}}in a separate process and returns the result as a string. The {{Code|$options}} parameter contains process options:
* {{Code|encoding}}: convert result to the specified encoding. If no encoding is supplied, the system’s default encoding is used.
* {{Code|timeout}}: abort process execution after the specified number of seconds.
| width='120' | '''Signature'''
|<pre>proc:execute(
$cmd command as xs:string, $args arguments as xs:string* := (), $options as map(*) ? := ()map { }
) as element(result)</pre>
|- valign="top"
| '''Summary'''
|Executes the specified command in a separate process and returns the result as element:* {{Code|$cmdcommand}} is the name of the command, and arguments to with the command may be specified via {{Code|$argsarguments}}.in a separate process and returns the result as an element:
* The same {{Code|$options}} are allowed as for {{Function||proc:system}}.
* Instead of the {{Code|proc:error}} error, the error message and process code will be assigned to the returned elements.
| width='120' | '''Signature'''
|<pre>proc:fork(
$cmd command as xs:string, $args arguments as xs:string* := (), $options as map(*) ? := ()map { }
) as element(result)</pre>
|- valign="top"
| '''Summary'''
|Executes the specified command and ignores the result. a {{Code|$cmdcommand}} is the name of with the command, and arguments to the command may be specified via {{Code|$argsarguments}}in a separate process and ignores the result. The same {{Code|$options}} are allowed as for {{Function||proc:system}} (but with the encoding will be being ignored).
|- valign="top"
|'''Errors'''