Waterlogging

Waterlogging is the mechanism that allows non-cube blocks (that is, blocks that do not completely fill their block volume, such as doors, ladders, and plants) to be filled with a water source block. Both the non-cube block and the water source block occupy the same space. If the non-cube block is destroyed, the water source block remains.

$$, generally all non-cube blocks can be waterlogged and none can be used to displace water source blocks, although they can still displace flowing water.

Mechanism
$$, certain blocks have a block state that can be. This is a temporary solution; a full separation of blocks and fluids is planned.

$$, waterlogging is handled by the game's layers system. Through editing, any block can be waterlogged, as well as other things such as placing multiple slabs into a single block. In normal gameplay, a player cannot displace water source blocks using doors or other non-cube blocks to create breathing spaces underwater, like one can do in Java Edition. Only flowing water can be displaced in Bedrock.

Behavior
Section may be incomplete.

See for more info on Java Edition.

Trivia

 * Water bottles can be filled up from waterlogged blocks, even if water is not accessible from the targeted area; a bug which Mojang decided not to fix.