On this page
Model the questionnaire as paths, not a flat table
Both source records are dated by retrieval on 22 October 2026. The skip-pattern paper was published on 22 December 1988; its website revision date is not its publication date. Start with question id, version, eligibility rule, predecessor answer, and the next expected question. A respondent can validly reach a different path without leaving data missing. Record the path trace or a compact path id beside every response record.
| Evidence | Record | Do not infer |
|---|---|---|
| Question definition | Id, wording version, response type | Same id means same question |
| Eligibility | Predicate and source answer | Blank means refusal |
| Path | Question sequence or path id | Linear order was followed |
| Response | Raw value and status | Empty string is one missing class |
| Edit | Rule and resulting status | Edited value was reported |
| Imputation | Flag, method, and source | Imputed value is observed |
Use “not applicable” only when the path rule makes the question ineligible. Keep “not asked because of skip,” “asked but unanswered,” and “asked but unusable” as separate states if the export can support them. If it cannot, the loss of distinction is itself a review finding.
Check skip edges and unreachable questions
Draw each question as a node and each answer-dependent transition as a directed edge. Then test a synthetic response for every branch, including an explicit refusal or unknown answer. A question that is unreachable under the exported rules may be an intentional branch, a stale field, or a broken path. Preserve the instrument version used to generate the graph.
| Graph finding | Evidence | Disposition |
|---|---|---|
| Expected skip | Predecessor answer and target question | Not applicable by design |
| Unexpected answer | Question answered outside eligible path | Path or export inconsistency |
| Unreachable node | No valid path reaches question | Instrument owner review |
| Loop | Path revisits a question | Check repeat semantics |
| Missing edge | Answer has no next-step rule | Hold downstream missingness |
The US Census Bureau, (opens in a new tab) paper describes path-based analysis as a way to determine which variables are absent because of the questionnaire structure. Use that framing to prevent a not-asked variable from entering the same denominator as an unanswered variable.
Choose denominators that match the question
Before calculating a rate, state the eligible population. A question-level unanswered rate can use records that reached the question, while an instrument-level completion rate may use all eligible units. A not-applicable record should not be silently counted as an unanswered response. If a value was imputed or edited, report that state separately from an observed answer.
- Count eligible units from the path rule.
- Count units that reached the question.
- Separate answered, refused, blank, unusable, and not-applicable states.
- Record edit and imputation flags beside derived values.
- Publish the numerator, denominator, path version, and filter.
Exercise the review on a synthetic path
Synthetic path and response statuses
path_rule: Q1=yes -> ask Q2; Q1=no -> skip Q2
record | Q1 | Q2_raw | Q2_status | path
fixture-a | yes | 4 | observed | Q1,Q2
fixture-b | no | blank | not-applicable | Q1
fixture-c | yes | blank | unanswered | Q1,Q2
fixture-d | yes | ? | unusable | Q1,Q2
fixture-e | unknown | blank | unresolved-path | Q1
report: Q2 eligible=3; reached=3; answered=1; unanswered=1; unusable=1; not-applicable=1; unresolved-path=1| Synthetic assertion | Expected result | Hold condition |
|---|---|---|
| Q1=no | Q2 is not applicable | Blank counted as unanswered |
| Q1=yes and blank | Q2 unanswered | Path state discarded |
| Q2 unusable | Separate unusable status | Converted to zero |
| Unknown branch | Unresolved path finding | Defaulted to yes or no |
| Denominator | Eligible and reached counts shown | One blended rate only |
Q2 has three eligible records because only the three Q1=yes rows reach it. One is observed, one is unanswered, and one is unusable. The Q1=no row is not applicable, while the unknown Q1 row is unresolved and is not eligible until the path rule is clarified.
The fixture uses invented records and no respondent text. Add a repeated question, a translated instrument version, and an edit rule that changes a raw answer. The review should preserve the raw state and the reason for any derived value.
Keep survey missingness separate from respondent conclusions
Skip-logic review can show how the instrument produced response states. It cannot establish respondent intent, data accuracy, representativeness, or the validity of an analysis. Keep instrument design, collection operations, edits, imputation, and interpretation as separate evidence layers.
Pair this guide with missing-value and label consistency review for export semantics and the data provenance log for versioned instrument evidence. After a supported non-health scope, authority to describe the collection, and a controlled survey packet are established, the qualified appraisal request path may be a preparation step. It does not run surveys, infer respondent intent, create a quote, match a buyer, or grant a license.
Takeaways
- Represent question paths and response states separately.
- Label not-applicable, unanswered, unusable, edited, and imputed values.
- Test every skip edge with synthetic responses, including unknown branches.
- Publish denominators that match the eligible path.
- Do not treat a blank as one universal missingness category.