Bug 195970 Two issues when evaluate a query inlcuding a subquery[07]
Description: Currently, when evaluating a query which includes a subquery, the query will be evaluated twice. The binding of query will pass to subquery twice. If user write a java script such as new Date() and i++. The result of query will be incorrect. Another issue: when write the report document, the binding of query will be written twice and the performance is not good to evalulate it twice.
data/org.eclipse.birt.data/src/org/eclipse/birt/data/engine/impl/ExprManagerUtil.java
* Test whether all the column bindings exist.
	 * @param bindingName
	 * @param binding
	 * @throws DataException
	 */
	private void checkColumnBindingExist( String bindingName, List binding )
			throws DataException
	{
		if ( "__rownum".equals( bindingName ) || "_outer".equals( bindingName ) )
		{
			return;
		}
		for ( int i = 0; i < binding.size( ); i++ )
		{
			if ( bindingName.equals( binding.get( i ).toString( ) ) )
				return;
		}
		throw new DataException( ResourceConstants.COLUMN_BINDING_NOT_EXIST,
				bindingName );
	}
	
	/**
	 * 
	 * @param map
	 * @param usedBindings
	 * @throws DataException
	 */
	private void validateReferredColumnBinding( String bindingName,
			List usedBindings, IBaseQueryDefinition baseQueryDefn )
			throws DataException