diff --git a/src/main/java/kieker/analysis/graph/export/graphml/GraphTypeTransformer.java b/src/main/java/kieker/analysis/graph/export/graphml/GraphTypeTransformer.java
index b9367e7cd46183c1b66869ca4114cde59840284c..f2f106654695b5c3a0ac42f33d14dcce6aa3fcec 100644
--- a/src/main/java/kieker/analysis/graph/export/graphml/GraphTypeTransformer.java
+++ b/src/main/java/kieker/analysis/graph/export/graphml/GraphTypeTransformer.java
@@ -1,9 +1,11 @@
 package kieker.analysis.graph.export.graphml;
 
 import org.graphdrawing.graphml.EdgeType;
+import org.graphdrawing.graphml.GraphEdgedefaultType;
 import org.graphdrawing.graphml.GraphType;
 import org.graphdrawing.graphml.NodeType;
 
+import kieker.analysis.graph.Direction;
 import kieker.analysis.graph.Edge;
 import kieker.analysis.graph.Graph;
 import kieker.analysis.graph.Vertex;
@@ -16,13 +18,16 @@ public class GraphTypeTransformer extends AbstractTransformer<GraphType> {
 	public GraphTypeTransformer(final Graph graph) {
 		super(graph);
 		graphType = new GraphType();
+		graphType.setEdgedefault(GraphEdgedefaultType.DIRECTED);
+		graphType.setId(graph.getName());
 	}
 
 	@Override
 	protected void mapVertex(final Vertex vertex) {
 
 		NodeType nodeType = new NodeType();
-		// TODO Map Properties + id
+		nodeType.setId(vertex.getId().toString());
+		// TODO Map Properties
 
 		if (vertex.hasChildGraph()) {
 			Graph childGraph = vertex.getChildGraph();
@@ -37,7 +42,10 @@ public class GraphTypeTransformer extends AbstractTransformer<GraphType> {
 	@Override
 	protected void mapEdge(final Edge edge) {
 		EdgeType edgeType = new EdgeType();
-		// TODO Map Properties + id + source/target
+		edgeType.setId(edge.getId().toString());
+		edgeType.setSource(edge.getVertex(Direction.OUT).getId().toString());
+		edgeType.setTarget(edge.getVertex(Direction.IN).getId().toString());
+		// TODO Map Properties
 		graphType.getDataOrNodeOrEdge().add(edgeType);
 	}