I want to create a question paper in exam document class where the questions are marked with different knowledge levels from Revised Bloom's Taxonomy (RBT). There are six levels:
- Remembering (
R) - Understanding (
U) - Applying (
Ap) - Analysing (
An) - Evaluating (
E) - Creating (
C)
I want the appearance of the questions as follows:

I want to achieve the followings:
- I will write
\question{R}[2]to obtain the followings:- Print the word '(Remembering)' in front of the question as shown in the picture.
- Print the points of the question in the right margin as shown in the picture.
- Start two counters for
Rkeeping the number of 'Remembering' questions, and total points for the 'Remembering' questions.
- To have the above privilege for all the RBT levels.
- To have the above two privileges for all part questions as well:
\question,\part,\subpart,\subsubpart. The counter for number of questions will simply increase for every part question of the same kind. - To have a command like
\printRBTtableto print a table with RBT levels against their respective number of questions and total marks assigned for that level. - (Optional) To be able to print the
\printRBTtableat the beginning of the question paper.
I know that I am asking a lot, but I will humbly appreciate any guidance on what should be done. Please include some resource materials for your suggestions.
This link contains a sample question paper to serve both as an MWE and as a template of how I am managing so far.
Edit: An MWE
\documentclass[a5paper, 11pt, answers]{exam}
\usepackage[margin=0.75in, includefoot, footskip=3ex]{geometry}
\usepackage{etoolbox}
\makeatletter
\setlength\@rightmargin{0.5in}
\patchcmd\setup@point@toks{\llap{\padded@point@block}}{\rlap{\padded@point@block}}{}{}
\patchcmd\droppoints{\llap{\padded@point@block}}{\rlap{\padded@point@block}}{}{}
\patchcmd\droptotalpoints{\llap{\total@block}}{\rlap{\total@block}}{}{}
\patchcmd\droptotalbonuspoints{\llap{\bonustotal@block}}{\rlap{\bonustotal@block}}{}{}
\makeatother\marksnotpoints
\bracketedpoints
\pointsdroppedatright
\renewcommand{\solutiontitle}{\noindent\textbf{Answer Keys:}\enspace}
\renewcommand\partlabel{(\textbf{\alph{partno}})}
\renewcommand{\thesubpart}{(\textit{\roman{subpart}})}
\renewcommand{\subpartlabel}{\thesubpart}
\renewcommand\questionlabel{\textbf{\thequestion.}}
\renewcommand\questionshook{\def\makelabel##1{\hss\llap{\makebox[15pt]{##1}}}}
%
\begin{document}
\begin{questions}
\question[2]
(\emph{Remembering}) Write the transformation formula if the coordinate axes undergoes a rotation followed by a translation.\droppoints
\end{questions}
\end{document}
xsimpackage – Krishna Feb 04 '24 at 01:39