## net.sf.saxon.type
Interface AtomicType

All Superinterfaces:
  ItemType, SchemaComponent, SchemaType, Serializable, SimpleType

All Known Implementing Classes:
  BuiltInAtomicType, ExternalObjectType, UserAtomicType

    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
`boolean` `isOrdered()` Determine whether the atomic type is ordered, that is, whether less-than and greater-than comparisons are permitted
`AtomicValue` `setDerivedTypeLabel(AtomicValue primValue, 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, isAtomicType, isBuiltInType, isExternalType, isListType, isNamespaceSensitive, isUnionType, validateContent`

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

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

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

Method Detail

### setDerivedTypeLabel

    AtomicValue setDerivedTypeLabel(AtomicValue primValue,
                                    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.

    The type label of this value will be changed. A caller must therefore be absolutely sure that they have exclusive use of the object. If in doubt, call the copy() method first.

    `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.

### isOrdered

    boolean isOrdered()

  Determine whether the atomic type is ordered, that is, whether less-than and greater-than comparisons are permitted

  Returns:
    true if ordering operations are permitted

Copyright (C) Michael H. Kay. All rights reserved.