set-attribute: (attribute) (boolean|"string") [html-entity-decode] [every (time)] [after (time)][, (attribute)...];
This command adds a new attribute into the target selector if it doesn't exist, or replaces an attribute if it is already there.
The attribute parameter is the name of the attribute you want to use.
The boolean parameter accepts "true" or "false", if your attribute is either true or false. You can leave out the double-quotes for a boolean.
Or alternatively, the string parameter is what you want to have inside the attribute. It requires double-quotes - these are not optional.
Properties and attributes can sometimes be a bit confusing. But the confusion lies in the terms themselves rather than the behaviour, as they are not particularly descriptive terms. Simply put, you can think of properties as being changeable (like .value, .disabled, .draggable) and the attributes are what are actually in the html tag itself.
For some of the difference between properties and attributes and recommended use, see this page: