A tagstate is a combination of tags from a tag definition. Tagstates can be represented by a list of tags separated by "+" characters. For example "crouching+pistol" defines a tagstate combining the tags "crouching" and "pistol".
There are many different places where sets of tags like this come up. Here are the most used ones and how they are typically called:
At any time the game can set global tags describing the current state of the character. These are called the global tagstate. They typically contain global state information like stance ("standing", "swimming", ..), character type, which weapon is equipped, etc.
For programmers: the global tagstate is the tags member of the actioncontroller's SAnimationContext, which you can find with IActionController::GetContext().
They are used to find fragments during fragment selection.
The tags associated with a scope, which is configured in the Controller Definition File (xxxControllerDefs.xml). All fragments that play on this scope require these tags to be set. Typically this contains only one tag. It is recommended to use a specific naming convention for scope tags as opposed to other tags, for example prefixing them with the word "Scope".
See also Fragment Selection Process.