Many capabilities that are needed for recursive applications in engineering and project management are not well supported by the usual formulations of recursion we identify a class of recursions called traversal recursions (which model traversals of a directed graph) that have two important properties they can supply the necessary capabilities and efficient processing algorithms have been defined for them first we present a taxonomy of traversal recursions based on properties of the recursion on graph structure and on unusual types of metadata this taxonomy is exploited to identify solvable recursions and to select an execution algorithm we show how graph traversal can sometimes outperform the more general iteration algorithm. finally we show how a conventional query optimizer architecture can be extended to handle recursive queries and views.