question: private void export_dependencies ( JCas jcas ) { dependencies = new LinkedHashMap < Token , List < Dependency > > ( ) ; List < Token > nonGoverned = new ArrayList < Token > ( nodes . keySet ( ) ) ; for ( Dependency dependency : select ( jcas , Dependency . class ) ) { Token governor = dependency . getGovernor ( ) ; Token dependent = dependency . getDependent ( ) ; List < Dependency > l = dependencies . get ( governor ) ; if ( l == null ) { dependencies . put ( governor , new ArrayList < Dependency > ( ) ) ; l = dependencies . get ( governor ) ; } l . add ( dependency ) ; nonGoverned . remove ( dependent ) ; } for ( Token t : nonGoverned ) { traverseDependents ( t , "" , - 1 ) ; writeToFile ( "component" , componentId , "p" , "dep" , "dep" ) ; componentId ++ ; } }
target:  Traverse the dependency structure beginning from all "roots", i.e. non-governed tokens.