defmodule NLdoc.Validation.Rules.HeadingLevelValid do @moduledoc """ This rule validates that a heading's level is valid according to the HTML spec (i.e. between 1 and 6). """ alias NLdoc.Spec.Heading alias NLdoc.Validation.Severity use NLdoc.Validation.Rule, severity: Severity.error(), rule: "invalid-heading-level", ruleset: "https://html.spec.whatwg.org/", ruleset_version: "5", validates: [Heading] @impl true def valid?(%Heading{level: level}, _), do: level >= 1 and level <= 6 end