namespace local =
""namespace inh =
inheritstart =
workflowworkflow =
element workflow {
attribute name {
xsd:string },
attribute version {
xsd:integer },
node*,
variableHandler* }
node =
element node{
attribute id {
xsd:integer },
attribute type {
xsd:string },
attribute serviceObjectClass {
xsd:string }?,
attribute subWorkflowName {
xsd:string }?,
(
element in {
element variable {
attribute name {
xsd:string },
attribute as {
xsd:string } }+ },
element out {
element variable {
attribute name {
xsd:string },
attribute as {
xsd:string } }+ }
)?,
attribute variable {
xsd:string }?,
attribute operand {
xsd:string }?,
arguments?,
condition+?,
element variable {
attribute name {
xsd:string },
condition?,
variable? }+?,
outNode+?
}
outNode =
element outNode {
attribute id {
xsd:integer } }
condition =
element condition{
attribute type {
xsd:string },
attribute a {
xsd:string }?,
attribute b {
xsd:string }?,
attribute name {
xsd:string }?,
attribute value {
xsd:string }?,
attribute variable {
xsd:string }?,
array?,
condition+?,
outNode?,
else?
}
else =
element else {
outNode }
variableHandler =
element variableHandler {
attribute variable {
xsd:string },
attribute class {
xsd:string } }
arguments =
element arguments {
variable* }
variable =
array |
boolean |
double |
integer |
null |
object |
\stringarray =
element array {
\element* }
\element =
element element {
attribute key {
xsd:string },
variable }
boolean =
element boolean {
xsd:string }
double =
element double {
xsd:double }
integer =
element integer {
xsd:integer }
null =
element null {
text }
object =
element object {
attribute class {
xsd:string },
arguments? }
\string =
element string {
xsd:string }