# Class ProcessInstanceTreeItem OptimaJet.Workflow.MongoDB.ProcessInstanceTreeItem Namespace: [OptimaJet.Workflow.MongoDB](https://api.workflowengine.io/mongodb/OptimaJet.Workflow.MongoDB/) ```csharp public class ProcessInstanceTreeItem : IProcessInstanceTreeItem ``` ## Type Hierarchy - ProcessInstanceTreeItem Current type - Implemented interfaces - [IProcessInstanceTreeItem](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Persistence/IProcessInstanceTreeItem/) ## Properties `public Guid Id { get; set; }` Gets or sets the process ID exposed by ProcessInstance.ProcessId. `public Guid? ParentProcessId { get; set; }` Gets or sets the immediate parent process ID exposed by ProcessInstance.ParentProcessId, or [null](https://learn.microsoft.com/dotnet/csharp/language-reference/keywords/null) for the root process. `public Guid RootProcessId { get; set; }` Gets or sets the process ID of the top-level process instance, exposed by ProcessInstance.RootProcessId. `public string SubprocessName { get; set; }` Gets or sets the name assigned to the subprocess, exposed by ProcessInstance.SubprocessName. `public string StartingTransition { get; set; }` Gets or sets the name of the TransitionForkType.ForkStart transition that created the subprocess, as recorded by ProcessDefinition.StartingTransition. ## Methods `public static List CreateFromBsonDocuments(List instances, List schemes)` ### Parameters | Name | Type | Description | | --- | --- | --- | | `instances` | `List` | | | `schemes` | `List` | | ### Returns | Type | Description | | --- | --- | | `List` | | [Previous OrderBy](https://api.workflowengine.io/mongodb/OptimaJet.Workflow.MongoDB/OrderBy-TSource-TKey/) [Next WorkflowApprovalHistory](https://api.workflowengine.io/mongodb/OptimaJet.Workflow.MongoDB/WorkflowApprovalHistory/)