@Override
	public StringBuffer getOOXML( String catAxisId, String valAxisId, String serAxisId )
	{
		StringBuffer cooxml = new StringBuffer();

		// chart type: contains chart options and series data
		cooxml.append( "<c:scatterChart>" );
		cooxml.append( "\r\n" );
		int[] markers = getMarkerFormats();
		String style = null;
		for( int m : markers )
		{
			if( m != 0 )
			{
				if( getHasSmoothLines() )
				{
					style = "smoothMarker";
				}
				else if( getHasLines() )
				{
					style = "lineMarker";
				}
				else
				{
					style = "marker";
				}
				break;
			}
		}
		if( (style == null) && getHasLines() )
		{
			style = "line";
		}
		if( (style == null) && getHasSmoothLines() )
		{
			style = "smooth";
		}
		if( style == null )
		{
			style = "none";
		}

		cooxml.append( "<c:scatterStyle val=\"" + style + "\"/>" );
		// vary colors???

		// *** Series Data: ser, cat, val for most chart types
		cooxml.append( getParentChart().getChartSeries().getOOXML( getChartType(), false, 0 ) );

		// chart data labels, if any
		// TODO: FINISH
		// cooxml.append(getDataLabelsOOXML(cf));

		// axis ids - unsigned int strings
		cooxml.append( "<c:axId val=\"" + catAxisId + "\"/>" );
		cooxml.append( "\r\n" );
		cooxml.append( "<c:axId val=\"" + valAxisId + "\"/>" );
		cooxml.append( "\r\n" );

		cooxml.append( "</c:scatterChart>" );
		cooxml.append( "\r\n" );
		return cooxml;
	}