def startElement(self, name, attrs): if name == 'district': self._StartDTIn = self._net.newVertex() self._StartDTIn.label = attrs['id'] self._StartDTOut = self._net.newVertex() self._StartDTOut.label = self._StartDTIn.label self._net._startVertices.append(self._StartDTIn) self._net._endVertices.append(self._StartDTOut) elif name == 'dsink': sinklink = self._net.getEdge(attrs['id']) self.I += 1 conlink = self._StartDTOut.label + str(self.I) newEdge = Edge(conlink, sinklink.target, self._StartDTOut, "real") self._net.addEdge(newEdge) newEdge.ratio = attrs['weight'] newEdge.connection = 1 elif name == 'dsource': sourcelink = self._net.getEdge(attrs['id']) self.I += 1 conlink = self._StartDTIn.label + str(self.I) newEdge = Edge(conlink, self._StartDTIn, sourcelink.source, "real") self._net.addEdge(newEdge) newEdge.ratio = attrs['weight'] newEdge.connection = 2