Author: knoaman
Date: Fri Sep  9 14:34:51 2011
New Revision: 1167216

URL: http://svn.apache.org/viewvc?rev=1167216&view=rev
Log:
Implement new rule for Schema Component Constraint: Content type restricts 
(Complex Content)

Jira issue 1529 - https://issues.apache.org/jira/browse/XERCESJ-1529

Modified:
    
xerces/java/branches/xml-schema-1.1-dev/src/org/apache/xerces/impl/xs/XS11Constraints.java
    
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/models/XS11CMRestriction.java

Modified: 
xerces/java/branches/xml-schema-1.1-dev/src/org/apache/xerces/impl/xs/XS11Constraints.java
URL: 
http://svn.apache.org/viewvc/xerces/java/branches/xml-schema-1.1-dev/src/org/apache/xerces/impl/xs/XS11Constraints.java?rev=1167216&r1=1167215&r2=1167216&view=diff
==============================================================================
--- 
xerces/java/branches/xml-schema-1.1-dev/src/org/apache/xerces/impl/xs/XS11Constraints.java
 (original)
+++ 
xerces/java/branches/xml-schema-1.1-dev/src/org/apache/xerces/impl/xs/XS11Constraints.java
 Fri Sep  9 14:34:51 2011
@@ -198,7 +198,7 @@ class XS11Constraints extends XSConstrai
     /*
      * Check if two type tables are equivalent.
      */
-    protected boolean isTypeTablesEquivalent(XSElementDecl elementDecl1, 
XSElementDecl elementDecl2) {
+    final public boolean isTypeTablesEquivalent(XSElementDecl elementDecl1, 
XSElementDecl elementDecl2) {
         
         final XSTypeAlternativeImpl[] typeTable1 = 
elementDecl1.getTypeAlternatives();
         final XSTypeAlternativeImpl[] typeTable2 = 
elementDecl2.getTypeAlternatives();

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=1167216&r1=1167215&r2=1167216&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 Sep  9 14:34:51 2011
@@ -87,6 +87,10 @@ public abstract class XSConstraints {
     final public short getSchemaVersion() {
         return fSchemaVersion;
     }
+    
+    public boolean isTypeTablesEquivalent(XSElementDecl elementDecl1, 
XSElementDecl elementDecl2) {
+        return true;
+    }
 
     /**
      * check whether derived is valid derived from base, given a subset

Modified: 
xerces/java/branches/xml-schema-1.1-dev/src/org/apache/xerces/impl/xs/models/XS11CMRestriction.java
URL: 
http://svn.apache.org/viewvc/xerces/java/branches/xml-schema-1.1-dev/src/org/apache/xerces/impl/xs/models/XS11CMRestriction.java?rev=1167216&r1=1167215&r2=1167216&view=diff
==============================================================================
--- 
xerces/java/branches/xml-schema-1.1-dev/src/org/apache/xerces/impl/xs/models/XS11CMRestriction.java
 (original)
+++ 
xerces/java/branches/xml-schema-1.1-dev/src/org/apache/xerces/impl/xs/models/XS11CMRestriction.java
 Fri Sep  9 14:34:51 2011
@@ -496,6 +496,12 @@ public final class XS11CMRestriction imp
             return false;
         }
         
+        // 4.6 S.{type table} and G.{type table} either are both absent or
+        //     are both present and equivalent. 
+        if (!xsc.isTypeTablesEquivalent(eb, ed)) {
+            return false;
+        }
+
         return true;
     }
 



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to