Bug 213907 Provide a copy constructor for SubqueryDefinition.
Engine need a copy constructor to generate a SubqueryDefinition from an ISubqueryDefinition and change the name of the query.
data/org.eclipse.birt.data/src/org/eclipse/birt/data/engine/impl/PreparedQuery.java
*/
	static IBaseQueryDefinition copy( IBaseQueryDefinition baseQyeryDef ) throws DataException
	{
		if( baseQyeryDef instanceof SubqueryDefinition )
		{
			SubqueryDefinition srcSubQueryDefn = (SubqueryDefinition) baseQyeryDef;
			SubqueryDefinition destSubQueryDefn = new SubqueryDefinition(
					srcSubQueryDefn.getName( ), baseQyeryDef
							.getParentQuery( ) );
			destSubQueryDefn.setApplyOnGroupFlag( srcSubQueryDefn.applyOnGroup( ) );
			destSubQueryDefn.setMaxRows( srcSubQueryDefn.getMaxRows( ) );
			destSubQueryDefn.setUsesDetails( srcSubQueryDefn.usesDetails( ) );
			copyGroupList( srcSubQueryDefn, destSubQueryDefn );
			copyExpressions( srcSubQueryDefn, destSubQueryDefn );
			copySubQueryList( srcSubQueryDefn, destSubQueryDefn );
			copySortList( srcSubQueryDefn, destSubQueryDefn );
			copyFilterList( srcSubQueryDefn, destSubQueryDefn );
			return destSubQueryDefn;
		}
		else
		{
			return baseQyeryDef;
		}
	}
	/**
	 * 
	 * @param srcSubQueryDefn
	 * @param destSubQueryDefn
	 * @throws DataException 
	 */