tags are key-value pairs