diff --git a/documentation/current/eiffelstudio/eiffelstudio-reference/debugger/index.wiki b/documentation/current/eiffelstudio/eiffelstudio-reference/debugger/index.wiki
index f238577e..13788e56 100644
--- a/documentation/current/eiffelstudio/eiffelstudio-reference/debugger/index.wiki
+++ b/documentation/current/eiffelstudio/eiffelstudio-reference/debugger/index.wiki
@@ -1,8 +1,7 @@
-[[Property:title|EiffelStudio Debugger]]
-[[Property:link_title|Debugger]]
+[[Property:title|Debugger]]
[[Property:weight|-8]]
[[Property:uuid|31c4857e-f19e-e9e3-b7db-d6c30515277f]]
-* [[Eiffel Debugger: Introduction|Introduction]]
+* [[Debugger: Introduction|Introduction]]
* [[Execution commands|Execution commands]]
* [[Breakpoints|Breakpoint management]]
* [[Call stack tool|Call stack information]]
diff --git a/documentation/current/solutions/database-access/eiffelstore/eiffelstore-tutorial/eiffelstore-interface-layer/data-object-coupling.wiki b/documentation/current/solutions/database-access/eiffelstore/eiffelstore-tutorial/eiffelstore-interface-layer/data-object-coupling.wiki
index 58901d60..5ed0161c 100644
--- a/documentation/current/solutions/database-access/eiffelstore/eiffelstore-tutorial/eiffelstore-interface-layer/data-object-coupling.wiki
+++ b/documentation/current/solutions/database-access/eiffelstore/eiffelstore-tutorial/eiffelstore-interface-layer/data-object-coupling.wiki
@@ -10,13 +10,15 @@ A smart way to work with relational databases is to have Eiffel objects directly
A [[ref:/libraries/store/reference/db_repository_flatshort|DB_REPOSITORY]] object stores available information about a table. To access this information, you mainly have to give the table name and load the table description:
- repository: DB_REPOSITORY
- ...
- create repository.make ("CONTACTS")
- repository.load
- if repository.exists then
- ...
- end
+ repository: DB_REPOSITORY
+
+ ...
+
+ create repository.make ("CONTACTS")
+ repository.load
+ if repository.exists then
+ ...
+ end
@@ -26,20 +28,20 @@ A [[ref:/libraries/store/reference/db_repository_flatshort|DB_REPOSITORY]] obje
Using the table information, [[ref:/libraries/store/reference/db_repository_flatshort|DB_REPOSITORY]] then helps generating Eiffel classes mapping relational tables:
* You can directly use {[[ref:/libraries/store/reference/db_repository_flatshort|DB_REPOSITORY]] }.generate_class. Generated class may look like:
- class CONTACTS
+class CONTACTS
- feature -- Access
+feature -- Access
- id: INTEGER
+ id: INTEGER
...
- feature -- Settings
+feature -- Settings
- set_id (an_id: INTEGER)
- -- Set an_id to id.
- do
- id := an_id
- end
- ...
+ set_id (an_id: INTEGER)
+ -- Set an_id to id.
+ do
+ id := an_id
+ end
+ ...
@@ -53,33 +55,37 @@ Using the table information, [[ref:/libraries/store/reference/db_repository_flat
* a class mapping the relational table.
This is straight-forward since you only have to give [[ref:/libraries/store/reference/db_store_flatshort|DB_STORE]] the object filled with the table values. Suppose you want to add a contact into your database:
- storage: DB_STORE
- contacts_rep: DB_REPOSITORY
- a_contact: CONTACTS
- ...
- create storage.make
- -- contacts_rep is loaded and exists.
- storage.set_repository (contacts_rep)
- -- a_contact carries values to insert into the database.
- storage.put (a_contact)
+ storage: DB_STORE
+ contacts_rep: DB_REPOSITORY
+ a_contact: CONTACTS
+
+ ...
+
+ create storage.make
+ -- contacts_rep is loaded and exists.
+ storage.set_repository (contacts_rep)
+ -- a_contact carries values to insert into the database.
+ storage.put (a_contact)
==Accessing database content with Eiffel objects==
[[ref:/libraries/store/reference/db_selection_flatshort|DB_SELECTION]] lets you map data retrieved from the database into Eiffel objects: Result column names must match object attributes names so you can use for instance classes created by [[ref:/libraries/store/reference/db_repository_flatshort|DB_REPOSITORY]] . Class DB_ACTION redefines ACTION and can be used to retrieve Eiffel objects directly into an ARRAYED_LIST:
- selection: DB_SELECTION
- list_filling: DB_ACTION [CONTACTS]
- contact: CONTACTS
- ...
- selection.object_convert (contact)
- create list_filling.make (selection, contact)
- selection.set_action (list_filling)
- ...
- selection.load_result
- if selection.is_ok then
- Result := list_filling.list
- end
+ selection: DB_SELECTION
+ list_filling: DB_ACTION [CONTACTS]
+ contact: CONTACTS
+
+ ...
+
+ selection.object_convert (contact)
+ create list_filling.make (selection, contact)
+ selection.set_action (list_filling)
+ ...
+ selection.load_result
+ if selection.is_ok then
+ Result := list_filling.list
+ end