diff --git a/src/Model/River.py b/src/Model/River.py
new file mode 100644
index 0000000000000000000000000000000000000000..4094bc91294b09c5d8b87ad01ad93e84230dfffa
--- /dev/null
+++ b/src/Model/River.py
@@ -0,0 +1,33 @@
+# -*- coding: utf-8 -*-
+
+from Model.Network.Node import Node
+from Model.Network.Edge import Edge
+from Model.Network.Graph import Graph
+
+from Model.Geometry.Profile import Profile
+from Model.Geometry.Reach import Reach
+
+class RiverNode(Node):
+    def __init__(self, id:str, name:str,
+                 x:float, y:float):
+        super(RiverNode, self).__init__(
+            id, name,
+            x, y
+        )
+
+        self.locker = None
+
+class RiverReach(Edge):
+    def __init__(self, id:str, name:str,
+                 node1:RiverNode = None,
+                 node2:RiverNode = None):
+        super(RiverReach, self).__init__(
+            id, name,
+            node1, node2
+        )
+
+        self.reach = None
+
+class River(Graph):
+    def __init__(self):
+        super(River, self).__init__()
diff --git a/src/Model/Study.py b/src/Model/Study.py
index 7363d0269dbd26fc5bcc219bf85124e64b29f278..59a2ec9c7deff56f9bfabcff844271c8552da2e6 100644
--- a/src/Model/Study.py
+++ b/src/Model/Study.py
@@ -19,7 +19,7 @@ class Study(Serializable):
         self.last_save_date = datetime.now()
 
         # Study data
-        self.data = {}
+        self.river = None
 
     @classmethod
     def new(cls):
diff --git a/src/View/Network/NetworkWindow.py b/src/View/Network/NetworkWindow.py
index 8494043642c7d5a789bbf332f599c7f90fe8dca2..d2a7aa362382fc1541d96f4bffadc53aa0a5e598 100644
--- a/src/View/Network/NetworkWindow.py
+++ b/src/View/Network/NetworkWindow.py
@@ -1,8 +1,7 @@
 # -*- coding: utf-8 -*-
 
-from Model.Network.Node import Node
-from Model.Network.Edge import Edge
-from Model.Network.Graph import Graph
+from Model.River import RiverNode, RiverReach, River
+
 from View.ASubWindow import ASubWindow
 from View.Network.GraphWidget import GraphWidget
 from View.Network.TableModel import (
@@ -26,11 +25,11 @@ class NetworkWindow(ASubWindow):
         self.ui.setWindowTitle(title)
 
         self.model = model
-        if "graph" not in self.model.data:
-            self.graph = Graph()
-            self.model.data["graph"] = self.graph
+        if self.model.river is None:
+            self.graph = River()
+            self.model.river = self.graph
         else:
-            self.graph = self.model.data["graph"]
+            self.graph = self.model.river
 
         # Graph Widget