TypeSG[] st = schemaSG.getTypes();
assertEquals(3, st.length);
TypeSG st1 = st[0];
assertTrue(!st1.isComplex());
SimpleTypeSG sst1 = st1.getSimpleTypeSG();
assertTrue(sst1.isAtomic());
assertTrue(!sst1.isList());
assertTrue(!sst1.isUnion());
assertEquals(sst1.getRuntimeType(), JavaQNameImpl.getInstance(String.class));
TypeSG st2 = st[1];
assertTrue(!st2.isComplex());
SimpleTypeSG sst2 = st2.getSimpleTypeSG();
assertTrue(!sst2.isAtomic());
assertTrue(sst2.isList());
assertTrue(!sst2.isUnion());
ListTypeSG lt = sst2.getListType();
assertNotNull(lt.getItemType());
TypeSG sst = lt.getItemType();
assertTrue(!sst.isComplex());
SimpleTypeSG it = sst.getSimpleTypeSG();
assertEquals(JavaQNameImpl.INT, it.getRuntimeType());
TypeSG st3 = st[2];
assertEquals(false, st3.isComplex());
SimpleTypeSG sst3 = st3.getSimpleTypeSG();
assertEquals(false, sst3.isAtomic());
assertEquals(false, sst3.isList());
assertEquals(true, sst3.isUnion());
UnionTypeSG ut = sst3.getUnionType();
TypeSG[] uTypes = ut.getMemberTypes();
assertEquals(2, uTypes.length);
}