/**
  * basically set up the schema object with the properties 
  * provided in the config 
  * most items are defaulted as they are probably domain specific
  * 
  * @throws InvalidConfigItemException
  */
 protected function loadSchema()
 {
     if (!$this->validateSchemaConfigVariables()) {
         throw new InvalidConfigItemException("The provided config does not fill the Schema properly ");
     }
     // namespace is schema_
     // try to set all the variables for the schema from the supplied config
     if (isset($this->config['schema_dollarSchema'])) {
         $this->schemaObject->setDollarSchema($this->config['schema_dollarSchema']);
     }
     if (isset($this->config['schema_required'])) {
         $this->schemaObject->setRequired($this->config['schema_required']);
     }
     if (isset($this->config['schema_title'])) {
         $this->schemaObject->setTitle($this->config['schema_title']);
     }
     if (isset($this->config['schema_description'])) {
         $this->schemaObject->setDescription($this->config['schema_description']);
     }
     if (isset($this->config['schema_type'])) {
         $this->schemaObject->setType($this->config['schema_type']);
     }
     return $this;
 }