Does LaTeX define a semantic equivalent of \textbf ?

You can define your own \strong command which switches between strong and normal text like \emph does with italic:

\documentclass{article}

\makeatletter
\newcommand{\strong}[1]{\@strong{#1}}
\newcommand{\@@strong}[1]{\textbf{\let\@strong\@@@strong#1}}
\newcommand{\@@@strong}[1]{\textnormal{\let\@strong\@@strong#1}}
\let\@strong\@@strong
\makeatother

\begin{document}

Text \strong{strong text \strong{strong2 \strong{st-\strong{st}-st}  yyy } xxxx} after

\end{document}

Result1


Or you can define different levels of "strong" using a counter:

\documentclass{article}
\usepackage{xcolor}

\newcounter{stronglevel}
\setcounter{stronglevel}{1}
\newcommand{\strong}[1]{%
    \csname strong\roman{stronglevel}\endcsname{{%
        \advance\value{stronglevel} by 1\relax
        #1%
    }}%
}
\newcommand{\strongi}[1]{\textbf{#1}}
\newcommand{\strongii}[1]{{\blendcolors*{!50!red}\color{.}#1}}
\newcommand{\strongiii}[1]{\textsf{#1}}
\newcommand{\strongiv}[1]{{\blendcolors*{!50!red}\color{.}#1}}

\begin{document}

Text \strong{strong text \strong{strong2 \strong{st-\strong{st}-st}  yyy } xxxx} after \strong{next}.

\end{document}

Result2


\emph doesn't render always as \textit. It switches between upright and italic as you can see if you nest \emphcommands:

\documentclass{article}
\begin{document}
abc \emph{some text \emph{emph} some text}
\end{document}

And there is no similar command which switches between bold and normal, but it would be easy to define. Simply copy the definition of \em and \emph from latex.ltx.


The answer to your first question is "no, but it's easy to do it". Just add \let\strong\textbf to your preamble.

The second question's answer is "no, but there's a package that does it in a very clever way". The csquotes defines \enquote which does what you want.