Using custom checkboxes, as offered by the Minimal theme and others, I would rather do something like:
- [?] (topic:: topology) When can a set be both open and closed?
- [?] (topic:: abstract_algebra) What is really a real number?
Which render as this using minimal theme:
If you want, you could also rather easily format the inline field according to your preferences. If you use [topic:: topology], you could even target just these inline fields.
Given markup like the above you could use TASK queries to list your questions, and easily select only those belonging to a given topic or not. You could also do summation queries based on file.tasks (and variants), to gather up which topics you’ve got, and how many question in each, and so on.
And since now your question are tasks, they can have a link back to the original location given that you’re using a TASK query to list them. You could also implement schemes where sublists could provide solution/suggestions on each question, and access these using the children of a given task.