private void loadCards() {
		InputStream xmlStream = this.getClass().getResourceAsStream("cards.xml");
		InputStream textStream = this.getClass().getResourceAsStream("text.xml");
		DocumentBuilderFactory dbFactory = DocumentBuilderFactory.newInstance();
		DocumentBuilder dBuilder;
		try {
			dBuilder = dbFactory.newDocumentBuilder();
		} catch (ParserConfigurationException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
			return;
		}
		Document doc;
		Document text;
		try {
			doc = dBuilder.parse(xmlStream);
			text = dBuilder.parse(textStream);
		} catch (SAXException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
			return;
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
			return;
		}
		Element root = doc.getDocumentElement();
		root.normalize();
		Element textroot = text.getDocumentElement();
		textroot.normalize();

		String rootname = root.getNodeName();

		if (!rootname.equals("cards"))
			return;

		set = root.getAttribute("set");

		for (Element e : XMLUtils.getElementListByTagName(root, "card")) {
			String name = e.getAttribute("name");
			NodeList textData = null;
			for (Element t : XMLUtils.getElementListByTagName(textroot, "card")) {
				if (t.getAttribute("name").equals(name)) {
					textData = t.getChildNodes();
					break;
				}
			}
			if (textData != null) 
			    for (int i = 0; i < textData.getLength(); i++) 
					e.appendChild(doc.importNode(textData.item(i), true));
			makeCard(e);
		}
	}