public class XdmDestination extends AbstractDestination
XdmDestination is a Destination in which an XdmNode
is constructed to hold the output of a query or transformation:
that is, a tree using Saxon's implementation of the XDM data model
No data needs to be supplied to the XdmDestination object. The query or transformation
populates an XdmNode, which may then be retrieved using the getXdmNode
method.
An XdmDestination is designed to hold a single tree rooted at a document node.
If the result of a query is an arbitrary sequence, it will be normalized according to the rules
of the "sequence normalization" operation described in the W3C XSLT/XQuery Serialization
Recommendation, which results in either a single document node, or an error.
An XdmDestination can be reused to hold the results of a second query or transformation only
if the reset() method is first called to reset its state.
If an XDM tree is to be built from a lexical XML document, or programmatically from the application
by writing a sequence of events, the recommended mechanism is to use a DocumentBuilder rather
than this class.
RawDestination.helper| Constructor and Description |
|---|
XdmDestination() |
| Modifier and Type | Method and Description |
|---|---|
void |
close()
Close the destination, allowing resources to be released.
|
java.net.URI |
getBaseURI()
Get the base URI that will be used for the document node when the XdmDestination is written to.
|
Receiver |
getReceiver(PipelineConfiguration pipe,
SerializationProperties params)
Return a Receiver.
|
TreeModel |
getTreeModel()
Get the tree model to be used for documents constructed using this XdmDestination.
|
XdmNode |
getXdmNode()
Return the node at the root of the tree, after it has been constructed.
|
void |
reset()
Allow the
XdmDestination to be reused, without resetting other properties
of the destination. |
void |
setBaseURI(java.net.URI baseURI)
Set the base URI for the document node that will be created when the XdmDestination is written to.
|
void |
setTreeModel(TreeModel model)
Set the tree model to be used for documents constructed using this XdmDestination.
|
closeAndNotify, getDestinationBaseURI, onClose, setDestinationBaseURIpublic void setBaseURI(java.net.URI baseURI)
baseURI - the base URI for the node that will be constructed when the XdmDestination is written to.
This must be an absolute URIjava.lang.IllegalArgumentException - if the baseURI supplied is not an absolute URIpublic java.net.URI getBaseURI()
public void setTreeModel(TreeModel model)
model - typically one of the constants TreeModel.TINY_TREE,
TreeModel.TINY_TREE_CONDENSED, or TreeModel.LINKED_TREE. However, in principle
a user-defined tree model can be used.public TreeModel getTreeModel()
TreeModel.TINY_TREE,
TreeModel.TINY_TREE_CONDENSED, or TreeModel.LINKED_TREE. However, in principle
a user-defined tree model can be used.public Receiver getReceiver(PipelineConfiguration pipe, SerializationProperties params)
pipe - The Saxon configuration. This is supplied so that the destination can
use information from the configuration (for example, a reference to the name pool)
to construct or configure the returned Receiver.params - The serialization properties requested. Largely irrelevant for this Destination,
except perhaps for item-separator.public void close()
public XdmNode getXdmNode()
This method should not be called while the tree is under construction.
java.lang.IllegalStateException - if called during the execution of the process that
is writing the tree.public void reset()
XdmDestination to be reused, without resetting other properties
of the destination.Copyright (c) 2004-2020 Saxonica Limited. All rights reserved.