diff --git a/doc/1_KC3/1.07_Struct.en.md b/doc/1_KC3/1.07_Struct.en.md
index 0f4b439..33c01ba 100644
--- a/doc/1_KC3/1.07_Struct.en.md
+++ b/doc/1_KC3/1.07_Struct.en.md
@@ -64,6 +64,17 @@ ikc3> a.callable
fn (a, b) { a.x * b.y + a.y * b.y }
```
+The bracket syntax allows you to query structs the same as maps :
+
+```elixir
+ikc3> a[:sym]
+:dot
+ikc3> a[:arity]
+2
+ikc3> a[:callable]
+fn (a, b) { a.x * b.y + a.y * b.y }
+```
+
You can also use the `KC3.access` function for the same result :
```elixir
diff --git a/doc/1_KC3/1.21_Map.en.md b/doc/1_KC3/1.21_Map.en.md
index 59627d8..1cc0640 100644
--- a/doc/1_KC3/1.21_Map.en.md
+++ b/doc/1_KC3/1.21_Map.en.md
@@ -36,6 +36,15 @@ ikc3> a.message
"Hello, world !"
```
+The bracket syntax allows you to query any key type :
+
+```elixir
+ikc3> a[:id]
+1
+ikc3> a[:message]
+"Hello, world !"
+```
+
You can also use the `KC3.access` function for the same result :
```elixir
diff --git a/doc/1_KC3/1.22_Tuple.en.md b/doc/1_KC3/1.22_Tuple.en.md
index 4cb0d17..17a138e 100644
--- a/doc/1_KC3/1.22_Tuple.en.md
+++ b/doc/1_KC3/1.22_Tuple.en.md
@@ -20,6 +20,17 @@ ikc3> message
"Hello, world !"
```
+The bracket syntax allows you to query the tag at a tuple position :
+
+```elixir
+ikc3> a[0]
+:ok
+ikc3> a[1]
+"My title"
+ikc3> a[2]
+"Hello, world !"
+```
+
You can also use the `KC3.access` function for the same result :
```elixir