net.sf.saxon.value
Class AnyURIValue
java.lang.Object
net.sf.saxon.value.Value<AtomicValue>
net.sf.saxon.value.AtomicValue
net.sf.saxon.value.StringValue
net.sf.saxon.value.AnyURIValue
- All Implemented Interfaces:
- PullEvent, GroundedValue<AtomicValue>, Item<AtomicValue>, ValueRepresentation<AtomicValue>, ConversionResult
public final class AnyURIValue
- extends StringValue
An XPath value of type xs:anyURI.
This is implemented as a subtype of StringValue even though xs:anyURI is not a subtype of
xs:string in the XPath type hierarchy. This enables type promotion from URI to String to happen
automatically in most cases where it is appropriate.
This implementation of xs:anyURI allows any string to be contained in the value space. To check that
the URI is valid according to some set of syntax rules, the caller should invoke a StandardURIChecker
before constructing the AnyURIValue.
Methods inherited from class net.sf.saxon.value.StringValue |
codepointEquals, containsSurrogatePairs, contract, diagnosticDisplay, effectiveBooleanValue, equals, expand, expand, getPrimitiveStringValue, getSchemaComparable, getStringLength, getStringLength, getXPathComparable, hashCode, isIdentical, isKnownToContainNoSurrogates, isZeroLength, iterateCharacters, makeStringValue, setContainsNoSurrogates, setStringValueCS, toString |
Methods inherited from class net.sf.saxon.value.AtomicValue |
asAtomic, checkPermittedContents, getCardinality, getComponent, getItemType, getLength, getStringValue, getStringValueCS, getTypedValue, getTypeLabel, isNaN, itemAt, iterate, process, setTypeLabel, subsequence |
EMPTY_URI
public static final AnyURIValue EMPTY_URI
AnyURIValue
public AnyURIValue(CharSequence value)
- Constructor
- Parameters:
value
- the String value. Null is taken as equivalent to "". This constructor
does not check that the value is a valid anyURI instance. It does however
perform whitespace normalization.
AnyURIValue
public AnyURIValue(CharSequence value,
AtomicType type)
- Constructor for a user-defined subtype of anyURI
- Parameters:
value
- the String value. Null is taken as equivalent to "".type
- a user-defined subtype of anyURI. It is the caller's responsibility
to ensure that this is actually a subtype of anyURI, and that the value conforms
to the definition of this type.
copyAsSubType
public AtomicValue copyAsSubType(AtomicType typeLabel)
- Create a copy of this atomic value, with a different type label
- Overrides:
copyAsSubType
in class StringValue
- Parameters:
typeLabel
- the type label of the new copy. The caller is responsible for checking that
the value actually conforms to this type.
- Returns:
- the copied value
getPrimitiveType
public BuiltInAtomicType getPrimitiveType()
- Description copied from class:
StringValue
- Determine the primitive type of the value. This delivers the same answer as
getItemType().getPrimitiveItemType(). The primitive types are
the 19 primitive types of XML Schema, plus xs:integer, xs:dayTimeDuration and xs:yearMonthDuration,
and xs:untypedAtomic. For external objects, the result is AnyAtomicType.
- Overrides:
getPrimitiveType
in class StringValue
- Returns:
- the primitive type
decode
public static String decode(String s)
Copyright (c) 2004-2011 Saxonica Limited. All rights reserved.