If you read the net.xml it has almost all the information and further information that might not be needed.
Perhaps it would be easier to read only the nod.xml and edge.xml files. From these two files you can generate a graph.
Personally, I have created such model for CLWPR [1][2], but not reading SUMO files yet, just a custom txt file since my road topologies are small. What I found hard and time consuming (personally and in simulation) was to identify the road based on the position of the vehicle. The larger the map, the more time it takes. Perhaps I need to consider a more efficient way to do it, or couple SUMO directly with one of the two simulators I suggested.
[1] Konstantinos Katsaros, Mehrdad Dianati and Karsten Roscher. A Position-based Routing Module for Simulation of VANETs in NS-3 In Workshop on ns-3, International ICST Conference on Simulation Tools and Techniques (SIMUTools), 2012.
[2] Konstantinos Katsaros, Mehrdad Dianati, Rahim Tafazolli, and Ralf Kernchen. CLWPR - A Novel Cross-Layer Optimized Position Based Routing Protocol for VANETs. In IEEE Vehicular Networking Conference, pages 139-146, 2011