Author: borisk
Date: Thu Nov 19 12:11:06 2009
New Revision: 882124

URL: http://svn.apache.org/viewvc?rev=882124&view=rev
Log:
Extend multi-import support to schemas provided with the schemaLocation 
attributes (XERCESC-1659).

Added:
    xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/
    xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-1/
    
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-1/derived-user-config.xsd
   (with props)
    
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-1/test-user-config.xsd
   (with props)
    
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-1/test-users.xml
    
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-1/test-users.xsd
   (with props)
    xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-2/
    
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-2/derived-user-config.xsd
   (with props)
    
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-2/test-user-config.xsd
   (with props)
    
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-2/test-users.xml
    
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-2/test-users.xsd
   (with props)
    xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-3/
    
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-3/derived-user-config.xsd
   (with props)
    
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-3/test-user-config.xsd
   (with props)
    
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-3/test-users.xml
    
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-3/test-users.xsd
   (with props)
    xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-4/
    
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-4/derived-user-config.xsd
   (with props)
    
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-4/test-user-config.xsd
   (with props)
    
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-4/test-users.xml
    
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-4/test-users.xsd
   (with props)
Modified:
    xerces/c/trunk/src/xercesc/internal/IGXMLScanner.cpp
    xerces/c/trunk/src/xercesc/internal/IGXMLScanner2.cpp
    xerces/c/trunk/src/xercesc/internal/SGXMLScanner.cpp
    xerces/c/trunk/src/xercesc/validators/schema/TraverseSchema.cpp
    xerces/c/trunk/src/xercesc/validators/schema/TraverseSchema.hpp
    xerces/c/trunk/tests/src/XSTSHarness/regression/Xerces.testSet

Modified: xerces/c/trunk/src/xercesc/internal/IGXMLScanner.cpp
URL: 
http://svn.apache.org/viewvc/xerces/c/trunk/src/xercesc/internal/IGXMLScanner.cpp?rev=882124&r1=882123&r2=882124&view=diff
==============================================================================
--- xerces/c/trunk/src/xercesc/internal/IGXMLScanner.cpp (original)
+++ xerces/c/trunk/src/xercesc/internal/IGXMLScanner.cpp Thu Nov 19 12:11:06 
2009
@@ -19,7 +19,6 @@
  * $Id$
  */
 
-
 // ---------------------------------------------------------------------------
 //  Includes
 // ---------------------------------------------------------------------------
@@ -2278,7 +2277,6 @@
         }
 
         if (fGrammarType == Grammar::SchemaGrammarType) {
-
             elemDecl = fGrammar->getElemDecl(
                 uriId, nameRawBuf, qnameRawBuf, currentScope
             );

Modified: xerces/c/trunk/src/xercesc/internal/IGXMLScanner2.cpp
URL: 
http://svn.apache.org/viewvc/xerces/c/trunk/src/xercesc/internal/IGXMLScanner2.cpp?rev=882124&r1=882123&r2=882124&view=diff
==============================================================================
--- xerces/c/trunk/src/xercesc/internal/IGXMLScanner2.cpp (original)
+++ xerces/c/trunk/src/xercesc/internal/IGXMLScanner2.cpp Thu Nov 19 12:11:06 
2009
@@ -1737,7 +1737,14 @@
         grammar = fGrammarResolver->getGrammar(&theSchemaDescription);
     }
 
-    if (!grammar || grammar->getGrammarType() == Grammar::DTDGrammarType)
+    // If multi-import is enabled, make sure the existing grammar came
+    // from the import directive. Otherwise we may end up reloading
+    // the same schema that was previously loaded with loadGrammar, etc.
+    //
+    if (!grammar || grammar->getGrammarType() == Grammar::DTDGrammarType ||
+        (getHandleMultipleImports() &&
+         ((XMLSchemaDescription*)grammar->getGrammarDescription())->
+         getContextType () == XMLSchemaDescription::CONTEXT_IMPORT))
     {
       if (fLoadSchema || ignoreLoadSchema)
       {
@@ -1847,8 +1854,11 @@
                     grammar = fGrammarResolver->getGrammar(newUri);
                 }
 
-                if (!grammar || grammar->getGrammarType() == 
Grammar::DTDGrammarType) {
-
+                if (!grammar || grammar->getGrammarType() == 
Grammar::DTDGrammarType ||
+                    (getHandleMultipleImports() &&
+                     ((XMLSchemaDescription*) 
grammar->getGrammarDescription())->
+                     getContextType () == 
XMLSchemaDescription::CONTEXT_IMPORT))
+                {
                     //  Since we have seen a grammar, set our validation flag
                     //  at this point if the validation scheme is auto
                     if (fValScheme == Val_Auto && !fValidate) {
@@ -1868,8 +1878,19 @@
                         }
                     }
 
-                    SchemaGrammar* grammar = new (fGrammarPoolMemoryManager) 
SchemaGrammar(fGrammarPoolMemoryManager);
-                    XMLSchemaDescription* gramDesc = (XMLSchemaDescription*) 
grammar->getGrammarDescription();
+                    bool grammarFound = grammar &&
+                      grammar->getGrammarType() == Grammar::SchemaGrammarType;
+
+                    SchemaGrammar* schemaGrammar;
+
+                    if (grammarFound) {
+                      schemaGrammar = (SchemaGrammar*) grammar;
+                    }
+                    else {
+                      schemaGrammar = new (fGrammarPoolMemoryManager) 
SchemaGrammar(fGrammarPoolMemoryManager);
+                    }
+
+                    XMLSchemaDescription* gramDesc = (XMLSchemaDescription*) 
schemaGrammar->getGrammarDescription();
                     
gramDesc->setContextType(XMLSchemaDescription::CONTEXT_PREPARSE);
                     gramDesc->setLocationHints(srcToFill->getSystemId());
 
@@ -1877,17 +1898,18 @@
                     (
                         root
                         , fURIStringPool
-                        , grammar
+                        , schemaGrammar
                         , fGrammarResolver
                         , this
                         , srcToFill->getSystemId()
                         , fEntityHandler
                         , fErrorReporter
                         , fMemoryManager
+                        , grammarFound
                     );
 
                     if (fGrammarType == Grammar::DTDGrammarType) {
-                        fGrammar = grammar;
+                        fGrammar = schemaGrammar;
                         fGrammarType = Grammar::SchemaGrammarType;
                         fValidator->setGrammar(fGrammar);
                     }

Modified: xerces/c/trunk/src/xercesc/internal/SGXMLScanner.cpp
URL: 
http://svn.apache.org/viewvc/xerces/c/trunk/src/xercesc/internal/SGXMLScanner.cpp?rev=882124&r1=882123&r2=882124&view=diff
==============================================================================
--- xerces/c/trunk/src/xercesc/internal/SGXMLScanner.cpp (original)
+++ xerces/c/trunk/src/xercesc/internal/SGXMLScanner.cpp Thu Nov 19 12:11:06 
2009
@@ -2145,7 +2145,7 @@
         //  boolean flag that lets us quickly below know which we are dealing
         //  with.
         const bool isNSAttr = (uriId == fEmptyNamespaceId)?
-                                XMLString::equals(suffPtr, 
XMLUni::fgXMLNSString) : 
+                                XMLString::equals(suffPtr, 
XMLUni::fgXMLNSString) :
                                 (uriId == fXMLNSNamespaceId || 
XMLString::equals(getURIText(uriId), SchemaSymbols::fgURI_XSI));
 
         //  If its not a special case namespace attr of some sort, then we
@@ -3475,7 +3475,7 @@
 
                 if( fValidator && fValidator->handlesSchema() )
                 {
-                    if (XMLString::equals(suffPtr, SchemaSymbols::fgXSI_TYPE)) 
+                    if (XMLString::equals(suffPtr, SchemaSymbols::fgXSI_TYPE))
                     {
                         // normalize the attribute according to schema 
whitespace facet
                         DatatypeValidator* tempDV = 
DatatypeValidatorFactory::getBuiltInRegistry()->get(SchemaSymbols::fgDT_QNAME);
@@ -3542,7 +3542,14 @@
         grammar = fGrammarResolver->getGrammar(&theSchemaDescription);
     }
 
-    if (!grammar || grammar->getGrammarType() == Grammar::DTDGrammarType)
+    // If multi-import is enabled, make sure the existing grammar came
+    // from the import directive. Otherwise we may end up reloading
+    // the same schema that was previously loaded with loadGrammar, etc.
+    //
+    if (!grammar || grammar->getGrammarType() == Grammar::DTDGrammarType ||
+        (getHandleMultipleImports() &&
+         ((XMLSchemaDescription*)grammar->getGrammarDescription())->
+         getContextType () == XMLSchemaDescription::CONTEXT_IMPORT))
     {
       if (fLoadSchema || ignoreLoadSchema)
       {
@@ -3653,8 +3660,11 @@
                     grammar = fGrammarResolver->getGrammar(newUri);
                 }
 
-                if (!grammar || grammar->getGrammarType() == 
Grammar::DTDGrammarType) {
-
+                if (!grammar || grammar->getGrammarType() == 
Grammar::DTDGrammarType ||
+                    (getHandleMultipleImports() &&
+                     ((XMLSchemaDescription*) 
grammar->getGrammarDescription())->
+                     getContextType () == 
XMLSchemaDescription::CONTEXT_IMPORT))
+                {
                     //  Since we have seen a grammar, set our validation flag
                     //  at this point if the validation scheme is auto
                     if (fValScheme == Val_Auto && !fValidate) {
@@ -3662,8 +3672,20 @@
                         fElemStack.setValidationFlag(fValidate);
                     }
 
-                    grammar = new (fGrammarPoolMemoryManager) 
SchemaGrammar(fGrammarPoolMemoryManager);
-                    XMLSchemaDescription* gramDesc = (XMLSchemaDescription*) 
grammar->getGrammarDescription();
+                    bool grammarFound = grammar &&
+                      grammar->getGrammarType() == Grammar::SchemaGrammarType;
+
+                    SchemaGrammar* schemaGrammar;
+
+                    if (grammarFound) {
+                      schemaGrammar = (SchemaGrammar*) grammar;
+                    }
+                    else {
+                      schemaGrammar = new (fGrammarPoolMemoryManager) 
SchemaGrammar(fGrammarPoolMemoryManager);
+                    }
+
+                    XMLSchemaDescription* gramDesc = (XMLSchemaDescription*) 
schemaGrammar->getGrammarDescription();
+
                     
gramDesc->setContextType(XMLSchemaDescription::CONTEXT_PREPARSE);
                     gramDesc->setLocationHints(srcToFill->getSystemId());
 
@@ -3671,17 +3693,18 @@
                     (
                         root
                         , fURIStringPool
-                        , (SchemaGrammar*) grammar
+                        , schemaGrammar
                         , fGrammarResolver
                         , this
                         , srcToFill->getSystemId()
                         , fEntityHandler
                         , fErrorReporter
                         , fMemoryManager
+                        , grammarFound
                     );
 
                     if (fGrammarType == Grammar::DTDGrammarType) {
-                        fGrammar = grammar;
+                        fGrammar = schemaGrammar;
                         fGrammarType = Grammar::SchemaGrammarType;
                         fValidator->setGrammar(fGrammar);
                     }

Modified: xerces/c/trunk/src/xercesc/validators/schema/TraverseSchema.cpp
URL: 
http://svn.apache.org/viewvc/xerces/c/trunk/src/xercesc/validators/schema/TraverseSchema.cpp?rev=882124&r1=882123&r2=882124&view=diff
==============================================================================
--- xerces/c/trunk/src/xercesc/validators/schema/TraverseSchema.cpp (original)
+++ xerces/c/trunk/src/xercesc/validators/schema/TraverseSchema.cpp Thu Nov 19 
12:11:06 2009
@@ -160,7 +160,8 @@
                               , const XMLCh* const     schemaURL
                               , XMLEntityHandler* const  entityHandler
                               , XMLErrorReporter* const errorReporter
-                              , MemoryManager* const    manager)
+                              , MemoryManager* const    manager
+                              , bool multipleImport)
     : fFullConstraintChecking(false)
     , fTargetNSURI(-1)
     , fEmptyNamespaceURI(-1)
@@ -215,7 +216,20 @@
         if (fGrammarResolver && schemaRoot && fURIStringPool) {
 
             init();
-            preprocessSchema(schemaRoot, schemaURL);
+
+            if (multipleImport)
+            {
+              // If we are working on an existing schema, do some
+              // intitialization that is notherwise done by preprocessSchema.
+              //
+              fComplexTypeRegistry = fSchemaGrammar->getComplexTypeRegistry();
+              fGroupRegistry = fSchemaGrammar->getGroupInfoRegistry();
+              fAttGroupRegistry = fSchemaGrammar->getAttGroupInfoRegistry();
+              fAttributeDeclRegistry = 
fSchemaGrammar->getAttributeDeclRegistry();
+              fValidSubstitutionGroups = 
fSchemaGrammar->getValidSubstitutionGroups();
+            }
+
+            preprocessSchema(schemaRoot, schemaURL, multipleImport);
             doTraverseSchema(schemaRoot);
         }
 
@@ -731,14 +745,15 @@
     // Handle 'namespace' attribute
     // -----------------------------------------------------------------------
     const XMLCh* nameSpace = getElementAttValue(elem, 
SchemaSymbols::fgATT_NAMESPACE, DatatypeValidator::AnyURI);
+    const XMLCh* nameSpaceValue = nameSpace ? nameSpace : 
XMLUni::fgZeroLenString;
 
-    if (XMLString::equals(nameSpace, fTargetNSURIString)) {
+    if (XMLString::equals(nameSpaceValue, fTargetNSURIString)) {
 
         reportSchemaError(elem, XMLUni::fgXMLErrDomain, XMLErrs::Import_1_1);
         return;
     }
 
-    if ((!nameSpace || !*nameSpace) && fTargetNSURI == fEmptyNamespaceURI) {
+    if (!*nameSpaceValue && fTargetNSURI == fEmptyNamespaceURI) {
 
         reportSchemaError(elem, XMLUni::fgXMLErrDomain, XMLErrs::Import_1_2);
         return;
@@ -749,9 +764,8 @@
     // ------------------------------------------------------------------
     Grammar* aGrammar = 0;
 
-    if (nameSpace)
     {
-        XMLSchemaDescription* gramDesc = 
fGrammarResolver->getGrammarPool()->createSchemaDescription(nameSpace);
+        XMLSchemaDescription* gramDesc 
=fGrammarResolver->getGrammarPool()->createSchemaDescription(nameSpaceValue);
         Janitor<XMLSchemaDescription> janName(gramDesc);
         gramDesc->setContextType(XMLSchemaDescription::CONTEXT_IMPORT);
         gramDesc->setLocationHints(getElementAttValue(elem, 
SchemaSymbols::fgATT_SCHEMALOCATION, DatatypeValidator::AnyURI));
@@ -761,7 +775,7 @@
     bool grammarFound = (aGrammar && (aGrammar->getGrammarType() == 
Grammar::SchemaGrammarType));
 
     if (grammarFound) {
-        addImportedNS(fURIStringPool->addOrFind(nameSpace));
+        addImportedNS(fURIStringPool->addOrFind(nameSpaceValue));
     }
 
     // ------------------------------------------------------------------
@@ -769,11 +783,6 @@
     // ------------------------------------------------------------------
     const XMLCh* schemaLocation = getElementAttValue(elem, 
SchemaSymbols::fgATT_SCHEMALOCATION, DatatypeValidator::AnyURI);
 
-    //if (!schemaLocation || !*schemaLocation) {
-    //    return;
-    //}
-    // With new XMLEntityResolver, it may resolve the nameSpace so call 
resolveSchemaLocation...
-
     // a bare <xs:import/> doesn't load anything
     if(!schemaLocation && !nameSpace)
         return;
@@ -789,8 +798,8 @@
 
     // Nothing to do
     if (!srcToFill) {
-        if (!grammarFound && nameSpace) {
-            addImportedNS(fURIStringPool->addOrFind(nameSpace));
+        if (!grammarFound) {
+            addImportedNS(fURIStringPool->addOrFind(nameSpaceValue));
         }
 
         return;
@@ -855,9 +864,9 @@
 
         const XMLCh* targetNSURIString = 
root->getAttribute(SchemaSymbols::fgATT_TARGETNAMESPACE);
 
-        if (!XMLString::equals(targetNSURIString, nameSpace)) {
+        if (!XMLString::equals(targetNSURIString, nameSpaceValue)) {
             reportSchemaError(root, XMLUni::fgXMLErrDomain, 
XMLErrs::ImportNamespaceDifference,
-                              schemaLocation, targetNSURIString, nameSpace);
+                              schemaLocation, targetNSURIString, 
nameSpaceValue);
         }
         else {
 

Modified: xerces/c/trunk/src/xercesc/validators/schema/TraverseSchema.hpp
URL: 
http://svn.apache.org/viewvc/xerces/c/trunk/src/xercesc/validators/schema/TraverseSchema.hpp?rev=882124&r1=882123&r2=882124&view=diff
==============================================================================
--- xerces/c/trunk/src/xercesc/validators/schema/TraverseSchema.hpp (original)
+++ xerces/c/trunk/src/xercesc/validators/schema/TraverseSchema.hpp Thu Nov 19 
12:11:06 2009
@@ -86,6 +86,7 @@
         , XMLEntityHandler* const entityHandler
         , XMLErrorReporter* const errorReporter
         , MemoryManager* const    manager = XMLPlatformUtils::fgMemoryManager
+        , bool multipleImport = false
     );
 
     ~TraverseSchema();

Added: 
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-1/derived-user-config.xsd
URL: 
http://svn.apache.org/viewvc/xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-1/derived-user-config.xsd?rev=882124&view=auto
==============================================================================
--- 
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-1/derived-user-config.xsd
 (added)
+++ 
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-1/derived-user-config.xsd
 Thu Nov 19 12:11:06 2009
@@ -0,0 +1,29 @@
+<?xml version="1.0" ?>
+
+<xsd:schema xmlns:xsd= "http://www.w3.org/2001/XMLSchema";
+            xmlns:b=   "http://www.dave.com/Base";
+            xml:lang=  "en">
+
+<xsd:import namespace="http://www.dave.com/Base"; schemaLocation = 
"test-user-config.xsd"/>
+
+
+<xsd:complexType name="DerivedUserConfig_t">
+
+   <xsd:complexContent>
+      <xsd:extension base="b:TestUserConfig_t">
+         <xsd:sequence>
+   
+            <xsd:element name="Age" type="xsd:unsignedInt"/>
+            
+         </xsd:sequence>
+      </xsd:extension>
+   </xsd:complexContent>
+
+</xsd:complexType>
+
+
+<!-- Add this user type to the substitution group. -->
+<xsd:element name="DerivedUserConfig" type="DerivedUserConfig_t" 
substitutionGroup="b:TestUserConfig"/>
+
+
+</xsd:schema>
\ No newline at end of file

Propchange: 
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-1/derived-user-config.xsd
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: 
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-1/derived-user-config.xsd
------------------------------------------------------------------------------
    svn:keywords = 

Added: 
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-1/test-user-config.xsd
URL: 
http://svn.apache.org/viewvc/xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-1/test-user-config.xsd?rev=882124&view=auto
==============================================================================
--- 
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-1/test-user-config.xsd
 (added)
+++ 
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-1/test-user-config.xsd
 Thu Nov 19 12:11:06 2009
@@ -0,0 +1,21 @@
+<?xml version="1.0" ?>
+
+<xsd:schema xmlns:xsd=        "http://www.w3.org/2001/XMLSchema";
+            targetNamespace=  "http://www.dave.com/Base";
+            xmlns:b=          "http://www.dave.com/Base";
+            xml:lang=         "en">
+
+
+<xsd:complexType name="TestUserConfig_t">
+   <xsd:sequence>
+      <xsd:element name="Name" type="xsd:string"/>
+   </xsd:sequence>
+
+   <xsd:attribute name="Number" type="xsd:string" use="required"/>
+</xsd:complexType>
+
+<!-- Substitution group root for user database types. -->
+<xsd:element name="TestUserConfig" type="b:TestUserConfig_t"/>
+
+
+</xsd:schema>
\ No newline at end of file

Propchange: 
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-1/test-user-config.xsd
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: 
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-1/test-user-config.xsd
------------------------------------------------------------------------------
    svn:keywords = 

Added: 
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-1/test-users.xml
URL: 
http://svn.apache.org/viewvc/xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-1/test-users.xml?rev=882124&view=auto
==============================================================================
--- 
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-1/test-users.xml
 (added)
+++ 
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-1/test-users.xml
 Thu Nov 19 12:11:06 2009
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
+
+<b:UserDatabase xmlns:b="http://www.dave.com/Base";
+                xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
+               xsi:noNamespaceSchemaLocation="derived-user-config.xsd"
+                xsi:schemaLocation="http://www.dave.com/Base test-users.xsd">
+
+<DerivedUserConfig Number="1234567">
+   <Name>bob</Name>
+   <Age>50</Age>
+</DerivedUserConfig>
+
+<DerivedUserConfig Number="1234567">
+   <Name>bob</Name>
+   <Age>50</Age>
+</DerivedUserConfig>
+
+</b:UserDatabase>
+

Added: 
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-1/test-users.xsd
URL: 
http://svn.apache.org/viewvc/xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-1/test-users.xsd?rev=882124&view=auto
==============================================================================
--- 
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-1/test-users.xsd
 (added)
+++ 
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-1/test-users.xsd
 Thu Nov 19 12:11:06 2009
@@ -0,0 +1,30 @@
+<?xml version="1.0" ?>
+
+<xsd:schema xmlns:xsd=        "http://www.w3.org/2001/XMLSchema";
+            targetNamespace=  "http://www.dave.com/Base";
+            xmlns:b=          "http://www.dave.com/Base";
+            xml:lang=         "en">
+
+<xsd:include schemaLocation="test-user-config.xsd"/>
+
+<xsd:element name="UserDatabase" type="b:UserDatabase_t">
+
+<!-- A users dialled number must be unique in the xml instance file. -->
+   <xsd:unique name="UniqueNumber">
+      <xsd:selector xpath="TestUserConfig"/>
+      <xsd:field xpath="@Number"/>
+   </xsd:unique>
+
+</xsd:element>
+
+
+<xsd:complexType name="UserDatabase_t">
+   <xsd:sequence>
+
+      <xsd:element ref="b:TestUserConfig" minOccurs="0" 
maxOccurs="unbounded"/> 
+      
+   </xsd:sequence>
+</xsd:complexType>
+
+
+</xsd:schema>
\ No newline at end of file

Propchange: 
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-1/test-users.xsd
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: 
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-1/test-users.xsd
------------------------------------------------------------------------------
    svn:keywords = 

Added: 
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-2/derived-user-config.xsd
URL: 
http://svn.apache.org/viewvc/xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-2/derived-user-config.xsd?rev=882124&view=auto
==============================================================================
--- 
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-2/derived-user-config.xsd
 (added)
+++ 
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-2/derived-user-config.xsd
 Thu Nov 19 12:11:06 2009
@@ -0,0 +1,29 @@
+<?xml version="1.0" ?>
+
+<xsd:schema xmlns:xsd= "http://www.w3.org/2001/XMLSchema";
+            xmlns:d=   "http://www.dave.com/Derived";
+           targetNamespace="http://www.dave.com/Derived";
+            xml:lang=  "en">
+
+<xsd:import schemaLocation = "test-user-config.xsd"/>
+
+<xsd:complexType name="DerivedUserConfig_t">
+
+   <xsd:complexContent>
+      <xsd:extension base="TestUserConfig_t">
+         <xsd:sequence>
+   
+            <xsd:element name="Age" type="xsd:unsignedInt"/>
+            
+         </xsd:sequence>
+      </xsd:extension>
+   </xsd:complexContent>
+
+</xsd:complexType>
+
+
+<!-- Add this user type to the substitution group. -->
+<xsd:element name="DerivedUserConfig" type="d:DerivedUserConfig_t" 
substitutionGroup="TestUserConfig"/>
+
+
+</xsd:schema>
\ No newline at end of file

Propchange: 
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-2/derived-user-config.xsd
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: 
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-2/derived-user-config.xsd
------------------------------------------------------------------------------
    svn:keywords = 

Added: 
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-2/test-user-config.xsd
URL: 
http://svn.apache.org/viewvc/xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-2/test-user-config.xsd?rev=882124&view=auto
==============================================================================
--- 
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-2/test-user-config.xsd
 (added)
+++ 
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-2/test-user-config.xsd
 Thu Nov 19 12:11:06 2009
@@ -0,0 +1,19 @@
+<?xml version="1.0" ?>
+
+<xsd:schema xmlns:xsd=        "http://www.w3.org/2001/XMLSchema";
+            xml:lang=         "en">
+
+
+<xsd:complexType name="TestUserConfig_t">
+   <xsd:sequence>
+      <xsd:element name="Name" type="xsd:string"/>
+   </xsd:sequence>
+
+   <xsd:attribute name="Number" type="xsd:string" use="required"/>
+</xsd:complexType>
+
+<!-- Substitution group root for user database types. -->
+<xsd:element name="TestUserConfig" type="TestUserConfig_t"/>
+
+
+</xsd:schema>
\ No newline at end of file

Propchange: 
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-2/test-user-config.xsd
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: 
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-2/test-user-config.xsd
------------------------------------------------------------------------------
    svn:keywords = 

Added: 
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-2/test-users.xml
URL: 
http://svn.apache.org/viewvc/xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-2/test-users.xml?rev=882124&view=auto
==============================================================================
--- 
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-2/test-users.xml
 (added)
+++ 
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-2/test-users.xml
 Thu Nov 19 12:11:06 2009
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
+
+<UserDatabase xmlns:d="http://www.dave.com/Derived";
+              xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";          
+              xsi:schemaLocation="http://www.dave.com/Derived 
derived-user-config.xsd"
+             xsi:noNamespaceSchemaLocation="test-users.xsd">
+
+<d:DerivedUserConfig Number="1234567">
+   <Name>bob</Name>
+   <Age>50</Age>
+</d:DerivedUserConfig>
+
+<d:DerivedUserConfig Number="1234567">
+   <Name>bob</Name>
+   <Age>50</Age>
+</d:DerivedUserConfig>
+
+</UserDatabase>
+

Added: 
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-2/test-users.xsd
URL: 
http://svn.apache.org/viewvc/xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-2/test-users.xsd?rev=882124&view=auto
==============================================================================
--- 
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-2/test-users.xsd
 (added)
+++ 
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-2/test-users.xsd
 Thu Nov 19 12:11:06 2009
@@ -0,0 +1,26 @@
+<?xml version="1.0" ?>
+
+<xsd:schema xmlns:xsd=        "http://www.w3.org/2001/XMLSchema";
+            xml:lang=         "en">
+
+<xsd:include schemaLocation="test-user-config.xsd"/>
+
+<xsd:element name="UserDatabase" type="UserDatabase_t">
+
+<!-- A users dialled number must be unique in the xml instance file. -->
+   <xsd:unique name="UniqueNumber">
+      <xsd:selector xpath="TestUserConfig"/>
+      <xsd:field xpath="@Number"/>
+   </xsd:unique>
+
+</xsd:element>
+
+
+<xsd:complexType name="UserDatabase_t">
+   <xsd:sequence>
+      <xsd:element ref="TestUserConfig" minOccurs="0" maxOccurs="unbounded"/>  
     
+   </xsd:sequence>
+</xsd:complexType>
+
+
+</xsd:schema>
\ No newline at end of file

Propchange: 
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-2/test-users.xsd
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: 
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-2/test-users.xsd
------------------------------------------------------------------------------
    svn:keywords = 

Added: 
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-3/derived-user-config.xsd
URL: 
http://svn.apache.org/viewvc/xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-3/derived-user-config.xsd?rev=882124&view=auto
==============================================================================
--- 
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-3/derived-user-config.xsd
 (added)
+++ 
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-3/derived-user-config.xsd
 Thu Nov 19 12:11:06 2009
@@ -0,0 +1,30 @@
+<?xml version="1.0" ?>
+
+<xsd:schema xmlns:xsd= "http://www.w3.org/2001/XMLSchema";
+            xmlns:d=   "http://www.dave.com/Derived";
+            xmlns:b="base"
+           targetNamespace="http://www.dave.com/Derived";
+            xml:lang=  "en">
+
+<xsd:import namespace="base" schemaLocation = "test-user-config.xsd"/>
+
+<xsd:complexType name="DerivedUserConfig_t">
+
+   <xsd:complexContent>
+      <xsd:extension base="b:TestUserConfig_t">
+         <xsd:sequence>
+   
+            <xsd:element name="Age" type="xsd:unsignedInt"/>
+            
+         </xsd:sequence>
+      </xsd:extension>
+   </xsd:complexContent>
+
+</xsd:complexType>
+
+
+<!-- Add this user type to the substitution group. -->
+<xsd:element name="DerivedUserConfig" type="d:DerivedUserConfig_t" 
substitutionGroup="b:TestUserConfig"/>
+
+
+</xsd:schema>
\ No newline at end of file

Propchange: 
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-3/derived-user-config.xsd
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: 
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-3/derived-user-config.xsd
------------------------------------------------------------------------------
    svn:keywords = 

Added: 
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-3/test-user-config.xsd
URL: 
http://svn.apache.org/viewvc/xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-3/test-user-config.xsd?rev=882124&view=auto
==============================================================================
--- 
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-3/test-user-config.xsd
 (added)
+++ 
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-3/test-user-config.xsd
 Thu Nov 19 12:11:06 2009
@@ -0,0 +1,21 @@
+<?xml version="1.0" ?>
+
+<xsd:schema xmlns:xsd=        "http://www.w3.org/2001/XMLSchema";
+            xml:lang=         "en"
+            targetNamespace="base"
+            xmlns:b="base">
+
+
+<xsd:complexType name="TestUserConfig_t">
+   <xsd:sequence>
+      <xsd:element name="Name" type="xsd:string"/>
+   </xsd:sequence>
+
+   <xsd:attribute name="Number" type="xsd:string" use="required"/>
+</xsd:complexType>
+
+<!-- Substitution group root for user database types. -->
+<xsd:element name="TestUserConfig" type="b:TestUserConfig_t"/>
+
+
+</xsd:schema>
\ No newline at end of file

Propchange: 
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-3/test-user-config.xsd
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: 
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-3/test-user-config.xsd
------------------------------------------------------------------------------
    svn:keywords = 

Added: 
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-3/test-users.xml
URL: 
http://svn.apache.org/viewvc/xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-3/test-users.xml?rev=882124&view=auto
==============================================================================
--- 
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-3/test-users.xml
 (added)
+++ 
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-3/test-users.xml
 Thu Nov 19 12:11:06 2009
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
+
+<b:UserDatabase xmlns:d="http://www.dave.com/Derived";
+              xmlns:b="base"
+              xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
+              xsi:schemaLocation="base test-users.xsd 
http://www.dave.com/Derived derived-user-config.xsd">
+
+<d:DerivedUserConfig Number="1234567">
+   <Name>bob</Name>
+   <Age>50</Age>
+</d:DerivedUserConfig>
+
+<d:DerivedUserConfig Number="1234567">
+   <Name>bob</Name>
+   <Age>50</Age>
+</d:DerivedUserConfig>
+
+</b:UserDatabase>
+

Added: 
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-3/test-users.xsd
URL: 
http://svn.apache.org/viewvc/xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-3/test-users.xsd?rev=882124&view=auto
==============================================================================
--- 
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-3/test-users.xsd
 (added)
+++ 
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-3/test-users.xsd
 Thu Nov 19 12:11:06 2009
@@ -0,0 +1,28 @@
+<?xml version="1.0" ?>
+
+<xsd:schema xmlns:xsd=        "http://www.w3.org/2001/XMLSchema";
+            xml:lang=         "en"
+            targetNamespace="base"
+            xmlns:b="base">
+
+<xsd:include schemaLocation="test-user-config.xsd"/>
+
+<xsd:element name="UserDatabase" type="b:UserDatabase_t">
+
+<!-- A users dialled number must be unique in the xml instance file. -->
+   <xsd:unique name="UniqueNumber">
+      <xsd:selector xpath="b:TestUserConfig"/>
+      <xsd:field xpath="@Number"/>
+   </xsd:unique>
+
+</xsd:element>
+
+
+<xsd:complexType name="UserDatabase_t">
+   <xsd:sequence>
+      <xsd:element ref="b:TestUserConfig" minOccurs="0" 
maxOccurs="unbounded"/>       
+   </xsd:sequence>
+</xsd:complexType>
+
+
+</xsd:schema>
\ No newline at end of file

Propchange: 
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-3/test-users.xsd
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: 
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-3/test-users.xsd
------------------------------------------------------------------------------
    svn:keywords = 

Added: 
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-4/derived-user-config.xsd
URL: 
http://svn.apache.org/viewvc/xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-4/derived-user-config.xsd?rev=882124&view=auto
==============================================================================
--- 
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-4/derived-user-config.xsd
 (added)
+++ 
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-4/derived-user-config.xsd
 Thu Nov 19 12:11:06 2009
@@ -0,0 +1,29 @@
+<?xml version="1.0" ?>
+
+<xsd:schema xmlns:xsd= "http://www.w3.org/2001/XMLSchema";
+            xmlns:d=   "http://www.dave.com/Derived";
+           targetNamespace="http://www.dave.com/Derived";
+            xml:lang=  "en">
+
+<xsd:import schemaLocation = "test-user-config.xsd"/>
+
+<xsd:complexType name="DerivedUserConfig_t">
+
+   <xsd:complexContent>
+      <xsd:extension base="TestUserConfig_t">
+         <xsd:sequence>
+   
+            <xsd:element name="Age" type="xsd:unsignedInt"/>
+            
+         </xsd:sequence>
+      </xsd:extension>
+   </xsd:complexContent>
+
+</xsd:complexType>
+
+
+<!-- Add this user type to the substitution group. -->
+<xsd:element name="DerivedUserConfig" type="d:DerivedUserConfig_t" 
substitutionGroup="TestUserConfig"/>
+
+
+</xsd:schema>
\ No newline at end of file

Propchange: 
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-4/derived-user-config.xsd
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: 
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-4/derived-user-config.xsd
------------------------------------------------------------------------------
    svn:keywords = 

Added: 
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-4/test-user-config.xsd
URL: 
http://svn.apache.org/viewvc/xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-4/test-user-config.xsd?rev=882124&view=auto
==============================================================================
--- 
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-4/test-user-config.xsd
 (added)
+++ 
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-4/test-user-config.xsd
 Thu Nov 19 12:11:06 2009
@@ -0,0 +1,19 @@
+<?xml version="1.0" ?>
+
+<xsd:schema xmlns:xsd=        "http://www.w3.org/2001/XMLSchema";
+            xml:lang=         "en">
+
+
+<xsd:complexType name="TestUserConfig_t">
+   <xsd:sequence>
+      <xsd:element name="Name" type="xsd:string"/>
+   </xsd:sequence>
+
+   <xsd:attribute name="Number" type="xsd:string" use="required"/>
+</xsd:complexType>
+
+<!-- Substitution group root for user database types. -->
+<xsd:element name="TestUserConfig" type="TestUserConfig_t"/>
+
+
+</xsd:schema>
\ No newline at end of file

Propchange: 
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-4/test-user-config.xsd
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: 
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-4/test-user-config.xsd
------------------------------------------------------------------------------
    svn:keywords = 

Added: 
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-4/test-users.xml
URL: 
http://svn.apache.org/viewvc/xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-4/test-users.xml?rev=882124&view=auto
==============================================================================
--- 
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-4/test-users.xml
 (added)
+++ 
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-4/test-users.xml
 Thu Nov 19 12:11:06 2009
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
+
+<UserDatabase xmlns:d="http://www.dave.com/Derived";
+              xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
+              xsi:noNamespaceSchemaLocation="test-users.xsd"
+              xsi:schemaLocation="http://www.dave.com/Derived 
derived-user-config.xsd">
+
+<d:DerivedUserConfig Number="1234567">
+   <Name>bob</Name>
+   <Age>50</Age>
+</d:DerivedUserConfig>
+
+<d:DerivedUserConfig Number="1234567">
+   <Name>bob</Name>
+   <Age>50</Age>
+</d:DerivedUserConfig>
+
+</UserDatabase>
+

Added: 
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-4/test-users.xsd
URL: 
http://svn.apache.org/viewvc/xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-4/test-users.xsd?rev=882124&view=auto
==============================================================================
--- 
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-4/test-users.xsd
 (added)
+++ 
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-4/test-users.xsd
 Thu Nov 19 12:11:06 2009
@@ -0,0 +1,26 @@
+<?xml version="1.0" ?>
+
+<xsd:schema xmlns:xsd=        "http://www.w3.org/2001/XMLSchema";
+            xml:lang=         "en">
+
+<xsd:include schemaLocation="test-user-config.xsd"/>
+
+<xsd:element name="UserDatabase" type="UserDatabase_t">
+
+<!-- A users dialled number must be unique in the xml instance file. -->
+   <xsd:unique name="UniqueNumber">
+      <xsd:selector xpath="TestUserConfig"/>
+      <xsd:field xpath="@Number"/>
+   </xsd:unique>
+
+</xsd:element>
+
+
+<xsd:complexType name="UserDatabase_t">
+   <xsd:sequence>
+      <xsd:element ref="TestUserConfig" minOccurs="0" maxOccurs="unbounded"/>  
     
+   </xsd:sequence>
+</xsd:complexType>
+
+
+</xsd:schema>
\ No newline at end of file

Propchange: 
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-4/test-users.xsd
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: 
xerces/c/trunk/tests/src/XSTSHarness/regression/XERCESC-1659/test-4/test-users.xsd
------------------------------------------------------------------------------
    svn:keywords = 

Modified: xerces/c/trunk/tests/src/XSTSHarness/regression/Xerces.testSet
URL: 
http://svn.apache.org/viewvc/xerces/c/trunk/tests/src/XSTSHarness/regression/Xerces.testSet?rev=882124&r1=882123&r2=882124&view=diff
==============================================================================
--- xerces/c/trunk/tests/src/XSTSHarness/regression/Xerces.testSet (original)
+++ xerces/c/trunk/tests/src/XSTSHarness/regression/Xerces.testSet Thu Nov 19 
12:11:06 2009
@@ -465,6 +465,50 @@
                        <current status="accepted" date="2008-02-13"/>
                </instanceTest>
        </testGroup>
+        <testGroup name="XERCESC-1659-1">
+               <annotation>
+                       <documentation>Multi-import and schemaLocation 
ordering</documentation>
+               </annotation>
+               <documentationReference 
xlink:href="https://issues.apache.org/jira/browse/XERCESC-1659"/>
+               <instanceTest name="XERCESC-1659-1-1">
+                       <instanceDocument 
xlink:href="./XERCESC-1659/test-1/test-users.xml"/>
+                       <expected validity="valid"/>
+                       <current status="accepted" date="2009-11-19"/>
+               </instanceTest>
+       </testGroup>
+        <testGroup name="XERCESC-1659-2">
+               <annotation>
+                       <documentation>Multi-import and schemaLocation 
ordering</documentation>
+               </annotation>
+               <documentationReference 
xlink:href="https://issues.apache.org/jira/browse/XERCESC-1659"/>
+               <instanceTest name="XERCESC-1659-2-1">
+                       <instanceDocument 
xlink:href="./XERCESC-1659/test-2/test-users.xml"/>
+                       <expected validity="valid"/>
+                       <current status="accepted" date="2009-11-19"/>
+               </instanceTest>
+       </testGroup>
+        <testGroup name="XERCESC-1659-3">
+               <annotation>
+                       <documentation>Multi-import and schemaLocation 
ordering</documentation>
+               </annotation>
+               <documentationReference 
xlink:href="https://issues.apache.org/jira/browse/XERCESC-1659"/>
+               <instanceTest name="XERCESC-1659-3-1">
+                       <instanceDocument 
xlink:href="./XERCESC-1659/test-3/test-users.xml"/>
+                       <expected validity="valid"/>
+                       <current status="accepted" date="2009-11-19"/>
+               </instanceTest>
+       </testGroup>
+        <testGroup name="XERCESC-1659-4">
+               <annotation>
+                       <documentation>Multi-import and schemaLocation 
ordering</documentation>
+               </annotation>
+               <documentationReference 
xlink:href="https://issues.apache.org/jira/browse/XERCESC-1659"/>
+               <instanceTest name="XERCESC-1659-4-1">
+                       <instanceDocument 
xlink:href="./XERCESC-1659/test-4/test-users.xml"/>
+                       <expected validity="valid"/>
+                       <current status="accepted" date="2009-11-19"/>
+               </instanceTest>
+       </testGroup>
        <testGroup name="XERCESC-1707">
                <annotation>
                        <documentation>Processing of not-declared-element with 
"xsi:type" under anyType element does not clear 
SchemaValidator::fXsiType</documentation>



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

Reply via email to