document Context struct