Is this a valid approach to replicating GAS attributes?

So i have decided to move the GAS component to a playerstate class, and expose functions to me to get and set values by name. ive resolved lots of attributeset types with names and values.
then i can get/set by name, i have also made Modify Attribute by name and Set attribute by name functions along with a bool “should replicate by attribute name” also with enum to force (always,onchange,none,custom)

will this approach work? to resolve everything to a name? i like names. they are like tags =)
Edit*
My idea was that if i setup every attribute and use this (over mutiple projects) i can pick and choose which stats to impliment and switch off the rest, so game modes will dictate what sets to use and what stats by name ?