BaseDVFactory (Xerces2 Implementation)
Date: 2016-02-03

org.apache.xerces.impl.dv.xs

## Class BaseDVFactory

- java.lang.Object
- - org.apache.xerces.impl.dv.SchemaDVFactory
  - - 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 699892 2008-09-28 21:08:27Z mrglavas $
  Author:
    Neeraj Bajaj, Sun Microsystems, inc., Sandy Gao, IBM

  # INTERNAL:

    Usage of this class is not supported. It may be altered or removed at any time.

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `BaseDVFactory()`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `XSSimpleType` | `createTypeList(java.lang.String name, java.lang.String targetNamespace, short finalSet, XSSimpleType itemType, org.apache.xerces.xs.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, org.apache.xerces.xs.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, org.apache.xerces.xs.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

      `clone, equals, finalize, 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,
                                           org.apache.xerces.xs.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,
                                    org.apache.xerces.xs.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,
                                     org.apache.xerces.xs.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

Copyright © 1999-2010 The Apache Software Foundation. All Rights Reserved.