title: Does help or inline error text have to be programmatically-associated with the element to meet WCAG 2.1
body: <p>Consider the following:</p>
  <pre><code>&lt;label for=&quot;fav-pizza&quot;&gt;Favourite Pizza (required)&lt;/label&gt;
  &lt;input type=&quot;text&quot; id=&quot;fav-pizza&quot; required=&quot;required&quot; /&gt;
  &lt;p&gt;For example, Pepperoni, Meat feast, or Hawaiian&lt;/p&gt;
  </code></pre>
  <p>I know it's best practice for the help text to be programmatically-associated with the input via the use of <code>aria-describedby</code> however I'm trying to find out if it's a WCAG 2.1 requirement. Would this be a failure point if it isn't programmatically-associated.</p>
  <p>The same question goes for inline error text, for example the following is displayed after the user submitted the form and the page reloaded:</p>
  <pre><code>&lt;label for=&quot;first-name&quot;&gt;First name (required)&lt;/label&gt;
  &lt;input type=&quot;text&quot; id=&quot;first-name&quot; required=&quot;required&quot; /&gt;
  &lt;p class=&quot;error&quot;&gt;Error: enter your first name.&lt;/p&gt;
  </code></pre>
  <p>Is it a WCAG 2.1 (AA) failure if the error text is not programmatically-associated with the input?</p>
  <p>I've read through the following and I'm struggling to get a clear answer:
  <a href="https://www.w3.org/WAI/WCAG21/Understanding/info-and-relationships.html" rel="nofollow noreferrer">1.3.1 Info &amp; Relationships (Level A)</a>
  <a href="https://www.w3.org/WAI/WCAG21/Understanding/error-identification.html" rel="nofollow noreferrer">3.3.1 Error Identification (Level A)</a>
  <a href="https://www.w3.org/WAI/WCAG21/quickref/?showtechniques=1411%2C221%2C242%2C331%2C332%2C333%2C412%2C131#labels-or-instructions" rel="nofollow noreferrer">3.3.2 Labels or Instructions (Level A)</a>
  <a href="https://www.w3.org/WAI/WCAG21/Understanding/error-suggestion.html" rel="nofollow noreferrer">3.3.3 Error Suggestion (Level AA)</a></p>
  <p>It's worth noting that <a href="https://www.w3.org/WAI/WCAG21/quickref/?showtechniques=1411%2C221%2C242%2C331%2C332%2C333%2C412%2C131#labels-or-instructions" rel="nofollow noreferrer">3.3.2 Labels or Instructions (Level A)</a> gives a sufficient technique of <a href="https://www.w3.org/WAI/WCAG21/Techniques/general/G131" rel="nofollow noreferrer">G131 Providing descriptive labels</a> coupled with <a href="https://www.w3.org/WAI/WCAG21/Techniques/aria/ARIA1" rel="nofollow noreferrer">ARIA1 using the aria-describedby property to provide a descriptive label for user interface controls</a>. Also Deque's accessibility checklist states that &quot;Programmatic Association of Input Instructions: Instructions for an element MUST be programmatically-associated with the element.&quot; required under 3.3.2 - though I can't find anything to suggest that is correct.</p>