I've thought about this problem when I was thinking about making my own setting agnostic sheet. One decent way to do it would be to have each section have an input for a group name (outside of a repeating set) - so you can name a set Weapons for instance. Then in the set, you have a name field for each item, and the player might enter, say, Sword. Then you have a sheet worker set to work each time either the group name, the item name, or the item value changes. When the item name or item value changes, the sheet worker can be simple, it doesnt need to loop through the entire repeating set: it creates an attribute named using groupName and itemName, and assigns it the proper value. This approach helps make sure attribute names will be unique, since they are pulled from two inputs and end up as things like Weapon_Sword. Changing the group name would need all items in the set recalculated, sadly. If you dint want to deal with that, you could avoid it by adding a hidden input on each row in the field set, which gets its value from the Groups Name. Then changing the group name would cascade the changes through all the attributes. The big problem with this approach is that the number of hidden attributes will proliferate. There's no way for a script to actually delete an attribute, so if a player names their weapon Sword, then later renames it to Blade, you still have a hidden sword attribute. This can easily create confusion, people using the wrong name in macros, etc. That said, this shouldnt be too big of a problem. And these stats will be accessible on the Attributes and Abilities tab so can be cleaned up manually.