1. A computer implemented method for traversing a process tree in a digital video editing system, the method comprising: (a) loading the process tree into the digital video editing system, wherein: (i) the process tree comprises one or more parent nodes and one or more child nodes; (ii) each of the one or more parent nodes is dependent on output data from at least one of the one or more child nodes; (iii) each of the one or more parent nodes and each of the one or more child nodes represents a digital video processing task to be performed during a traversal of the process tree to generate a digital video output; (b) each of the one or more parent nodes declaring a corresponding data definition and corresponding data default values, wherein the data definition defines a structure of the output data from a dependent child node used by the corresponding parent node; (c) traversing the process tree, to generate the digital video output, by processing each of the one or more parent nodes and each of the one or more child nodes in logical order, wherein: (i) for each parent node being processed, determining if the data definition for the output data received from a dependent child node is compatible with the data definition declared for that parent node; and (ii) when the data definition is incompatible, the parent node utilizing the data default values.