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.report.data.adapter/src/org/eclipse/birt/report/data/adapter/api/DataRequestSession.java
* this session must have been initialized with a valid ReportDesignHandle
	 * which contains the named data set
	 * 
	 * @param dataSetName
	 *            name of data set
	 * @param useCache
	 *            If true, this method may return metadata cached in the report
	 *            design.If the cached metadata is empty then return an empty 
	 *            IResultMetaData instance. If the ReportDesignHandle does not 
	 *            have cached metadata then return null.
	 */
	public abstract IResultMetaData getDataSetMetaData( String dataSetName,
			boolean useCache ) throws BirtException;
	/**
	 * Obtains the metadata of a data set given its model handle.
	 * 
	 * @param dataSetHandle
	 *            data set handle
	 * @param useCache
	 *            If true, this method may return metadata cached in the report
	 *            design.If the cached metadata is empty then return an empty 
	 *            IResultMetaData instance. If the ReportDesignHandle does not 
	 *            have cached metadata then return null.
	 *		  	            
	 */
	public abstract IResultMetaData getDataSetMetaData(
			DataSetHandle dataSetHandle, boolean useCache )
			throws BirtException;
	
	/**