anchor.diff:      
       Streamer.addEdge edgeConverter edge.Id edge.Source edge.Target edge
   
  -
  +(**
  +To stream the nodes and edges to gephi, we use the addNode/addEdge functions on the list of nodes/edges:
  +*)
  +
  +(***do-not-eval***)
   goNodes |> List.map addOboNode
   goEdges |> List.map addOboEdge
   
   (**
  +Alternatively, when using the data parsed from the provided csv files:
  +*)
  +
  +(***do-not-eval***)
  +nodes |> List.map addOboNode
  +edges |> List.map addOboEdge
  +
  +(**
   Thats it. in roughly 40 lines of code we streamed a complete knowledge graph with 47345 nodes and 77187 edges to gephi. The network is now ready to be explored.
   
   *)
   
  -(*** define:csvSample***)
  -open System.IO
  -open System.Text
  -
  -let readFromFile (file:string) =
  -        seq {use textReader = new StreamReader(file, Encoding.Default)
  -             while not textReader.EndOfStream do
  -                 yield textReader.ReadLine()}
  -
  -let nodes = 
  -    readFromFile (__SOURCE_DIRECTORY__ + "/data/goNodeList.csv") 
  -    |> List.ofSeq
  -    //Skip the header line of the csv file
  -    |> List.skip 1
  -    |> List.map (fun n -> let tmp = n.Split([|','|])
  -                          createGONode tmp.[0] tmp.[1] tmp.[2] (Colors.Table.StatisticalGraphics24.getRandomColor())) 
  -
  -let edges = 
  -    readFromFile (__SOURCE_DIRECTORY__ + "/data/goEdgeList.csv") |> List.ofSeq
  -    |> List.ofSeq
  -    //Skip the header line of the csv file
  -    |> List.skip 1
  -    |> List.map (fun n -> let tmp = n.Split([|','|])
  -                          createGOEdge (tmp.[0] |> int) tmp.[1] tmp.[2] (nodes |> List.find(fun n -> n.Id = tmp.[2])).Color) // this will take some time but ensures that edges have the same color as target nodes.
   (**
   
   # Results
  
positive.code: 
  /// Creates GOEdge
  let createGOEdge i source target tc = {Id = i; Source = source; Target = target; TargetColor = tc}
  
  
  ///Node list containing all GO terms
  
negative.code: If you want to reproduce this analysis, just parse these files and construct the node and edge types from them. Just keep in mind that you loose a lot of information contained in the obo file that way, 
  as the csv files only contains term names and is-A relationships 
  
  *)
  
  (** 
  
  