/** * Create a new simple type which is derived by list from another simple type. * * @param name name of the new type, could be null * @param targetNamespace target namespace of the new type, could be null * @param finalSet value of "final" * @param itemType item type of the list type * @param annotations set of annotations * @return the newly created simple type */ public XSSimpleType createTypeList( String name, String targetNamespace, short finalSet, XSSimpleType itemType, XSObjectList annotations) { if (fDeclPool != null) { XSSimpleTypeDecl st = fDeclPool.getSimpleTypeDecl(); return st.setListValues( name, targetNamespace, finalSet, (XSSimpleTypeDecl) itemType, annotations); } return new XSSimpleTypeDecl( name, targetNamespace, finalSet, (XSSimpleTypeDecl) itemType, false, annotations); }
/** * Create a new simple type which is derived by restriction from another simple type. * * @param name name of the new type, could be null * @param targetNamespace target namespace of the new type, could be null * @param finalSet value of "final" * @param base base type of the new type * @param annotations set of annotations * @return the newly created simple type */ public XSSimpleType createTypeRestriction( String name, String targetNamespace, short finalSet, XSSimpleType base, XSObjectList annotations) { if (fDeclPool != null) { XSSimpleTypeDecl st = fDeclPool.getSimpleTypeDecl(); return st.setRestrictionValues( (XSSimpleTypeDecl) base, name, targetNamespace, finalSet, annotations); } return new XSSimpleTypeDecl( (XSSimpleTypeDecl) base, name, targetNamespace, finalSet, false, annotations); }
/** * Create a new simple type which is derived by union from a list of other simple types. * * @param name name of the new type, could be null * @param targetNamespace target namespace of the new type, could be null * @param finalSet value of "final" * @param memberTypes member types of the union type * @param annotations set of annotations * @return the newly created simple type */ 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); }