Is it possible to create Bitcoin transactions of zero value, or in other words sending 0 bitcoin to an address?
Yes, it is possible and allowed by the consensus rules to create 0 value outputs. Such outputs can even be spent. However such outputs are also non-standard and thus transactions with 0 value outputs will not be relayed. They can still be mined into a block by a miner directly inserting the transaction into a block they are mining.