I hate you, NBTBase.equals, please die

The name of items' NBT tags are used when checking if items are equal.
These are usually set to "tag" when the item is loaded from the disk,
but it can be different if you set the NBT tag yourself, or depending on
which Minecraft functions you use. ItemStack.addEnchantment for example
creates an NBT tag with an empty string if the item doesn't have an NBT
tag yet.