ankitp 2005/02/09 07:34:03
Modified: java/src/org/apache/xerces/parsers XML11Configuration.java
StandardParserConfiguration.java
java/src/org/apache/xerces/impl/xs XMLSchemaLoader.java
XMLSchemaValidator.java
java/src/org/apache/xerces/impl Constants.java
java/src/org/apache/xerces/impl/xs/traversers
XSDHandler.java
Log:
refactoring. changing feature to:
http://apache.org/xml/features/honour-all-schemaLocations
Revision Changes Path
1.22 +5 -5
xml-xerces/java/src/org/apache/xerces/parsers/XML11Configuration.java
Index: XML11Configuration.java
===================================================================
RCS file:
/home/cvs/xml-xerces/java/src/org/apache/xerces/parsers/XML11Configuration.java,v
retrieving revision 1.21
retrieving revision 1.22
diff -u -r1.21 -r1.22
--- XML11Configuration.java 8 Feb 2005 15:29:22 -0000 1.21
+++ XML11Configuration.java 9 Feb 2005 15:34:02 -0000 1.22
@@ -143,9 +143,9 @@
protected static final String VALIDATE_ANNOTATIONS =
Constants.XERCES_FEATURE_PREFIX +
Constants.VALIDATE_ANNOTATIONS_FEATURE;
- /** Feature identifier: handle multiple imports. */
- protected static final String HANDLE_MULTIPLE_IMPORTS =
- Constants.XERCES_FEATURE_PREFIX +
Constants.HANDLE_MULTIPLE_IMPORTS_FEATURE;
+ /** Feature identifier: honour all schemaLocations */
+ protected static final String HONOUR_ALL_SCHEMALOCATIONS =
+ Constants.XERCES_FEATURE_PREFIX +
Constants.HONOUR_ALL_SCHEMALOCATIONS_FEATURE;
// feature identifiers
@@ -443,7 +443,7 @@
NAMESPACES,
NORMALIZE_DATA, SCHEMA_ELEMENT_DEFAULT, SCHEMA_AUGMENT_PSVI,
GENERATE_SYNTHETIC_ANNOTATIONS, VALIDATE_ANNOTATIONS,
- HANDLE_MULTIPLE_IMPORTS,
+ HONOUR_ALL_SCHEMALOCATIONS,
// NOTE: These shouldn't really be here but since the XML Schema
// validator is constructed dynamically, its recognized
// features might not have been set and it would cause a
@@ -466,7 +466,7 @@
fFeatures.put(SCHEMA_AUGMENT_PSVI, Boolean.TRUE);
fFeatures.put(GENERATE_SYNTHETIC_ANNOTATIONS, Boolean.FALSE);
fFeatures.put(VALIDATE_ANNOTATIONS, Boolean.FALSE);
- fFeatures.put(HANDLE_MULTIPLE_IMPORTS, Boolean.FALSE);
+ fFeatures.put(HONOUR_ALL_SCHEMALOCATIONS, Boolean.FALSE);
fFeatures.put(PARSER_SETTINGS, Boolean.TRUE);
// add default recognized properties
1.38 +5 -5
xml-xerces/java/src/org/apache/xerces/parsers/StandardParserConfiguration.java
Index: StandardParserConfiguration.java
===================================================================
RCS file:
/home/cvs/xml-xerces/java/src/org/apache/xerces/parsers/StandardParserConfiguration.java,v
retrieving revision 1.37
retrieving revision 1.38
diff -u -r1.37 -r1.38
--- StandardParserConfiguration.java 8 Feb 2005 15:29:22 -0000 1.37
+++ StandardParserConfiguration.java 9 Feb 2005 15:34:02 -0000 1.38
@@ -99,9 +99,9 @@
protected static final String VALIDATE_ANNOTATIONS =
Constants.XERCES_FEATURE_PREFIX +
Constants.VALIDATE_ANNOTATIONS_FEATURE;
- /** Feature identifier: handle multiple imports. */
- protected static final String HANDLE_MULTIPLE_IMPORTS =
- Constants.XERCES_FEATURE_PREFIX +
Constants.HANDLE_MULTIPLE_IMPORTS_FEATURE;
+ /** Feature identifier: honour all schemaLocations */
+ protected static final String HONOUR_ALL_SCHEMALOCATIONS =
+ Constants.XERCES_FEATURE_PREFIX +
Constants.HONOUR_ALL_SCHEMALOCATIONS_FEATURE;
// property identifiers
@@ -184,7 +184,7 @@
SCHEMA_AUGMENT_PSVI,
GENERATE_SYNTHETIC_ANNOTATIONS,
VALIDATE_ANNOTATIONS,
- HANDLE_MULTIPLE_IMPORTS,
+ HONOUR_ALL_SCHEMALOCATIONS,
// NOTE: These shouldn't really be here but since the XML Schema
// validator is constructed dynamically, its recognized
// features might not have been set and it would cause a
@@ -200,7 +200,7 @@
setFeature(SCHEMA_AUGMENT_PSVI, true);
setFeature(GENERATE_SYNTHETIC_ANNOTATIONS, false);
setFeature(VALIDATE_ANNOTATIONS, false);
- setFeature(HANDLE_MULTIPLE_IMPORTS, false);
+ setFeature(HONOUR_ALL_SCHEMALOCATIONS, false);
// add default recognized properties
1.38 +22 -7
xml-xerces/java/src/org/apache/xerces/impl/xs/XMLSchemaLoader.java
Index: XMLSchemaLoader.java
===================================================================
RCS file:
/home/cvs/xml-xerces/java/src/org/apache/xerces/impl/xs/XMLSchemaLoader.java,v
retrieving revision 1.37
retrieving revision 1.38
diff -u -r1.37 -r1.38
--- XMLSchemaLoader.java 8 Feb 2005 15:29:23 -0000 1.37
+++ XMLSchemaLoader.java 9 Feb 2005 15:34:02 -0000 1.38
@@ -122,10 +122,9 @@
protected static final String GENERATE_SYNTHETIC_ANNOTATIONS =
Constants.XERCES_FEATURE_PREFIX +
Constants.GENERATE_SYNTHETIC_ANNOTATIONS_FEATURE;
- /** Feature identifier: handle multiple imports. */
- protected static final String HANDLE_MULTIPLE_IMPORTS =
- Constants.XERCES_FEATURE_PREFIX +
Constants.HANDLE_MULTIPLE_IMPORTS_FEATURE;
-
+ /** Feature identifier: honour all schemaLocations */
+ protected static final String HONOUR_ALL_SCHEMALOCATIONS =
+ Constants.XERCES_FEATURE_PREFIX +
Constants.HONOUR_ALL_SCHEMALOCATIONS_FEATURE;
protected static final String AUGMENT_PSVI =
Constants.XERCES_FEATURE_PREFIX + Constants.SCHEMA_AUGMENT_PSVI;
@@ -143,7 +142,7 @@
DISALLOW_DOCTYPE,
GENERATE_SYNTHETIC_ANNOTATIONS,
VALIDATE_ANNOTATIONS,
- HANDLE_MULTIPLE_IMPORTS
+ HONOUR_ALL_SCHEMALOCATIONS
};
// property identifiers
@@ -469,6 +468,22 @@
return fUserEntityResolver;
} // getEntityResolver(): XMLEntityResolver
+ /**
+ *
+ * @param source[] the locations of the entity which forms
+ * the staring point of the grammars to be
constructed
+ * @throws IOException when a problem is encounted reading the entity
+ * @throws XNIException when a condition arises (such as a FatalErro)
that requires parsing
+ * of the entity be terminated
+ */
+ //Notes: so far, we assume one grammar won't come from multiple
sources--Jack
+ public void loadGrammar(XMLInputSource source[])
+ throws IOException, XNIException{
+ int numSource = source.length;
+ for(int i = 0; i < numSource; i++){
+ loadGrammar(source[i]);
+ }
+ }
/**
* Returns a Grammar object by parsing the contents of the
@@ -1106,7 +1121,7 @@
name.equals(ALLOW_JAVA_ENCODINGS) ||
name.equals(STANDARD_URI_CONFORMANT_FEATURE) ||
name.equals(GENERATE_SYNTHETIC_ANNOTATIONS) ||
- name.equals(HANDLE_MULTIPLE_IMPORTS)) {
+ name.equals(HONOUR_ALL_SCHEMALOCATIONS)) {
return true;
}
@@ -1181,7 +1196,7 @@
v.add(STANDARD_URI_CONFORMANT_FEATURE);
v.add(VALIDATE_ANNOTATIONS);
v.add(GENERATE_SYNTHETIC_ANNOTATIONS);
- v.add(HANDLE_MULTIPLE_IMPORTS);
+ v.add(HONOUR_ALL_SCHEMALOCATIONS);
fRecognizedParameters = new DOMStringListImpl(v);
}
return fRecognizedParameters;
1.165 +4 -4
xml-xerces/java/src/org/apache/xerces/impl/xs/XMLSchemaValidator.java
Index: XMLSchemaValidator.java
===================================================================
RCS file:
/home/cvs/xml-xerces/java/src/org/apache/xerces/impl/xs/XMLSchemaValidator.java,v
retrieving revision 1.164
retrieving revision 1.165
diff -u -r1.164 -r1.165
--- XMLSchemaValidator.java 8 Feb 2005 15:29:23 -0000 1.164
+++ XMLSchemaValidator.java 9 Feb 2005 15:34:02 -0000 1.165
@@ -151,9 +151,9 @@
protected static final String VALIDATE_ANNOTATIONS =
Constants.XERCES_FEATURE_PREFIX +
Constants.VALIDATE_ANNOTATIONS_FEATURE;
- /** Feature identifier: handle multiple imports. */
- protected static final String HANDLE_MULTIPLE_IMPORTS =
- Constants.XERCES_FEATURE_PREFIX +
Constants.HANDLE_MULTIPLE_IMPORTS_FEATURE;
+ /** Feature identifier: honour all schemaLocations */
+ protected static final String HONOUR_ALL_SCHEMALOCATIONS =
+ Constants.XERCES_FEATURE_PREFIX +
Constants.HONOUR_ALL_SCHEMALOCATIONS_FEATURE;
/** Feature identifier: whether to continue parsing a schema after a
fatal error is encountered */
protected static final String CONTINUE_AFTER_FATAL_ERROR =
@@ -216,7 +216,7 @@
STANDARD_URI_CONFORMANT_FEATURE,
GENERATE_SYNTHETIC_ANNOTATIONS,
VALIDATE_ANNOTATIONS,
- HANDLE_MULTIPLE_IMPORTS};
+ HONOUR_ALL_SCHEMALOCATIONS};
/** Feature defaults. */
private static final Boolean[] FEATURE_DEFAULTS = { null,
1.48 +2 -2 xml-xerces/java/src/org/apache/xerces/impl/Constants.java
Index: Constants.java
===================================================================
RCS file:
/home/cvs/xml-xerces/java/src/org/apache/xerces/impl/Constants.java,v
retrieving revision 1.47
retrieving revision 1.48
diff -u -r1.47 -r1.48
--- Constants.java 8 Feb 2005 15:31:40 -0000 1.47
+++ Constants.java 9 Feb 2005 15:34:03 -0000 1.48
@@ -122,8 +122,8 @@
/** JAXP schemaSource property: when used internally may include DTD
sources (DOM) */
public static final String SCHEMA_SOURCE = "schemaSource";
- /** Multiple imports feature */
- public static final String HANDLE_MULTIPLE_IMPORTS_FEATURE =
"handle-multiple-imports";
+ /** Honour all schemaLocations (multiple imports etc) feature */
+ public static final String HONOUR_ALL_SCHEMALOCATIONS_FEATURE =
"honour-all-schemaLocations";
/** JAXP schemaSource language: when used internally may include DTD
namespace (DOM) */
public static final String SCHEMA_LANGUAGE = "schemaLanguage";
1.87 +10 -10
xml-xerces/java/src/org/apache/xerces/impl/xs/traversers/XSDHandler.java
Index: XSDHandler.java
===================================================================
RCS file:
/home/cvs/xml-xerces/java/src/org/apache/xerces/impl/xs/traversers/XSDHandler.java,v
retrieving revision 1.86
retrieving revision 1.87
diff -u -r1.86 -r1.87
--- XSDHandler.java 8 Feb 2005 15:29:23 -0000 1.86
+++ XSDHandler.java 9 Feb 2005 15:34:03 -0000 1.87
@@ -112,9 +112,9 @@
protected static final String VALIDATE_ANNOTATIONS =
Constants.XERCES_FEATURE_PREFIX +
Constants.VALIDATE_ANNOTATIONS_FEATURE;
- /** Feature identifier: handle multiple imports. */
- protected static final String HANDLE_MULTIPLE_IMPORTS =
- Constants.XERCES_FEATURE_PREFIX +
Constants.HANDLE_MULTIPLE_IMPORTS_FEATURE;
+ /** Feature identifier: honour all schemaLocations */
+ protected static final String HONOUR_ALL_SCHEMALOCATIONS =
+ Constants.XERCES_FEATURE_PREFIX +
Constants.HONOUR_ALL_SCHEMALOCATIONS_FEATURE;
/** Property identifier: error handler. */
protected static final String ERROR_HANDLER =
@@ -271,7 +271,7 @@
private boolean fValidateAnnotations = false;
//handle multiple import feature
- private boolean fHandleMultipleImports = false;
+ private boolean fHonourAllSchemaLocations = false;
// the XMLErrorReporter
private XMLErrorReporter fErrorReporter;
@@ -387,7 +387,7 @@
// no namespace schema.
if (referType != XSDDescription.CONTEXT_PREPARSE){
// first try to find it in the bucket/pool, return if one is
found
- if(fHandleMultipleImports && referType ==
XSDDescription.CONTEXT_IMPORT && isExistingGrammar(desc)) {
+ if(fHonourAllSchemaLocations && referType ==
XSDDescription.CONTEXT_IMPORT && isExistingGrammar(desc)) {
grammar =
fGrammarBucket.getGrammar(desc.getTargetNamespace());
}
else {
@@ -676,7 +676,7 @@
referType == XSDDescription.CONTEXT_REDEFINE) {
sg = fGrammarBucket.getGrammar(currSchemaInfo.fTargetNamespace);
}
- else if(fHandleMultipleImports && referType ==
XSDDescription.CONTEXT_IMPORT) {
+ else if(fHonourAllSchemaLocations && referType ==
XSDDescription.CONTEXT_IMPORT) {
sg = findGrammar(desc);
if(sg == null) {
sg = new SchemaGrammar(currSchemaInfo.fTargetNamespace,
desc.makeClone(), fSymbolTable);
@@ -750,7 +750,7 @@
// if this namespace has not been imported by this document,
// then import if multiple imports support is enabled.
if(currSchemaInfo.isAllowedNS(schemaNamespace)) {
- if(!fHandleMultipleImports)
+ if(!fHonourAllSchemaLocations)
continue;
}
else {
@@ -781,7 +781,7 @@
// if a grammar with the same namespace and location exists
(or being
// built), ignore this one (don't traverse it).
- if ((!fHandleMultipleImports &&
findGrammar(fSchemaGrammarDescription) != null) ||
isExistingGrammar(fSchemaGrammarDescription))
+ if ((!fHonourAllSchemaLocations &&
findGrammar(fSchemaGrammarDescription) != null) ||
isExistingGrammar(fSchemaGrammarDescription))
continue;
newSchemaRoot = resolveSchema(fSchemaGrammarDescription,
false, child);
}
@@ -1742,9 +1742,9 @@
}
try {
- fHandleMultipleImports =
componentManager.getFeature(HANDLE_MULTIPLE_IMPORTS);
+ fHonourAllSchemaLocations =
componentManager.getFeature(HONOUR_ALL_SCHEMALOCATIONS);
} catch (XMLConfigurationException e) {
- fHandleMultipleImports = false;
+ fHonourAllSchemaLocations = false;
}
try {
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]