docs/problems/question taxonomy
print
problems · reference

question taxonomy

Every question has one home in the subject tree, plus only the extra concepts and facets that it genuinely assesses.

why this exists
The taxonomy keeps the library browsable and makes future topic progress meaningful. It is a Mathleagues learning map, not a claim that there is one perfect way to organize all of mathematics.

one path, a few facets

levelwhat it meansexample
subjectA broad branch of mathematics.Calculus
unitA coherent group within a subject.Integral Calculus
topicA specific leaf learning objective.Area Between Curves
tagHow the question is approached or presented.tag.task.proof

Subjects and units are parents, not labels that authors attach directly to a question. A question chooses one primary topic and may choose additional assessed topics. The parent subject and unit are derived from those topic IDs.

the stored contract

Questions store stable IDs rather than labels. The catalog supplies the labels you see in the library and the solve view.

classification
{
  "schemaVersion": 1,
  "primaryTopicId": "topic.area-between-curves",
  "assessedTopicIds": [
    "topic.area-between-curves",
    "topic.definite-integrals"
  ],
  "tagIds": []
}

primary and assessed topics

The primary topic is the question's main intended learning objective. It determines where the question appears in the browse tree. Assessed topics are additional concepts that the question materially tests; the primary topic is always included in that list.

Do not list every prerequisite. A calculus question that uses ordinary arithmetic does not automatically assess arithmetic. This keeps one solved problem from lighting up half the tree.

planned: topic progress
A topic progress view is planned but not available yet. When it ships, one correct solution will count as evidence that you explored a topic, not as proof that you mastered it.

tags are controlled filters

Tags are deliberately small and orthogonal to the subject tree. They describe either the task a question asks for or a technique central to its solution.

task · prooftechnique · factorization

A tag is not a second topic. The question mode, source, and problem Elo already have their own fields, so tags such as mode.guided, source.contest, or elo.hard are not used.

why the labels stay consistent

IDs are immutable; labels are curated display text. Labels and aliases are compared after Unicode normalization, trimming, whitespace collapsing, and locale-stable lowercasing. That means calculus andCalculus resolve to one catalog entry rather than becoming two filters.

Authors select from the catalog instead of typing free-form topics, so each topic is defined once and reused.

when no topic fits

Leave the classification empty and describe the missing topic in the missing topic? box of the question builder, for example “Recurrence relations (sequences defined by earlier terms)”. A complete question with a suggestion can be submitted for review.

The reviewer either picks an existing topic that fits or adds the new topic to the taxonomy, then classifies the question in the same step that publishes it. A question is never published without a real active topic, and suggestions never become placeholder IDs.

how the catalog changes
Reviewers maintain the taxonomy directly: adding, renaming, or moving an entry takes effect immediately and is recorded in an audit log. Entries are never deleted. Retiring one means deprecating it, optionally moving its questions to a replacement, so historical questions keep a sensible home.

curricula and collections

Some questions also carry collections: labels from outside the Mathleagues tree, such as a curriculum position (IB Mathematics AA › HL › Calculus), an exam source, or a curated set. They help you filter the library by syllabus or source, but they never replace the question's topic.

a worked example

A question asking for the area enclosed by a parabola and a line belongs underCalculus → Integral Calculus → Area Between Curves, with Definite Integrals as an additional assessed topic when the question materially tests evaluation of the integral. It does not get loose tags like calculus, integration, and area: the topic path already says all of that.

for contributors
Choose the most specific existing leaf, include only genuinely assessed additional topics, and keep tags focused. When no existing topic is appropriate, suggest one; reviewers add it to the shared tree rather than creating one-off labels on individual questions.