Add better attribute support