Package com.saxonica.ee.schema

## Class DigitsFacet

- java.lang.Object
- - com.saxonica.ee.schema.Facet
  - - com.saxonica.ee.schema.DigitsFacet

- Direct Known Subclasses:
    `FractionDigitsFacet`, `TotalDigitsFacet`

      public abstract class DigitsFacet
      extends Facet

  Represents either of the facets totalDigits or fractionDigits

- - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `DigitsFacet()` |

  - ### Method Summary

    All Methods Instance Methods Abstract Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `checkFacetRestriction​(UserSimpleType type, SimpleType base, SchemaCompiler compiler)` | Check that this facet is legal when used on a type derived by restriction
    `Function` | `getFacetAsFunctionItem()` | Get a function item that represents this Facet schema component.
    `int` | `getNumericValue()` | Get the value of this facet as an integer (used for integer facets such as minLength or totalDigits)
    `java.lang.String` | `getValue()` | Get the value of this facet as a string
    `void` | `setNumericValue​(int value)` | Set the value of this facet as an integer (used for integer facets such as minLength or totalDigits)
    `abstract void` | `setValue​(java.lang.String value)` | Set the value of this facet as a string
    `boolean` | `testAtomicValue​(AtomicValue value)` | Test whether an atomic value conforms to this facet

    - ### Methods inherited from class com.saxonica.ee.schema.Facet

      `getConstraintName, getMessage, getName, getWhitespaceAction, isConstraining, isFacetName, isFixed, isNewlyIntroduced, makeFacet, serializeFacet, setFixed, setMessage, testLength, testListValue, toLong`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### DigitsFacet

          public DigitsFacet()

  - ### Method Detail

    - #### setValue

          public abstract void setValue​(java.lang.String value)
                                 throws SchemaException

      Set the value of this facet as a string
      Parameters:
        `value` - the string value of the facet
      Throws:
        `SchemaException` - if the value is invalid

    - #### getValue

          public java.lang.String getValue()

      Get the value of this facet as a string
      Specified by:
        `getValue` in class `Facet`
      Returns:
        the value of this facet as a string

    - #### getNumericValue

          public int getNumericValue()

      Get the value of this facet as an integer (used for integer facets such as minLength or totalDigits)
      Returns:
        the value of the facet expressed as an integer

    - #### setNumericValue

          public void setNumericValue​(int value)

      Set the value of this facet as an integer (used for integer facets such as minLength or totalDigits)
      Parameters:
        `value` - the value, as an integer

    - #### checkFacetRestriction

          public void checkFacetRestriction​(UserSimpleType type,
                                            SimpleType base,
                                            SchemaCompiler compiler)
                                     throws SchemaException,
                                            ValidationException

      Check that this facet is legal when used on a type derived by restriction
      Overrides:
        `checkFacetRestriction` in class `Facet`
      Parameters:
        `base` - the type from which the restricted type is derived
        `compiler` - the schema compiler
        `type` - the type on which the facet is defined
      Throws:
        `SchemaException` - if the facet is not allowed for this simple type, or if the combination of facets is inconsistent with values defined on the base type.
        `ValidationException` - if a value is found that does not conform to the facet

    - #### testAtomicValue

          public boolean testAtomicValue​(AtomicValue value)

      Test whether an atomic value conforms to this facet
      Specified by:
        `testAtomicValue` in class `Facet`
      Parameters:
        `value` - the value to be tested
      Returns:
        true if the value conforms; false if it doesn't conform

    - #### getFacetAsFunctionItem

          public Function getFacetAsFunctionItem()

      Description copied from class: `Facet`
      Get a function item that represents this Facet schema component.
      Specified by:
        `getFacetAsFunctionItem` in class `Facet`