data VertexMapping = VertexMapping { componentType :: String, elevationAttribute :: String, terminals :: [TerminalPair] } data TerminalPair = TerminalPair { inputTerminal :: String, outputTerminal :: String } data EdgeMapping = EdgeMapping { componentType :: String, bidirectional :: Boolean, lengthAttribute :: String, diameterAttribute :: String, terminals :: [TerminalPair] }