You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@xerces.apache.org by kn...@apache.org on 2001/11/21 15:30:13 UTC

cvs commit: xml-xerces/c/src/validators/schema ComplexTypeInfo.cpp ComplexTypeInfo.hpp SchemaValidator.cpp SubstitutionGroupComparator.cpp SubstitutionGroupComparator.hpp XercesElementWildcard.cpp XercesElementWildcard.hpp

knoaman     01/11/21 06:30:13

  Modified:    c/src/framework XMLContentModel.hpp
               c/src/validators/common AllContentModel.cpp
                        AllContentModel.hpp DFAContentModel.cpp
                        DFAContentModel.hpp MixedContentModel.hpp
                        SimpleContentModel.cpp SimpleContentModel.hpp
               c/src/validators/schema ComplexTypeInfo.cpp
                        ComplexTypeInfo.hpp SchemaValidator.cpp
                        SubstitutionGroupComparator.cpp
                        SubstitutionGroupComparator.hpp
                        XercesElementWildcard.cpp XercesElementWildcard.hpp
  Log:
  Fix for UPA checking.
  
  Revision  Changes    Path
  1.14      +6 -1      xml-xerces/c/src/framework/XMLContentModel.hpp
  
  Index: XMLContentModel.hpp
  ===================================================================
  RCS file: /home/cvs/xml-xerces/c/src/framework/XMLContentModel.hpp,v
  retrieving revision 1.13
  retrieving revision 1.14
  diff -u -r1.13 -r1.14
  --- XMLContentModel.hpp	2001/08/21 16:06:10	1.13
  +++ XMLContentModel.hpp	2001/11/21 14:30:13	1.14
  @@ -56,6 +56,9 @@
   
   /*
    * $Log: XMLContentModel.hpp,v $
  + * Revision 1.14  2001/11/21 14:30:13  knoaman
  + * Fix for UPA checking.
  + *
    * Revision 1.13  2001/08/21 16:06:10  tng
    * Schema: Unique Particle Attribution Constraint Checking.
    *
  @@ -114,6 +117,7 @@
   class GrammarResolver;
   class XMLStringPool;
   class XMLValidator;
  +class SchemaGrammar;
   
   /**
    *  This class defines the abstract interface for all content models. All
  @@ -178,7 +182,8 @@
   
   	virtual void checkUniqueParticleAttribution
       (
  -        GrammarResolver*  const pGrammarResolver
  +        SchemaGrammar*    const pGrammar
  +      , GrammarResolver*  const pGrammarResolver
         , XMLStringPool*    const pStringPool
         , XMLValidator*     const pValidator
         , unsigned int*     const pContentSpecOrgURI
  
  
  
  1.3       +7 -2      xml-xerces/c/src/validators/common/AllContentModel.cpp
  
  Index: AllContentModel.cpp
  ===================================================================
  RCS file: /home/cvs/xml-xerces/c/src/validators/common/AllContentModel.cpp,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- AllContentModel.cpp	2001/08/27 12:19:00	1.2
  +++ AllContentModel.cpp	2001/11/21 14:30:13	1.3
  @@ -56,6 +56,9 @@
   
   /*
    * $Log: AllContentModel.cpp,v $
  + * Revision 1.3  2001/11/21 14:30:13  knoaman
  + * Fix for UPA checking.
  + *
    * Revision 1.2  2001/08/27 12:19:00  tng
    * Schema: AllContentModel UPA Check typo fix
    *
  @@ -288,7 +291,8 @@
   
   void AllContentModel::checkUniqueParticleAttribution
       (
  -        GrammarResolver*  const pGrammarResolver
  +        SchemaGrammar*    const pGrammar
  +      , GrammarResolver*  const pGrammarResolver
         , XMLStringPool*    const pStringPool
         , XMLValidator*     const pValidator
         , unsigned int*     const pContentSpecOrgURI
  @@ -313,7 +317,8 @@
                     ( fChildren[j]->getURI() == XMLElementDecl::fgPCDataElemId)))
                   continue;
   
  -            if (XercesElementWildcard::conflict(ContentSpecNode::Leaf,
  +            if (XercesElementWildcard::conflict(pGrammar,
  +                                                ContentSpecNode::Leaf,
                                                   fChildren[i],
                                                   ContentSpecNode::Leaf,
                                                   fChildren[j],
  
  
  
  1.2       +6 -2      xml-xerces/c/src/validators/common/AllContentModel.hpp
  
  Index: AllContentModel.hpp
  ===================================================================
  RCS file: /home/cvs/xml-xerces/c/src/validators/common/AllContentModel.hpp,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- AllContentModel.hpp	2001/08/24 12:48:48	1.1
  +++ AllContentModel.hpp	2001/11/21 14:30:13	1.2
  @@ -56,6 +56,9 @@
   
   /*
    * $Log: AllContentModel.hpp,v $
  + * Revision 1.2  2001/11/21 14:30:13  knoaman
  + * Fix for UPA checking.
  + *
    * Revision 1.1  2001/08/24 12:48:48  tng
    * Schema: AllContentModel
    *
  @@ -120,7 +123,8 @@
   
       virtual void checkUniqueParticleAttribution
       (
  -        GrammarResolver*  const pGrammarResolver
  +        SchemaGrammar*    const pGrammar
  +      , GrammarResolver*  const pGrammarResolver
         , XMLStringPool*    const pStringPool
         , XMLValidator*     const pValidator
         , unsigned int*     const pContentSpecOrgURI
  
  
  
  1.27      +7 -2      xml-xerces/c/src/validators/common/DFAContentModel.cpp
  
  Index: DFAContentModel.cpp
  ===================================================================
  RCS file: /home/cvs/xml-xerces/c/src/validators/common/DFAContentModel.cpp,v
  retrieving revision 1.26
  retrieving revision 1.27
  diff -u -r1.26 -r1.27
  --- DFAContentModel.cpp	2001/11/07 21:10:46	1.26
  +++ DFAContentModel.cpp	2001/11/21 14:30:13	1.27
  @@ -56,6 +56,9 @@
   
   /*
    * $Log: DFAContentModel.cpp,v $
  + * Revision 1.27  2001/11/21 14:30:13  knoaman
  + * Fix for UPA checking.
  + *
    * Revision 1.26  2001/11/07 21:10:46  tng
    * Performance: move getRawName() to outer loop so that it is called only once per outer loop.
    *
  @@ -1155,7 +1158,8 @@
   	return fLeafNameTypeVector;
   };
   
  -void DFAContentModel::checkUniqueParticleAttribution (GrammarResolver*  const pGrammarResolver,
  +void DFAContentModel::checkUniqueParticleAttribution (SchemaGrammar*    const pGrammar,
  +                                                      GrammarResolver*  const pGrammarResolver,
                                                         XMLStringPool*    const pStringPool,
                                                         XMLValidator*     const pValidator,
                                                         unsigned int*     const pContentSpecOrgURI)
  @@ -1201,7 +1205,8 @@
                             ( fElemMap[k]->getURI() == XMLElementDecl::fgPCDataElemId)))
                           continue;
   
  -                    if (XercesElementWildcard::conflict(fElemMapType[j],
  +                    if (XercesElementWildcard::conflict(pGrammar,
  +                                                        fElemMapType[j],
                                                           fElemMap[j],
                                                           fElemMapType[k],
                                                           fElemMap[k],
  
  
  
  1.13      +5 -1      xml-xerces/c/src/validators/common/DFAContentModel.hpp
  
  Index: DFAContentModel.hpp
  ===================================================================
  RCS file: /home/cvs/xml-xerces/c/src/validators/common/DFAContentModel.hpp,v
  retrieving revision 1.12
  retrieving revision 1.13
  diff -u -r1.12 -r1.13
  --- DFAContentModel.hpp	2001/08/24 12:48:48	1.12
  +++ DFAContentModel.hpp	2001/11/21 14:30:13	1.13
  @@ -56,6 +56,9 @@
   
   /*
    * $Log: DFAContentModel.hpp,v $
  + * Revision 1.13  2001/11/21 14:30:13  knoaman
  + * Fix for UPA checking.
  + *
    * Revision 1.12  2001/08/24 12:48:48  tng
    * Schema: AllContentModel
    *
  @@ -174,7 +177,8 @@
   
       virtual void checkUniqueParticleAttribution
       (
  -        GrammarResolver*  const pGrammarResolver
  +        SchemaGrammar*    const pGrammar
  +      , GrammarResolver*  const pGrammarResolver
         , XMLStringPool*    const pStringPool
         , XMLValidator*     const pValidator
         , unsigned int*     const pContentSpecOrgURI
  
  
  
  1.11      +7 -2      xml-xerces/c/src/validators/common/MixedContentModel.hpp
  
  Index: MixedContentModel.hpp
  ===================================================================
  RCS file: /home/cvs/xml-xerces/c/src/validators/common/MixedContentModel.hpp,v
  retrieving revision 1.10
  retrieving revision 1.11
  diff -u -r1.10 -r1.11
  --- MixedContentModel.hpp	2001/08/21 16:06:11	1.10
  +++ MixedContentModel.hpp	2001/11/21 14:30:13	1.11
  @@ -56,6 +56,9 @@
   
   /*
    * $Log: MixedContentModel.hpp,v $
  + * Revision 1.11  2001/11/21 14:30:13  knoaman
  + * Fix for UPA checking.
  + *
    * Revision 1.10  2001/08/21 16:06:11  tng
    * Schema: Unique Particle Attribution Constraint Checking.
    *
  @@ -171,7 +174,8 @@
   
       virtual void checkUniqueParticleAttribution
       (
  -        GrammarResolver*  const pGrammarResolver
  +        SchemaGrammar*    const pGrammar
  +      , GrammarResolver*  const pGrammarResolver
         , XMLStringPool*    const pStringPool
         , XMLValidator*     const pValidator
         , unsigned int*     const pContentSpecOrgURI
  @@ -239,7 +243,8 @@
   
   inline void MixedContentModel::checkUniqueParticleAttribution
       (
  -        GrammarResolver*  const pGrammarResolver
  +        SchemaGrammar*    const pGrammar
  +      , GrammarResolver*  const pGrammarResolver
         , XMLStringPool*    const pStringPool
         , XMLValidator*     const pValidator
         , unsigned int*     const pContentSpecOrgURI
  
  
  
  1.10      +7 -2      xml-xerces/c/src/validators/common/SimpleContentModel.cpp
  
  Index: SimpleContentModel.cpp
  ===================================================================
  RCS file: /home/cvs/xml-xerces/c/src/validators/common/SimpleContentModel.cpp,v
  retrieving revision 1.9
  retrieving revision 1.10
  diff -u -r1.9 -r1.10
  --- SimpleContentModel.cpp	2001/08/21 16:06:11	1.9
  +++ SimpleContentModel.cpp	2001/11/21 14:30:13	1.10
  @@ -56,6 +56,9 @@
   
   /*
    * $Log: SimpleContentModel.cpp,v $
  + * Revision 1.10  2001/11/21 14:30:13  knoaman
  + * Fix for UPA checking.
  + *
    * Revision 1.9  2001/08/21 16:06:11  tng
    * Schema: Unique Particle Attribution Constraint Checking.
    *
  @@ -479,7 +482,8 @@
   
   void SimpleContentModel::checkUniqueParticleAttribution
       (
  -        GrammarResolver*  const pGrammarResolver
  +        SchemaGrammar*    const pGrammar
  +      , GrammarResolver*  const pGrammarResolver
         , XMLStringPool*    const pStringPool
         , XMLValidator*     const pValidator
         , unsigned int*     const pContentSpecOrgURI
  @@ -499,7 +503,8 @@
   
           SubstitutionGroupComparator comparator(pGrammarResolver, pStringPool);
   
  -        if (XercesElementWildcard::conflict(ContentSpecNode::Leaf,
  +        if (XercesElementWildcard::conflict(pGrammar,
  +                                            ContentSpecNode::Leaf,
                                               fFirstChild,
                                               ContentSpecNode::Leaf,
                                               fSecondChild,
  
  
  
  1.12      +5 -1      xml-xerces/c/src/validators/common/SimpleContentModel.hpp
  
  Index: SimpleContentModel.hpp
  ===================================================================
  RCS file: /home/cvs/xml-xerces/c/src/validators/common/SimpleContentModel.hpp,v
  retrieving revision 1.11
  retrieving revision 1.12
  diff -u -r1.11 -r1.12
  --- SimpleContentModel.hpp	2001/10/03 15:08:45	1.11
  +++ SimpleContentModel.hpp	2001/11/21 14:30:13	1.12
  @@ -56,6 +56,9 @@
   
   /*
    * $Log: SimpleContentModel.hpp,v $
  + * Revision 1.12  2001/11/21 14:30:13  knoaman
  + * Fix for UPA checking.
  + *
    * Revision 1.11  2001/10/03 15:08:45  tng
    * typo fix: remove the extra space which may confuse some compilers while constructing the qname.
    *
  @@ -179,7 +182,8 @@
   
       virtual void checkUniqueParticleAttribution
       (
  -        GrammarResolver*  const pGrammarResolver
  +        SchemaGrammar*    const pGrammar
  +      , GrammarResolver*  const pGrammarResolver
         , XMLStringPool*    const pStringPool
         , XMLValidator*     const pValidator
         , unsigned int*     const pContentSpecOrgURI
  
  
  
  1.24      +6 -2      xml-xerces/c/src/validators/schema/ComplexTypeInfo.cpp
  
  Index: ComplexTypeInfo.cpp
  ===================================================================
  RCS file: /home/cvs/xml-xerces/c/src/validators/schema/ComplexTypeInfo.cpp,v
  retrieving revision 1.23
  retrieving revision 1.24
  diff -u -r1.23 -r1.24
  --- ComplexTypeInfo.cpp	2001/11/15 17:10:19	1.23
  +++ ComplexTypeInfo.cpp	2001/11/21 14:30:13	1.24
  @@ -56,6 +56,9 @@
   
   /*
    * $Log: ComplexTypeInfo.cpp,v $
  + * Revision 1.24  2001/11/21 14:30:13  knoaman
  + * Fix for UPA checking.
  + *
    * Revision 1.23  2001/11/15 17:10:19  knoaman
    * Particle derivation checking support.
    *
  @@ -309,7 +312,8 @@
   }
   
   
  -void ComplexTypeInfo::checkUniqueParticleAttribution (GrammarResolver*  const pGrammarResolver,
  +void ComplexTypeInfo::checkUniqueParticleAttribution (SchemaGrammar*    const pGrammar,
  +                                                      GrammarResolver*  const pGrammarResolver,
                                                         XMLStringPool*    const pStringPool,
                                                         XMLValidator*     const pValidator)
   {
  @@ -318,7 +322,7 @@
           XMLContentModel* cm = makeContentModel(true, specNode);
   
           if (cm) {
  -            cm->checkUniqueParticleAttribution(pGrammarResolver, pStringPool, pValidator, fContentSpecOrgURI);
  +            cm->checkUniqueParticleAttribution(pGrammar, pGrammarResolver, pStringPool, pValidator, fContentSpecOrgURI);
               delete cm;
           }
   
  
  
  
  1.12      +3 -2      xml-xerces/c/src/validators/schema/ComplexTypeInfo.hpp
  
  Index: ComplexTypeInfo.hpp
  ===================================================================
  RCS file: /home/cvs/xml-xerces/c/src/validators/schema/ComplexTypeInfo.hpp,v
  retrieving revision 1.11
  retrieving revision 1.12
  diff -u -r1.11 -r1.12
  --- ComplexTypeInfo.hpp	2001/11/15 17:10:19	1.11
  +++ ComplexTypeInfo.hpp	2001/11/21 14:30:13	1.12
  @@ -55,7 +55,7 @@
    */
   
   /*
  - * $Id: ComplexTypeInfo.hpp,v 1.11 2001/11/15 17:10:19 knoaman Exp $
  + * $Id: ComplexTypeInfo.hpp,v 1.12 2001/11/21 14:30:13 knoaman Exp $
    */
   
   #if !defined(COMPLEXTYPEINFO_HPP)
  @@ -168,7 +168,8 @@
       bool resetDefs();
       void checkUniqueParticleAttribution
       (
  -        GrammarResolver*  const pGrammarResolver
  +        SchemaGrammar*    const pGrammar
  +      , GrammarResolver*  const pGrammarResolver
         , XMLStringPool*    const pStringPool
         , XMLValidator*     const pValidator
       ) ;
  
  
  
  1.25      +4 -1      xml-xerces/c/src/validators/schema/SchemaValidator.cpp
  
  Index: SchemaValidator.cpp
  ===================================================================
  RCS file: /home/cvs/xml-xerces/c/src/validators/schema/SchemaValidator.cpp,v
  retrieving revision 1.24
  retrieving revision 1.25
  diff -u -r1.24 -r1.25
  --- SchemaValidator.cpp	2001/11/20 20:32:52	1.24
  +++ SchemaValidator.cpp	2001/11/21 14:30:13	1.25
  @@ -56,6 +56,9 @@
   
   /*
    * $Log: SchemaValidator.cpp,v $
  + * Revision 1.25  2001/11/21 14:30:13  knoaman
  + * Fix for UPA checking.
  + *
    * Revision 1.24  2001/11/20 20:32:52  knoaman
    * Bypass validating element's simple content if it's empty and element is nillable.
    *
  @@ -771,7 +774,7 @@
               while (complexTypeEnum.hasMoreElements())
               {
                   ComplexTypeInfo& curTypeInfo = complexTypeEnum.nextElement();
  -                curTypeInfo.checkUniqueParticleAttribution(fGrammarResolver, getScanner()->getURIStringPool(), this);
  +                curTypeInfo.checkUniqueParticleAttribution(&sGrammar, fGrammarResolver, getScanner()->getURIStringPool(), this);
               }
           }
       }
  
  
  
  1.10      +7 -17     xml-xerces/c/src/validators/schema/SubstitutionGroupComparator.cpp
  
  Index: SubstitutionGroupComparator.cpp
  ===================================================================
  RCS file: /home/cvs/xml-xerces/c/src/validators/schema/SubstitutionGroupComparator.cpp,v
  retrieving revision 1.9
  retrieving revision 1.10
  diff -u -r1.9 -r1.10
  --- SubstitutionGroupComparator.cpp	2001/11/07 21:50:28	1.9
  +++ SubstitutionGroupComparator.cpp	2001/11/21 14:30:13	1.10
  @@ -56,6 +56,9 @@
   
   /*
    * $Log: SubstitutionGroupComparator.cpp,v $
  + * Revision 1.10  2001/11/21 14:30:13  knoaman
  + * Fix for UPA checking.
  + *
    * Revision 1.9  2001/11/07 21:50:28  tng
    * Fix comment log that lead to error.
    *
  @@ -225,7 +228,9 @@
   }
   
   
  -bool SubstitutionGroupComparator::isAllowedByWildcard(QName* const element, unsigned int wuri, bool wother)
  +bool SubstitutionGroupComparator::isAllowedByWildcard(SchemaGrammar* const pGrammar,
  +                                                      QName* const element,
  +                                                      unsigned int wuri, bool wother)
   {
       // whether the uri is allowed directly by the wildcard
       unsigned int uriId = element->getURI();
  @@ -236,23 +241,8 @@
           return true;
       }
   
  -    if (fGrammarResolver == 0 || fStringPool == 0)
  -         ThrowXML(RuntimeException, XMLExcepts::SubGrpComparator_NGR);
  -
  -    // get the corresponding grammar
  -    const XMLCh* uri = fStringPool->getValueForId(uriId);
  -    if(uri == 0)
  -        return false;
  -
  -    SchemaGrammar *sGrammar = (SchemaGrammar*) fGrammarResolver->getGrammar(uri);
  -    if (!sGrammar || sGrammar->getGrammarType() == Grammar::DTDGrammarType)
  -        return false;
  -
  -    if(sGrammar == 0)
  -        return false;
  -
       // get all elements that can substitute the current element
  -    RefHash2KeysTableOf<ElemVector>* theValidSubstitutionGroups = sGrammar->getValidSubstitutionGroups();
  +    RefHash2KeysTableOf<ElemVector>* theValidSubstitutionGroups = pGrammar->getValidSubstitutionGroups();
   
       if (!theValidSubstitutionGroups)
           return false;
  
  
  
  1.6       +5 -2      xml-xerces/c/src/validators/schema/SubstitutionGroupComparator.hpp
  
  Index: SubstitutionGroupComparator.hpp
  ===================================================================
  RCS file: /home/cvs/xml-xerces/c/src/validators/schema/SubstitutionGroupComparator.hpp,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- SubstitutionGroupComparator.hpp	2001/08/21 15:57:51	1.5
  +++ SubstitutionGroupComparator.hpp	2001/11/21 14:30:13	1.6
  @@ -55,7 +55,7 @@
    */
   
   /*
  - * $Id: SubstitutionGroupComparator.hpp,v 1.5 2001/08/21 15:57:51 tng Exp $
  + * $Id: SubstitutionGroupComparator.hpp,v 1.6 2001/11/21 14:30:13 knoaman Exp $
    */
   
   #if !defined(SUBSTITUTIONGROUPCOMPARATOR_HPP)
  @@ -65,6 +65,8 @@
   #include <util/QName.hpp>
   #include <validators/common/GrammarResolver.hpp>
   
  +class SchemaGrammar;
  +
   class VALIDATORS_EXPORT SubstitutionGroupComparator
   {
   public:
  @@ -112,13 +114,14 @@
        * check whether one element or any element in its substitution group
        * is allowed by a given wildcard uri
        *
  +     * @param pGrammar the grammar where the wildcard is declared
        * @param element  the QName of a given element
        * @param wuri     the uri of the wildcard
        * @param wother   whether the uri is from ##other, so wuri is excluded
        *
        * @return whether the element is allowed by the wildcard
        */
  -    bool isAllowedByWildcard(QName* const element, unsigned int wuri, bool wother);
  +    bool isAllowedByWildcard(SchemaGrammar* const pGrammar, QName* const element, unsigned int wuri, bool wother);
   
   protected:
   
  
  
  
  1.3       +11 -6     xml-xerces/c/src/validators/schema/XercesElementWildcard.cpp
  
  Index: XercesElementWildcard.cpp
  ===================================================================
  RCS file: /home/cvs/xml-xerces/c/src/validators/schema/XercesElementWildcard.cpp,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- XercesElementWildcard.cpp	2001/08/22 16:58:27	1.2
  +++ XercesElementWildcard.cpp	2001/11/21 14:30:13	1.3
  @@ -56,6 +56,9 @@
   
   /*
    * $Log: XercesElementWildcard.cpp,v $
  + * Revision 1.3  2001/11/21 14:30:13  knoaman
  + * Fix for UPA checking.
  + *
    * Revision 1.2  2001/08/22 16:58:27  tng
    * typo: the type should be t1/t2, not w1/w2.
    *
  @@ -81,7 +84,8 @@
   /**
    * Check whether two element declarations conflict
    */
  -bool XercesElementWildcard::conflict(ContentSpecNode::NodeTypes   type1,
  +bool XercesElementWildcard::conflict(SchemaGrammar* const pGrammar,
  +                                     ContentSpecNode::NodeTypes   type1,
                                        QName*                       q1,
                                        ContentSpecNode::NodeTypes   type2,
                                        QName*                       q2,
  @@ -93,10 +97,10 @@
               return true;
       }
       else if (type1 == ContentSpecNode::Leaf) {
  -        return uriInWildcard(q1, q2->getURI(), type2, comparator);
  +        return uriInWildcard(pGrammar, q1, q2->getURI(), type2, comparator);
       }
       else if (type2 == ContentSpecNode::Leaf) {
  -        return uriInWildcard(q2, q1->getURI(), type1, comparator);
  +        return uriInWildcard(pGrammar, q2, q1->getURI(), type1, comparator);
       }
       else {
           return wildcardIntersect(type1, q1->getURI(), type2, q2->getURI());
  @@ -104,7 +108,8 @@
       return false;
   }
   
  -bool XercesElementWildcard::uriInWildcard(QName*                       qname,
  +bool XercesElementWildcard::uriInWildcard(SchemaGrammar* const         pGrammar,
  +                                          QName*                       qname,
                                             unsigned int                 wildcard,
                                             ContentSpecNode::NodeTypes   wtype,
                                             SubstitutionGroupComparator* comparator)
  @@ -114,11 +119,11 @@
       }
       else if ((wtype & 0x0f)== ContentSpecNode::Any_NS) {
           // substitution of "uri" satisfies "wtype:wildcard"
  -        return comparator->isAllowedByWildcard(qname, wildcard, false);
  +        return comparator->isAllowedByWildcard(pGrammar, qname, wildcard, false);
       }
       else if ((wtype & 0x0f)== ContentSpecNode::Any_Other) {
           // substitution of "uri" satisfies "wtype:wildcard"
  -        return comparator->isAllowedByWildcard(qname, wildcard, true);
  +        return comparator->isAllowedByWildcard(pGrammar, qname, wildcard, true);
       }
   
       return false;
  
  
  
  1.2       +14 -3     xml-xerces/c/src/validators/schema/XercesElementWildcard.hpp
  
  Index: XercesElementWildcard.hpp
  ===================================================================
  RCS file: /home/cvs/xml-xerces/c/src/validators/schema/XercesElementWildcard.hpp,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- XercesElementWildcard.hpp	2001/08/21 15:58:42	1.1
  +++ XercesElementWildcard.hpp	2001/11/21 14:30:13	1.2
  @@ -56,6 +56,9 @@
   
   /*
    * $Log: XercesElementWildcard.hpp,v $
  + * Revision 1.2  2001/11/21 14:30:13  knoaman
  + * Fix for UPA checking.
  + *
    * Revision 1.1  2001/08/21 15:58:42  tng
    * Schema: New files XercesElementWildCard.
    *
  @@ -70,6 +73,12 @@
   #include <validators/common/ContentSpecNode.hpp>
   #include <validators/schema/SubstitutionGroupComparator.hpp>
   
  +// ---------------------------------------------------------------------------
  +//  Forward declarations
  +// ---------------------------------------------------------------------------
  +class SchemaGrammar;
  +
  +
   class VALIDATORS_EXPORT XercesElementWildcard
   {
   
  @@ -81,7 +90,8 @@
       /*
        * check whether two elements are in conflict
        */
  -    static bool conflict(ContentSpecNode::NodeTypes   type1,
  +    static bool conflict(SchemaGrammar* const         pGrammar,
  +                         ContentSpecNode::NodeTypes   type1,
                            QName*                       q1,
                            ContentSpecNode::NodeTypes   type2,
                            QName*                       q2,
  @@ -92,7 +102,8 @@
       // -----------------------------------------------------------------------
       //  private helper methods
       // -----------------------------------------------------------------------
  -    static bool uriInWildcard(QName*                       qname,
  +    static bool uriInWildcard(SchemaGrammar* const         pGrammar,
  +                              QName*                       qname,
                                 unsigned int                 wildcard,
                                 ContentSpecNode::NodeTypes   wtype,
                                 SubstitutionGroupComparator* comparator);
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: xerces-cvs-unsubscribe@xml.apache.org
For additional commands, e-mail: xerces-cvs-help@xml.apache.org