@Override public XSSimpleType createTypeUnion(String name,String targetNamespace,short finalSet,XSSimpleType[] memberTypes,XSObjectList annotations){
  int typeNum=memberTypes.length;
  XSSimpleTypeDecl[] mtypes=new XSSimpleTypeDecl[typeNum];
  System.arraycopy(memberTypes,0,mtypes,0,typeNum);
  if (fDeclPool != null) {
    XSSimpleTypeDecl st=fDeclPool.getSimpleTypeDecl();
    return st.setUnionValues(name,targetNamespace,finalSet,mtypes,annotations);
  }
  return new XSSimpleTypeDecl(name,targetNamespace,finalSet,mtypes,annotations);
}

@ Override public XSSimpleType createTypeUnion ( String name , String targetNamespace , short finalSet , XSSimpleType [ ] memberTypes , XSObjectList annotations ) { int typeNum = memberTypes . length ; XSSimpleTypeDecl [ ] mtypes = new XSSimpleTypeDecl [ typeNum ] ; System . arraycopy ( memberTypes , 0 , mtypes , 0 , typeNum ) ; if ( fDeclPool != null ) { XSSimpleTypeDecl st = fDeclPool . getSimpleTypeDecl ( ) ; return st . setUnionValues ( name , targetNamespace , finalSet , mtypes , annotations ) ; } return new XSSimpleTypeDecl ( name , targetNamespace , finalSet , mtypes , annotations ) ; }
create a new simple type which is derived by union from a list of other simple types .
