code: def generate_nodes_clasification(bpmn_diagram):
          nodes_classification = {}
          classification_element = "Element"
          classification_start_event = "Start Event"
          classification_end_event = "End Event"
          task_list = bpmn_diagram.get_nodes(consts.Consts.task)
          for element in task_list:
              classification_labels = [classification_element]
              BpmnImportUtils.split_join_classification(element, classification_labels, nodes_classification)
          subprocess_list = bpmn_diagram.get_nodes(consts.Consts.subprocess)
          for element in subprocess_list:
              classification_labels = [classification_element]
              BpmnImportUtils.split_join_classification(element, classification_labels, nodes_classification)
          complex_gateway_list = bpmn_diagram.get_nodes(consts.Consts.complex_gateway)
          for element in complex_gateway_list:
              classification_labels = [classification_element]
              BpmnImportUtils.split_join_classification(element, classification_labels, nodes_classification)
          event_based_gateway_list = bpmn_diagram.get_nodes(consts.Consts.event_based_gateway)
          for element in event_based_gateway_list:
              classification_labels = [classification_element]
              BpmnImportUtils.split_join_classification(element, classification_labels, nodes_classification)
          inclusive_gateway_list = bpmn_diagram.get_nodes(consts.Consts.inclusive_gateway)
          for element in inclusive_gateway_list:
              classification_labels = [classification_element]
              BpmnImportUtils.split_join_classification(element, classification_labels, nodes_classification)
          exclusive_gateway_list = bpmn_diagram.get_nodes(consts.Consts.exclusive_gateway)
          for element in exclusive_gateway_list:
              classification_labels = [classification_element]
              BpmnImportUtils.split_join_classification(element, classification_labels, nodes_classification)
          parallel_gateway_list = bpmn_diagram.get_nodes(consts.Consts.parallel_gateway)
          for element in parallel_gateway_list:
              classification_labels = [classification_element]
              BpmnImportUtils.split_join_classification(element, classification_labels, nodes_classification)
          start_event_list = bpmn_diagram.get_nodes(consts.Consts.start_event)
          for element in start_event_list:
              classification_labels = [classification_element, classification_start_event]
              BpmnImportUtils.split_join_classification(element, classification_labels, nodes_classification)
          intermediate_catch_event_list = bpmn_diagram.get_nodes(consts.Consts.intermediate_catch_event)
          for element in intermediate_catch_event_list:
              classification_labels = [classification_element]
              BpmnImportUtils.split_join_classification(element, classification_labels, nodes_classification)
          end_event_list = bpmn_diagram.get_nodes(consts.Consts.end_event)
          for element in end_event_list:
              classification_labels = [classification_element, classification_end_event]
              BpmnImportUtils.split_join_classification(element, classification_labels, nodes_classification)
          intermediate_throw_event_list = bpmn_diagram.get_nodes(consts.Consts.intermediate_throw_event)
          for element in intermediate_throw_event_list:
              classification_labels = [classification_element]
              BpmnImportUtils.split_join_classification(element, classification_labels, nodes_classification)
          return nodes_classification