Entity Management
Last updated
Last updated
The ProcessMaker IDP datastore is the abstract layer over all persistent storage across the platform. It is flexible and configurable, and therefore can grow with your organization as your use of ProcessMaker IDP changes over time. The datastore consists of a core schema on top of which custom schemas can be created. To assure flexibility, the core schema itself is also adjustable just like any other data in the datastore. Binary data can be stored on different locations. The following options are supported and are S3 compliant:
PostgresDB
Cloud
On premises
File system
An Entity describes a type of data. All data in ProcessMaker IDP are represented as Entities in the datastore. There are core Entities that are part of the core schema as well as those that you create for your organization. Entities are described in a list. The following are examples of custom Entities you might create that are represented in a list:
Location
Person
Organization
The following are the core types that are part of the :
Attribute Entity type
Constraint Entity type
Domain Entity type
Entity Entity type
An Attribute defines a property of an Entity type. It takes a value from a Domain Entity type. The following are examples of Attributes for the Entity person:
Gender
Age
Date of birth
See how to view Attribute-type Entities.
Instances of the Domain Entity type define basic types of data. Some basic types of data that are Domain Entity type by default include the following:
BOOLEAN
INT
DATE TIMESTAMP WITH TIMEZONE
TEXT
Custom Domain Entities can be added based on your specific use of the platform. The following are examples:
CURRENCY
DOCUMENT_TYPE
See how to view Domain-type Entities.
A Constraint Entity type defines a requirement for the attributes of an entity type. By default, there are three types of constraints in ProcessMaker IDP:
Foreign Key: The Foreign Key Constraint defines an Attribute for instances of an Entity type, that references the primary key of another Entity type. The Foreign Key Constraint references the relationship between an Attribute and an Entity. A relation can have properties such as type, or recipient.
Index: The Index Constraint defines an index.
Unique: The Unique Constraint defines a set of attributes which must be unique for an Entity type.
See how to view Constraint-type Entities.
The Entity Entity type defines what all Entity types look like. It has an attribute Name which defines the Entity type. See how to view Entity-type Entities.
Attribute Name (Describes the Entity)
Attribute Value (Value for the Entity Instance)
Color
Black
Brand
Mercedes
Model
EQB 300 4MATIC
Serial Number
35163562432-647242
Purchasing Invoice
"Proof of Purchase for Mercedes EQB 300 4MATIC, Serial Number 35163562432-647242": 20230212INV003
Entities may associate with each other, called a Foreign Key Constraint. To demonstrate the relationship between an Entity in the metadata model for "Car," consider one record for a different metadata model for "File," also described with three Entities.
Attribute Name (Describes the Entity)
Attribute Value (Value for the Entity Instance)
Name
"Proof of Purchase for Mercedes EQB 300 4MATIC, Serial Number 35163562432-647242": 20230212INV003
File Type
Classification Type
Purchasing Invoice
In the above example, the Entity named "Purchasing Invoice" in the "Car" metadata model has a relationship with both the Entity named "Name" and "Classification Type" in the "File" metadata model.
Each represents a metadata model that describes the data it represents. Each Entity is stored in the datastore as a table, while each instance of that Entity is a record in that table. The metadata model is a set of that describe an Entity. Consider the following example of one record for the data model for "Car," described with five Attributes.