You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@xmlbeans.apache.org by ra...@apache.org on 2009/06/03 23:07:20 UTC
svn commit: r781550 - in
/xmlbeans/trunk/src/typeimpl/org/apache/xmlbeans/impl/schema:
StscChecker.java StscSimpleTypeResolver.java
Author: radup
Date: Wed Jun 3 21:07:20 2009
New Revision: 781550
URL: http://svn.apache.org/viewvc?rev=781550&view=rev
Log:
Another tweak to NOTATION-related checks
Modified:
xmlbeans/trunk/src/typeimpl/org/apache/xmlbeans/impl/schema/StscChecker.java
xmlbeans/trunk/src/typeimpl/org/apache/xmlbeans/impl/schema/StscSimpleTypeResolver.java
Modified: xmlbeans/trunk/src/typeimpl/org/apache/xmlbeans/impl/schema/StscChecker.java
URL: http://svn.apache.org/viewvc/xmlbeans/trunk/src/typeimpl/org/apache/xmlbeans/impl/schema/StscChecker.java?rev=781550&r1=781549&r2=781550&view=diff
==============================================================================
--- xmlbeans/trunk/src/typeimpl/org/apache/xmlbeans/impl/schema/StscChecker.java (original)
+++ xmlbeans/trunk/src/typeimpl/org/apache/xmlbeans/impl/schema/StscChecker.java Wed Jun 3 21:07:20 2009
@@ -120,6 +120,15 @@
}
else
{
+ if (sAttrs[i].getType().getSimpleVariety() == SchemaType.UNION)
+ {
+ SchemaType[] members = sAttrs[i].getType().getUnionConstituentTypes();
+ for (int j = 0; j < members.length; j++)
+ if (members[j].getBuiltinTypeCode() == SchemaType.BTC_NOTATION)
+ StscState.get().recover(XmlErrorCodes.ATTR_NOTATION_TYPE_FORBIDDEN,
+ new Object[]{ QNameHelper.pretty(sAttrs[i].getName()) },
+ attrLocation != null ? attrLocation : location);
+ }
// Check that the Schema in which this is present doesn't have a targetNS
boolean hasNS;
if (sType.isAttributeType())
@@ -305,7 +314,19 @@
((SchemaLocalElementImpl) model)._parseObject.selectAttribute("", "type"));
}
else
+ {
+ if (model.getType().getSimpleVariety() == SchemaType.UNION)
+ {
+ SchemaType[] members = model.getType().getUnionConstituentTypes();
+ for (int i = 0; i < members.length; i++)
+ if (members[i].getBuiltinTypeCode() == SchemaType.BTC_NOTATION)
+ StscState.get().recover(XmlErrorCodes.ELEM_NOTATION_TYPE_FORBIDDEN,
+ new Object[]{ QNameHelper.pretty(model.getName()) },
+ ((SchemaLocalElementImpl) model)._parseObject == null ? location :
+ ((SchemaLocalElementImpl) model)._parseObject.selectAttribute("", "type"));
+ }
warningType = BuiltinSchemaTypeSystem.ST_NOTATION.getName().getLocalPart();
+ }
// Check that the Schema in which this is present doesn't have a targetNS
boolean hasNS;
Modified: xmlbeans/trunk/src/typeimpl/org/apache/xmlbeans/impl/schema/StscSimpleTypeResolver.java
URL: http://svn.apache.org/viewvc/xmlbeans/trunk/src/typeimpl/org/apache/xmlbeans/impl/schema/StscSimpleTypeResolver.java?rev=781550&r1=781549&r2=781550&view=diff
==============================================================================
--- xmlbeans/trunk/src/typeimpl/org/apache/xmlbeans/impl/schema/StscSimpleTypeResolver.java (original)
+++ xmlbeans/trunk/src/typeimpl/org/apache/xmlbeans/impl/schema/StscSimpleTypeResolver.java Wed Jun 3 21:07:20 2009
@@ -380,10 +380,6 @@
SchemaTypeImpl mImpl = (SchemaTypeImpl)memberImplList.get(i);
if (mImpl.finalUnion())
state.error(XmlErrorCodes.SIMPLE_TYPE_PROPERTIES$UNION_FINAL, null, parseUnion);
-
- // Check that the member type is not a plan NOTATION
- if (mImpl.getBuiltinTypeCode() == SchemaType.BTC_NOTATION)
- state.recover(XmlErrorCodes.DATATYPE_ENUM_NOTATION, null, parseUnion);
}
sImpl.setUnionOfLists(isUnionOfLists);
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@xmlbeans.apache.org
For additional commands, e-mail: commits-help@xmlbeans.apache.org