... or "How to survive until we get to 5.0"
PolyString will become a container eventually. But for 4.x it is a property. While all properties are created equal, PolyString is more equal than others. It has internal structure, such as orig and norm.
In 4.0 all those "subproperties" are hardcoded to be single-value strings. We do not support anything else. And we do not develop this approach any more. It will be discarded in 5.0.