code: function setProperty($key, $value)
      {
          if ($value === true) $this->properties[$key] = 1;
          else if ($value === false) $this->properties[$key] = 0;
          else $this->properties[$key] = $value;
      }
docs: Sets a <code>string</code>, <code>int</code>, <code>float</code> or <code>double</code> value or creates it
  if it does not exist yes. <code>true</code> will be translated to <code>1</code> and <code>false</code> to
  <code>0</code>.
  
  @param string $key
  the name of the attribute to set
  @param string $value
  the new attribute value