diff --git a/core/lib/Drupal/Core/Entity/Element/EntityAutocomplete.php b/core/lib/Drupal/Core/Entity/Element/EntityAutocomplete.php
index eed8739..d27b289 100644
--- a/core/lib/Drupal/Core/Entity/Element/EntityAutocomplete.php
+++ b/core/lib/Drupal/Core/Entity/Element/EntityAutocomplete.php
@@ -137,6 +137,13 @@ public static function processEntityAutocomplete(array &$element, FormStateInter
 
   /**
    * Form element validation handler for entity_autocomplete elements.
+   *
+   * @param array $element
+   *   The form element to process.
+   * @param \Drupal\Core\Form\FormStateInterface $form_state
+   *   The form state.
+   * @param array $complete_form
+   *   The complete form structure.
    */
   public static function validateEntityAutocomplete(array &$element, FormStateInterface $form_state, array &$complete_form) {
     $value = NULL;
diff --git a/core/lib/Drupal/Core/Render/Element/Color.php b/core/lib/Drupal/Core/Render/Element/Color.php
index 4450704..b85ebae 100644
--- a/core/lib/Drupal/Core/Render/Element/Color.php
+++ b/core/lib/Drupal/Core/Render/Element/Color.php
@@ -52,7 +52,14 @@ public function getInfo() {
   }
 
   /**
-   * Form element validation handler for #type 'color'.
+   * Form element validation handler for color elements.
+   *
+   * @param array $element
+   *   The form element to process.
+   * @param \Drupal\Core\Form\FormStateInterface $form_state
+   *   The form state.
+   * @param array $complete_form
+   *   The complete form structure.
    */
   public static function validateColor(&$element, FormStateInterface $form_state, &$complete_form) {
     $value = trim($element['#value']);
diff --git a/core/lib/Drupal/Core/Render/Element/Email.php b/core/lib/Drupal/Core/Render/Element/Email.php
index b927caa..9229f88 100644
--- a/core/lib/Drupal/Core/Render/Element/Email.php
+++ b/core/lib/Drupal/Core/Render/Element/Email.php
@@ -69,9 +69,16 @@ public function getInfo() {
   }
 
   /**
-   * Form element validation handler for #type 'email'.
+   * Form element validation handler for email elements.
    *
    * Note that #maxlength and #required is validated by _form_validate() already.
+   *
+   * @param array $element
+   *   The form element to process.
+   * @param \Drupal\Core\Form\FormStateInterface $form_state
+   *   The form state.
+   * @param array $complete_form
+   *   The complete form structure.
    */
   public static function validateEmail(&$element, FormStateInterface $form_state, &$complete_form) {
     $value = trim($element['#value']);
diff --git a/core/lib/Drupal/Core/Render/Element/MachineName.php b/core/lib/Drupal/Core/Render/Element/MachineName.php
index 66c85c7..c0c5df9b 100644
--- a/core/lib/Drupal/Core/Render/Element/MachineName.php
+++ b/core/lib/Drupal/Core/Render/Element/MachineName.php
@@ -199,14 +199,19 @@ public static function processMachineName(&$element, FormStateInterface $form_st
   /**
    * Form element validation handler for machine_name elements.
    *
-   * Note that #maxlength is validated by _form_validate() already.
-   *
    * This checks that the submitted value:
    * - Does not contain the replacement character only.
    * - Does not contain disallowed characters.
    * - Is unique; i.e., does not already exist.
    * - Does not exceed the maximum length (via #maxlength).
    * - Cannot be changed after creation (via #disabled).
+   *
+   * @param array $element
+   *   The form element to process.
+   * @param \Drupal\Core\Form\FormStateInterface $form_state
+   *   The form state.
+   * @param array $complete_form
+   *   The complete form structure.
    */
   public static function validateMachineName(&$element, FormStateInterface $form_state, &$complete_form) {
     // Verify that the machine name not only consists of replacement tokens.
diff --git a/core/lib/Drupal/Core/Render/Element/Number.php b/core/lib/Drupal/Core/Render/Element/Number.php
index fbb0805..143d3e1 100644
--- a/core/lib/Drupal/Core/Render/Element/Number.php
+++ b/core/lib/Drupal/Core/Render/Element/Number.php
@@ -60,9 +60,14 @@ public function getInfo() {
   }
 
   /**
-   * Form element validation handler for #type 'number'.
+   * Form element validation handler for number elements.
    *
-   * Note that #required is validated by _form_validate() already.
+   * @param array $element
+   *   The form element to process.
+   * @param \Drupal\Core\Form\FormStateInterface $form_state
+   *   The form state.
+   * @param array $complete_form
+   *   The complete form structure.
    */
   public static function validateNumber(&$element, FormStateInterface $form_state, &$complete_form) {
     $value = $element['#value'];
diff --git a/core/lib/Drupal/Core/Render/Element/PasswordConfirm.php b/core/lib/Drupal/Core/Render/Element/PasswordConfirm.php
index 026cb9a..ebce294 100644
--- a/core/lib/Drupal/Core/Render/Element/PasswordConfirm.php
+++ b/core/lib/Drupal/Core/Render/Element/PasswordConfirm.php
@@ -97,7 +97,17 @@ public static function processPasswordConfirm(&$element, FormStateInterface $for
   }
 
   /**
-   * Validates a password_confirm element.
+   * Form element validation handler for password_confirm elements.
+   *
+   * @param array $element
+   *   The form element to process.
+   * @param \Drupal\Core\Form\FormStateInterface $form_state
+   *   The form state.
+   * @param array $complete_form
+   *   The complete form structure.
+   *
+   * @return array
+   *   The processed element.
    */
   public static function validatePasswordConfirm(&$element, FormStateInterface $form_state, &$complete_form) {
     $pass1 = trim($element['pass1']['#value']);
diff --git a/core/lib/Drupal/Core/Render/Element/PathElement.php b/core/lib/Drupal/Core/Render/Element/PathElement.php
index f4ea306..7ff5554 100644
--- a/core/lib/Drupal/Core/Render/Element/PathElement.php
+++ b/core/lib/Drupal/Core/Render/Element/PathElement.php
@@ -59,9 +59,14 @@ public static function valueCallback(&$element, $input, FormStateInterface $form
   /**
    * Form element validation handler for matched_path elements.
    *
-   * Note that #maxlength is validated by _form_validate() already.
-   *
    * This checks that the submitted value matches an active route.
+   *
+   * @param array $element
+   *   The form element to process.
+   * @param \Drupal\Core\Form\FormStateInterface $form_state
+   *   The form state.
+   * @param array $complete_form
+   *   The complete form structure.
    */
   public static function validateMatchedPath(&$element, FormStateInterface $form_state, &$complete_form) {
     if (!empty($element['#value']) && ($element['#validate_path'] || $element['#convert_path'] != self::CONVERT_NONE)) {
diff --git a/core/lib/Drupal/Core/Render/Element/Table.php b/core/lib/Drupal/Core/Render/Element/Table.php
index 4cd571e..61347cf 100644
--- a/core/lib/Drupal/Core/Render/Element/Table.php
+++ b/core/lib/Drupal/Core/Render/Element/Table.php
@@ -243,7 +243,7 @@ public static function processTable(&$element, FormStateInterface $form_state, &
   }
 
   /**
-   * #element_validate callback for #type 'table'.
+   * Form element validation handler for table elements.
    *
    * @param array $element
    *   An associative array containing the properties and children of the
diff --git a/core/lib/Drupal/Core/Render/Element/Url.php b/core/lib/Drupal/Core/Render/Element/Url.php
index 0861d5c..abcfe0b 100644
--- a/core/lib/Drupal/Core/Render/Element/Url.php
+++ b/core/lib/Drupal/Core/Render/Element/Url.php
@@ -60,9 +60,14 @@ public function getInfo() {
   }
 
   /**
-   * Form element validation handler for #type 'url'.
+   * Form element validation handler for url elements.
    *
-   * Note that #maxlength and #required is validated by _form_validate() already.
+   * @param array $element
+   *   The form element to process.
+   * @param \Drupal\Core\Form\FormStateInterface $form_state
+   *   The form state.
+   * @param array $complete_form
+   *   The complete form structure.
    */
   public static function validateUrl(&$element, FormStateInterface $form_state, &$complete_form) {
     $value = trim($element['#value']);
diff --git a/core/modules/ckeditor/src/Plugin/CKEditorPlugin/StylesCombo.php b/core/modules/ckeditor/src/Plugin/CKEditorPlugin/StylesCombo.php
index d3eb49f..aa4083c 100644
--- a/core/modules/ckeditor/src/Plugin/CKEditorPlugin/StylesCombo.php
+++ b/core/modules/ckeditor/src/Plugin/CKEditorPlugin/StylesCombo.php
@@ -99,7 +99,15 @@ public function settingsForm(array $form, FormStateInterface $form_state, Editor
   }
 
   /**
-   * #element_validate handler for the "styles" element in settingsForm().
+   * Form element validation handler for styles elements.
+   *
+   * @param array $element
+   *   The form element to process.
+   * @param \Drupal\Core\Form\FormStateInterface $form_state
+   *   The form state.
+   *
+   * @return array
+   *   The processed element.
    */
   public function validateStylesValue(array $element, FormStateInterface $form_state) {
     if ($this->generateStylesSetSetting($element['#value']) === FALSE) {
diff --git a/core/modules/file/src/Element/ManagedFile.php b/core/modules/file/src/Element/ManagedFile.php
index 1378ff3..caf7d56 100644
--- a/core/modules/file/src/Element/ManagedFile.php
+++ b/core/modules/file/src/Element/ManagedFile.php
@@ -359,6 +359,13 @@ public static function preRenderManagedFile($element) {
 
   /**
    * Render API callback: Validates the managed_file element.
+   *
+   * @param array $element
+   *   The form element to process.
+   * @param \Drupal\Core\Form\FormStateInterface $form_state
+   *   The form state.
+   * @param array $complete_form
+   *   The complete form structure.
    */
   public static function validateManagedFile(&$element, FormStateInterface $form_state, &$complete_form) {
     // If referencing an existing file, only allow if there are existing
diff --git a/core/modules/file/src/Plugin/Field/FieldWidget/FileWidget.php b/core/modules/file/src/Plugin/Field/FieldWidget/FileWidget.php
index acba472..7dbfa1f 100644
--- a/core/modules/file/src/Plugin/Field/FieldWidget/FileWidget.php
+++ b/core/modules/file/src/Plugin/Field/FieldWidget/FileWidget.php
@@ -330,6 +330,13 @@ public static function value($element, $input = FALSE, FormStateInterface $form_
    * if user has uploaded more files than allowed.
    *
    * This validator is used only when cardinality not set to 1 or unlimited.
+   *
+   * @param array $element
+   *   The form element to process.
+   * @param \Drupal\Core\Form\FormStateInterface $form_state
+   *   The form state.
+   * @param array $form
+   *   The form structure.
    */
   public static function validateMultipleCount($element, FormStateInterface $form_state, $form) {
     $parents = $element['#parents'];
diff --git a/core/modules/image/src/Plugin/Field/FieldType/ImageItem.php b/core/modules/image/src/Plugin/Field/FieldType/ImageItem.php
index 442929f..d506ec0 100644
--- a/core/modules/image/src/Plugin/Field/FieldType/ImageItem.php
+++ b/core/modules/image/src/Plugin/Field/FieldType/ImageItem.php
@@ -378,6 +378,11 @@ public static function generateSampleValue(FieldDefinitionInterface $field_defin
 
   /**
    * Element validate function for resolution fields.
+   *
+   * @param array $element
+   *   The form element to process.
+   * @param \Drupal\Core\Form\FormStateInterface $form_state
+   *   The form state.
    */
   public static function validateResolution($element, FormStateInterface $form_state) {
     if (!empty($element['x']['#value']) || !empty($element['y']['#value'])) {
diff --git a/core/modules/image/src/Plugin/Field/FieldWidget/ImageWidget.php b/core/modules/image/src/Plugin/Field/FieldWidget/ImageWidget.php
index 1449c7f..c8b2bd3 100644
--- a/core/modules/image/src/Plugin/Field/FieldWidget/ImageWidget.php
+++ b/core/modules/image/src/Plugin/Field/FieldWidget/ImageWidget.php
@@ -254,6 +254,11 @@ public static function process($element, FormStateInterface $form_state, $form)
    *
    * This is separated in a validate function instead of a #required flag to
    * avoid being validated on the process callback.
+   *
+   * @param array $element
+   *   The form element to process.
+   * @param \Drupal\Core\Form\FormStateInterface $form_state
+   *   The form state.
    */
   public static function validateRequiredFields($element, FormStateInterface $form_state) {
     // Only do validation if the function is triggered from other places than
diff --git a/core/modules/link/src/Plugin/Field/FieldWidget/LinkWidget.php b/core/modules/link/src/Plugin/Field/FieldWidget/LinkWidget.php
index b2470e6..e27615d 100644
--- a/core/modules/link/src/Plugin/Field/FieldWidget/LinkWidget.php
+++ b/core/modules/link/src/Plugin/Field/FieldWidget/LinkWidget.php
@@ -136,6 +136,13 @@ protected static function getUserEnteredStringAsUri($string) {
    * Form element validation handler for the 'uri' element.
    *
    * Disallows saving inaccessible or untrusted URLs.
+   *
+   * @param array $element
+   *   The form element to process.
+   * @param \Drupal\Core\Form\FormStateInterface $form_state
+   *   The form state.
+   * @param array $form
+   *   The form structure.
    */
   public static function validateUriElement($element, FormStateInterface $form_state, $form) {
     $uri = static::getUserEnteredStringAsUri($element['#value']);
@@ -155,6 +162,13 @@ public static function validateUriElement($element, FormStateInterface $form_sta
    * Form element validation handler for the 'title' element.
    *
    * Conditionally requires the link title if a URL value was filled in.
+   *
+   * @param array $element
+   *   The form element to process.
+   * @param \Drupal\Core\Form\FormStateInterface $form_state
+   *   The form state.
+   * @param array $form
+   *   The form structure.
    */
   public static function validateTitleElement(&$element, FormStateInterface $form_state, $form) {
     if ($element['uri']['#value'] !== '' && $element['title']['#value'] === '') {
diff --git a/core/modules/rest/src/Plugin/views/row/DataFieldRow.php b/core/modules/rest/src/Plugin/views/row/DataFieldRow.php
index 71502f5..8aaa355 100644
--- a/core/modules/rest/src/Plugin/views/row/DataFieldRow.php
+++ b/core/modules/rest/src/Plugin/views/row/DataFieldRow.php
@@ -109,7 +109,9 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
   }
 
   /**
-   * Form element validation handler for \Drupal\rest\Plugin\views\row\DataFieldRow::buildOptionsForm().
+   * Form element validation handler for alias name element.
+   *
+   * @see \Drupal\rest\Plugin\views\row\DataFieldRow::buildOptionsForm().
    */
   public function validateAliasName($element, FormStateInterface $form_state) {
     if (preg_match('@[^A-Za-z0-9_-]+@', $element['#value'])) {
