Requirements are pieces of information that your skill needs to retrieve before executing actions.
Like conditions, requirements groups can be of 2 different types:
and types define a logically linked group of requirements to retrieve.
A requirement line is composed of:
Validators are made of conditions and actions. They define tests that will be applied to the retrieved data, and block the storage in memory if needed, along with actions to execute if the data matches the condition.
For example, if we want to get an address from the user, we can create a requirement that retrieves a location entity, and add a validator to check that this location is really an address and does not refer to a city or a country, and tell the user about this limitation.