Author: mukulg
Date: Fri May 13 09:58:31 2011
New Revision: 1102644
URL: http://svn.apache.org/viewvc?rev=1102644&view=rev
Log:
committing slight improvement to schema 1.1 type table comparison logic.
Modified:
xerces/java/branches/xml-schema-1.1-dev/src/org/apache/xerces/impl/xs/XSConstraints.java
xerces/java/branches/xml-schema-1.1-dev/src/org/apache/xerces/impl/xs/traversers/XSDHandler.java
xerces/java/branches/xml-schema-1.1-dev/src/org/apache/xerces/impl/xs/traversers/XSDTypeAlternativeTraverser.java
Modified:
xerces/java/branches/xml-schema-1.1-dev/src/org/apache/xerces/impl/xs/XSConstraints.java
URL:
http://svn.apache.org/viewvc/xerces/java/branches/xml-schema-1.1-dev/src/org/apache/xerces/impl/xs/XSConstraints.java?rev=1102644&r1=1102643&r2=1102644&view=diff
==============================================================================
---
xerces/java/branches/xml-schema-1.1-dev/src/org/apache/xerces/impl/xs/XSConstraints.java
(original)
+++
xerces/java/branches/xml-schema-1.1-dev/src/org/apache/xerces/impl/xs/XSConstraints.java
Fri May 13 09:58:31 2011
@@ -635,6 +635,9 @@ public abstract class XSConstraints {
else if ((baseURI1 == null && baseURI2 == null) ||
baseURI1.equals(baseURI2)) {
isTypeAlternativesEquivalent = true;
}
+ else {
+ isTypeAlternativesEquivalent = false;
+ }
}
return isTypeAlternativesEquivalent;
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=1102644&r1=1102643&r2=1102644&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
Fri May 13 09:58:31 2011
@@ -4589,6 +4589,10 @@ public class XSDHandler {
}
fSchemaParser.setSupportedVersion(fSupportedVersion);
}
+
+ public String getDocumentURI() {
+ return fSchemaParser.getDocument().getDocumentURI();
+ }
public short getSchemaVersion() {
return fSchemaVersion;
Modified:
xerces/java/branches/xml-schema-1.1-dev/src/org/apache/xerces/impl/xs/traversers/XSDTypeAlternativeTraverser.java
URL:
http://svn.apache.org/viewvc/xerces/java/branches/xml-schema-1.1-dev/src/org/apache/xerces/impl/xs/traversers/XSDTypeAlternativeTraverser.java?rev=1102644&r1=1102643&r2=1102644&view=diff
==============================================================================
---
xerces/java/branches/xml-schema-1.1-dev/src/org/apache/xerces/impl/xs/traversers/XSDTypeAlternativeTraverser.java
(original)
+++
xerces/java/branches/xml-schema-1.1-dev/src/org/apache/xerces/impl/xs/traversers/XSDTypeAlternativeTraverser.java
Fri May 13 09:58:31 2011
@@ -61,14 +61,16 @@ import org.w3c.dom.Element;
class XSDTypeAlternativeTraverser extends XSDAbstractTraverser {
private static final XSSimpleType fErrorType;
+ private XSDHandler fXsdHandler = null;
+
static {
SchemaGrammar grammar =
SchemaGrammar.getS4SGrammar(Constants.SCHEMA_VERSION_1_1);
fErrorType = (XSSimpleType)grammar.getGlobalTypeDecl("error");
}
- XSDTypeAlternativeTraverser (XSDHandler handler,
- XSAttributeChecker attrChecker) {
+ XSDTypeAlternativeTraverser (XSDHandler handler, XSAttributeChecker
attrChecker) {
super(handler, attrChecker);
+ fXsdHandler = handler;
}
/**
@@ -209,7 +211,8 @@ class XSDTypeAlternativeTraverser extend
typeAlternative.setNamespaceContext(new
NamespaceSupport(schemaDoc.fNamespaceSupport));
}
- typeAlternative.setBaseURI(altElement.getBaseURI());
+ // REVISIT : is using Document.getDocumentURI() correct to retrieve
base URI in every case, for type alternatives?
+ typeAlternative.setBaseURI(fXsdHandler.getDocumentURI());
if (xpathNS != null) {
//set the xpathDefaultNamespace attribute value
@@ -218,5 +221,7 @@ class XSDTypeAlternativeTraverser extend
grammar.addTypeAlternative(element, typeAlternative);
fAttrChecker.returnAttrArray(attrValues, schemaDoc);
- }
-}
+
+ } // traverse
+
+} // class XSDTypeAlternativeTraverser
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]