public final class UnionType extends ConcreteType
| Modifier and Type | Field and Description |
|---|---|
XSDatatypeImpl[] |
memberTypes
member types
|
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, whiteSpaceAPPLICABLE, 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| Constructor and Description |
|---|
UnionType(String nsUri,
String newTypeName,
XSDatatype[] memberTypes)
derives a new datatype from atomic datatypes by union
|
| Modifier and Type | Method and Description |
|---|---|
protected void |
_checkValid(String content,
org.relaxng.datatype.ValidationContext context)
actual 'meat' of the checkValid method
|
Object |
_createValue(String content,
org.relaxng.datatype.ValidationContext context)
converts a whitespace-processed lexical value into the corresponding value object
|
protected boolean |
checkFormat(String content,
org.relaxng.datatype.ValidationContext context) |
String |
convertToLexicalValue(Object o,
SerializationContext context)
converts value object back to the corresponding value in the lexical space.
|
String |
displayName()
gets the displayable name of this type.
|
XSDatatype |
getBaseType()
gets the base type of this type.
|
Class |
getJavaObjectType()
gets the type of the objects that are created by the createJavaObject method.
|
int |
getVariety()
Variety of the UnionType is VARIETY_UNION.
|
boolean |
isContextDependent()
The union type is context-dependent if one of the member types is so.
|
int |
isFacetApplicable(String facetName)
returns if the specified facet is applicable to this datatype.
|
_createJavaObject, getConcreteType, isFinal, serializeJavaObjectcheckValid, createJavaObject, createStreamingValidator, createValue, getAncestorBuiltinType, getApplicableFacetNames, getFacetObject, getIdType, getName, getNamespaceUri, isAlwaysValid, isDerivedTypeOf, isDerivedTypeOf, isValid, localize, localize, localize, localize, localize, needValueCheck, sameValue, valueHashCodepublic final XSDatatypeImpl[] memberTypes
public UnionType(String nsUri, String newTypeName, XSDatatype[] memberTypes) throws org.relaxng.datatype.DatatypeException
org.relaxng.datatype.DatatypeExceptionpublic final XSDatatype getBaseType()
XSDatatypeThis 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.
public final String displayName()
XSDatatypeThis method is an ad-hoc method and there is no corresponding property in the spec.
public boolean isContextDependent()
isContextDependent in interface org.relaxng.datatype.DatatypeisContextDependent in class XSDatatypeImplpublic final int getVariety()
public final int isFacetApplicable(String facetName)
XSDatatypeprotected final boolean checkFormat(String content, org.relaxng.datatype.ValidationContext context)
checkFormat in class XSDatatypeImplpublic Object _createValue(String content, org.relaxng.datatype.ValidationContext context)
XSDatatypeImpl_createValue in class XSDatatypeImplpublic Class getJavaObjectType()
DatabindableDatatypepublic String convertToLexicalValue(Object o, SerializationContext context)
XSDatatypeThis 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.
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.protected void _checkValid(String content, org.relaxng.datatype.ValidationContext context) throws org.relaxng.datatype.DatatypeException
XSDatatypeImpl_checkValid in class ConcreteTypeorg.relaxng.datatype.DatatypeExceptionCopyright © 2016 Oracle Corporation. All Rights Reserved.