code: public static SpreadSheetCellDAO checkSpreadSheetCellDAO(Object newDAO) throws OfficeWriterException {
  	if (!(newDAO instanceof SpreadSheetCellDAO)) {
  		throw new OfficeWriterException("Objects which are not of the class SpreadSheetCellDAO are not supported for writing.");
  	}
  	SpreadSheetCellDAO sscd = (SpreadSheetCellDAO)newDAO;
  	// check sheetname (needs to be there)
  	if ((sscd.getSheetName()==null) || ("".equals(sscd.getSheetName()))) {
  		throw new OfficeWriterException("Invalid cell specification: empy sheet name not allowed.");
  	}
  	// check celladdress (needs to be there)
  	if ((sscd.getAddress()==null) || ("".equals(sscd.getAddress()))) {
  		throw new OfficeWriterException("Invalid cell specification: empy cell address not allowed.");
  	}
  	// check that either formula or formatted value is filled
  	if ((sscd.getFormula()==null) && (sscd.getFormattedValue()==null))  {
  		throw new OfficeWriterException("Invalid cell specification: either formula or formattedValue needs to be specified for cell.");
  	}
  	return sscd;
  }
docs: *
  Verifies that an object is a well-formed SpreadSheetCellDAO
  
  
  @param newDAO obejct
  @return SpreadsheetCellDAO if wellformed, otherwise null