<problem>
<problem> is a Sectional
component that renders a scored, titled block of content. If no
<title> is provided, an auto-generated title (e.g. Problem 1)
is rendered. Inline components such as paragraphs (<p>) and
other components can be nested within a <problem> to group and
order content. Some examples are: another <problem>, a
<section>, a <figure>, or an <example>.
Attributes and Properties
Attributes for <problem>
Scoring (9)
aggregateScoresboolean. Default value: true. Whether to aggregate scores of scored descendants into a section credit-achieved value.
colorCorrectnessboolean. Default value: false. Whether to color-code answers in this section based on correctness.
displayDigitsForCreditAchievedinteger. Default value: 3. Number of significant digits to display for the section's credit achieved value.
boolean. Default value: false. Whether to force per-answer color-correctness even when section-wide check work is enabled.
boolean. Default value: false. Whether to show a single section-wide check-work button instead of per-answer buttons.
showCorrectnessboolean. Default value: false. Whether to display correctness indicators for answers in this section.
submitLabeltext. Default value: Check Work. Label for the section-wide submit button when correctness is shown.
submitLabelNoCorrectnesstext. Default value: Submit Response. Label for the section-wide submit button when correctness is not shown.
weightnumber. Default value: 1. Relative weight of this section when aggregated by an enclosing scored section.
Other (13)
asListboolean. Default value: false. Whether to render this section's children as a list.
boolean. Default value: false. Whether to render this section with a visible box around it.
completedColortext. Default value: var(--lightGreen). Color used to indicate this section has been completed.
includeAutoNameboolean. Default value: false. Whether to include the auto-generated section name (e.g. "Section") in the rendered title.
includeAutoNameIfNoTitleboolean. Default value: true. Whether to include the auto-generated name when no explicit title is provided.
boolean. Default value: false. Whether to include the auto-generated section number in the rendered title.
includeAutoNumberIfNoTitleboolean. Default value: true. Whether to include the auto-generated number when no explicit title is provided.
boolean. Default value: false. Whether to prefix this section's number with the parent section's number.
inProgressColortext. Default value: var(--mainGray). Color used to indicate this section is in progress.
isDistractorboolean. Whether this section is a distractor (e.g. a wrong-answer choice for matching).
levelinteger. The heading level for this section (overrides the default level inferred from nesting).
noAutoTitleboolean. Default value: false. Whether to suppress the auto-generated title entirely.
notStartedColortext. Default value: var(--mainGray). Color used to indicate this section has not been started.
Common to all components (9)
copyreference. Create an independent copy of another component by reference. Enter a references a $name.
disabledboolean. Default value: false. Whether this component is disabled and cannot be interacted with.
extendreference. Extend another component by reference, inheriting its children and attributes. Enter a reference as $name.
fixedboolean. Default value: false. Whether this component's value is fixed and cannot be modified.
fixLocationboolean. Default value: false. Whether this component's location is fixed (preventing it from being moved while still allowing other modifications).
boolean. Default value: false. Whether to hide this component from the rendered output.
isResponseboolean. Default value: false. Whether this component is treated as a response for the purposes of assessment.
nametext. The name used to reference this component from elsewhere in the document.
styleNumberinteger. Default value: 1. The style number used to select this component's visual styling from the available style definitions.
Properties for <problem name="p">
Scoring (6)
$p.aggregateScoresboolean. Whether scores of scored descendants are aggregated into this section's credit value.
$p.displayDigitsForCreditAchievedinteger. Number of significant digits to display for the section's credit achieved value.
$p.sectionWideCheckWorkboolean. Whether to show a single section-wide check-work button instead of per-answer buttons.
$p.submitLabeltext. Label for the section-wide submit button when correctness is shown.
$p.submitLabelNoCorrectnesstext. Label for the section-wide submit button when correctness is not shown.
$p.weightnumber. Relative weight of this section when aggregated by an enclosing scored section.
Other (17)
$p.asListboolean. Whether to render this section's children as a list.
$p.boxedboolean. Whether this section is rendered with a visible box around it.
$p.creditAchievednumber. Aggregate credit achieved (between 0 and 1) for scored descendants of this section.
$p.disabledboolean. Whether this component is disabled and cannot be interacted with.
$p.fixedboolean. Whether this component's value is fixed and cannot be modified.
$p.fixLocationboolean. Whether this component's location is fixed (preventing it from being moved while still allowing other modifications).
$p.includeAutoNameboolean. Whether to include the auto-generated section name (e.g. "Section") in the rendered title.
$p.includeAutoNameIfNoTitleboolean. Whether to include the auto-generated name when no explicit title is provided.
$p.includeAutoNumberboolean. Whether to include the auto-generated section number in the rendered title.
$p.includeAutoNumberIfNoTitleboolean. Whether to include the auto-generated number when no explicit title is provided.
$p.includeParentNumberboolean. Whether to prefix this section's number with the parent section's number.
$p.noAutoTitleboolean. Whether to suppress the auto-generated title entirely.
$p.openboolean. Whether this section is currently open (for collapsible sections).
$p.percentCreditAchievednumber. Aggregate credit achieved as a percentage (between 0 and 100).
$p.sectionNumbertext. The displayed number for this section.
$p.titletext. The displayed title text for this section.
Common to all components (4)
$p.doenetMLtext. The DoenetML source code that produced this component.
$p.hideboolean. Whether to hide this component from the rendered output.
$p.isResponseboolean. Whether this component is treated as a response for the purposes of assessment.
$p.styleNumberinteger. The style number used to select this component's visual styling from the available style definitions.
Examples
Example: <problem> with default title
Within a DoenetML document, default titles for sectional components are auto-numbered. Each sectional component is on the same counter.
Example: <problem> with custom title
A custom <problem> title is creating by providing a <title> tag
within the <problem>.
Example: Nesting sectional components
A hierarchy is created by nesting one or more sectional components within an <problem>.
Attribute Examples
Attribute Example: includeParentNumber
The includeParentNumber attribute is false by default for the <problem> component (and true by default for the <section> component).
In order to include the number of the parent sectional component, set includeParentNumber to true.
Attribute Example: includeAutoNumber
The includeAutoNumber attribute is false by default for the <problem> component. This means that if a problem contains a nested <title>, it will not render the default numbering (although it will still be counted in the numbering scheme behind the scenes).
In order to display the problem number in addition to the custom <title>, set the includeAutoNumber attribute to true.
Attribute Example: sectionWideCheckWork
The sectionWideCheckWork attribute combines validation for all <answer> components within the <problem> under a single “Check Work” button.
Attribute Example: forceIndividualAnswerColoring
Typically, the sectionWideCheckWork attribute causes all answer box border colors
to correspond to the overall correctness of the entire problem
(i.e., the colors don’t reveal additional information about which answer is correct).
If forceIndividualAnswerColoring is also specified, then each answer box border
will instead be colored according to its own answer’s correctness.
Attribute Example: boxed
The boxed attribute changes the default formatting for a sectional component to one that has a border and a shaded banner for the title.
Attribute Example: hide
The hide attribute takes a boolean as input and can be used with any rendered component.