public class AtomicArray extends Object implements AtomicSequence
Constructor and Description |
---|
AtomicArray(AtomicValue[] content)
Create an AtomicArray over a supplied array of atomic values
|
AtomicArray(SequenceIterator iter)
Create an AtomicArray supplying the contents as an iterator
|
Modifier and Type | Method and Description |
---|---|
boolean |
effectiveBooleanValue()
Get the effective boolean value of this sequence
|
CharSequence |
getCanonicalLexicalRepresentation()
Get the canonical lexical representation as defined in XML Schema.
|
int |
getLength()
Get the length of the sequence
|
Comparable |
getSchemaComparable()
Get a Comparable value that implements the XML Schema ordering comparison semantics for this value.
|
String |
getStringValue()
Get the string value of this sequence.
|
CharSequence |
getStringValueCS()
Get the value of the item as a CharSequence.
|
AtomicValue |
head()
Get the first item in the sequence.
|
AtomicValue |
itemAt(int n)
Get the n'th item in the sequence (base-zero addressing)
|
SequenceIterator<AtomicValue> |
iterate()
Get an iterator
performance characteristics, though all should exhibit the same behaviour.over all the items in the sequence
|
GroundedValue |
reduce()
Reduce the sequence to its simplest form.
|
AtomicArray |
subsequence(int start,
int length)
Get a subsequence of this sequence
|
public AtomicArray(AtomicValue[] content)
content
- the supplied arraypublic AtomicArray(SequenceIterator iter) throws XPathException
iter
- the iterator that supplies the values (which must be position
at the start of the sequence, and which will be consumed by the method).XPathException
- if evaluation of the SequenceIterator fails, or if
any of the items returned by the SequenceIterator is not atomicpublic AtomicValue head()
Sequence
head
in interface AtomicSequence
head
in interface Sequence
public SequenceIterator<AtomicValue> iterate()
Sequence
iterate
in interface AtomicSequence
iterate
in interface Sequence
public AtomicValue itemAt(int n)
itemAt
in interface AtomicSequence
itemAt
in interface GroundedValue
n
- the index of the required item, the first item being zeropublic int getLength()
getLength
in interface AtomicSequence
getLength
in interface GroundedValue
public AtomicArray subsequence(int start, int length)
subsequence
in interface GroundedValue
start
- the index of the first item to be included in the result, counting from zero.
A negative value is taken as zero. If the value is beyond the end of the sequence, an empty
sequence is returnedlength
- the number of items to be included in the result. Specify Integer.MAX_VALUE to
get the subsequence up to the end of the base sequence. If the value is negative, an empty sequence
is returned. If the value goes off the end of the sequence, the result returns items up to the end
of the sequencepublic CharSequence getCanonicalLexicalRepresentation()
getCanonicalLexicalRepresentation
in interface AtomicSequence
public CharSequence getStringValueCS()
getStringValueCS
in interface AtomicSequence
getStringValueCS
in interface GroundedValue
public String getStringValue()
GroundedValue
getStringValue
in interface AtomicSequence
getStringValue
in interface GroundedValue
public boolean effectiveBooleanValue() throws XPathException
GroundedValue
effectiveBooleanValue
in interface GroundedValue
XPathException
- if the sequence has no effective boolean value (for example a sequence of two integers)public Comparable getSchemaComparable()
In the case of data types that are partially ordered, the returned Comparable extends the standard
semantics of the compareTo() method by returning the value SequenceTool.INDETERMINATE_ORDERING
when there
is no defined order relationship between two given values.
For comparing key/keyref values, XSD 1.1 defines that a singleton list is equal to its only member. To achieve this, this method returns the schema comparable of the singleton member if the list has length one. This won't give the correct ordering semantics, but we rely on lists never taking part in ordering comparisons.
getSchemaComparable
in interface AtomicSequence
public GroundedValue reduce()
reduce
in interface GroundedValue
Copyright (c) 2004-2013 Saxonica Limited. All rights reserved.