class_docstr: A class used to verify usage of intents and utterances.
class_docstr_tok: ["A","class","used","to","verify","usage","of","intents","and","utterances","."]
docstr: Verifies that slot mappings match forms.
docstr_tok: ["Verifies","that","slot","mappings","match","forms","."]
code: def verify_slot_mappings(self) -> bool:
      """Verifies that slot mappings match forms."""
      everything_is_alright = True
  
      for slot in self.domain.slots:
          for mapping in slot.mappings:
              for condition in mapping.get(MAPPING_CONDITIONS, []):
                  condition_active_loop = condition.get(ACTIVE_LOOP)
                  mapping_type = SlotMappingType(
                      mapping.get(MAPPING_TYPE)
                  )
                  if (
                      condition_active_loop
                      and condition_active_loop
                      not in self.domain.form_names
                  ):
                      rasa.shared.utils.io.raise_warning(
                          f"Slot '{slot.name}' has a mapping condition for form "
                          f"'{condition_active_loop}' which is not listed in "
                          f"domain forms. Please add this form to the forms section "
                          f"or check for typos."
                      )
                      everything_is_alright = False
  
                  form_slots = self.domain.forms.get(
                      condition_active_loop, {}
                  ).get(REQUIRED_SLOTS_KEY, {})
                  if (
                      form_slots
                      and slot.name not in form_slots
                      and mapping_type
                      != SlotMappingType.FROM_TRIGGER_INTENT
                  ):
                      rasa.shared.utils.io.raise_warning(
                          f"Slot '{slot.name}' has a mapping condition for form "
                          f"'{condition_active_loop}', but it's not present in "
                          f"'{condition_active_loop}' form's '{REQUIRED_SLOTS_KEY}'. "
                          f"The slot needs to be added to this key."
                      )
                      everything_is_alright = False
  
      return everything_is_alright
  
imports: import logging
  from collections import defaultdict
  from typing import Set, Text, Optional, Dict, Any, List
  import rasa.core.training.story_conflict
  import rasa.shared.nlu.constants
  from rasa.shared.constants import ASSISTANT_ID_DEFAULT_VALUE, ASSISTANT_ID_KEY, CONFIG_MANDATORY_KEYS, DOCS_URL_DOMAINS, DOCS_URL_FORMS, UTTER_PREFIX, DOCS_URL_ACTIONS, REQUIRED_SLOTS_KEY
  from rasa.shared.core import constants
  from rasa.shared.core.constants import MAPPING_CONDITIONS, ACTIVE_LOOP
  from rasa.shared.core.events import ActionExecuted, ActiveLoop
  from rasa.shared.core.events import UserUttered
  from rasa.shared.core.domain import Domain
  from rasa.shared.core.generator import TrainingDataGenerator
  from rasa.shared.core.constants import SlotMappingType, MAPPING_TYPE
  from rasa.shared.core.training_data.structures import StoryGraph
  from rasa.shared.importers.importer import TrainingDataImporter
  from rasa.shared.nlu.training_data.training_data import TrainingData
  import rasa.shared.utils.io
label_desc: Use image node_id 14 for calling the Validator obj's underlying member method code with example usage: obj.verify_slot_mappings() and returns: everything_is_alright