net.sf.saxon.s9api.BuildingContentHandler Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of Saxon-HE Show documentation
Show all versions of Saxon-HE Show documentation
The XSLT and XQuery Processor
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2018-2023 Saxonica Limited
// This Source Code Form is subject to the terms of the Mozilla Public License, v. 2.0.
// If a copy of the MPL was not distributed with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
// This Source Code Form is "Incompatible With Secondary Licenses", as defined by the Mozilla Public License, v. 2.0.
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
package net.sf.saxon.s9api;
import org.xml.sax.ContentHandler;
/**
* A SAX {@link ContentHandler} that builds a Saxon tree, and allows the node at the root of the tree
* to be retrieved on completion.
* To create a BuildingContentHandler
for a particular tree model, use the method
* {@link net.sf.saxon.s9api.DocumentBuilder#newBuildingContentHandler()}.
*/
public interface BuildingContentHandler extends ContentHandler {
/**
* After building the document by writing a sequence of events, retrieve the root node
* of the constructed document tree
*
* @return the root node of the constructed tree. The result is undefined (maybe null, maybe an exception)
* if the method is called before successfully completing the sequence of events (of which the last should be
* {@link #endDocument}) that constructs the tree.
* @throws SaxonApiException if any failure occurs
*/
XdmNode getDocumentNode() throws SaxonApiException;
}