added DocBuilder class