Package net.sf.saxon.value
Class AnyURIValue
- java.lang.Object
-
- net.sf.saxon.value.AtomicValue
-
- net.sf.saxon.value.StringValue
-
- net.sf.saxon.value.AnyURIValue
-
- All Implemented Interfaces:
java.lang.Iterable<AtomicValue>
,AtomicSequence
,GroundedValue
,IdentityComparable
,Item
,Sequence
,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.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class net.sf.saxon.value.StringValue
StringValue.Builder, StringValue.CharacterIterator, StringValue.UnicodeCharacterIterator
-
-
Field Summary
Fields Modifier and Type Field Description static AnyURIValue
EMPTY_URI
-
Fields inherited from class net.sf.saxon.value.StringValue
EMPTY_STRING, FALSE, SINGLE_SPACE, TRUE, value
-
Fields inherited from class net.sf.saxon.value.AtomicValue
typeLabel
-
-
Constructor Summary
Constructors Constructor Description AnyURIValue(java.lang.CharSequence value)
ConstructorAnyURIValue(java.lang.CharSequence value, AtomicType type)
Constructor for a user-defined subtype of anyURI
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description AtomicValue
copyAsSubType(AtomicType typeLabel)
Create a copy of this atomic value, with a different type labelstatic java.lang.String
decode(java.lang.String s)
BuiltInAtomicType
getPrimitiveType()
Determine the primitive type of the value.-
Methods inherited from class net.sf.saxon.value.StringValue
codepointEquals, containsSurrogatePairs, contract, diagnosticDisplay, effectiveBooleanValue, equals, expand, getPrimitiveStringValue, getSchemaComparable, getStringLength, getStringLength, getStringLengthUpperBound, getUnicodeString, getXPathComparable, hashCode, isEmpty, isIdentical, isKnownToContainNoSurrogates, isZeroLength, iterateCharacters, makeStringValue, setContainsNoSurrogates, setStringValueCS, toShortString, toString
-
Methods inherited from class net.sf.saxon.value.AtomicValue
asAtomic, asMapKey, atomize, checkPermittedContents, checkValidInJavascript, getCanonicalLexicalRepresentation, getCardinality, getComponent, getGenre, getItemType, getLength, getStringValue, getStringValueCS, getUType, head, identityHashCode, isIdentical, isNaN, itemAt, iterate, iterator, setTypeLabel
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface net.sf.saxon.om.GroundedValue
asIterable, concatenate, containsNode, materialize
-
Methods inherited from interface net.sf.saxon.om.Item
isStreamed, reduce, subsequence
-
Methods inherited from interface net.sf.saxon.om.Sequence
makeRepeatable
-
-
-
-
Field Detail
-
EMPTY_URI
public static final AnyURIValue EMPTY_URI
-
-
Constructor Detail
-
AnyURIValue
public AnyURIValue(java.lang.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(java.lang.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.
-
-
Method Detail
-
copyAsSubType
public AtomicValue copyAsSubType(AtomicType typeLabel)
Create a copy of this atomic value, with a different type label- Overrides:
copyAsSubType
in classStringValue
- 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 classStringValue
- Returns:
- the primitive type
-
decode
public static java.lang.String decode(java.lang.String s)
-
-