Class StringType

    • Field Detail

      • theInstance

        public static final StringType theInstance
      • isAlwaysValid

        private final boolean isAlwaysValid
        Value returned from the isAlwaysValid method.
    • Constructor Detail

      • StringType

        protected StringType​(java.lang.String typeName,
                             WhiteSpaceProcessor whiteSpace)
      • StringType

        protected StringType​(java.lang.String typeName,
                             WhiteSpaceProcessor whiteSpace,
                             boolean _isAlwaysValid)
    • Method Detail

      • getBaseType

        public XSDatatype getBaseType()
        Description copied from interface: XSDatatype
        gets the base type of this type. This method returns null if this object represents the simple ur-type.

        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.

        Specified by:
        getBaseType in interface XSDatatype
      • checkFormat

        protected final boolean checkFormat​(java.lang.String content,
                                            org.relaxng.datatype.ValidationContext context)
        Specified by:
        checkFormat in class XSDatatypeImpl
      • _createValue

        public java.lang.Object _createValue​(java.lang.String lexicalValue,
                                             org.relaxng.datatype.ValidationContext context)
        Description copied from class: XSDatatypeImpl
        converts a whitespace-processed lexical value into the corresponding value object
        Specified by:
        _createValue in class XSDatatypeImpl
      • convertToLexicalValue

        public java.lang.String convertToLexicalValue​(java.lang.Object value,
                                                      SerializationContext context)
        Description copied from interface: XSDatatype
        converts value object back to the corresponding value in the lexical space.

        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.

        Specified by:
        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.
      • countLength

        public final int countLength​(java.lang.Object value)
        Description copied from interface: Discrete
        count the number of item in value type. Actual semantics of this method varies.
        Specified by:
        countLength in interface Discrete
      • isFacetApplicable

        public final int isFacetApplicable​(java.lang.String facetName)
        Description copied from interface: XSDatatype
        returns if the specified facet is applicable to this datatype.
        Specified by:
        isFacetApplicable in interface XSDatatype
        Returns:
        APPLICABLE
        if the facet is applicable
        FIXED
        if the facet is already fixed (that is,not applicable)
        NOT_ALLOWED
        if the facet is not applicable to this datatype at all. this value is also returned for unknown facets.
      • isAlwaysValid

        public boolean isAlwaysValid()
        Description copied from interface: XSDatatype
        Returns true if this datatype is known to accept any string. This is just a hint that allows the client code to do certain optimization.

        This method can return false even if the datatype actually accepts any string. That is, it's perfectly OK for any datatype to return false from this method.

        Specified by:
        isAlwaysValid in interface XSDatatype
        Overrides:
        isAlwaysValid in class XSDatatypeImpl