Семантический язык задает суть объекта, в отличие от несемантического, который задает все, что угодно.
@Nick_Volynkin выше по тексту привел абсолютно правильный пример. Приведу со своей стороны:
OK в маркдауне не говорит ничего о сути ОК - что это такое. Для маркдауна - это просто слово, выделенное болдом. А <guibutton>слово</guibutton> в docbook (как пример) или btn:[OK] (в adoc) говорит, что это именно название на кнопке, а не что-то другое.