Example of mapping a business process in MEMO OrgML to a workflow specified in XPDL.


    MetaEdit+ (MetaCase):
  1. Decomposition Diagram

  2. Process Model

  3. Workflow and Activity Specification Diagram

  4. Generation of a workflow description in XPDL


  5. Shark (Enhydra):

  6. E-Mail application in Java

  7. Mapping XPDL Participants to Users in Shark

  8. Mapping XPDL Applications to procedures in Shark

  9. Create Instance of Workflow





Contents of ./info/workflow/eMailNotification.xpdl

Download plain text file of eMailNotification.xpdl
<?xml version="1.0" encoding="UTF-8"?>
<Package xmlns="http://www.wfmc.org/2002/XPDL1.0"
xmlns:xpdl="http://www.wfmc.org/2002/XPDL1.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:iwvi="http://iwvi.uni-koblenz.de/workflow"
xsi:schemaLocation="http://www.wfmc.org/2002/XPDL1.0
http://wfmc.org/standards/docs/TC-1025_schema_10_xpdl.xsd" Id="0" Name="ECOMOD Process">
<PackageHeader>
  <XPDLVersion> 1.0</XPDLVersion>
  <Vendor> IWVI, UNi Koblenz </Vendor>
  <Created>April 2004</Created>
</PackageHeader>
<ConformanceClass GraphConformance = "NON_BLOCKED"/>
<Script Type="text/javascript" />
<TypeDeclarations/>
<Participants/>
<Applications/>
<DataFields/>
<WorkflowProcesses>
<WorkflowProcess Id="0" Name="WorkflowProcess0" AccessLevel="PUBLIC">
  <ProcessHeader/>
  <FormalParameters/>
  <DataFields>
    <DataField Id="CustomerEMail" IsArray="FALSE">
      <DataType>
        <BasicType Type="STRING"/>
      </DataType>
      <InitialValue>jjung@uni-koblenz.de</InitialValue>
      <Length>25</Length>
      <ExtendedAttributes>
      </ExtendedAttributes>
    </DataField>
    <DataField Id="isSent" IsArray="FALSE">
      <DataType>
        <BasicType Type="BOOLEAN"/>
      </DataType>
      <InitialValue>false</InitialValue>
      <Length>5</Length>
      <ExtendedAttributes>
      </ExtendedAttributes>
    </DataField>
    <DataField Id="NotifyText" IsArray="FALSE">
      <DataType>
        <BasicType Type="STRING"/>
      </DataType>
      <InitialValue>absage</InitialValue>
      <Length>200</Length>
      <ExtendedAttributes>
      </ExtendedAttributes>
    </DataField>
  </DataFields>
  <Participants>
    <Participant Id="mail" Name="mail">
      <ParticipantType Type="SYSTEM"/>
      <ExtendedAttributes>
      </ExtendedAttributes>
    </Participant>
    <Participant Id="Sales" Name="Sales">
      <ParticipantType Type="ORGANIZATIONAL_UNIT"/>
      <ExtendedAttributes>
      </ExtendedAttributes>
    </Participant>
  </Participants>
  <Applications>
    <Application Id="1">
      <FormalParameters>
        <FormalParameter Id="receiver" Index="0" Mode="IN">
          <DataType>
            <BasicType Type="STRING"/>
          </DataType>
        </FormalParameter>
        <FormalParameter Id="text" Index="1" Mode="IN">
          <DataType>
            <BasicType Type="STRING"/>
          </DataType>
        </FormalParameter>
        <FormalParameter Id="isSent" Index="2" Mode="OUT">
          <DataType>
            <BasicType Type="BOOLEAN"/>
          </DataType>
        </FormalParameter>
      </FormalParameters>
      <ExtendedAttributes>
      </ExtendedAttributes>
    </Application>
  </Applications>
  <ActivitySets>
  </ActivitySets>
  <Activities>
    <Activity Id="2" Name="SendMail">
        <Implementation>
          <Tool Id="1" Type="PROCEDURE">
            <ActualParameters>
              <ActualParameter>CustomerEMail</ActualParameter>
              <ActualParameter>NotifyText</ActualParameter>
              <ActualParameter>isSent</ActualParameter>
            </ActualParameters>
          </Tool>
        </Implementation>
        <Performer>mail</Performer>
        <StartMode> <Automatic/> </StartMode>
        <FinishMode> <Automatic/> </FinishMode>
    </Activity>
    <Activity Id="1" Name="EnterData">
      <Implementation>
        <No/>
      </Implementation>
      <Performer>Sales</Performer>
      <StartMode> <Manual/> </StartMode>
      <FinishMode> <Manual/> </FinishMode>
      <ExtendedAttributes>
        <ExtendedAttribute Name="VariableToProcess_UPDATE" Value="NotifyText"/>
        <ExtendedAttribute Name="VariableToProcess_UPDATE" Value="CustomerEMail"/>
      </ExtendedAttributes>
    </Activity>
  </Activities>
  <Transitions>
    <Transition Id="1_1.2_2" From="1" To="2">
    </Transition>
  </Transitions>
  <ExtendedAttributes>
  </ExtendedAttributes>
</WorkflowProcess>
</WorkflowProcesses>
</Package>