/
Object Documentation

Object Documentation

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



Related content