From f87770bb506a3a0e3ce6eb87071931911925bfae Mon Sep 17 00:00:00 2001 From: Khaled Noaman <knoaman@apache.org> Date: Tue, 14 Jan 2003 18:43:58 +0000 Subject: [PATCH] Make sure that the root element of an include XML Schema is <xsd:schema>. git-svn-id: https://svn.apache.org/repos/asf/xerces/c/trunk@174624 13f79535-47bb-0310-9956-ffa450edef68 --- src/xercesc/validators/schema/TraverseSchema.cpp | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/xercesc/validators/schema/TraverseSchema.cpp b/src/xercesc/validators/schema/TraverseSchema.cpp index 299682ecb..a3bb35862 100644 --- a/src/xercesc/validators/schema/TraverseSchema.cpp +++ b/src/xercesc/validators/schema/TraverseSchema.cpp @@ -578,6 +578,11 @@ void TraverseSchema::preprocessInclude(const DOMElement* const elem) { 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; -- GitLab