Compliance

Compliance questions and sections

Purpose

Questions and sections define what a Compliance board measures. They are the structure behind the matrix, the site detail view, and saved reports.

Use sections to group requirements into a readable hierarchy. Use questions for the actual requirements that must be answered for each site.

Sections versus questions

TypeUse it forCan contain childrenGets answered per site
SectionHeadings, chapters, domains, control families, or foldersYesNo
QuestionA specific requirement, control, or checkNoYes

Example structure:

Environmental Management                 (section)
├── Permits                              (section)
│   ├── Are environmental permits valid? (question)
│   └── Are permit conditions tracked?   (question)
└── Training                             (section)
    └── Is required training completed?  (question)

Only leaf questions create answer items in the matrix. Sections help organize and summarize the questions below them.

Creating questions

When you create a question, choose:

  • Name — The requirement users will see in the matrix and site view
  • Type — Section or question
  • Description — Optional guidance, evidence expectations, or interpretation notes
  • Tags — Optional labels for grouping or filtering questions
  • Placement — Where the new section or question should appear in the hierarchy

Placement options are:

PlacementMeaning
AppendPlace the item as the last child of a target section.
BeforePlace the item immediately before a target item at the same level.
AfterPlace the item immediately after a target item at the same level.

If you create a leaf question, 21RISK automatically creates answer items for the active sites on the board. This is why a new question appears across the matrix without manual setup for each site.

Conditional applicability

A leaf question can have zero, one, or multiple Site MultiSelect conditions. Expand Conditional applicability and select Add condition to add a field/filter pair. All conditions must match (AND). Each Site field can appear once; its shared picker supports any-of, all-of, has-value, and empty matching within that field. Existing conditions are expanded when you open the editor; collapsing the section does not remove them. Use Remove beside a condition to remove it when you save. Removing all conditions makes the question unconditional. Sections do not own or pass down conditions.

For example, a question can require Area of Operations contains Manufacturing OR Inbound Logistics, AND Customer requirements contains Asda. Matching the operations field alone is insufficient. When either Site field or its options change, every predicate on each affected question is reevaluated, including predicates on unchanged fields and questions on other boards. Cross-field OR and nested condition groups are not supported.

When a question is not applicable for a Site:

  • It is omitted from the Site questionnaire, PDFs, Compliance question work table, progress calculations, weekly digest, and analytics for that period.
  • Its matrix cell is blank instead of showing a status.
  • Existing answers, status, responsibility, comments, files, history, and sub-tasks are preserved.
  • A direct link still opens the question for editing and displays a Not applicable alert with its current Site-field rule. Historical views show the applicability at the selected time without attributing it to today's condition.
  • It resumes with its preserved state when the Site matches again.

Conditions belong to the question and remain in place through minor and major question changes. Remove all conditions to make the question applicable to every Site again.

For create/update mutations, use applicabilityConditions, an array of { fieldId, filter } pairs. fieldId identifies an authorized Site MultiSelect field and filter is its canonical FilterPropId expression. For example:

{
    "applicabilityConditions": [
        { "fieldId": 42, "filter": "Manufacturing,Inbound Logistics" },
        { "fieldId": 43, "filter": "Asda" }
    ]
}

Omitting applicabilityConditions preserves the complete collection on update. null clears it. A supplied array replaces the complete collection; [] is unconditional. To remove one condition, send an array containing all conditions to retain. Creation with omission, null, or [] is unconditional.

Question reads return the complete applicabilityConditions array, including [] for unconditional questions. Read-only answer details expose all current predicates, while historical details show revision-based applicability without attributing it to today's rules.

Making a Site inactive or removing it from a board preserves its existing question Items and their work. Applicability stays up to date for those retained Items, but they do not participate in normal active-board work. When the Site returns, its existing Items resume participation and any missing Items for newly introduced questions are created.

An option or Site field used by a question condition cannot be deleted. Edit or remove the dependent question condition first.

Expiry intervals

A leaf question can require each site to verify its answer again on an interval, for example every 12 months. Answers that are not verified in time expire. See Keeping compliance answers verified.

Moving questions

Questions and sections can be reorganized as your compliance program matures. You can move an item before another item, after another item, or into a section.

Important behavior:

  • Moving a section moves its descendants with it.
  • You cannot put a child inside a normal question.
  • You cannot move a section or question under itself or one of its own descendants.
  • 21RISK keeps numbering and ordering continuous so the hierarchy remains clean.

Use a minor change when moving a question if the requirement's meaning is unchanged.

Minor and major changes

When editing a question, choose the change type carefully.

Change typeUse whenEffect
MinorFixing spelling, clarifying wording, updating tags, editing descriptions, or moving the item without changing what is being assessedCreates a new revision in the same question version
MajorChanging the requirement enough that old answers should not be treated as answers to the new wordingCreates a new question version and new answer items for current sites

Major changes are useful when a requirement becomes stricter, changes scope, or asks for different evidence. Historical answers stay connected to the older version, which protects audit history.

History

Each question has revision history. The history helps users and AI agents understand:

  • Who changed the question
  • When it changed
  • Whether the change was minor or major
  • What the current version is
  • How the question has moved or been renamed over time

This makes the question library suitable for controlled compliance programs where changes must be explainable.

Deleting questions

Leaf questions can be deleted when they are no longer needed. A section with children must be emptied or reorganized before it can be deleted.

Deleting a question removes it from the live board. Saved historical reports remain useful because they resolve the question structure at the time the report was created.