Data composition types for puppet