You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@xerces.apache.org by mu...@apache.org on 2011/03/25 10:34:07 UTC
svn commit: r1085298 -
/xerces/java/branches/xml-schema-1.1-dev/src/org/apache/xerces/impl/xs/traversers/XSDTypeAlternativeTraverser.java
Author: mukulg
Date: Fri Mar 25 09:34:07 2011
New Revision: 1085298
URL: http://svn.apache.org/viewvc?rev=1085298&view=rev
Log:
committing a slight improvement for type alternatives failure messages. The earlier codebase for this was returning an error message something like, "Type alternative 'null' is not xs:error ...". This commit fixes this problem (i.e 'null' is now shown as an existing type name's string value).
Modified:
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/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=1085298&r1=1085297&r2=1085298&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 Mar 25 09:34:07 2011
@@ -29,6 +29,7 @@ import org.apache.xerces.impl.xs.XSEleme
import org.apache.xerces.impl.xs.alternative.Test;
import org.apache.xerces.impl.xs.alternative.XSTypeAlternativeImpl;
import org.apache.xerces.impl.xs.util.XSObjectListImpl;
+import org.apache.xerces.impl.xs.util.XSTypeHelper;
import org.apache.xerces.util.DOMUtil;
import org.apache.xerces.xni.QName;
import org.apache.xerces.xs.XSObjectList;
@@ -79,7 +80,7 @@ class XSDTypeAlternativeTraverser extend
Object[] attrValues = fAttrChecker.checkAttributes(altElement, false, schemaDoc);
QName typeAtt = (QName) attrValues[XSAttributeChecker.ATTIDX_TYPE];
- String test = (String) attrValues[XSAttributeChecker.ATTIDX_XPATH];
+ String testStr = (String) attrValues[XSAttributeChecker.ATTIDX_XPATH];
String xpathNS = (String) attrValues[XSAttributeChecker.ATTIDX_XPATHDEFAULTNS];
// get 'annotation'
@@ -167,7 +168,7 @@ class XSDTypeAlternativeTraverser extend
if (!fSchemaHandler.fXSConstraints.checkTypeDerivationOk(alternativeType, element.fType, block)) {
reportSchemaError(
"e-props-correct.7",
- new Object[] { element.getName(), alternativeType.getName(), element.fType.getName()},
+ new Object[] {element.getName(), XSTypeHelper.getSchemaTypeName(alternativeType), XSTypeHelper.getSchemaTypeName(element.fType)},
altElement);
// fall back to element declaration's type
alternativeType = element.fType;
@@ -184,11 +185,11 @@ class XSDTypeAlternativeTraverser extend
XSTypeAlternativeImpl typeAlternative = new XSTypeAlternativeImpl(element.fName, alternativeType, annotations);
// now look for other optional attributes like test and xpathDefaultNamespace
- if (test != null) {
+ if (testStr != null) {
Test testExpr = null;
//set the test attribute value
try {
- testExpr = new Test(new XPath20(test, fSymbolTable, schemaDoc.fNamespaceSupport),
+ testExpr = new Test(new XPath20(testStr, fSymbolTable, schemaDoc.fNamespaceSupport),
typeAlternative,
schemaDoc.fNamespaceSupport);
}
@@ -196,10 +197,10 @@ class XSDTypeAlternativeTraverser extend
// fall back to full XPath 2.0 support, with PsychoPath engine
try {
XPathParser xpp = new JFlexCupParser();
- XPath xp = xpp.parse("boolean(" + test + ")");
+ XPath xp = xpp.parse("boolean(" + testStr + ")");
testExpr = new Test(xp, typeAlternative, schemaDoc.fNamespaceSupport);
} catch(XPathParserException ex) {
- reportSchemaError("c-cta-xpath", new Object[] { test }, altElement);
+ reportSchemaError("c-cta-xpath", new Object[] { testStr }, altElement);
//if the XPath is invalid, create a Test without an expression
testExpr = new Test((XPath20) null, typeAlternative,
schemaDoc.fNamespaceSupport);
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@xerces.apache.org
For additional commands, e-mail: commits-help@xerces.apache.org