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]