All Downloads are FREE. Search and download functionalities are using the official Maven repository.

net.sf.saxon.s9api.BuildingStreamWriter Maven / Gradle / Ivy

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// 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 javax.xml.stream.XMLStreamWriter;

/**
 * A BuildingStreamWriter allows a document to be constructed by calling the methods defined in the
 * {@link javax.xml.stream.XMLStreamWriter} interface; after the document has been constructed, its root
 * node may be retrieved by calling the getDocumentNode() method.
 * 

The class will attempt to generate namespace prefixes where none have been supplied, unless the * inventPrefixes option is set to false. The preferred mode of use is to call the versions * of writeStartElement and writeAttribute that supply the prefix, URI, and * local name in full. If the prefix is omitted, the class attempts to invent a prefix. If the URI is * omitted, the name is assumed to be in no namespace. The writeNamespace method should be * called only if there is a need to declare a namespace prefix that is not used on any element or * attribute name.

*

The class will check all names, URIs, and character content for conformance against XML well-formedness * rules unless the checkValues option is set to false.

*

A BuildingStreamWriter for a particular object model can be obtained by calling * {@link net.sf.saxon.s9api.DocumentBuilder#newBuildingStreamWriter()}.

*/ public interface BuildingStreamWriter extends XMLStreamWriter { /** * 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 #writeEndDocument}) that constructs the tree. * @throws SaxonApiException if any failure occurs */ XdmNode getDocumentNode() throws SaxonApiException; /** * Say whether names and values are to be checked for conformance with XML rules * * @param check true if names and values are to be checked. Default is true. */ void setCheckValues(boolean check); /** * Ask whether names and values are to be checked for conformance with XML rules * * @return true if names and values are to be checked. Default is true. */ boolean isCheckValues(); }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy