public Vector<Vector<String>> getQueryTriple(String xml)
	{
		if(xml==null)
		{
			System.out.println("ERROR:SSAP_XMLTools:getQueryTriple:XML message is null");
			return null;
		}

		Document doc=null;
		try {
			doc = builder.build(new ByteArrayInputStream(xml.getBytes()));
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} 

		if(doc==null)
		{
			System.out.println("ERROR:SSAP_XMLTools:getQueryTriple:doc is null");
			return null;
		}

		Vector<Vector<String>> triple=new Vector<Vector<String>>();

		Element root = doc.getRootElement();
		Namespace ns = root.getNamespace();

		List<Element> parameters = root.getChildren("parameter", ns);
		int ip;
		for(ip=0;ip<parameters.size();ip++)
			if( parameters.get(ip).getAttributeValue("name").equals("results"))break;

		if(!(ip<parameters.size())) {System.out.println("ERROR:SSAP_XMLTools:getQueryTriple:parameter(results) not found!");return null;}

		Element triple_list = parameters.get(ip).getChild("triple_list", ns);

		if(triple_list==null) {System.out.println("ERROR:SSAP_XMLTools:getQueryTriple:triple_list not found");return null;}

		List<Element> triples =  triple_list.getChildren("triple", ns);
		Iterator<Element> i = triples.iterator();

		while(i.hasNext())
		{   Vector<String> singleton=new Vector<String>();

		Element etriple = i.next();
		singleton.add(etriple.getChild("subject", ns).getText());
		singleton.add(etriple.getChild("predicate", ns).getText());
		singleton.add(etriple.getChild("object", ns).getText());
		singleton.add(etriple.getChild("object", ns).getAttributeValue("type"));

		triple.add(singleton);			
		}//while(i.hasNext())

		return triple;
	}//public Vector<Vector<String>> getQueryTriple()