Currently, “bold” and “italic” markup doesn’t actually output bold and italic text (semantically); instead, it outputs strongly emphasized (<strong>) and emphasized (<em>) text. This is completely wrong and semantic markup abuse, since we can’t guarantee that bold text will only be used for strong importance or that italic text will only be used for emphasis. HTML output for this markup should be changed to general-purpose elements (i.e. *%text%* (_%text%_) should be <i>%text%</i>, not <em>%text%</em>, and **%text%** (__%text%__) should be <b>%text%</b>, not <strong>%text%</strong>).


How can you guarantee they are? There are no technical restrictions or instructions on how much or where you can use emphasis and strong emphasis in your message. Until that’s not the case, “italic” and “bold” should be treated as purely presentational markup.
They’re used to indicate context because that’s how the English language works, my dude.
Sure, in other languages they may not be. But it’s universal in many Western languages.