construct documents