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 2005/10/27 22:23:02 UTC
svn commit: r328944 - in /xmlbeans/trunk: build.xml
src/typeimpl/org/apache/xmlbeans/impl/schema/StscSimpleTypeResolver.java
src/typeimpl/org/apache/xmlbeans/impl/values/JavaQNameHolderEx.java
src/xmlpublic/org/apache/xmlbeans/XmlBeans.java
Author: radup
Date: Thu Oct 27 13:22:56 2005
New Revision: 328944
URL: http://svn.apache.org/viewcvs?rev=328944&view=rev
Log:
Two minor XMLSchema fixes, contributed by Lawrence Jones and myself.
Changed the revision number from 2.0.1 to 2.1.0
Modified:
xmlbeans/trunk/build.xml
xmlbeans/trunk/src/typeimpl/org/apache/xmlbeans/impl/schema/StscSimpleTypeResolver.java
xmlbeans/trunk/src/typeimpl/org/apache/xmlbeans/impl/values/JavaQNameHolderEx.java
xmlbeans/trunk/src/xmlpublic/org/apache/xmlbeans/XmlBeans.java
Modified: xmlbeans/trunk/build.xml
URL: http://svn.apache.org/viewcvs/xmlbeans/trunk/build.xml?rev=328944&r1=328943&r2=328944&view=diff
==============================================================================
--- xmlbeans/trunk/build.xml (original)
+++ xmlbeans/trunk/build.xml Thu Oct 27 13:22:56 2005
@@ -19,7 +19,7 @@
<property name="javac.source" value="1.4"/>
<property name="javac.target" value="1.4"/>
- <property name="version.base" value="2.0.1"/>
+ <property name="version.base" value="2.1.0"/>
<!-- manifest entries -->
<property name="manifest.name" value="org/apache/xmlbeans/"/>
Modified: xmlbeans/trunk/src/typeimpl/org/apache/xmlbeans/impl/schema/StscSimpleTypeResolver.java
URL: http://svn.apache.org/viewcvs/xmlbeans/trunk/src/typeimpl/org/apache/xmlbeans/impl/schema/StscSimpleTypeResolver.java?rev=328944&r1=328943&r2=328944&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 Thu Oct 27 13:22:56 2005
@@ -696,12 +696,12 @@
switch (code)
{
case SchemaType.FACET_LENGTH:
- if (myFacets[SchemaType.FACET_MIN_LENGTH] != null ||
- myFacets[SchemaType.FACET_MAX_LENGTH] != null)
- {
- state.error(XmlErrorCodes.DATATYPE_LENGTH, null, facet);
- continue;
- }
+// if (myFacets[SchemaType.FACET_MIN_LENGTH] != null ||
+// myFacets[SchemaType.FACET_MAX_LENGTH] != null)
+// {
+// state.error(XmlErrorCodes.DATATYPE_LENGTH, null, facet);
+// continue;
+// }
XmlInteger len = StscTranslator.buildNnInteger(facet.getValue());
if (len == null)
{
@@ -713,16 +713,37 @@
state.error(XmlErrorCodes.FACET_FIXED, new Object[] { facetName }, facet);
continue;
}
+ if (myFacets[SchemaType.FACET_MIN_LENGTH] != null)
+ {
+ // An error for 'length' and 'minLength' to be specified at the same time
+ // except if the base type had the same value for 'minLength' also
+ XmlAnySimpleType baseMinLength = baseImpl.getFacet(SchemaType.FACET_MIN_LENGTH);
+ if (!(baseMinLength != null &&
+ baseMinLength.valueEquals(myFacets[SchemaType.FACET_MIN_LENGTH]) &&
+ baseMinLength.compareValue(len) <= 0))
+ {
+ state.error(XmlErrorCodes.DATATYPE_LENGTH, null, facet);
+ continue;
+ }
+ }
+ if (myFacets[SchemaType.FACET_MAX_LENGTH] != null)
+ {
+ // An error for 'length' and 'maxLength' to be specified at the same time
+ // except if the base type had the same value for 'maxLength' also
+ XmlAnySimpleType baseMaxLength = baseImpl.getFacet(SchemaType.FACET_MAX_LENGTH);
+ if (!(baseMaxLength != null &&
+ baseMaxLength.valueEquals(myFacets[SchemaType.FACET_MAX_LENGTH]) &&
+ baseMaxLength.compareValue(len) >= 0))
+ {
+ state.error(XmlErrorCodes.DATATYPE_LENGTH, null, facet);
+ continue;
+ }
+ }
myFacets[code] = len;
break;
case SchemaType.FACET_MIN_LENGTH:
case SchemaType.FACET_MAX_LENGTH:
- if (myFacets[SchemaType.FACET_LENGTH] != null)
- {
- state.error(XmlErrorCodes.DATATYPE_LENGTH, null, facet);
- continue;
- }
XmlInteger mlen = StscTranslator.buildNnInteger(facet.getValue());
if (mlen == null)
{
@@ -733,6 +754,23 @@
{
state.error(XmlErrorCodes.FACET_FIXED, new Object[] { facetName }, facet);
continue;
+ }
+ if (myFacets[SchemaType.FACET_LENGTH] != null)
+ {
+ // It's an error for 'length' and 'minLength'/'maxLength' to be
+ // specified at the same time, except for the case when
+ // the base type had the same value for 'minLength'/'maxLength'
+ // and the two values are consistent
+ XmlAnySimpleType baseMinMaxLength = baseImpl.getFacet(code);
+ if (!(baseMinMaxLength != null &&
+ baseMinMaxLength.valueEquals(mlen) &&
+ (code == SchemaType.FACET_MIN_LENGTH ?
+ baseMinMaxLength.compareTo(myFacets[SchemaType.FACET_LENGTH]) <= 0 :
+ baseMinMaxLength.compareTo(myFacets[SchemaType.FACET_LENGTH]) >= 0)))
+ {
+ state.error(XmlErrorCodes.DATATYPE_LENGTH, null, facet);
+ continue;
+ }
}
if (myFacets[SchemaType.FACET_MAX_LENGTH] != null)
{
Modified: xmlbeans/trunk/src/typeimpl/org/apache/xmlbeans/impl/values/JavaQNameHolderEx.java
URL: http://svn.apache.org/viewcvs/xmlbeans/trunk/src/typeimpl/org/apache/xmlbeans/impl/values/JavaQNameHolderEx.java?rev=328944&r1=328943&r2=328944&view=diff
==============================================================================
--- xmlbeans/trunk/src/typeimpl/org/apache/xmlbeans/impl/values/JavaQNameHolderEx.java (original)
+++ xmlbeans/trunk/src/typeimpl/org/apache/xmlbeans/impl/values/JavaQNameHolderEx.java Thu Oct 27 13:22:56 2005
@@ -99,6 +99,7 @@
}
}
+ /* length, minLength and maxLength facets deprecated - see http://www.w3.org/TR/xmlschema-2/#QName
XmlObject x;
int i;
@@ -116,6 +117,7 @@
if ((i = ((XmlObjectBase)x).bigIntegerValue().intValue()) < v.length())
context.invalid(XmlErrorCodes.DATATYPE_MAX_LENGTH_VALID$STRING,
new Object[] { "QName", v, new Integer(i), QNameHelper.readable(sType) });
+ */
return name;
}
Modified: xmlbeans/trunk/src/xmlpublic/org/apache/xmlbeans/XmlBeans.java
URL: http://svn.apache.org/viewcvs/xmlbeans/trunk/src/xmlpublic/org/apache/xmlbeans/XmlBeans.java?rev=328944&r1=328943&r2=328944&view=diff
==============================================================================
--- xmlbeans/trunk/src/xmlpublic/org/apache/xmlbeans/XmlBeans.java (original)
+++ xmlbeans/trunk/src/xmlpublic/org/apache/xmlbeans/XmlBeans.java Thu Oct 27 13:22:56 2005
@@ -35,7 +35,7 @@
public final class XmlBeans
{
private static String XMLBEANS_TITLE = "org.apache.xmlbeans";
- private static String XMLBEANS_VERSION = "2.0.1";
+ private static String XMLBEANS_VERSION = "2.1.0";
private static String XMLBEANS_VENDOR = "Apache Software Foundation";
static
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@xmlbeans.apache.org
For additional commands, e-mail: commits-help@xmlbeans.apache.org