“[…] use language attributes on elements surrounding that content if you
want to style or process it differently.”
Drop the conditional sentence, I’d say: … use language attributes on
elements surrounding that content. Period.
Just do it regardless if you want to style or process it differently or
not. You might want to do so in the future, and it would be no good to
add the language information _then_ instead of _now_.
Additionally, I believe that no data is better than wrong data. So once
the language is declared in the html element, the language information
for content in other language(s) would be wrong if not declared there.
“only allows characters - no markup”
Use en dash: only allows characters – no markup
“If you want to specify the language of some content but there is no
markup around it, use a span or a div element around the content.”