public HashSet<String> generateCSVFromXML(String fileName, String csvFileName){
		HashSet<String> stopwords = new HashSet<String>();
		HashSet<String> productNameToWords = new HashSet<String>();
		WordCleaner wc = new WordCleaner();
		String stopwordFile = "xbox/stopwords.txt";
		stopwords = getStopwords(stopwords, stopwordFile);
		try{
			FileWriter fWriter = new FileWriter(csvFileName);
			PrintWriter pWriter = new PrintWriter(fWriter, false);
			pWriter.print("sku");
			pWriter.print(",");
			pWriter.print("productId");
			pWriter.print(",");
			pWriter.print("name");
			pWriter.print(",");
			pWriter.print("format");
			pWriter.print(",");
			pWriter.print("shortDescription");
			pWriter.print(",");
			pWriter.print("manufacturer");
			pWriter.print(",");
			pWriter.print("genre");
			pWriter.print(",");
			pWriter.print("active");
			pWriter.print(",");
			pWriter.print("customerReviewAverage");
			pWriter.print("\n");
			DocumentBuilderFactory dbFactory = DocumentBuilderFactory.newInstance();
			DocumentBuilder dBuilder = dbFactory.newDocumentBuilder();
			Document doc = dBuilder.parse(fileName);
			doc.getDocumentElement().normalize();
			NodeList nList = doc.getElementsByTagName("product");
			for(int i = 0; i < nList.getLength(); i++){
				Node nNode = nList.item(i);
				if(nNode.getNodeType() == Node.ELEMENT_NODE){
					Element element = (Element) nNode;
					pWriter.print(element.getElementsByTagName("sku").item(0).getTextContent().toString());
					pWriter.print(",");
					pWriter.print(element.getElementsByTagName("productId").item(0).getTextContent().toString());
					pWriter.print(",");
					
					String productName = replaceSpecialCharacters(element.getElementsByTagName("name").item(0).getTextContent().toString());
					productName = processStringValues(productName, stopwords);
					pWriter.print(productName.trim());
					//pWriter.print(replaceSpecialCharacters(element.getElementsByTagName("name").item(0).getTextContent().toString()));
					pWriter.print(",");
					productNameToWords = wc.loadProductNameWords(productName, productNameToWords);
					//System.out.println(productNameToWords.toString());

					String formatvalue = processStringValues(element.getElementsByTagName("format").item(0).getTextContent().toString(), stopwords);
					formatvalue = replaceSpecialCharacters(formatvalue);
					pWriter.print(formatvalue);
					//pWriter.print(element.getElementsByTagName("format").item(0).getTextContent().toString());
					pWriter.print(",");

					String shortDesc = replaceSpecialCharacters(element.getElementsByTagName("shortDescription").item(0).getTextContent().toString());
					shortDesc = processStringValues(shortDesc, stopwords);
					pWriter.print(shortDesc);
					//pWriter.print(replaceSpecialCharacters(element.getElementsByTagName("shortDescription").item(0).getTextContent().toString()));
					pWriter.print(",");

					pWriter.print(checkNodeExistence(element, element.getElementsByTagName("manufacturer").getLength(), "manufacturer"));
					pWriter.print(",");

					pWriter.print(checkDetailsNode(element, element.getElementsByTagName("details").getLength(), "genre"));
					pWriter.print(",");
					pWriter.print(checkNodeExistence(element, element.getElementsByTagName("active").getLength(), "active"));
					pWriter.print(",");
					pWriter.print(checkNodeExistence(element, element.getElementsByTagName("customerReviewAverage").getLength(), "customerReviewAverage"));
					pWriter.print("\n");
				}
			}
			pWriter.flush();
			pWriter.close();
			fWriter.close();
		}
		catch(Exception e){
			e.printStackTrace();
			System.exit(1);
		}
		return productNameToWords;
	}