knoaman 2003/01/14 11:12:21
Modified: c/src/xercesc/validators/schema TraverseSchema.cpp
Log:
Make sure that the root element of XML Schema is <xsd:schema>.
Revision Changes Path
1.54 +6 -11 xml-xerces/c/src/xercesc/validators/schema/TraverseSchema.cpp
Index: TraverseSchema.cpp
===================================================================
RCS file: /home/cvs/xml-xerces/c/src/xercesc/validators/schema/TraverseSchema.cpp,v
retrieving revision 1.53
retrieving revision 1.54
diff -u -r1.53 -r1.54
--- TraverseSchema.cpp 14 Jan 2003 18:43:58 -0000 1.53
+++ TraverseSchema.cpp 14 Jan 2003 19:12:20 -0000 1.54
@@ -393,11 +393,6 @@
fSchemaInfo = currInfo;
fSchemaInfoList->put((void*) fSchemaInfo->getCurrentSchemaURL(),
fSchemaInfo->getTargetNSURI(), fSchemaInfo);
fSchemaInfo->addSchemaInfo(fSchemaInfo, SchemaInfo::INCLUDE);
-
- if (!XMLString::equals(schemaRoot->getLocalName(),
SchemaSymbols::fgELT_SCHEMA)) {
- reportSchemaError(schemaRoot, XMLUni::fgXMLErrDomain,
XMLErrs::InvalidXMLSchemaRoot);
- }
-
traverseSchemaHeader(schemaRoot);
// preprocess chidren
@@ -407,6 +402,11 @@
void TraverseSchema::traverseSchemaHeader(const DOMElement* const schemaRoot) {
+ // Make sure that the root element is <xsd:schema>
+ if (!XMLString::equals(schemaRoot->getLocalName(),
SchemaSymbols::fgELT_SCHEMA)) {
+ reportSchemaError(schemaRoot, XMLUni::fgXMLErrDomain,
XMLErrs::InvalidXMLSchemaRoot);
+ }
+
// -----------------------------------------------------------------------
// Check Attributes
// -----------------------------------------------------------------------
@@ -578,11 +578,6 @@
fSchemaInfo->getTargetNSURI(), fSchemaInfo);
fPreprocessedNodes->put((void*) elem, fSchemaInfo);
saveInfo->addSchemaInfo(fSchemaInfo, SchemaInfo::INCLUDE);
-
- if (!XMLString::equals(root->getLocalName(),
SchemaSymbols::fgELT_SCHEMA)) {
- reportSchemaError(root, XMLUni::fgXMLErrDomain,
XMLErrs::InvalidXMLSchemaRoot);
- }
-
traverseSchemaHeader(root);
preprocessChildren(root);
fSchemaInfo = saveInfo;
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]