added getAttributes()