else if ( newSeries instanceof GanttSeries ) { if ( oldSeries.getDataDefinition( ).size( ) != 3 ) {  newSeries.getDataDefinition( ) .add( EcoreUtil.copy( (Query) query ) );  newSeries.getDataDefinition( ) .add( EcoreUtil.copy( (Query) query ) );  newSeries.getDataDefinition( ) .add( EcoreUtil.copy( (Query) query ) ); } else { newSeries.getDataDefinition( ) .addAll( oldSeries.getDataDefinition( ) ); } }
	public static void copyGeneralSeriesAttributes( Series oldSeries,			Series newSeries )	{		newSeries.setLabel( oldSeries.getLabel( ) );		newSeries.setSeriesIdentifier( oldSeries.getSeriesIdentifier( ) );		if ( oldSeries.isSetVisible( ) )		{			newSeries.setVisible( oldSeries.isVisible( ) );		}		// Attention: stacked will be set in chart conversion according to		// sub-type.		if ( oldSeries.isSetStacked( ) && newSeries.canBeStacked( ) )		{			newSeries.setStacked( oldSeries.isStacked( ) );		}		if ( oldSeries.isSetTranslucent( ) )		{			newSeries.setTranslucent( oldSeries.isTranslucent( ) );		}		if ( oldSeries.eIsSet( ComponentPackage.eINSTANCE.getSeries_Triggers( ) ) )		{			newSeries.getTriggers( ).addAll( oldSeries.getTriggers( ) );		}		if ( oldSeries.eIsSet( ComponentPackage.eINSTANCE.getSeries_DataPoint( ) ) )		{			newSeries.setDataPoint( oldSeries.getDataPoint( ) );		}		if ( oldSeries.eIsSet( ComponentPackage.eINSTANCE.getSeries_CurveFitting( ) ) )		{			newSeries.setCurveFitting( oldSeries.getCurveFitting( ) );		}		// Label position		if ( oldSeries.getLabelPosition( ).equals( Position.INSIDE_LITERAL )				|| oldSeries.getLabelPosition( )						.equals( Position.OUTSIDE_LITERAL ) )		{			if ( newSeries instanceof LineSeries )			{				newSeries.setLabelPosition( Position.ABOVE_LITERAL );			}			else			{				newSeries.setLabelPosition( oldSeries.getLabelPosition( ) );			}		}		else		{			if ( newSeries instanceof LineSeries )			{				newSeries.setLabelPosition( oldSeries.getLabelPosition( ) );			}			else			{				newSeries.setLabelPosition( Position.OUTSIDE_LITERAL );			}		}		// Data definition		if ( oldSeries.eIsSet( ComponentPackage.eINSTANCE.getSeries_DataDefinition( ) ) )		{			Object query = oldSeries.getDataDefinition( ).get( 0 );			newSeries.getDataDefinition( ).clear( );			if ( newSeries instanceof StockSeries )			{				if ( oldSeries.getDataDefinition( ).size( ) != 4 )				{					// For High value					newSeries.getDataDefinition( )							.add( EcoreUtil.copy( (Query) query ) );					// For Low value					newSeries.getDataDefinition( )							.add( EcoreUtil.copy( (Query) query ) );					// For Open value					newSeries.getDataDefinition( )							.add( EcoreUtil.copy( (Query) query ) );					// For Close value					newSeries.getDataDefinition( )							.add( EcoreUtil.copy( (Query) query ) );				}				else				{					newSeries.getDataDefinition( )							.addAll( oldSeries.getDataDefinition( ) );				}			}			else if ( newSeries instanceof BubbleSeries )			{				if ( oldSeries.getDataDefinition( ).size( ) != 2 )				{					// For value					newSeries.getDataDefinition( )							.add( EcoreUtil.copy( (Query) query ) );					// For Size					newSeries.getDataDefinition( )							.add( EcoreUtil.copy( (Query) query ) );				}				else				{					newSeries.getDataDefinition( )							.addAll( oldSeries.getDataDefinition( ) );				}			}			else if ( newSeries instanceof DifferenceSeries )			{				if ( oldSeries.getDataDefinition( ).size( ) != 2 )				{					newSeries.getDataDefinition( )							.add( EcoreUtil.copy( (Query) query ) );					newSeries.getDataDefinition( )							.add( EcoreUtil.copy( (Query) query ) );				}				else				{					newSeries.getDataDefinition( )							.addAll( oldSeries.getDataDefinition( ) );				}			}			else			{				newSeries.getDataDefinition( ).add( query );			}		}	}