net.sf.saxon

Class AugmentedSource

Implemented Interfaces:
Source

public class AugmentedSource
extends java.lang.Object
implements Source

This class is an extension of the JAXP Source interface. The class can be used wherever a JAXP Source object can be used, and it provides additional information about the way that the Source is to be processed: for example, it indicates whether or not it should be validated against a schema. Other options that can be set include the SAX XMLReader to be used, and the choice of whether a source in the form of an existing tree should be copied or wrapped.
Since:
8.8

Method Summary

void
addFilter(ProxyReceiver filter)
Add a filter to the list of filters to be applied to the raw input
void
close()
Close any resources held by this Source.
Source
getContainedSource()
Get the Source object wrapped by this AugmentedSource
int
getDTDValidation()
Get whether or not DTD validation of this source is required
EntityResolver
getEntityResolver()
Get the EntityResolver that will be used when parsing
ErrorListener
getErrorListener()
Get the ErrorListener that will be used when parsing
List
getFilters()
Get the list of filters to be applied to the input.
int
getSchemaValidation()
Get whether or not schema validation of this source is required
int
getStripSpace()
Get the space-stripping action to be applied to the source document
String
getSystemId()
Get the System ID.
StructuredQName
getTopLevelElement()
Get the name of the top-level element for validation.
SchemaType
getTopLevelType()
Get the type of the document element for validation.
int
getTreeModel()
Get the tree model that will be used.
Boolean
getWrapDocument()
Assuming that the contained Source is a node in a tree, determine whether a tree will be created as a view of this supplied tree, or as a copy.
XMLReader
getXMLReader()
Get the SAX parser (XMLReader) to be used
boolean
isLineNumbering()
Get whether line numbers are to be maintained in the constructed document
boolean
isLineNumberingSet()
Determine whether setLineNumbering() has been called
boolean
isPleaseCloseAfterUse()
Determine whether or not the user of this Source is encouraged to close it as soon as reading is finished.
boolean
isXIncludeAware()
Get state of XInclude processing.
boolean
isXIncludeAwareSet()
Determine whether setXIncludeAware() has been called.
static AugmentedSource
makeAugmentedSource(Source source)
Create an AugmentedSource that wraps a given Source object.
void
setDTDValidationMode(int option)
Set whether or not DTD validation of this source is required
void
setEntityResolver(EntityResolver resolver)
Set an EntityResolver to be used when parsing
void
setErrorListener(ErrorListener listener)
Set an ErrorListener to be used when parsing
void
setLineNumbering(boolean lineNumbering)
Set whether line numbers are to be maintained in the constructed document
void
setPleaseCloseAfterUse(boolean close)
Set whether or not the user of this Source is encouraged to close it as soon as reading is finished.
void
setSchemaValidationMode(int option)
Set whether or not schema validation of this source is required
void
setStripSpace(int stripAction)
Set the space-stripping action to be applied to the source document
void
setSystemId(String id)
Set the System ID.
void
setTopLevelElement(StructuredQName elementName)
Set the name of the top-level element for validation.
void
setTopLevelType(SchemaType type)
Set the type of the top-level element for validation.
void
setTreeModel(int model)
Set the tree model to use.
void
setWrapDocument(Boolean wrap)
Assuming that the contained Source is a node in a tree, indicate whether a tree should be created as a view of this supplied tree, or as a copy.
void
setXIncludeAware(boolean state)
Set state of XInclude processing.
void
setXMLReader(XMLReader parser)
Set the SAX parser (XMLReader) to be used

Method Details

addFilter

public void addFilter(ProxyReceiver filter)
Add a filter to the list of filters to be applied to the raw input
Parameters:
filter - the filter to be added

close

public void close()
Close any resources held by this Source. This only works if the underlying Source is one that is recognized as holding closable resources.
Since:
8.8

getContainedSource

public Source getContainedSource()
Get the Source object wrapped by this AugmentedSource
Returns:
the contained Source object
Since:
8.8

getDTDValidation

public int getDTDValidation()
Get whether or not DTD validation of this source is required
Returns:
the validation mode requested, or Validation.DEFAULT to use the default validation mode from the Configuration.
Since:
8.8

getEntityResolver

public EntityResolver getEntityResolver()
Get the EntityResolver that will be used when parsing
Since:
8.9

getErrorListener

public ErrorListener getErrorListener()
Get the ErrorListener that will be used when parsing
Since:
8.9

getFilters

public List getFilters()
Get the list of filters to be applied to the input. Returns null if there are no filters.
Returns:
the list of filters, if there are any

getSchemaValidation

public int getSchemaValidation()
Get whether or not schema validation of this source is required
Returns:
the validation mode requested, or Validation.DEFAULT to use the default validation mode from the Configuration.
Since:
8.8

getStripSpace

public int getStripSpace()
Get the space-stripping action to be applied to the source document
Since:
8.8

getSystemId

public String getSystemId()
Get the System ID. This gets the System Id on the underlying Source object.
Returns:
the System ID: effectively the base URI.
Since:
8.8

getTopLevelElement

public StructuredQName getTopLevelElement()
Get the name of the top-level element for validation. If a top-level element is set then the document being validated must have this as its outermost element
Returns:
the QName of the required top-level element, or null if no value is set
Since:
9.0

getTopLevelType

public SchemaType getTopLevelType()
Get the type of the document element for validation. If this is set then the document element of the document being validated must have this type
Returns:
the type of the required top-level element, or null if no value is set
Since:
9.0

getTreeModel

public int getTreeModel()
Get the tree model that will be used.
Returns:
one of Builder.TINY_TREE or Builder.LINKED_TREE, or {link Builder#UNSPECIFIED_TREE_MODEL} if no call on setTreeModel() has been made
Since:
8.9

getWrapDocument

public Boolean getWrapDocument()
Assuming that the contained Source is a node in a tree, determine whether a tree will be created as a view of this supplied tree, or as a copy.
Returns:
if true, the node in the supplied Source is wrapped, to create a view. If false, the node and its contained subtree is copied. If null, the system default is chosen.
Since:
8.8

getXMLReader

public XMLReader getXMLReader()
Get the SAX parser (XMLReader) to be used
Returns:
the parser
Since:
8.8

isLineNumbering

public boolean isLineNumbering()
Get whether line numbers are to be maintained in the constructed document
Returns:
true if line numbers are maintained
Since:
8.8

isLineNumberingSet

public boolean isLineNumberingSet()
Determine whether setLineNumbering() has been called
Returns:
true if setLineNumbering() has been called
Since:
8.9

isPleaseCloseAfterUse

public boolean isPleaseCloseAfterUse()
Determine whether or not the user of this Source is encouraged to close it as soon as reading is finished.
Returns:
true if the source should be closed as soon as it has been consumed
Since:
8.8

isXIncludeAware

public boolean isXIncludeAware()
Get state of XInclude processing.
Returns:
current state of XInclude processing. Default value is false.
Since:
8.9

isXIncludeAwareSet

public boolean isXIncludeAwareSet()
Determine whether setXIncludeAware() has been called.
Returns:
true if setXIncludeAware() has been called
Since:
8.9

makeAugmentedSource

public static AugmentedSource makeAugmentedSource(Source source)
Create an AugmentedSource that wraps a given Source object. If this is already an AugmentedSource, the original AugmentedSource is returned. Note that this means that setting any properties on the returned AugmentedSource will also affect the original.
Parameters:
source - the Source object to be wrapped
Returns:
an AugmentedSource
Since:
8.8

setDTDValidationMode

public void setDTDValidationMode(int option)
Set whether or not DTD validation of this source is required
Since:
8.8

setEntityResolver

public void setEntityResolver(EntityResolver resolver)
Set an EntityResolver to be used when parsing
Parameters:
resolver - the EntityResolver to be used
Since:
8.9

setErrorListener

public void setErrorListener(ErrorListener listener)
Set an ErrorListener to be used when parsing
Parameters:
listener - the ErrorListener to be used
Since:
8.9

setLineNumbering

public void setLineNumbering(boolean lineNumbering)
Set whether line numbers are to be maintained in the constructed document
Parameters:
lineNumbering - true if line numbers are to be maintained
Since:
8.8

setPleaseCloseAfterUse

public void setPleaseCloseAfterUse(boolean close)
Set whether or not the user of this Source is encouraged to close it as soon as reading is finished. Normally the expectation is that any Stream in a StreamSource will be closed by the component that created the Stream. However, in the case of a Source returned by a URIResolver, there is no suitable interface (the URIResolver has no opportunity to close the stream). Also, in some cases such as reading of stylesheet modules, it is possible to close the stream long before control is returned to the caller who supplied it. This tends to make a difference on .NET, where a file often can't be opened if there is a stream attached to it.
Parameters:
close - true if the source should be closed as soon as it has been consumed
Since:
8.8

setSchemaValidationMode

public void setSchemaValidationMode(int option)
Set whether or not schema validation of this source is required
Since:
8.8

setStripSpace

public void setStripSpace(int stripAction)
Set the space-stripping action to be applied to the source document
Since:
8.8

setSystemId

public void setSystemId(String id)
Set the System ID. This sets the System Id on the underlying Source object.
Parameters:
id - the System ID. This provides a base URI for the document, and also the result of the document-uri() function
Since:
8.8

setTopLevelElement

public void setTopLevelElement(StructuredQName elementName)
Set the name of the top-level element for validation. If a top-level element is set then the document being validated must have this as its outermost element
Parameters:
elementName - the QName of the required top-level element, or null to unset the value
Since:
9.0

setTopLevelType

public void setTopLevelType(SchemaType type)
Set the type of the top-level element for validation. If this is set then the document element is validated against this type
Parameters:
type - the schema type required for the document element, or null to unset the value
Since:
9.0

setTreeModel

public void setTreeModel(int model)
Set the tree model to use. Default is the tiny tree
Since:
8.9

setWrapDocument

public void setWrapDocument(Boolean wrap)
Assuming that the contained Source is a node in a tree, indicate whether a tree should be created as a view of this supplied tree, or as a copy.
Parameters:
wrap - if true, the node in the supplied Source is wrapped, to create a view. If false, the node and its contained subtree is copied. If null, the system default is chosen.
Since:
8.8

setXIncludeAware

public void setXIncludeAware(boolean state)
Parameters:
state - Set XInclude processing to true or false
Since:
8.9

setXMLReader

public void setXMLReader(XMLReader parser)
Set the SAX parser (XMLReader) to be used
Parameters:
parser - the SAX parser
Since:
8.8