public  ArrayList<Col> load(String databaseName, String table) {

		DTDValidator ob = new DTDValidator();

		if (ob.validate(databaseName + "_" + table) == false) {
			System.out.println("table format not correct");
			return null;

		} else {

			try {

				File fXmlFile = new File(path + "/" + databaseName + "_"
						+ table + ".xml");
				DocumentBuilderFactory dbFactory = DocumentBuilderFactory
						.newInstance();
				DocumentBuilder dBuilder = dbFactory.newDocumentBuilder();
				Document doc = dBuilder.parse(fXmlFile);

				doc.getDocumentElement().normalize();

				// System.out.println("Root element :" +
				// doc.getDocumentElement().getNodeName());

				NodeList nList = doc.getElementsByTagName("field");

				for (int temp = 0; temp < nList.getLength(); temp++) {

					Col obj = new Col();
					ArrayList<String> elements = new ArrayList<>();

					Node nNode = nList.item(temp);

					if (nNode.getNodeType() == Node.ELEMENT_NODE) {
						Element eElement = (Element) nNode;
						obj.setFieldName(eElement.getElementsByTagName("name")
								.item(0).getTextContent());
						obj.setFieldType(eElement.getElementsByTagName("type")
								.item(0).getTextContent());

						NodeList nList2 = eElement
								.getElementsByTagName("element");

						// System.out.println(nList2.);

						for (int temp2 = 0; temp2 < nList2.getLength(); temp2++) {

							Node nNode2 = nList2.item(temp2);

							if (nNode.getNodeType() == Node.ELEMENT_NODE) {
								Element eElement2 = (Element) nNode2;
								elements.add(eElement2.getTextContent());

							}
						}
						// rrr.add(eElement.getElementsByTagName("element").item(1).getTextContent());

						obj.setElements(elements);

						returnedarr.add(obj);
						// rrr.clear();

					}
				}

			} catch (Exception e) {
				return null;
			}

			return returnedarr;
		}
	}