Class SimpleType

All Implemented Interfaces:
Serializable, Referable
Direct Known Subclasses:
AtomicType, DeferredSimpleType, ListType, SimpleTypeReference, Union, UrType

public abstract class SimpleType extends XMLType implements Referable
An XML Schema SimpleType.
Version:
$Revision: 8667 $ $Date: 2006-04-13 06:47:36 -0600 (Thu, 13 Apr 2006) $
Author:
Keith Visco
See Also:
  • Field Details

    • FINAL_ALL

      public static final String FINAL_ALL
      The value of the final attribute used for blocking all types of derivation.
      See Also:
    • FINAL_LIST

      public static final String FINAL_LIST
      The value of the final attribute used for blocking list derivation.
      See Also:
    • FINAL_UNION

      public static final String FINAL_UNION
      The value of the final attribute used for blocking union derivation.
      See Also:
    • FINAL_RESTRICTION

      public static final String FINAL_RESTRICTION
      The value of the final attribute used for blocking restriction derivation.
      See Also:
  • Constructor Details

    • SimpleType

      public SimpleType()
      Default constructor.
  • Method Details

    • addFacet

      public void addFacet(Facet facet)
      Adds the given Facet to this Simpletype.
      Parameters:
      facet - the Facet to add to this Simpletype
    • getFacet

      public Facet getFacet(String name)
      Returns the first facet associated with the given name.
      Parameters:
      name - the name of the Facet to look for
      Returns:
      the first facet associated with the given name
    • getFacets

      public Enumeration<Facet> getFacets(String name)
      Returns the facets associated with the given name.
      Parameters:
      name - the name of the Facet to look for
      Returns:
      the facets associated with the given name
    • getFacets

      public Enumeration<Facet> getFacets()
      Returns an Enumeration of all the Facets (including inherited) facets for this type.
      Returns:
      an Enumeration of all the Facets for this type
    • getFinal

      public String getFinal()
      Returns the value of the 'final' property, indicating which types of derivation are not allowed, or null if the final property has not been set.
      Returns:
      the value of the final property or null if no value has been set
    • getLocalFacets

      public Enumeration<Facet> getLocalFacets()
      Returns the facets of this type (without the parent's facets).
      Returns:
      the local facets of this type.
    • getEffectiveFacets

      public Enumeration<Facet> getEffectiveFacets()
      Returns an enumeration of the effective facets for this type. A set of effective facets contains all local facets and only those inherited facets that are not overridden by the local facets.
      Returns:
      an enumeration of the effective facets for this type.
      See Also:
    • getBuiltInBaseType

      public SimpleType getBuiltInBaseType()
      Returns the built in type this type is derived from.
    • getParent

      public Structure getParent()
      Returns the parent Structure that contains this SimpleType. This can be either a Schema, AttributeDecl or ElementDecl.
      Returns:
      the parent of this SimpleType
    • getReferenceId

      public String getReferenceId()
      Returns the Id used to Refer to this Object.
      Specified by:
      getReferenceId in interface Referable
      Returns:
      the Id used to Refer to this Object
      See Also:
    • hasFacet

      public boolean hasFacet(String name)
      Returns true if this SimpleType has a specified Facet with the given name.
      Parameters:
      name - the name of the Facet to look for
      Returns:
      true if this SimpleType has a specified Facet with the given name
    • isBuiltInType

      public boolean isBuiltInType()
      Returns true if this SimpleType is a built in type.
      Returns:
      true if this SimpleType is a built in type
    • isNumericType

      public boolean isNumericType()
      Indicates whether this SimpleType is a numeric type.
      Returns:
      True if this SimpleType is a numeric type
    • isDateTimeType

      public boolean isDateTimeType()
      Indicates whether this SimpleType is a date/time type.
      Returns:
      True if this SimpleType is a date/time type
    • isRedefined

      public boolean isRedefined()
      Returns true if this simpleType is a redefinition.
      Returns:
      true if this simpleType is a redefinition.
    • setRedefined

      public void setRedefined()
      Sets this Group has redefined.
    • getTypeCode

      public int getTypeCode()
      Gets the code for this simple type. (as defined in SimpleTypesFactory)
      Returns:
      the type code for this simple type
    • setTypeCode

      void setTypeCode(int code)
      Package private setter of the code for this simple type.
    • getLength

      public Long getLength()
      Returns the value of the length facet result can be null
    • getMinLength

      public Long getMinLength()
      Returns the value of the minlength facet result can be null
    • getMaxLength

      public Long getMaxLength()
      Returns the value of the maxlength facet result can be null
    • removeFacet

      public boolean removeFacet(Facet facet)
      Removes the given Facet from this SimpleType. Returns true if this SimpleType actually contains the given facet.

      Removes only local facets.

      Parameters:
      facet - the Facet to remove
      Returns:
      true if the specified Facet has been removed
    • removeFacet

      public boolean removeFacet(String name)
      Removes the facet with the given name from this SimpleType. Returns true if this Simpletype has a facet with the given name and it is successfully removed.

      Removes only local facets.

      Parameters:
      name - the name of the Facet to remove
      Returns:
      true if the specified Facet has been removed
    • setFinal

      public void setFinal(String finalValue)
      Sets the value of the 'final' property, indicating which types of derivation are not allowed. A null value will indicate all types of derivation (list, restriction, union) are allowed.
      Parameters:
      finalValue - the value of the final property.
      Throws:
      IllegalArgumentException - when the value is not a valid value.
    • getStructureType

      public short getStructureType()
      Returns the type of this Schema Structure
      Specified by:
      getStructureType in class Structure
      Returns:
      the type of this Schema Structure
    • validate

      public void validate() throws ValidationException
      Checks the validity of this SimpleType definition.
      Specified by:
      validate in class Structure
      Throws:
      ValidationException - when this SimpleType definition is invalid.
    • createReference

      protected SimpleType createReference(String name)
      A helper method for classes which extend SimpleType. This method allows creating a reference to a SimpleType.
      Returns:
      the reference to the SimpleType.
    • resolveReference

      protected static SimpleType resolveReference(SimpleType simpleType)
      A helper method for classes which extend SimpleType. This method allows resolving a SimpleType reference to a SimpleType.
      Returns:
      the resolved SimpleType.
      See Also:
    • setParent

      protected void setParent(Structure parent)
      Sets the parent for this SimpleType
      Specified by:
      setParent in class XMLType
      Parameters:
      parent - the Structure that contains this SimpleType. Currently this should only be Schema, ElementDecl or AttributeDecl.
    • copyFacets

      protected void copyFacets(SimpleType target)
      Copy this type's facets to the target type.
      Parameters:
      target - the SimpleType to copy facets to
    • getNumberOfFacets

      public int getNumberOfFacets(String name)
      Returns the number of facets named 'name' within the list of facets of this simple type.
      Parameters:
      name - Name (type) of the facet.
      Returns:
      number of facets named 'name'