You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@xerces.apache.org by mr...@apache.org on 2011/05/31 05:19:44 UTC
svn commit: r1129476 -
/xerces/java/branches/xml-schema-1.1-dev/src/org/apache/xerces/impl/xs/traversers/XSDHandler.java
Author: mrglavas
Date: Tue May 31 03:19:43 2011
New Revision: 1129476
URL: http://svn.apache.org/viewvc?rev=1129476&view=rev
Log:
JIRA Issue #1516: http://issues.apache.org/jira/browse/XERCESJ-1516. Only create an XSDTypeAlternativeTraverser in XML Schema 1.1 mode. This eliminates loading of PsychoPath classes when Xerces is only used in XML Schema 1.0 mode.
Modified:
xerces/java/branches/xml-schema-1.1-dev/src/org/apache/xerces/impl/xs/traversers/XSDHandler.java
Modified: xerces/java/branches/xml-schema-1.1-dev/src/org/apache/xerces/impl/xs/traversers/XSDHandler.java
URL: http://svn.apache.org/viewvc/xerces/java/branches/xml-schema-1.1-dev/src/org/apache/xerces/impl/xs/traversers/XSDHandler.java?rev=1129476&r1=1129475&r2=1129476&view=diff
==============================================================================
--- xerces/java/branches/xml-schema-1.1-dev/src/org/apache/xerces/impl/xs/traversers/XSDHandler.java (original)
+++ xerces/java/branches/xml-schema-1.1-dev/src/org/apache/xerces/impl/xs/traversers/XSDHandler.java Tue May 31 03:19:43 2011
@@ -434,9 +434,9 @@ public class XSDHandler {
XSDKeyrefTraverser fKeyrefTraverser;
XSDNotationTraverser fNotationTraverser;
XSDSimpleTypeTraverser fSimpleTypeTraverser;
- XSDTypeAlternativeTraverser fTypeAlternativeTraverser;
XSDUniqueOrKeyTraverser fUniqueOrKeyTraverser;
XSDWildcardTraverser fWildCardTraverser;
+ XSDTypeAlternativeTraverser fTypeAlternativeTraverser;
SchemaDVFactory fDVFactory;
SchemaDOMParser fSchemaParser;
@@ -3633,11 +3633,14 @@ public class XSDHandler {
fKeyrefTraverser = new XSDKeyrefTraverser(this, fAttributeChecker);
fNotationTraverser = new XSDNotationTraverser(this, fAttributeChecker);
fSimpleTypeTraverser = new XSDSimpleTypeTraverser(this, fAttributeChecker);
- fTypeAlternativeTraverser = new XSDTypeAlternativeTraverser(this, fAttributeChecker);
fUniqueOrKeyTraverser = new XSDUniqueOrKeyTraverser(this, fAttributeChecker);
fWildCardTraverser = new XSDWildcardTraverser(this, fAttributeChecker);
} // createTraversers()
+ private void createXSD11Traversers() {
+ fTypeAlternativeTraverser = new XSDTypeAlternativeTraverser(this, fAttributeChecker);
+ } // createXSD11Traversers()
+
// before parsing a schema, need to clear registries associated with
// parsing schemas
void prepareForParse() {
@@ -3710,6 +3713,10 @@ public class XSDHandler {
if (fAttributeChecker == null) {
createTraversers();
}
+ if (fSchemaVersion == Constants.SCHEMA_VERSION_1_1 &&
+ fTypeAlternativeTraverser == null) {
+ createXSD11Traversers();
+ }
// reset traversers
Locale locale = fErrorReporter.getLocale();
@@ -3722,9 +3729,11 @@ public class XSDHandler {
fKeyrefTraverser.reset(fSymbolTable, fValidateAnnotations, locale);
fNotationTraverser.reset(fSymbolTable, fValidateAnnotations, locale);
fSimpleTypeTraverser.reset(fSymbolTable, fValidateAnnotations, locale);
- fTypeAlternativeTraverser.reset(fSymbolTable, fValidateAnnotations, locale);
fUniqueOrKeyTraverser.reset(fSymbolTable, fValidateAnnotations, locale);
fWildCardTraverser.reset(fSymbolTable, fValidateAnnotations, locale);
+ if (fTypeAlternativeTraverser != null) {
+ fTypeAlternativeTraverser.reset(fSymbolTable, fValidateAnnotations, locale);
+ }
fRedefinedRestrictedAttributeGroupRegistry.clear();
fRedefinedRestrictedGroupRegistry.clear();
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@xerces.apache.org
For additional commands, e-mail: commits-help@xerces.apache.org