@Test 
public void testUnmarshallString() {

  StringBuffer xmlResult = new StringBuffer();
  xmlResult.append("<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>");
  xmlResult.append("<parameters>");
  xmlResult.append("<param key=\"A\" value=\"B\"/>");
  xmlResult.append("<param key=\"C\" value=\"D\"/>");
  xmlResult.append("</parameters>");
  try {
    Parameters p = Parameters.unmarshall(xmlResult.toString(), PARAMETERS_SCHEMA);
    assertEquals("B", p.get("A").toString());
    assertEquals("D", p.get("C").toString());
  } catch(Exception e) {
    e.printStackTrace();
    fail();
  }
  
  xmlResult = new StringBuffer();
  xmlResult.append("<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>");
  xmlResult.append("<parameters>");
  xmlResult.append("<param key=\"A\" value=\"D\"/>");
  xmlResult.append("<param key=\"B\" value=\"E\"/>");
  xmlResult.append("<param key=\"C\" value=\"D\"/>");
  xmlResult.append("</parameters>");
  try {
    Parameters p = Parameters.unmarshall(xmlResult.toString(), PARAMETERS_SCHEMA);
    assertEquals("D", p.get("A").toString());
    assertEquals("E", p.get("B").toString());
    assertEquals("D", p.get("C").toString());
  } catch(Exception e) {
    fail();
  }
}