public function toJson() {
    	$result = array();
    	$result['name'] = $this->getName();
    	$result['comment'] = $this->getMoufPhpDocComment()->getJsonArray();
    	
    	/*$properties = $this->getAnnotations("Property");
    		if (!empty($properties)) {
    	$result['moufProperty'] = true;*/
    	
    	try {
    		$result['default'] = $this->getDefault();
    		
	    	// TODO: is there a need to instanciate a  MoufPropertyDescriptor?
	    	$moufPropertyDescriptor = new MoufPropertyDescriptor($this);
	    	$types = $moufPropertyDescriptor->getTypes();
	    	$result['types'] = $types->toJson();
	    	 
	    	if ($types->getWarningMessage()) {
	    		$result['classinerror'] = $types->getWarningMessage();
	    	}
	    		    	
    	} catch (\Exception $e) {
    		$result['classinerror'] = $e->getMessage();
    	}
    	/*if ($moufPropertyDescriptor->isAssociativeArray()) {
    		$result['keytype'] = $moufPropertyDescriptor->getKeyType();
    	}
    	if ($moufPropertyDescriptor->isArray()) {
    		$result['subtype'] = $moufPropertyDescriptor->getSubType();
    	}*/
    	//}
    
    	return $result;
    }