/
Object Documentation
Object Documentation
- 1 Model
- 1.1 Petri Net
- 1.2 Transition
- 1.3 Place
- 1.4 Arc
- 1.4.1 Regular arc
- 1.4.2 Reset arc
- 1.4.3 Inhibitor arc
- 1.4.4 Read arc
- 1.4.5 Variable arc
- 1.5 Transaction
- 1.6 Roles
- 1.7 Data fields
- 2 Instance
Model
Petri Net
XSD schema
<xs:element name="document">
<xs:complexType>
<xs:sequence>
<xs:element ref="id" minOccurs="0"/>
<xs:element ref="version" minOccurs="0"/>
<xs:element ref="initials" minOccurs="0"/>
<xs:element name="title" minOccurs="0" type="i18nStringType"/>
<xs:element ref="icon" minOccurs="0"/>
<xs:element ref="defaultRole" minOccurs="0"/>
<xs:element ref="transitionRole" minOccurs="0"/>
<xs:element ref="caseName" minOccurs="0"/>
<xs:element ref="transaction" maxOccurs="unbounded" minOccurs="0"/>
<xs:element ref="role" maxOccurs="unbounded" minOccurs="0"/>
<xs:element ref="data" maxOccurs="unbounded" minOccurs="0"/>
<xs:element ref="mapping" maxOccurs="unbounded" minOccurs="0"/>
<xs:element ref="i18n" maxOccurs="unbounded" minOccurs="0"/>
<xs:element ref="transition" maxOccurs="unbounded"/>
<xs:element ref="place" maxOccurs="unbounded" minOccurs="0"/>
<xs:element ref="arc" maxOccurs="unbounded" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>
Net document
<document
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="petriflow_schema.xsd">
<id>1</id>
<defaultRole>true</defaultRole>
<caseName>New quote</caseName>
<transaction>...</transaction>
...
<role>...</role>
...
<data>...</data>
...
<mapping>...</mapping>
...
<i18n>...</i18n>
...
<transition>...</transition>
...
<place>...</place>
...
<arc>...</arc>
...
</document>
Object
PetriNet
- ObjectId _id
- String importId
- String identifier
- I18nString title
- I18nString defaultCaseName
- String initials
- String icon
- LocalDateTime creationDate
- String version
- Author author
- Map<String, Place> places
- Map<String, Transition> transitions
- Map<String, List<Arc>> arcs
- Map<String, Field> dataSet
- Map<String, ProcessRole> roles
- Map<String, Transaction> transactions
- boolean initialized
- String importXmlPath
Transition
XSD schema
<xs:element name="transition">
<xs:complexType>
<xs:sequence>
<xs:element ref="id"/>
<xs:element ref="x"/>
<xs:element ref="y"/>
<xs:element ref="label"/>
<xs:element ref="icon" minOccurs="0"/>
<xs:element ref="priority" minOccurs="0"/>
<xs:element ref="assignPolicy" minOccurs="0"/>
<xs:element ref="dataFocusPolicy" minOccurs="0"/>
<xs:element ref="finishPolicy" minOccurs="0"/>
<xs:element ref="trigger" minOccurs="0" maxOccurs="unbounded"/>
<xs:element ref="transactionRef" minOccurs="0"/>
<xs:element ref="roleRef" maxOccurs="unbounded" minOccurs="0"/>
<xs:element ref="dataRef" maxOccurs="unbounded" minOccurs="0"/>
<xs:element ref="dataGroup" maxOccurs="unbounded" minOccurs="0"/>
<xs:element ref="event" maxOccurs="unbounded" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>
Object
Transition
- ObjectId _id
- String importId
- Position position
- I18nString title;
- Map<String, DataGroup> dataGroups
- LinkedHashMap<String, DataFieldLogic> dataSet
- Map<String, Set<RolePermission>> roles
- List<Trigger> triggers
- Integer priority
- AssignPolicy assignPolicy
- String icon
- DataFocusPolicy dataFocusPolicy
- FinishPolicy finishPolicy
- Map<EventType, Event> events
- String defaultRoleId
Place
XSD schema
<xs:element name="place">
<xs:complexType>
<xs:sequence>
<xs:element ref="id"/>
<xs:element ref="x"/>
<xs:element ref="y"/>
<xs:element ref="label"/>
<xs:element ref="tokens"/>
<xs:choice>
<xs:element ref="isStatic"/>
<xs:element ref="static"/>
</xs:choice>
</xs:sequence>
</xs:complexType>
</xs:element>
Arc
XSD schema
<xs:element name="arc">
<xs:complexType>
<xs:sequence>
<xs:element ref="id"/>
<xs:element name="type" type="arc_type" default="regular"/>
<xs:element ref="sourceId"/>
<xs:element ref="destinationId"/>
<xs:element ref="multiplicity"/>
<xs:element ref="breakPoint" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
Element type is restricted to values:
regular
reset
inhibitor
read
variable
Regular arc
XSD schema
<arc>
<id>1</id>
<type>regular</type>
<sourceId>2</sourceId>
<destinationId>3</destinationId>
<multiplicity>1</multiplicity>
</arc>
Reset arc
XSD schema
<arc>
<id>1</id>
<type>reset</type>
<sourceId>2</sourceId>
<destinationId>3</destinationId>
<multiplicity>1</multiplicity>
</arc>
Inhibitor arc
XSD schema
<arc>
<id>1</id>
<type>inhibitor</type>
<sourceId>2</sourceId>
<destinationId>3</destinationId>
<multiplicity>1</multiplicity>
</arc>
Read arc
XSD schema
<arc>
<id>1</id>
<type>read</type>
<sourceId>2</sourceId>
<destinationId>3</destinationId>
<multiplicity>1</multiplicity>
</arc>
Variable arc
Variable arcs have the same behaviour as regular arcs except the multiplicity is read from a number data field. Data field is identified by multiplicity tag which contains fields id.
Variable arc
<data type="number">
<id>500001</id>
<title>vararc_byt_true</title>
<init>0.0</init>
</data>
...
<arc>
<id>3270</id>
<type>variable</type>
<sourceId>414</sourceId>
<destinationId>2284</destinationId>
<multiplicity>500001</multiplicity>
</arc>
Transaction
XSD schema
<xs:element name="transaction">
<xs:complexType>
<xs:sequence>
<xs:element ref="id"/>
<xs:element ref="title"/>
</xs:sequence>
</xs:complexType>
</xs:element>
Roles
XSD schema
<xs:element name="role">
<xs:complexType>
<xs:sequence>
<xs:element ref="id"/>
<xs:choice>
<xs:element ref="title"/>
<xs:element ref="name"/>
</xs:choice>
</xs:sequence>
</xs:complexType>
</xs:element>
Data fields
XSD schema
<xs:element name="data">
<xs:complexType>
<xs:sequence>
<xs:element ref="id"/>
<xs:element ref="title"/>
<xs:element ref="placeholder" minOccurs="0"/>
<xs:element ref="desc" minOccurs="0"/>
<xs:element ref="values" minOccurs="0" maxOccurs="unbounded"/>
<xs:element ref="valid" minOccurs="0" maxOccurs="unbounded"/>
<xs:element ref="init" minOccurs="0"/>
<xs:element ref="encryption" minOccurs="0"/>
<xs:element ref="action" minOccurs="0" maxOccurs="unbounded"/>
<xs:element ref="actionRef" minOccurs="0" maxOccurs="unbounded"/>
<xs:element ref="documentRef" minOccurs="0"/>
<xs:element ref="remote" minOccurs="0"/>
</xs:sequence>
<xs:attribute type="data_type" name="type" use="required"/>
<xs:attribute type="xs:boolean" name="immediate"/>
</xs:complexType>
</xs:element>
Object
Field
- ObjectId _id
- String importId
- I18nString name
- I18nString description
- I18nString placeholder
- ObjectNode behavior
- T value
- Long order
- boolean immediate
- String encryption
Instance
Case
Object
Case
- ObjectId _id
- String visualId
- PetriNet petriNet
- String processIdentifier
- Map<String, Integer> activePlaces
- String title
- String color
- String icon
- LocalDateTime creationDate
- LinkedHashMap<String, DataField> dataSet
- LinkedHashSet<String> immediateDataFields
- List<Field> immediateData
- Author author
- Map<String, Integer> resetArcTokens
- Set<TaskPair> tasks
Task
Object
Task
- ObjectId _id
- String processId
- String caseId
- String transitionId
- I18nString title
- String caseColor
- String caseTitle
- Integer priority
- Long userId
- User user
- List<Trigger> triggers
- Map<String, Map<String, Boolean>> roles
- LocalDateTime startDate
- LocalDateTime finishDate
- Long finishedBy
- String transactionId
- Boolean requiredFilled
- LinkedHashSet<String> immediateDataFields
- List<Field> immediateData
- String icon
- AssignPolicy assignPolicy
- DataFocusPolicy dataFocusPolicy
- FinishPolicy finishPolicy
, multiple selections available,
Related content
Actions API documentation
Actions API documentation
Read with this
Actions API
Actions API
Read with this
FAQ
Read with this