org.apache.xerces.impl.dv.xs
Class BaseDVFactory

java.lang.Object
  extended by org.apache.xerces.impl.dv.SchemaDVFactory
      extended by org.apache.xerces.impl.dv.xs.BaseDVFactory
Direct Known Subclasses:
FullDVFactory

public class BaseDVFactory
extends SchemaDVFactory

the factory to create/return built-in schema DVs and create user-defined DVs

Version:
$Id: BaseDVFactory.java 446745 2006-09-15 21:43:58Z mrglavas $
Author:
Neeraj Bajaj, Sun Microsystems, inc., Sandy Gao, IBM

Constructor Summary
BaseDVFactory()
           
 
Method Summary
 XSSimpleType createTypeList(java.lang.String name, java.lang.String targetNamespace, short finalSet, XSSimpleType itemType, XSObjectList annotations)
          Create a new simple type which is derived by list from another simple type.
 XSSimpleType createTypeRestriction(java.lang.String name, java.lang.String targetNamespace, short finalSet, XSSimpleType base, XSObjectList annotations)
          Create a new simple type which is derived by restriction from another simple type.
 XSSimpleType createTypeUnion(java.lang.String name, java.lang.String targetNamespace, short finalSet, XSSimpleType[] memberTypes, XSObjectList annotations)
          Create a new simple type which is derived by union from a list of other simple types.
 XSSimpleType getBuiltInType(java.lang.String name)
          Get a built-in simple type of the given name REVISIT: its still not decided within the Schema WG how to define the ur-types and if all simple types should be derived from a complex type, so as of now we ignore the fact that anySimpleType is derived from anyType, and pass 'null' as the base of anySimpleType.
 SymbolHash getBuiltInTypes()
          get all built-in simple types, which are stored in a hashtable keyed by the name
 
Methods inherited from class org.apache.xerces.impl.dv.SchemaDVFactory
getInstance, getInstance
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

BaseDVFactory

public BaseDVFactory()
Method Detail

getBuiltInType

public XSSimpleType getBuiltInType(java.lang.String name)
Get a built-in simple type of the given name REVISIT: its still not decided within the Schema WG how to define the ur-types and if all simple types should be derived from a complex type, so as of now we ignore the fact that anySimpleType is derived from anyType, and pass 'null' as the base of anySimpleType. It needs to be changed as per the decision taken.

Specified by:
getBuiltInType in class SchemaDVFactory
Parameters:
name - the name of the datatype
Returns:
the datatype validator of the given name

getBuiltInTypes

public SymbolHash getBuiltInTypes()
get all built-in simple types, which are stored in a hashtable keyed by the name

Specified by:
getBuiltInTypes in class SchemaDVFactory
Returns:
a hashtable which contains all built-in simple types

createTypeRestriction

public XSSimpleType createTypeRestriction(java.lang.String name,
                                          java.lang.String targetNamespace,
                                          short finalSet,
                                          XSSimpleType base,
                                          XSObjectList annotations)
Create a new simple type which is derived by restriction from another simple type.

Specified by:
createTypeRestriction in class SchemaDVFactory
Parameters:
name - name of the new type, could be null
targetNamespace - target namespace of the new type, could be null
finalSet - value of "final"
base - base type of the new type
annotations - set of annotations
Returns:
the newly created simple type

createTypeList

public XSSimpleType createTypeList(java.lang.String name,
                                   java.lang.String targetNamespace,
                                   short finalSet,
                                   XSSimpleType itemType,
                                   XSObjectList annotations)
Create a new simple type which is derived by list from another simple type.

Specified by:
createTypeList in class SchemaDVFactory
Parameters:
name - name of the new type, could be null
targetNamespace - target namespace of the new type, could be null
finalSet - value of "final"
itemType - item type of the list type
annotations - set of annotations
Returns:
the newly created simple type

createTypeUnion

public XSSimpleType createTypeUnion(java.lang.String name,
                                    java.lang.String targetNamespace,
                                    short finalSet,
                                    XSSimpleType[] memberTypes,
                                    XSObjectList annotations)
Create a new simple type which is derived by union from a list of other simple types.

Specified by:
createTypeUnion in class SchemaDVFactory
Parameters:
name - name of the new type, could be null
targetNamespace - target namespace of the new type, could be null
finalSet - value of "final"
memberTypes - member types of the union type
annotations - set of annotations
Returns:
the newly created simple type