mirror of
https://github.com/Alfresco/alfresco-community-repo.git
synced 2025-07-24 17:32:48 +00:00
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@4169 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
356 lines
12 KiB
XML
356 lines
12 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
|
|
<model name="bpm:businessprocessmodel" xmlns="http://www.alfresco.org/model/dictionary/1.0">
|
|
|
|
<description>Business Process Model</description>
|
|
<author>Alfresco</author>
|
|
<version>1.0</version>
|
|
|
|
<!-- Imports are required to allow references to definitions in other models -->
|
|
<imports>
|
|
<!-- Import Alfresco Dictionary Definitions -->
|
|
<import uri="http://www.alfresco.org/model/dictionary/1.0" prefix="d" />
|
|
<!-- Import Alfresco Content Domain Model Definitions -->
|
|
<import uri="http://www.alfresco.org/model/content/1.0" prefix="cm" />
|
|
</imports>
|
|
|
|
<namespaces>
|
|
<namespace uri="http://www.alfresco.org/model/bpm/1.0" prefix="bpm" />
|
|
</namespaces>
|
|
|
|
<constraints>
|
|
|
|
<constraint name="bpm:allowedPriority" type="LIST">
|
|
<parameter name="allowedValues">
|
|
<!-- TODO: Determine if priority values can be mapped to human-readable strings -->
|
|
<list>
|
|
<value>1</value>
|
|
<value>2</value>
|
|
<value>3</value>
|
|
</list>
|
|
</parameter>
|
|
</constraint>
|
|
|
|
<constraint name="bpm:allowedStatus" type="LIST">
|
|
<parameter name="allowedValues">
|
|
<!-- TODO: Determine if status values can be mapped to human-readable strings -->
|
|
<list>
|
|
<value>Not Yet Started</value>
|
|
<value>In Progress</value>
|
|
<value>On Hold</value>
|
|
<value>Cancelled</value>
|
|
<value>Completed</value>
|
|
</list>
|
|
</parameter>
|
|
</constraint>
|
|
|
|
<constraint name="bpm:percentage" type="MINMAX">
|
|
<parameter name="minValue">
|
|
<value>0</value>
|
|
</parameter>
|
|
<parameter name="maxValue">
|
|
<value>100</value>
|
|
</parameter>
|
|
</constraint>
|
|
|
|
</constraints>
|
|
|
|
<types>
|
|
|
|
<!-- -->
|
|
<!-- Base definition for all Tasks -->
|
|
<!-- -->
|
|
|
|
<type name="bpm:task">
|
|
<parent>cm:content</parent>
|
|
|
|
<properties>
|
|
|
|
<!-- -->
|
|
<!-- Assignment -->
|
|
<!-- -->
|
|
<!-- Note: Implemented via cm:ownable aspect -->
|
|
|
|
<!-- -->
|
|
<!-- Task Identifier -->
|
|
<!-- -->
|
|
<property name="bpm:taskId">
|
|
<type>d:long</type>
|
|
<protected>true</protected>
|
|
<mandatory>true</mandatory>
|
|
</property>
|
|
|
|
<!-- Task Description -->
|
|
<property name="bpm:description">
|
|
<type>d:text</type>
|
|
</property>
|
|
|
|
<!-- -->
|
|
<!-- Task Dates -->
|
|
<!-- -->
|
|
<property name="bpm:startDate">
|
|
<type>d:date</type>
|
|
<protected>true</protected>
|
|
</property>
|
|
<property name="bpm:completionDate">
|
|
<type>d:date</type>
|
|
<protected>true</protected>
|
|
</property>
|
|
<property name="bpm:dueDate">
|
|
<type>d:date</type>
|
|
</property>
|
|
|
|
<!-- -->
|
|
<!-- Task Progress -->
|
|
<!-- -->
|
|
<property name="bpm:status">
|
|
<type>d:text</type>
|
|
<mandatory>true</mandatory>
|
|
<default>Not Yet Started</default>
|
|
<constraints>
|
|
<constraint ref="bpm:allowedStatus" />
|
|
</constraints>
|
|
</property>
|
|
<property name="bpm:priority">
|
|
<type>d:int</type>
|
|
<mandatory>true</mandatory>
|
|
<default>2</default>
|
|
<constraints>
|
|
<constraint ref="bpm:allowedPriority" />
|
|
</constraints>
|
|
</property>
|
|
<property name="bpm:percentComplete">
|
|
<type>d:int</type>
|
|
<mandatory>true</mandatory>
|
|
<default>0</default>
|
|
<constraints>
|
|
<constraint ref="bpm:percentage" />
|
|
</constraints>
|
|
</property>
|
|
|
|
<!-- -->
|
|
<!-- Task Notes -->
|
|
<!-- -->
|
|
<!-- Note: Implemented via cm:content property : see 'fm:post' -->
|
|
|
|
</properties>
|
|
|
|
<associations>
|
|
|
|
<!-- List of users who may potentially get assigned to the task -->
|
|
<association name="bpm:pooledActors">
|
|
<source>
|
|
<mandatory>false</mandatory>
|
|
<many>false</many>
|
|
</source>
|
|
<target>
|
|
<class>cm:person</class>
|
|
<mandatory>false</mandatory>
|
|
<many>true</many>
|
|
</target>
|
|
</association>
|
|
|
|
</associations>
|
|
|
|
<mandatory-aspects>
|
|
<aspect>cm:ownable</aspect>
|
|
</mandatory-aspects>
|
|
</type>
|
|
|
|
|
|
<!-- -->
|
|
<!-- The base for all Tasks assigned via a Workflow -->
|
|
<!-- -->
|
|
|
|
<type name="bpm:workflowTask">
|
|
<parent>bpm:task</parent>
|
|
|
|
<properties>
|
|
|
|
<!-- Task Context -->
|
|
<!-- e.g. Space, Document -->
|
|
<property name="bpm:context">
|
|
<type>d:noderef</type>
|
|
</property>
|
|
|
|
<!-- Task Outcome -->
|
|
<property name="bpm:outcome">
|
|
<type>d:text</type><!-- Transition id -->
|
|
</property>
|
|
|
|
<!-- Items within package marked as complete -->
|
|
<property name="bpm:completedItems">
|
|
<type>d:noderef</type>
|
|
<multiple>true</multiple>
|
|
</property>
|
|
|
|
<!-- Applicable actions for workflow package -->
|
|
<property name="bpm:packageActionGroup">
|
|
<type>d:text</type>
|
|
<!-- NOTE: empty default specified, therefore no actions -->
|
|
<default></default>
|
|
</property>
|
|
|
|
<!-- Applicable actions for workflow package item -->
|
|
<property name="bpm:packageItemActionGroup">
|
|
<type>d:text</type>
|
|
<default>read_package_item_actions</default>
|
|
</property>
|
|
|
|
</properties>
|
|
|
|
<associations>
|
|
|
|
<association name="bpm:package">
|
|
<source>
|
|
<mandatory>false</mandatory>
|
|
<many>false</many>
|
|
</source>
|
|
<target>
|
|
<class>bpm:workflowPackage</class>
|
|
<mandatory>true</mandatory>
|
|
<many>false</many>
|
|
</target>
|
|
</association>
|
|
|
|
</associations>
|
|
|
|
</type>
|
|
|
|
|
|
<!-- -->
|
|
<!-- Default Start Task -->
|
|
<!-- -->
|
|
|
|
<type name="bpm:startTask">
|
|
<parent>bpm:workflowTask</parent>
|
|
|
|
<properties>
|
|
|
|
<!-- Description for the workflow as a whole -->
|
|
<property name="bpm:workflowDescription">
|
|
<type>d:text</type>
|
|
</property>
|
|
|
|
<!-- Due date for the workflow as a whole -->
|
|
<property name="bpm:workflowDueDate">
|
|
<type>d:date</type>
|
|
</property>
|
|
|
|
<!-- Priority for the workflow as a whole -->
|
|
<property name="bpm:workflowPriority">
|
|
<type>d:int</type>
|
|
<default>2</default>
|
|
<constraints>
|
|
<constraint ref="bpm:allowedPriority" />
|
|
</constraints>
|
|
</property>
|
|
|
|
</properties>
|
|
|
|
<overrides>
|
|
|
|
<property name="bpm:packageActionGroup">
|
|
<default>add_package_item_actions</default>
|
|
</property>
|
|
|
|
<property name="bpm:packageItemActionGroup">
|
|
<default>edit_and_remove_package_item_actions</default>
|
|
</property>
|
|
|
|
</overrides>
|
|
|
|
</type>
|
|
|
|
</types>
|
|
|
|
<aspects>
|
|
|
|
<!-- -->
|
|
<!-- Single Task Assignee -->
|
|
<!-- -->
|
|
|
|
<aspect name="bpm:assignee">
|
|
<associations>
|
|
|
|
<association name="bpm:assignee">
|
|
<source>
|
|
<mandatory>false</mandatory>
|
|
<many>false</many>
|
|
</source>
|
|
<target>
|
|
<class>cm:person</class>
|
|
<mandatory>true</mandatory>
|
|
<many>false</many>
|
|
</target>
|
|
</association>
|
|
|
|
</associations>
|
|
</aspect>
|
|
|
|
<!-- -->
|
|
<!-- Multiple Task Assignees -->
|
|
<!-- -->
|
|
|
|
<aspect name="bpm:assignees">
|
|
<associations>
|
|
|
|
<association name="bpm:assignees">
|
|
<source>
|
|
<mandatory>false</mandatory>
|
|
<many>false</many>
|
|
</source>
|
|
<target>
|
|
<class>cm:person</class>
|
|
<mandatory>true</mandatory>
|
|
<many>true</many>
|
|
</target>
|
|
</association>
|
|
|
|
</associations>
|
|
</aspect>
|
|
|
|
<!-- -->
|
|
<!-- A collection of content routed through a workflow. -->
|
|
<!-- -->
|
|
<!-- Note: this aspect should be applied to a container such as -->
|
|
<!-- a folder, versioned folder or layered folder. -->
|
|
<!-- -->
|
|
|
|
<aspect name="bpm:workflowPackage">
|
|
<properties>
|
|
|
|
<!-- Created by Workflow Service (true), or provided from outside (false) -->
|
|
<property name="bpm:isSystemPackage">
|
|
<type>d:boolean</type>
|
|
</property>
|
|
|
|
<!-- -->
|
|
<!-- Associated Workflow -->
|
|
<!-- -->
|
|
<property name="bpm:workflowDefinitionId">
|
|
<type>d:text</type>
|
|
</property>
|
|
<property name="bpm:workflowDefinitionName">
|
|
<type>d:text</type>
|
|
</property>
|
|
<property name="bpm:workflowInstanceId">
|
|
<type>d:text</type>
|
|
</property>
|
|
|
|
<!-- TODO: Define properties (replicated from Workflow/Task Engine) for -->
|
|
<!-- search within Alfresco e.g. task info, workflow info ... -->
|
|
|
|
</properties>
|
|
|
|
<!-- Commentary -->
|
|
<!-- Note: Implement tracking of comments via fm:discussable aspect -->
|
|
<!-- Note: Haven't made this aspect mandatory as this would force creation -->
|
|
<!-- of forum folder against each package, even if there aren't any -->
|
|
<!-- comments -->
|
|
|
|
</aspect>
|
|
|
|
</aspects>
|
|
|
|
</model> |