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.