How to define a command to make new commands with numbers in the name
If you don't need line breaking on your text, this could be the core of the \cmd
you might envision.
\documentclass[12pt]{article}
\usepackage{etoolbox}
\usepackage[usestackEOL]{stackengine}
\newcommand\cmd[5]{%
\csdef{#1title}{#2}%
\csdef{#1partA}{#3}%
\csdef{#1partB}{#4}%
\csdef{#1partC}{#5}%
\csdef{#1}{%
\Longunderstack[l]{
\textbf{#2}\\
\textbf{\textit{Part A}:} #3\\
\textbf{\textit{Part B}:} #4\\
\textbf{\textit{Part C}:} #5\strut
}%
}%
}
\cmd{reference001}{Title}{text A}{text B}{text C}
\begin{document}
Here is ``\csuse{reference001partB}'' and here is the full reference:
\csuse{reference001}
\end{document}