Hierarchy Handling (Graphviz Dot)

Property Value
Type: advanced
Identifier: org.eclipse.elk.hierarchyHandling
Meta Data Provider: core.options.CoreOptions
Value Type: org.eclipse.elk.core.options.HierarchyHandling (Enum)
Possible Values: INHERIT
INCLUDE_CHILDREN
SEPARATE_CHILDREN
Default Value: HierarchyHandling.INHERIT (as defined in org.eclipse.elk)
Applies To: parents, nodes

Description

Determines whether separate layout runs are triggered for different compound nodes in a hierarchical graph. Setting a node’s hierarchy handling to INCLUDE_CHILDREN will lay out that node and all of its descendants in a single layout run, until a descendant is encountered which has its hierarchy handling set to SEPARATE_CHILDREN. In general, SEPARATE_CHILDREN will ensure that a new layout run is triggered for a node with that setting. Including multiple levels of hierarchy in a single layout run may allow cross-hierarchical edges to be laid out properly. If the root node is set to INHERIT (or not set at all), the default behavior is SEPARATE_CHILDREN.

Additional Documentation

If activated, the whole hierarchical graph is passed to dot as a whole. Note however that dot performs a ‘compound’ layout where it somewhat flattens the hierarchy and performs a layout on the flattened graph. As a consequence, padding information of hierarchical child nodes is discarded.