Metadaten

<workflow-process id="100" process-version="2" 
                    language-version="1.0"
                    released="false" category="PC5" 
                    createdBy="testuser" 
                    creationDate="20050812T135800">
    <name>ApprovePlannedItem</name>
    <description>
      <localized-text>
        <locale language="en">This workflow process may be 
        enacted to approve a planned item.</locale>
      </localized-text>
    </description>
    <documentation>Refer to the approve planned 
                   item documentation.
    </documentation>
    <web-service expose="true">
      <callback-service>wsconnector.ApprovePlannedItem
      </callback-service>
    </web-service>
    <failure-allocation-strategy>
      <allocation-strategy type="target" 
       identifier="FAILUREALLOCATIONSTRATEGY" />
    </failure-allocation-strategy>    

  ...

  </workflow-process>
workflow-process
Dies ist der übergeordnete Tag aller Prozessdefinitionsmetadaten.
id
Hierbei handelt es sich um eine 64-Bit-Kennung, die vom Cúram-Schlüsselserver bereitgestellt wird, wenn ein Prozess im Prozessdefinitionstool erstellt wird. Die Prozesskennung muss im Cúram-Workflowsystem eindeutig sein. Der Grund dafür ist, dass die Workflow-Engine anhand der Prozesskennung in Verbindung mit der Prozessversionsnummer Prozessdefinitionseinträge für den Lesezugriff auf die Datenbank voneinander unterscheiden kann.
process-version
Diese Zahl steht für die Version einer Workflowprozessdefinition. Ein Datensatz zur Workflowprozessdefinition wird eindeutig durch seine Kennung und Versionsnummer gekennzeichnet. Eine Prozessdefinition kann mehrere freigegebene Versionen sowie eine Version zur Bearbeitung aufweisen. Sobald eine Prozessdefinition freigegeben wurde, wird eine neue Version erstellt und die Definition kann nicht mehr bearbeitet werden. Für alle nachfolgenden Aktualisierungen muss eine neue Version erstellt werden. Diese Version wird erst dann aktiv, wenn sie freigegeben wird. Wenn ein Prozess umgesetzt wird, wird die höchste freigegebene Versionsnummer verwendet. Prozessinstanzen mit einer festgelegten Versionsnummer behalten diese Nummer so lange bei, bis die Version fertiggestellt ist.
language-version
Bei den Prozessdefinitionsmetadaten handelt es sich um die Cúram-Workflowsprache. Beim Hinzufügen von neuen Funktionen und Erweiterungen kann sich diese Sprache ändern. Mithilfe der Versionsnummer kann die Workflow-Engine ältere Sprachversionen anders als neuere ausführen. Es können aber auch Upgrade-Tools verwendet werden, um alte Prozessdefinitionen in neue Sprachversionen zu konvertieren.
released
Dieses Attribut steht für ein boolesches Flag, das anzeigt, ob eine Prozessdefinition freigegeben wurde oder nicht. Nur Prozessdefinitionen, die freigegeben wurden, können umgesetzt oder als Unterprozesse in einer Subflowaktivität ausgewählt werden (siehe Subflow).
category
Eine Prozessdefinition muss in eine Kategorie eingefügt werden. Die Kategorie muss im Prozessdefinitionstool ausgewählt werden und stammt aus der Codetabelle ProcessCategory. Dieses Attribut kann im Rahmen der Suchfunktion für die Prozessdefinition verwendet werden und hat keine funktionale Wirkung auf den Prozess in der Workflow-Engine.
createdBy
Dieses Attribut stellt den Namen des Benutzers dar, der die Workflowprozessdefinition erstellt hat. Es kann im Rahmen der Suchfunktion für die Prozessdefinition verwendet werden und hat keine funktionale Wirkung auf den Prozess in der Workflow-Engine.
creationDate
Dieses Attribut gibt das Datum und die Zeit der Erstellung der Workflowprozessdefinition an. Es kann im Rahmen der Suchfunktion für die Prozessdefinition verwendet werden und hat keine funktionale Wirkung auf den Prozess in der Workflow-Engine.
name
Anhand des Namens der Prozessdefinition kann ein Prozess zur Umsetzung ermittelt werden. Der Umsetzungsservice (die API, über die ein Prozess in Code umgesetzt wird) bestimmt den umzusetzenden Prozess anhand seines Namens. Daher muss dieser Name innerhalb des Workflowsystems eindeutig sein und kann nach der Prozesserstellung nicht mehr geändert werden. Da es sich bei dem Prozessnamen effektiv um eine Konstante handelt, ist er im Gegensatz zu einem Aktivitätsnamen nicht lokalisierbar.
description
Ein Prozess kann außerdem eine kurze optionale Beschreibung aufweisen, die den Verwendungszweck angibt. Diese kann für die Benutzer hilfreich sein, die die Prozessdefinition zukünftig bearbeiten. Hierbei handelt es sich um ein lokalisierbares Textfeld im selben Format wie alle lokalisierbaren Felder in einer Prozessdefinition (siehe Lokalisierter Text).
documentation
Ein Prozess kann auch einen Link zu einer Dokumentation aufweisen, in der der Prozess noch näher beschrieben wird. Hierbei handelt es sich um ein Feld im Freitextformat, in dem der Entwickler den Namen eines für den Workflowprozess relevanten Dokuments eingeben oder einen Link zu einem solchen Dokument einfügen kann.
web-service
Dieses optionale Element beschreibt die Web-Service-Details eines Workflowprozesses. Ein Prozess kann durch Angabe dieses Metadatenwertes als Web-Service markiert werden. Der Wert zeigt an, dass der Prozess als Web-Service verfügbar gemacht werden sollte. Dadurch kann der Prozess als Teil eines mithilfe von BPEL (Business Process Execution Language) koordinierten Prozess fungieren, was bedeutet, dass der Prozess über einen BPEL-Prozess aufgerufen werden kann. Einzelheiten zu dieser Funktion finden Sie in Workflow-Web-Services.
expose
Dieses Attribut steht für ein boolesches Flag, das anzeigt, ob die Prozessdefinition als Web-Service verfügbar gemacht werden sollte oder nicht. Eine Workflowprozessdefinition wird standardmäßig nicht als Web-Service festgelegt.
callback-service
Dies ist ein optionales Element, da nicht für alle Aufrufe von einem BPEL-Prozess ein Rückruf erforderlich ist. Der Wert ist ein vollständig qualifizierter Name einer Klasse als Erweiterung der Klasse org.apache.axis.client.Service (die Teil des Service (der Axis-API) des Apache Axis-Projekts ist). Die Klasse org.apache.axis.client.Service wird von der Cúram-Web-Services-Connector-Funktion für ausgehende Web-Services generiert.
failure-allocation-strategy
Für einen Prozess kann auch eine optionale Fehlerzuteilungsstrategie angegeben sein. Beim Zuteilen einer Aufgabe (die einer manuellen Aktivität, siehe Manuell, oder einer Entscheidungsaktivität, sieheEntscheidung, zugeordnet ist) ruft die Workflow-Engine die zugehörige Zuteilungsstrategie auf, um die Liste der Zuteilungsziele abzurufen. Wenn im Rahmen dieses Aufrufs keine Zuteilungsziele zurückgegeben werden, prüft die Workflow-Engine, ob eine Fehlerzuteilungsstrategie vorhanden ist und versucht dann mithilfe dieser Strategie, die Aufgabe zuzuteilen. Da die Zuteilungsstrategie des Typs TARGET direkt ein Zuteilungsziel angibt, ist es nie nötig, auf die Fehlerzuteilungsstrategie zurückzugreifen. Bei der Fehlerzuteilungsstrategie handelt es sich um eine prozessweite Strategie, die (wenn sie angegeben ist) bei Bedarf für alle manuellen Aktivitäten und Entscheidungsaktivitäten im Prozess verwendet wird.
allocation-strategy
Dieses Element beschreibt die für den Prozess verwendete Fehlerzuteilungsstrategie. Die Fehlerzuteilungsstrategie muss vom Typ TARGET sein. Wenn der geschäftliche Resolver die Aufgabe keinem Benutzer, keinem Organisationsobjekt (z. B. einer Organisationseinheit, einer Position oder einer Tätigkeit) oder keinem Gruppenpostfach zuweisen kann, die das angegebene Zuteilungsziel verwenden, wird die Aufgabe dem Standard-Gruppenpostfach zugewiesen. Das Kennungsattribut stellt die Kennung des Zuteilungsziels dar, das als Fehlerzuteilungsstrategie verwendet wird.