public class NumberType extends BuiltinAtomicType implements Comparator
java.math.BigDecimal
.
See http://www.w3.org/TR/xmlschema-2/#decimal for the spec.
It was once known as "number" type.Modifier and Type | Field and Description |
---|---|
private static long |
serialVersionUID |
private static java.math.BigInteger |
the10
constant
|
static NumberType |
theInstance |
ERR_DUPLICATE_FACET, ERR_EMPTY_UNION, ERR_ENUMERATION, ERR_ENUMERATION_WITH_ARG, ERR_FACET_MUST_BE_NON_NEGATIVE_INTEGER, ERR_FACET_MUST_BE_POSITIVE_INTEGER, ERR_INAPPROPRIATE_FOR_TYPE, ERR_INCONSISTENT_FACETS_1, ERR_INCONSISTENT_FACETS_2, ERR_INVALID_BASE_TYPE, ERR_INVALID_ITEMTYPE, ERR_INVALID_MEMBER_TYPE, ERR_INVALID_VALUE_FOR_THIS_TYPE, ERR_INVALID_WHITESPACE_VALUE, ERR_LENGTH, ERR_LOOSENED_FACET, ERR_MAXLENGTH, ERR_MINLENGTH, ERR_NOT_APPLICABLE_FACET, ERR_OUT_OF_RANGE, ERR_OVERRIDING_FIXED_FACET, ERR_PARSE_ERROR, ERR_PATTERN_1, ERR_PATTERN_MANY, ERR_SCALE_IS_GREATER_THAN_PRECISION, ERR_TOO_MUCH_PRECISION, ERR_TOO_MUCH_SCALE, ERR_X_AND_Y_ARE_EXCLUSIVE, serializedValueChecker, whiteSpace
EQUAL, GREATER, LESS, UNDECIDABLE
APPLICABLE, DERIVATION_BY_LIST, DERIVATION_BY_RESTRICTION, DERIVATION_BY_UNION, FACET_ENUMERATION, FACET_FRACTIONDIGITS, FACET_LENGTH, FACET_MAXEXCLUSIVE, FACET_MAXINCLUSIVE, FACET_MAXLENGTH, FACET_MINEXCLUSIVE, FACET_MININCLUSIVE, FACET_MINLENGTH, FACET_PATTERN, FACET_TOTALDIGITS, FACET_WHITESPACE, FIXED, NOT_ALLOWED, VARIETY_ATOMIC, VARIETY_LIST, VARIETY_UNION, XMLSCHEMA_NSURI
Modifier | Constructor and Description |
---|---|
private |
NumberType() |
Modifier and Type | Method and Description |
---|---|
java.lang.Object |
_createValue(java.lang.String content,
org.relaxng.datatype.ValidationContext context)
converts a whitespace-processed lexical value into the corresponding value object
|
protected boolean |
checkFormat(java.lang.String content,
org.relaxng.datatype.ValidationContext context) |
int |
compare(java.lang.Object o1,
java.lang.Object o2)
compare to value types and decides its order relation
|
java.lang.String |
convertToLexicalValue(java.lang.Object o,
SerializationContext context)
converts value object back to the corresponding value in the lexical space.
|
XSDatatype |
getBaseType()
gets the base type of this type.
|
java.lang.Class |
getJavaObjectType()
gets the type of the objects that are created by the createJavaObject method.
|
int |
isFacetApplicable(java.lang.String facetName)
returns if the specified facet is applicable to this datatype.
|
static java.math.BigDecimal |
load(java.lang.String content) |
static java.lang.String |
save(java.lang.Object o) |
displayName, getVariety, readResolve
_checkValid, _createJavaObject, getConcreteType, isFinal, serializeJavaObject
checkValid, createJavaObject, createStreamingValidator, createValue, getAncestorBuiltinType, getApplicableFacetNames, getFacetObject, getIdType, getName, getNamespaceUri, isAlwaysValid, isContextDependent, isDerivedTypeOf, isDerivedTypeOf, isValid, localize, localize, localize, localize, localize, needValueCheck, sameValue, valueHashCode
public static final NumberType theInstance
private static final java.math.BigInteger the10
private static final long serialVersionUID
public final XSDatatype getBaseType()
XSDatatype
This method is intended to capture the semantics of the base type definition property of the simple type component, but there is an important difference.
Specifically, if you derive a type D from another type B, then calling D.getBaseType() does not necessarily return B. Instead, it may return an intermediate object (that represents a facet). Calling the getBaseType method recursively will eventually return B.
getBaseType
in interface XSDatatype
protected boolean checkFormat(java.lang.String content, org.relaxng.datatype.ValidationContext context)
checkFormat
in class XSDatatypeImpl
public java.lang.Object _createValue(java.lang.String content, org.relaxng.datatype.ValidationContext context)
XSDatatypeImpl
_createValue
in class XSDatatypeImpl
public static java.math.BigDecimal load(java.lang.String content)
public static java.lang.String save(java.lang.Object o)
public java.lang.Class getJavaObjectType()
DatabindableDatatype
getJavaObjectType
in interface DatabindableDatatype
public java.lang.String convertToLexicalValue(java.lang.Object o, SerializationContext context)
XSDatatype
This method does the reverse operation of the createValue method. The returned string is not necessarily the canonical representation. Also note that the implementation may accept invalid values without throwing IllegalArgumentException. To make sure that the result is actually a valid representation, call the isValid method.
Be careful not to confuse this method with
The serializeJavaObject method, which is defined in
the DatabindableDatatype
method.
convertToLexicalValue
in interface XSDatatype
context
- Context information that will be possibly used for the conversion.
Currently, this object is used only by QName, but may be extended
in the future.public final int isFacetApplicable(java.lang.String facetName)
XSDatatype
isFacetApplicable
in interface XSDatatype
public final int compare(java.lang.Object o1, java.lang.Object o2)
Comparator
compare
in interface Comparator