tag-specific attributes/functions are now accessed via a generic struct