Quando se deve usar .innerHTML e quando document.write em JavaScript

Existe uma regra geral, quando se deve usardocument.write para alterar o conteúdo do site e quando usar.innerHTML?

Até agora minhas regras eram:

1) Usedocument.write quandoadicionando novos conteúdos

2) Use.innerHTML quandomudando conteúdo existente

Mas fiquei confuso, já que alguém me disse que de um lado.innerHTML é um estranho padrão da Microsoft, mas por outro lado eu li quedocument.write não é permitido em XHTML.

Quais estruturas devo usar para manipular meu código-fonte com JavaScript?

questionAnswers(3)

yourAnswerToTheQuestion