encapsulate more information into createPlaceholder