XLANG: Web Services for Business Process Design From: http://www.gotdotnet.com/team/xml_wsspecs/xlang-c/default.htm See: http://xml.coverpages.org/xlang.html -------------------------------------------- Appendix A - XSD Schema Optional documentation element used as first child of xlang elements. behavior := BEHAVIOR body body := BODY headerProcess headerProcess := header? process header := HEADER localDecls localDecls := LOCAL decls decls := portReferenceDecl* correlationSetDecl* portReferenceDecl := portReference URI correlationSetDecl := correlationSetDecl name propertyRef+ name := NCName propertyRef := propertyRef QName action := operation | delay | raise delay := delayFor | delayUntil operation := action operationRef portRef activation? correlationBegin? correlationSetRef* portDescription* correlationSetRef := CORRELATION setNames correlationBegin := CORRELATIONBEGIN setNames operationRef := OPERATION NCName setNames := NCNameList delayFor := DELAYFOR QName delayUntil := DELAYUNTIL QName raise := raise QName? process := empty | sequence | switch | pick | all | while | context | compensate empty := EMPTY sequence := SEQUENCE [action | process ]* pick := PICK eventHandler+ eventHandler := EVENTHANDLER event process event := delayFor | delayUntil | operation | catch catch := catch QName all := ALL (process)* switch := SWITCH branch* default? branch := BRANCH case process case := CASE QName default := DEFAULT process while := WHILE case process context := CONTEXT localDecls? process transaction? exception? transaction := TRANSACTION txnid compensation? tnxid := name NCName compensation := COMPENSATION process exception := EXCEPTION pick finally? finally := FINALLY process compensate := COMPENSATE txn-id