public static function createRecursiveExpression( core_kernel_rules_Expression $exp1,  core_kernel_rules_Expression $exp2,  core_kernel_classes_Resource $operator)
    {
        $returnValue = null;

        
        if ($exp1 == null || $exp2 == null  || $operator == null) {
        	var_dump($exp1,$exp2,$operator);
        	throw new common_Exception('paramaters could not be null');
        }

        $expressionClass = new core_kernel_classes_Class(RulesRdf::CLASS_URI_EXPRESSION,__METHOD__);
        $label = 'Expression : ' . $exp1->getLabel() . ' ' . $operator->getLabel() . ' ' . $exp2->getLabel();
        $comment = 'Expression : ' . $exp1->getUri() . ' ' . $operator->getUri() . ' ' . $exp2->getUri();
        $expressionInst = core_kernel_classes_ResourceFactory::create($expressionClass,$label,$comment);
      	$terminalExpressionProperty = new core_kernel_classes_Property(RulesRdf::PROPERTY_TERMINAL_EXPRESSION,__METHOD__);
        $logicalOperatorProperty = new core_kernel_classes_Property(RulesRdf::PROPERTY_HASLOGICALOPERATOR,__METHOD__);
		$firstExpressionProperty = new core_kernel_classes_Property(RulesRdf::PROPERTY_FIRST_EXPRESSION,__METHOD__);
		$secondExpressionProperty = new core_kernel_classes_Property(RulesRdf::PROPERTY_SECOND_EXPRESSION,__METHOD__);
		$returnValue = new core_kernel_rules_Expression($expressionInst->getUri());
		$returnValue->debug = __METHOD__;
		$returnValue->setPropertyValue($terminalExpressionProperty,RulesRdf::INSTANCE_EMPTY_TERM_URI);
		$returnValue->setPropertyValue($firstExpressionProperty,$exp1->getUri());
		$returnValue->setPropertyValue($secondExpressionProperty,$exp2->getUri());
		$returnValue->setPropertyValue($logicalOperatorProperty,$operator->getUri()); 
		

        return $returnValue;
    }
public static function createRecursiveExpression( core_kernel_rules_Expression $exp1,  core_kernel_rules_Expression $exp2,  core_kernel_classes_Resource $operator)
    {
        $returnValue = null;

        
        if ($exp1 == null || $exp2 == null  || $operator == null) {
        	var_dump($exp1,$exp2,$operator);
        	throw new common_Exception('paramaters could not be null');
        }

        $expressionClass = new core_kernel_classes_Class(RulesRdf::CLASS_URI_EXPRESSION,__METHOD__);
        $label = 'Expression : ' . $exp1->getLabel() . ' ' . $operator->getLabel() . ' ' . $exp2->getLabel();
        $comment = 'Expression : ' . $exp1->getUri() . ' ' . $operator->getUri() . ' ' . $exp2->getUri();
        $expressionInst = core_kernel_classes_ResourceFactory::create($expressionClass,$label,$comment);
      	$terminalExpressionProperty = new core_kernel_classes_Property(RulesRdf::PROPERTY_TERMINAL_EXPRESSION,__METHOD__);
        $logicalOperatorProperty = new core_kernel_classes_Property(RulesRdf::PROPERTY_HASLOGICALOPERATOR,__METHOD__);
		$firstExpressionProperty = new core_kernel_classes_Property(RulesRdf::PROPERTY_FIRST_EXPRESSION,__METHOD__);
		$secondExpressionProperty = new core_kernel_classes_Property(RulesRdf::PROPERTY_SECOND_EXPRESSION,__METHOD__);
		$returnValue = new core_kernel_rules_Expression($expressionInst->getUri());
		$returnValue->debug = __METHOD__;
		$returnValue->setPropertyValue($terminalExpressionProperty,RulesRdf::INSTANCE_EMPTY_TERM_URI);
		$returnValue->setPropertyValue($firstExpressionProperty,$exp1->getUri());
		$returnValue->setPropertyValue($secondExpressionProperty,$exp2->getUri());
		$returnValue->setPropertyValue($logicalOperatorProperty,$operator->getUri()); 
		

        return $returnValue;
    }
public static function createRecursiveExpression ( core_kernel_rules_Expression $ exp1 , core_kernel_rules_Expression $ exp2 , core_kernel_classes_Resource $ operator ) { $ returnValue = null ; if ( $ exp1 == null || $ exp2 == null || $ operator == null ) { var_dump ( $ exp1 , $ exp2 , $ operator ) ; throw new common_Exception ( 'paramaters could not be null' ) ; } $ expressionClass = new core_kernel_classes_Class ( RulesRdf :: CLASS_URI_EXPRESSION , __METHOD__ ) ; $ label = 'Expression : ' . $ exp1 -> getLabel ( ) . ' ' . $ operator -> getLabel ( ) . ' ' . $ exp2 -> getLabel ( ) ; $ comment = 'Expression : ' . $ exp1 -> getUri ( ) . ' ' . $ operator -> getUri ( ) . ' ' . $ exp2 -> getUri ( ) ; $ expressionInst = core_kernel_classes_ResourceFactory :: create ( $ expressionClass , $ label , $ comment ) ; $ terminalExpressionProperty = new core_kernel_classes_Property ( RulesRdf :: PROPERTY_TERMINAL_EXPRESSION , __METHOD__ ) ; $ logicalOperatorProperty = new core_kernel_classes_Property ( RulesRdf :: PROPERTY_HASLOGICALOPERATOR , __METHOD__ ) ; $ firstExpressionProperty = new core_kernel_classes_Property ( RulesRdf :: PROPERTY_FIRST_EXPRESSION , __METHOD__ ) ; $ secondExpressionProperty = new core_kernel_classes_Property ( RulesRdf :: PROPERTY_SECOND_EXPRESSION , __METHOD__ ) ; $ returnValue = new core_kernel_rules_Expression ( $ expressionInst -> getUri ( ) ) ; $ returnValue -> debug = __METHOD__ ; $ returnValue -> setPropertyValue ( $ terminalExpressionProperty , RulesRdf :: INSTANCE_EMPTY_TERM_URI ) ; $ returnValue -> setPropertyValue ( $ firstExpressionProperty , $ exp1 -> getUri ( ) ) ; $ returnValue -> setPropertyValue ( $ secondExpressionProperty , $ exp2 -> getUri ( ) ) ; $ returnValue -> setPropertyValue ( $ logicalOperatorProperty , $ operator -> getUri ( ) ) ; return $ returnValue ; }
Short description of method createRecursiveExpression

@access public
@author firstname and lastname of author, <author@example.org>
@param  Expression exp1
@param  Expression exp2
@param  Resource operator
@return core_kernel_rules_Expression
Short description of method createRecursiveExpression