replaced DocInterface with IDoc