org.apache.commons.digester.parser

Class XercesParser

public class XercesParser extends Object

Create a SAXParser based on the underlying Xerces version. Currently, Xerces 2.3 and up doesn't implement schema validation the same way 2.1 was. In other to support schema validation in a portable way between parser, some features/properties need to be set.

Since: 1.6

Field Summary
protected static StringJAXP_SCHEMA_LANGUAGE
The JAXP 1.2 property to set up the schemaLanguage used.
static StringJAXP_SCHEMA_SOURCE
The JAXP 1.2 property required to set up the schema location.
protected static Loglog
The Log to which all SAX event related logging calls will be made.
protected static floatversion
A float representing the underlying Xerces version
protected static StringversionNumber
The current Xerces version.
protected static StringXERCES_DYNAMIC
Xerces dynamic validation property
protected static StringXERCES_SCHEMA
Xerces schema validation property
Method Summary
static voidconfigureOldXerces(SAXParser parser, Properties properties)
Configure schema validation as recommended by the JAXP 1.2 spec.
static voidconfigureXerces(SAXParserFactory factory)
Configure schema validation as recommended by the Xerces spec.
static StringgetXercesVersion()
Return the current Xerces version.
static SAXParsernewSAXParser(Properties properties)
Create a SAXParser based on the underlying Xerces version.

Field Detail

JAXP_SCHEMA_LANGUAGE

protected static String JAXP_SCHEMA_LANGUAGE
The JAXP 1.2 property to set up the schemaLanguage used.

JAXP_SCHEMA_SOURCE

private static final String JAXP_SCHEMA_SOURCE
The JAXP 1.2 property required to set up the schema location.

log

protected static Log log
The Log to which all SAX event related logging calls will be made.

version

protected static float version
A float representing the underlying Xerces version

versionNumber

protected static String versionNumber
The current Xerces version.

XERCES_DYNAMIC

protected static String XERCES_DYNAMIC
Xerces dynamic validation property

XERCES_SCHEMA

protected static String XERCES_SCHEMA
Xerces schema validation property

Method Detail

configureOldXerces

private static void configureOldXerces(SAXParser parser, Properties properties)
Configure schema validation as recommended by the JAXP 1.2 spec. The properties object may contains information about the schema local and language.

Parameters: properties parser optional info

configureXerces

private static void configureXerces(SAXParserFactory factory)
Configure schema validation as recommended by the Xerces spec. Both DTD and Schema validation will be enabled simultaneously.

Parameters: factory SAXParserFactory to be configured

getXercesVersion

private static String getXercesVersion()
Return the current Xerces version.

Returns: the current Xerces version.

newSAXParser

public static SAXParser newSAXParser(Properties properties)
Create a SAXParser based on the underlying Xerces version.

Parameters: properties parser specific properties/features

Returns: an XML Schema/DTD enabled SAXParser

Copyright 2001-2005 The Apache Software Foundation.