# Uses of Class
org.flowable.bpmn.model.BpmnModel

Packages that use BpmnModel
Package
Description
org.flowable.engine
Public API of the Flowable engine.
Typical usage of the API starts by the creation of a `ProcessEngineConfiguration` (typically based on a configuration file), from which a `ProcessEngine` can be obtained.
Through the services obtained from such a `ProcessEngine`, BPM and workflow operation can be executed:
`RepositoryService`: Manages `Deployment`s.
`RuntimeService`: For starting and searching `ProcessInstance`s.
`TaskService`: Exposes operations to manage human (standalone) tasks, such as claiming, completing and assigning tasks.
`IdentityService`: Used for managing users, groups and the relations between them.
`ManagementService`: Exposes engine administration and maintenance operations, which have no relation to the runtime exection of business processes.
`HistoryService`: Exposes information about ongoing and past process instances.
`FormService`: Access to form data and rendered forms for starting new process instances and completing tasks.
org.flowable.engine.compatibility
org.flowable.engine.delegate
Interfaces used to include Java code in a process as the behavior of an activity or as a listener to process events with `JavaDelegate`s.
org.flowable.engine.delegate.event.impl
org.flowable.engine.dynamic
org.flowable.engine.repository
Classes related to the `RepositoryService`.
org.flowable.engine.test
Helper classes for testing processes.

- ## Uses of BpmnModel in org.flowable.engine

  Methods in org.flowable.engine that return BpmnModel
  Modifier and Type
  Method
  Description
  `BpmnModel`
  RepositoryService.`getBpmnModel(String processDefinitionId)`
  Returns the `BpmnModel` corresponding with the process definition with the provided process definition id.
  Methods in org.flowable.engine with parameters of type BpmnModel
  Modifier and Type
  Method
  Description
  `List<org.flowable.validation.ValidationError>`
  RepositoryService.`validateProcess(BpmnModel bpmnModel)`
  Validates the given process definition against the rules for executing a process definition on the process engine.

- ## Uses of BpmnModel in org.flowable.engine.compatibility

  Methods in org.flowable.engine.compatibility that return BpmnModel
  Modifier and Type
  Method
  Description
  `BpmnModel`
  Flowable5CompatibilityHandler.`getProcessDefinitionBpmnModel(String processDefinitionId)`

- ## Uses of BpmnModel in org.flowable.engine.delegate

  Methods in org.flowable.engine.delegate that return BpmnModel
  Modifier and Type
  Method
  Description
  `static BpmnModel`
  DelegateHelper.`getBpmnModel(DelegateExecution execution)`
  Returns the `BpmnModel` matching the process definition bpmn model for the process definition of the passed `DelegateExecution`.

- ## Uses of BpmnModel in org.flowable.engine.delegate.event.impl

  Methods in org.flowable.engine.delegate.event.impl that return BpmnModel
  Modifier and Type
  Method
  Description
  `protected BpmnModel`
  BpmnModelEventDispatchAction.`extractBpmnModelFromEvent(FlowableEvent event)`
  In case no process-context is active, this method attempts to extract a process-definition based on the event.

- ## Uses of BpmnModel in org.flowable.engine.dynamic

  Constructors in org.flowable.engine.dynamic with parameters of type BpmnModel
  Modifier
  Constructor
  Description
  ``
  `DynamicProcessDefinitionSummary(BpmnModel bpmnModel, com.fasterxml.jackson.databind.node.ObjectNode processInfo, com.fasterxml.jackson.databind.ObjectMapper objectMapper)`

- ## Uses of BpmnModel in org.flowable.engine.repository

  Methods in org.flowable.engine.repository with parameters of type BpmnModel
  Modifier and Type
  Method
  Description
  `DeploymentBuilder`
  DeploymentBuilder.`addBpmnModel(String resourceName, BpmnModel bpmnModel)`

- ## Uses of BpmnModel in org.flowable.engine.test

  Methods in org.flowable.engine.test with parameters of type BpmnModel
  Modifier and Type
  Method
  Description
  `org.flowable.engine.impl.bpmn.behavior.WebServiceActivityBehavior`
  TestActivityBehaviorFactory.`createWebServiceActivityBehavior(SendTask sendTask, BpmnModel bpmnModel)`
  `org.flowable.engine.impl.bpmn.behavior.WebServiceActivityBehavior`
  TestActivityBehaviorFactory.`createWebServiceActivityBehavior(ServiceTask serviceTask, BpmnModel bpmnModel)`