| Deleted record is marked deleted |
An English item without translation is deleted through DataHandler. DataHandler keeps the row, sets deleted to 1 and sets tstamp to the current time. |
Same as coreExtbase keeps the row, sets deleted to 1 and sets tstamp to the current time, like DataHandler. |
| Deleting the default record deletes its translations |
The English item 1, which has the German translation 2, is deleted through DataHandler. DataHandler marks the translation deleted as well: deleted 1 and the current tstamp on both rows. |
DeviatesExtbase marks only the English item 1 deleted. The German translation 2 keeps deleted 0 and its old tstamp. |
| Deleting a translation deletes only the translation |
The German translation 2 of item 1 is deleted through DataHandler. DataHandler marks only the translation deleted; the English item 1 stays untouched. |
DeviatesExtbase marks the English item 1 deleted, not the German translation 2, which stays untouched. This is the case although the object was read as the German translation. |
| Deleting a record deletes its inline children |
Item 1 with the notes 1 and 2 in an inline field is deleted through DataHandler. DataHandler marks both notes deleted together with the item. |
DeviatesExtbase marks only the item deleted. Both notes keep deleted 0 and their old tstamp, because the property holding them is not mapped with cascade remove. |
| Deleting a record deletes its inline children with cascade remove |
Item 1 with the notes 1 and 2 in a second inline field is deleted through DataHandler. DataHandler marks both notes deleted together with the item, no matter how the property is mapped in Extbase. |
Same as coreExtbase marks the item and both notes deleted, because the property holding the notes is mapped with cascade remove. |
| A record without delete column is removed |
A record of a table without delete column is deleted through DataHandler. DataHandler removes the row from the table. |
Same as coreExtbase removes the row from the table, like DataHandler. |
| Mm rows of a removed record |
A record of a table without delete column and with the tags 1 and 2 is deleted through DataHandler. DataHandler removes the row and its two rows in the relation table; the tags stay. |
Same as coreExtbase removes the row and its two rows in the relation table, like DataHandler; the tags stay. |
| Mm rows of a soft deleted record |
Item 1 with the tags 1 and 2 is deleted through DataHandler. DataHandler marks the item deleted and keeps its two rows in the relation table. |
Same as coreExtbase marks the item deleted and keeps its two rows in the relation table, like DataHandler. |
| Removing a child from the parent |
An editor removes the note 1 from the inline field of item 1 in the backend form. The form sends the remaining list with the note 2 as the only entry in the datamap and a delete command for the note 1 in the cmdmap, and DataHandler processes both in one run. DataHandler marks the note 1 deleted with the current tstamp; its field pointing to the item keeps the uid. The counter of the field drops to 1 and the tstamp of the item and of the note 2 is set to the current time. |
DeviatesExtbase does not delete the note 1. It detaches it: deleted stays 0 and its field pointing to the item is set to 0, so the note stays in the table as an orphan. The counter of the field drops to 1 and the tstamp of the item is set to the current time; the note 2 stays untouched. |