# Uses of Interface
org.flowable.engine.repository.ProcessDefinitionQuery

Packages that use ProcessDefinitionQuery
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.repository
Classes related to the `RepositoryService`.

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

  Methods in org.flowable.engine that return ProcessDefinitionQuery
  Modifier and Type
  Method
  Description
  `ProcessDefinitionQuery`
  RepositoryService.`createProcessDefinitionQuery()`
  Query process definitions.

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

  Methods in org.flowable.engine.repository that return ProcessDefinitionQuery
  Modifier and Type
  Method
  Description
  `ProcessDefinitionQuery`
  ProcessDefinitionQuery.`active()`
  Only selects process definitions which are active
  `ProcessDefinitionQuery`
  ProcessDefinitionQuery.`deploymentId(String deploymentId)`
  Only select process definitions that are deployed in a deployment with the given deployment id
  `ProcessDefinitionQuery`
  ProcessDefinitionQuery.`deploymentIds(Set<String> deploymentIds)`
  Select process definitions that are deployed in deployments with the given set of ids
  `ProcessDefinitionQuery`
  ProcessDefinitionQuery.`latestVersion()`
  Only select the process definitions which are the latest deployed (ie. which have the highest version number for the given key).
  `ProcessDefinitionQuery`
  ProcessDefinitionQuery.`locale(String locale)`
  Localize process definition name and description to specified locale.
  `ProcessDefinitionQuery`
  ProcessDefinitionQuery.`messageEventSubscriptionName(String messageName)`
  Selects the single process definition which has a start message event with the messageName.
  `ProcessDefinitionQuery`
  ProcessDefinitionQuery.`orderByDeploymentId()`
  Order by deployment id (needs to be followed by `Query.asc()` or `Query.desc()`).
  `ProcessDefinitionQuery`
  ProcessDefinitionQuery.`orderByProcessDefinitionCategory()`
  Order by the category of the process definitions (needs to be followed by `Query.asc()` or `Query.desc()`).
  `ProcessDefinitionQuery`
  ProcessDefinitionQuery.`orderByProcessDefinitionId()`
  Order by the id of the process definitions (needs to be followed by `Query.asc()` or `Query.desc()`).
  `ProcessDefinitionQuery`
  ProcessDefinitionQuery.`orderByProcessDefinitionKey()`
  Order by process definition key (needs to be followed by `Query.asc()` or `Query.desc()`).
  `ProcessDefinitionQuery`
  ProcessDefinitionQuery.`orderByProcessDefinitionName()`
  Order by the name of the process definitions (needs to be followed by `Query.asc()` or `Query.desc()`).
  `ProcessDefinitionQuery`
  ProcessDefinitionQuery.`orderByProcessDefinitionVersion()`
  Order by the version of the process definitions (needs to be followed by `Query.asc()` or `Query.desc()`).
  `ProcessDefinitionQuery`
  ProcessDefinitionQuery.`orderByTenantId()`
  Order by tenant id (needs to be followed by `Query.asc()` or `Query.desc()`).
  `ProcessDefinitionQuery`
  ProcessDefinitionQuery.`parentDeploymentId(String deploymentId)`
  Only select process definitions that are deployed in a deployment with the given parent deployment id
  `ProcessDefinitionQuery`
  ProcessDefinitionQuery.`processDefinitionCategory(String processDefinitionCategory)`
  Only select process definitions with the given category.
  `ProcessDefinitionQuery`
  ProcessDefinitionQuery.`processDefinitionCategoryLike(String processDefinitionCategoryLike)`
  Only select process definitions where the category matches the given parameter.
  `ProcessDefinitionQuery`
  ProcessDefinitionQuery.`processDefinitionCategoryNotEquals(String categoryNotEquals)`
  Only select deployments that have a different category then the given one.
  `ProcessDefinitionQuery`
  ProcessDefinitionQuery.`processDefinitionEngineVersion(String engineVersion)`
  Only select process definitions that have the given engine version.
  `ProcessDefinitionQuery`
  ProcessDefinitionQuery.`processDefinitionId(String processDefinitionId)`
  Only select process definition with the given id.
  `ProcessDefinitionQuery`
  ProcessDefinitionQuery.`processDefinitionIds(Set<String> processDefinitionIds)`
  Only select process definitions with the given ids.
  `ProcessDefinitionQuery`
  ProcessDefinitionQuery.`processDefinitionKey(String processDefinitionKey)`
  Only select process definition with the given key.
  `ProcessDefinitionQuery`
  ProcessDefinitionQuery.`processDefinitionKeyLike(String processDefinitionKeyLike)`
  Only select process definitions where the key matches the given parameter.
  `ProcessDefinitionQuery`
  ProcessDefinitionQuery.`processDefinitionName(String processDefinitionName)`
  Only select process definitions with the given name.
  `ProcessDefinitionQuery`
  ProcessDefinitionQuery.`processDefinitionNameLike(String processDefinitionNameLike)`
  Only select process definitions where the name matches the given parameter.
  `ProcessDefinitionQuery`
  ProcessDefinitionQuery.`processDefinitionNameLikeIgnoreCase(String nameLikeIgnoreCase)`
  Only select process definitions where the name matches the given parameter, ignoring upper/lower case.
  `ProcessDefinitionQuery`
  ProcessDefinitionQuery.`processDefinitionResourceName(String resourceName)`
  Only select process definition with the given resource name.
  `ProcessDefinitionQuery`
  ProcessDefinitionQuery.`processDefinitionResourceNameLike(String resourceNameLike)`
  Only select process definition with a resource name like the given .
  `ProcessDefinitionQuery`
  ProcessDefinitionQuery.`processDefinitionTenantId(String tenantId)`
  Only select process definitions that have the given tenant id.
  `ProcessDefinitionQuery`
  ProcessDefinitionQuery.`processDefinitionTenantIdLike(String tenantIdLike)`
  Only select process definitions with a tenant id like the given one.
  `ProcessDefinitionQuery`
  ProcessDefinitionQuery.`processDefinitionVersion(Integer processDefinitionVersion)`
  Only select process definition with a certain version.
  `ProcessDefinitionQuery`
  ProcessDefinitionQuery.`processDefinitionVersionGreaterThan(Integer processDefinitionVersion)`
  Only select process definitions which version are greater than a certain version.
  `ProcessDefinitionQuery`
  ProcessDefinitionQuery.`processDefinitionVersionGreaterThanOrEquals(Integer processDefinitionVersion)`
  Only select process definitions which version are greater than or equals a certain version.
  `ProcessDefinitionQuery`
  ProcessDefinitionQuery.`processDefinitionVersionLowerThan(Integer processDefinitionVersion)`
  Only select process definitions which version are lower than a certain version.
  `ProcessDefinitionQuery`
  ProcessDefinitionQuery.`processDefinitionVersionLowerThanOrEquals(Integer processDefinitionVersion)`
  Only select process definitions which version are lower than or equals a certain version.
  `ProcessDefinitionQuery`
  ProcessDefinitionQuery.`processDefinitionWithoutTenantId()`
  Only select process definitions that do not have a tenant id.
  `ProcessDefinitionQuery`
  ProcessDefinitionQuery.`startableByUser(String userId)`
  Only selects process definitions which given userId is authorized to start
  `ProcessDefinitionQuery`
  ProcessDefinitionQuery.`startableByUserOrGroups(String userId, Collection<String> groups)`
  Only selects process definition which the given userId or groups are authorized to start.
  `ProcessDefinitionQuery`
  ProcessDefinitionQuery.`suspended()`
  Only selects process definitions which are suspended
  `ProcessDefinitionQuery`
  ProcessDefinitionQuery.`withLocalizationFallback()`
  Instruct localization to fallback to more general locales including the default locale of the JVM if the specified locale is not found.