public void xmlParsing(String inXml) throws Exception {
		String tmp;
		try {
			// dplist = new List<Node>();
			File file = new File(inXml);
			SAXReader reader = new SAXReader();
			Document doc = reader.read(file);
			Node node = doc.selectSingleNode("//bugzilla/bug");

			report.setBug_id(node.selectSingleNode("bug_id").getText());
			report.setProduct(node.selectSingleNode("product").getText());
			report.setComponent(node.selectSingleNode("component").getText());
			report.setPriority(node.selectSingleNode("priority").getText());
			report.setSeverity(node.selectSingleNode("bug_severity").getText());
			List<Node> list = node.selectNodes("long_desc/who");

			for (int i = 0; i < list.size(); i++) {

				Iterator i1 = list.iterator();
				while (i1.hasNext()) {
					Element element = (Element) i1.next();
					report.addDeveloper(element.getText());
				}
			}
			report.setShort_desc(node.selectSingleNode("short_desc").getText());

			report.setLong_desc(node.selectSingleNode("long_desc")
					.selectSingleNode("thetext").getText());
			
			tmp = node.selectSingleNode("assigned_to").getText();
			if (!assignee.containsKey(tmp))
				assignee.put(tmp, 0);
			else
				assignee.put(tmp, assignee.get(tmp) + 1);

			list = node.selectNodes("attachment/attacher");
			for (int i = 0; i < list.size(); i++) {

				Iterator i1 = list.iterator();
				while (i1.hasNext()) {
					Element element = (Element) i1.next();
					tmp = element.getText();
					if (attacher.containsKey(tmp))
						attacher.put(tmp, 0);
					else
						attacher.put(tmp, attacher.get(tmp) + 1);

				}

			}
			match_topic();

		} catch (Exception e) {
			File f = new File(xml_source);
			if (!f.exists())
				System.out.println("cant access this folder");
			System.out.println("Can't read the file " + inXml);
			e.printStackTrace();
		}

	}