When accessing tables, arrays and columns the mode is understood to be only a hint, and gives the DAL an opportunity to be more memory efficient. It should be noted that it is not intended to safeguard the developer from making logical programming mistakes. The underlying reason for this is that the DAL hands out data pointers, and has no way of preventing modifications or even knowing if the data has been modified.
This simple scenario has been adopted because the full bookkeeping on what data has to be written and what data has to be extracted from the original file would have been too expensive in terms of performance and coding.
By default an object inherits the access mode from its parent.
XMM-Newton SOC -- 2023-04-16