Minecraft wiki entry for execute, associated text: Arguments
Option: (if|unless) data block <pos> <path>
<pos>: block_pos
Position of the block whose data will be tested.
It must be a block position composed of <x>, <y> and <z>, each of which must be an integer or a tilde and caret notation.
<path>: nbt_path
Data path to check whether the block has.
Must be an NBT path.
Option: (if|unless) data entity <target> <path>
<target>: entity
A single entity whose data will be tested.
Must be a player name, a target selector or a UUID.
<path>: nbt_path
Data path to check whether the entity has.
Must be an NBT path.
Option: (if|unless) data storage <source> <path>
<source>: resource_location
The resource location of the storage whose data will be tested.
Must be a resource location.
<path>: nbt_path
Data path to check whether the storage has.
Must be an NBT path.