# Fill in the Blanks (H5P.Blanks)

Text with gaps the learner types the missing words into. For recall of exact words: terms, names, spellings.

- Each item of `questions` is one block of text with its gaps, marked as the Fields section below says: `*answer*`, alternatives with `/`, a tip after `:`.
- Answers are compared as typed. `behaviour.caseSensitive: false` for names that may be capitalised either way; `behaviour.acceptSpellingErrors: true` forgives a wrong letter.
- `text` is the instruction above the blocks.

## Example

```json
{
  "type": "H5P.Blanks",
  "params": {
    "text": "Fill in the names of the rivers.",
    "questions": [
      "The *Danube/Donau:It flows through Vienna* reaches the Black Sea.",
      "Paris lies on the *Seine*, London on the *Thames*."
    ],
    "behaviour": { "caseSensitive": false }
  }
}
```

<!-- Generated by `h5p-author schema --markdown` from the pinned pack. Do not edit by hand. -->

## Fields of H5P.Blanks 1.14

The example is `type` and `params` alone, and `params` holds the fields below. A source also names its own `title`, `language`, `license` and `authors`, all four required: the build refuses a source that leaves out any of them. The author's name and the licence are the user's: ask for what they have not given. For a name they skip, write the one you know them by, or "Unknown"; for a licence they skip, `U`.

- `media` group — Media
  - `type` sub-content: H5P.Image | H5P.Video | H5P.Audio — Type: Optional media to display above the question.
  - `disableImageZooming` boolean = false; only when type is "H5P.Image 1.1" — Disable image zooming
- `text` html: strong em u a ul ol h2 h3 hr pre code = "Fill in the missing words" — Task description: A guide telling the user how to answer this task.
- `questions` list 1–31 of html: strong em del u code, required — Text blocks
  Blanks are added with an asterisk (*) in front and behind the correct word/phrase. Alternative answers are separated with a forward slash (/). You may add a textual tip, using a colon (:) in front of the tip. Example: H5P content may be edited using a *browser/web-browser:Something you use every day*.
- `overallFeedback` list 1+ of — Overall Feedback: Click the "Add range" button to add as many ranges as you need. Example: 0-20% Bad score, 21-91% Average Score, 91-100% Great Score!
  - `from` whole number 0–100 = 0 — Score Range
  - `to` whole number 0–100 = 100
  - `feedback` text — Feedback for defined score range
- `behaviour` group — Behavioural settings.
  - `enableRetry` boolean = true — Enable "Retry"
  - `allowRetryIfCorrect` boolean = false; only when enableRetry is true — Allow "Retry" even if all answers were correct
  - `enableSolutionsButton` boolean = true — Enable "Show solution" button
  - `autoCheck` boolean = false — Automatically check answers after input
  - `caseSensitive` boolean = true — Case sensitive
  - `showSolutionsRequiresInput` boolean = true — Require all fields to be answered before the solution can be viewed
  - `separateLines` boolean = false — Put input fields on separate lines
  - `confirmCheckDialog` boolean = false — Show confirmation dialog on "Check"
  - `confirmRetryDialog` boolean = false — Show confirmation dialog on "Retry"
  - `acceptSpellingErrors` boolean = false — Accept minor spelling errors

26 interface texts are left out: they come from the libraries' translations. `h5p-author schema H5P.Blanks --all` lists them, for a source to set one.

<!-- End of the generated section. -->
