A boolean is a binary value, indicating either a "true" or a "false".
In general, only a value of 0 or 1 is allowed. Any other value may cause undefined behavior, though as a rule of thumb any positive value is interpreted as "true".
For some functionalities, the presence of an attribute is used, rather than the actual value of that attribute. This is referred to as a "boolean by presence". In these cases, if the attribute is not present, it's considered a logical "False". If the attribute is present, it's considered a logical "True".