net.sf.saxon.s9api
Class XdmValue

java.lang.Object
  extended by net.sf.saxon.s9api.XdmValue
All Implemented Interfaces:
Iterable<XdmItem>
Direct Known Subclasses:
XdmEmptySequence, XdmItem

public class XdmValue
extends Object
implements Iterable<XdmItem>

An value in the XDM data model. A value is a sequence of zero or more items, each item being either an atomic value or a node.

An XdmValue is immutable.

A sequence consisting of a single item may be represented as an instance of XdmItem, which is a subtype of XdmValue. However, there is no guarantee that a sequence of length one will always be an instance of XdmItem.

Similarly, a zero-length sequence may be represented as an instance of XdmEmptySequence, but there is no guarantee that every sequence of length zero will always be an instance of XdmEmptySequence.


Method Summary
 ValueRepresentation getUnderlyingValue()
          Get the underlying implementation object representing the value.
 XdmItem itemAt(int n)
          Get the n'th item in the value, counting from zero.
 XdmSequenceIterator iterator()
          Returns an iterator over the items in this value.
 int size()
          Get the number of items in the sequence
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

size

public int size()
Get the number of items in the sequence

Returns:
the number of items in the value
Throws:
SaxonApiUncheckedException - if the value is lazily evaluated and the delayed evaluation fails with a dynamic error.

itemAt

public XdmItem itemAt(int n)
               throws IndexOutOfBoundsException,
                      SaxonApiUncheckedException
Get the n'th item in the value, counting from zero.

Parameters:
n - the item that is required, counting the first item in the sequence as item zero
Returns:
the n'th item in the sequence making up the value, counting from zero
Throws:
IndexOutOfBoundsException - if n is less than zero or greater than or equal to the number of items in the value
SaxonApiUncheckedException - if the value is lazily evaluated and the delayed evaluation fails with a dynamic error.

iterator

public XdmSequenceIterator iterator()
                             throws SaxonApiUncheckedException
Returns an iterator over the items in this value.

Specified by:
iterator in interface Iterable<XdmItem>
Returns:
an Iterator over the items in this value.
Throws:
SaxonApiUncheckedException - if the value is lazily evaluated and the delayed evaluation fails with a dynamic error.

getUnderlyingValue

public ValueRepresentation getUnderlyingValue()
Get the underlying implementation object representing the value. This method allows access to lower-level Saxon functionality, including classes and methods that offer no guarantee of stability across releases.

Returns:
the underlying implementation object representing the value


Copyright (C) Michael H. Kay. All rights reserved.