public void testCreateInstanceWithReflection() throws Exception {
   Class klass = Class.forName("org.openehr.schemas.v1.DVTEXT");
   Class factoryClass = klass.getClasses()[0];
   Method factoryMethod = factoryClass.getMethod("newInstance", null);
   Object obj = factoryMethod.invoke(null, null);
   assertTrue(obj instanceof DVTEXT);
 }
  public void testCallSetterWithReflection() throws Exception {
    Class klass = Class.forName("org.openehr.schemas.v1.DVTEXT");
    Class factoryClass = klass.getClasses()[0];
    Method factoryMethod = factoryClass.getMethod("newInstance", null);
    Object obj = factoryMethod.invoke(null, null);
    Method setterMethod = klass.getMethod("setValue", String.class);
    setterMethod.invoke(obj, "new value");

    assertEquals("new value", ((DVTEXT) obj).getValue());
  }