com.icl.saxon.om

Class DocumentBuilderFactoryImpl


public class DocumentBuilderFactoryImpl
extends DocumentBuilderFactory

Implementation of JAXP 1.3 DocumentBuilderFactory. To build a Document using Saxon, set the system property javax.xml.parsers.DocumentBuilderFactory to "com.icl.saxon.om.DocumentBuilderFactoryImpl" and then call DocumentBuilderFactory.newInstance().newDocumentBuilder().parse(InputSource);

Constructor Summary

DocumentBuilderFactoryImpl()

Method Summary

Object
getAttribute(String name)
boolean
getFeature(String name)
Get the state of the named feature.
DocumentBuilder
newDocumentBuilder()
void
setAttribute(String name, Object value)
void
setFeature(String name, boolean value)
Set a feature for this DocumentBuilderFactory and DocumentBuilders created by this factory.

Constructor Details

DocumentBuilderFactoryImpl

public DocumentBuilderFactoryImpl()

Method Details

getAttribute

public Object getAttribute(String name)

getFeature

public boolean getFeature(String name)
            throws ParserConfigurationException
Get the state of the named feature.

Feature names are fully qualified URIs. Implementations may define their own features. An ParserConfigurationException is thrown if this DocumentBuilderFactory or the DocumentBuilders it creates cannot support the feature. It is possible for an DocumentBuilderFactory to expose a feature value but be unable to change its state.

Parameters:
name - Feature name.
Returns:
State of the named feature.

newDocumentBuilder

public DocumentBuilder newDocumentBuilder()
            throws ParserConfigurationException

setAttribute

public void setAttribute(String name,
                         Object value)

setFeature

public void setFeature(String name,
                       boolean value)
            throws ParserConfigurationException
Set a feature for this DocumentBuilderFactory and DocumentBuilders created by this factory.

Feature names are fully qualified URIs. Implementations may define their own features. An ParserConfigurationException is thrown if this DocumentBuilderFactory or the DocumentBuilders it creates cannot support the feature. It is possible for an DocumentBuilderFactory to expose a feature value but be unable to change its state.

All implementations are required to support the XMLConstants.FEATURE_SECURE_PROCESSING feature. When the feature is:

  • true: the implementation will limit XML processing to conform to implementation limits. Examples include enity expansion limits and XML Schema constructs that would consume large amounts of resources. If XML processing is limited for security reasons, it will be reported via a call to the registered org.xml.sax.ErrorHandler.fatalError(org.xml.sax.SAXParseException exception). See DocumentBuilder.setErrorHandler(org.xml.sax.ErrorHandler errorHandler).
  • false: the implementation will processing XML according to the XML specifications without regard to possible implementation limits.

The Saxon implementation does not support the secure processing feature.

Parameters:
name - Feature name.
value - Is feature state true or false.