An attribute value can be enclosed between single quotes (') or backticks (`). In such a case, only character escaping is performed on it; and the special characters are the quote or the backtick and the backslash (\).
An attribute value can also be enclosed between double quotes ("). In such a case, both character escaping and variables expansion are performed on it; and the special characters are /, ", {, } and $.
Attribute values can be unquoted if they do not contain space characters.
To preserve the literal value of a special character (\ and depending on the context /, ", {, }, $, ' or `), precede it with a backslash \ character.
Parts of the attribute value string that are of the form $VARNAME are substituted with the actual value of variable VARNAME. If VARNAME is not declared, it is replaced by an empty string. The variable name must be enclosed between braces as in ${VARNAME} if the characters following it may be considered as part of the name.