## net.sf.saxon.type
Interface AtomicType

All Superinterfaces:
  ItemType, SchemaComponent, SchemaType, SimpleType

All Known Implementing Classes:
  BuiltInAtomicType, ExternalObjectType

public interface AtomicType
extends SimpleType, ItemType

Marker interface for atomic types (these are either built-in atomic types or user-defined atomic types). An AtomicType is both an ItemType (a possible type for items in a sequence) and a SchemaType (a possible type for validating and annotating nodes).

Field Summary

Fields inherited from interface net.sf.saxon.type.SchemaType
`DERIVATION_EXTENSION, DERIVATION_LIST, DERIVATION_RESTRICTION, DERIVATION_UNION, DERIVE_BY_SUBSTITUTION`

Fields inherited from interface net.sf.saxon.type.SchemaComponent
`FIXED_UP, INCOMPLETE, INVALID, UNVALIDATED, VALIDATED, VALIDATING`

Method Summary
`AtomicValue` `makeDerivedValue(AtomicValue primValue, java.lang.CharSequence lexicalValue, boolean validate)` Factory method to create values of a derived atomic type.

Methods inherited from interface net.sf.saxon.type.SimpleType
`getBuiltInBaseType, getCommonAtomicType, getTypedValue, getWhitespaceAction, isListType, isNamespaceSensitive, isUnionType, validateContent`

Methods inherited from interface net.sf.saxon.type.SchemaType
`allowsDerivation, analyzeContentExpression, getBaseType, getBlock, getDerivationMethod, getDescription, getDisplayName, getFingerprint, getNameCode, getTypedValue, isComplexType, isSameType, isSimpleType, isTypeDerivationOK`

Methods inherited from interface net.sf.saxon.type.SchemaComponent
`getValidationStatus`

Methods inherited from interface net.sf.saxon.type.ItemType
`getAtomizedItemType, getPrimitiveItemType, getPrimitiveType, getSuperType, matchesItem, toString`

Method Detail

### makeDerivedValue

    public AtomicValue makeDerivedValue(AtomicValue primValue,
                                        java.lang.CharSequence lexicalValue,
                                        boolean validate)

  Factory method to create values of a derived atomic type. This method is not used to create values of a built-in type, even one that is not primitive.

  Parameters:
    `primValue` - the value in the value space of the primitive type
    `lexicalValue` - the value in the lexical space. If null, the string value of primValue is used. This value is checked against the pattern facet (if any)
    `validate` - true if the value is to be validated against the facets of the derived type; false if the caller knows that the value is already valid.
  Returns:
    the derived atomic value if validation succeeds, or an ErrorValue otherwise. The ErrorValue encapsulates the exception that occurred; it is the caller's responsibility to check for this.