simulate document interface