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]

Reply via email to