mrglavas    2004/11/09 15:35:51

  Modified:    java/src/org/apache/xerces/impl/xs SchemaGrammar.java
  Log:
  Some clean-up from previous commit. Also, changed the size of the SymbolHash
  so that all of the element declarations hash to unique locations.
  
  Revision  Changes    Path
  1.41      +8 -12     
xml-xerces/java/src/org/apache/xerces/impl/xs/SchemaGrammar.java
  
  Index: SchemaGrammar.java
  ===================================================================
  RCS file: 
/home/cvs/xml-xerces/java/src/org/apache/xerces/impl/xs/SchemaGrammar.java,v
  retrieving revision 1.40
  retrieving revision 1.41
  diff -u -r1.40 -r1.41
  --- SchemaGrammar.java        9 Nov 2004 21:13:06 -0000       1.40
  +++ SchemaGrammar.java        9 Nov 2004 23:35:51 -0000       1.41
  @@ -301,10 +301,11 @@
               fGrammarDescription.fContextType = 
XSDDescription.CONTEXT_PREPARSE;
               
fGrammarDescription.setNamespace(SchemaSymbols.URI_SCHEMAFORSCHEMA);
               
  -            // no global decls other than types
  +            // no global decls other than types and
  +            // element declarations for <annotation>, <documentation> and 
<appinfo>.
               fGlobalAttrDecls  = new SymbolHash(1);
               fGlobalAttrGrpDecls = new SymbolHash(1);
  -            fGlobalElemDecls = new SymbolHash(3);
  +            fGlobalElemDecls = new SymbolHash(6);
               fGlobalGroupDecls = new SymbolHash(1);
               fGlobalNotationDecls = new SymbolHash(1);
               fGlobalIDConstraintDecls = new SymbolHash(1);
  @@ -378,12 +379,10 @@
                   annotationAttrs.addAttributeUse(annotationIDAttr);
                   annotationAttrs.fAttributeWC = otherAttrs;
                   
  -                documentationAttrs = new XSAttributeGroupDecl();
                   documentationAttrs.addAttributeUse(documentationSourceAttr);
                   documentationAttrs.addAttributeUse(documentationLangAttr);
                   documentationAttrs.fAttributeWC = otherAttrs;
                   
  -                appinfoAttrs = new XSAttributeGroupDecl();
                   appinfoAttrs.addAttributeUse(appinfoSourceAttr);
                   appinfoAttrs.fAttributeWC = otherAttrs;
               }
  @@ -400,11 +399,8 @@
                   annotationParticle.fValue = annotationChoice;
               }
               
  -            // create particles for <documentation>
  -            XSParticleDecl documentationParticle = 
createUnboundedAnyWildcardSequenceParticle();
  -            
  -            // create particles for <appinfo>
  -            XSParticleDecl appinfoParticle = 
createUnboundedAnyWildcardSequenceParticle();
  +            // create wildcard particle for <documentation> and <appinfo>
  +            XSParticleDecl anyWCSequenceParticle = 
createUnboundedAnyWildcardSequenceParticle();
               
               // fill complex types
               annotationType.setValues("#AnonType_" + 
SchemaSymbols.ELT_ANNOTATION, fTargetNamespace, SchemaGrammar.fAnyType,
  @@ -415,13 +411,13 @@
               
               documentationType.setValues("#AnonType_" + 
SchemaSymbols.ELT_DOCUMENTATION, fTargetNamespace, SchemaGrammar.fAnyType,
                       XSConstants.DERIVATION_RESTRICTION, 
XSConstants.DERIVATION_NONE, (short) (XSConstants.DERIVATION_EXTENSION | 
XSConstants.DERIVATION_RESTRICTION),
  -                    XSComplexTypeDecl.CONTENTTYPE_MIXED, false, 
documentationAttrs, null, documentationParticle, new XSObjectListImpl(null, 0));
  +                    XSComplexTypeDecl.CONTENTTYPE_MIXED, false, 
documentationAttrs, null, anyWCSequenceParticle, new XSObjectListImpl(null, 0));
               documentationType.setName("#AnonType_" + 
SchemaSymbols.ELT_DOCUMENTATION);
               documentationType.setIsAnonymous();
               
               appinfoType.setValues("#AnonType_" + SchemaSymbols.ELT_APPINFO, 
fTargetNamespace, SchemaGrammar.fAnyType,
                       XSConstants.DERIVATION_RESTRICTION, 
XSConstants.DERIVATION_NONE, (short) (XSConstants.DERIVATION_EXTENSION | 
XSConstants.DERIVATION_RESTRICTION),
  -                    XSComplexTypeDecl.CONTENTTYPE_MIXED, false, 
appinfoAttrs, null, appinfoParticle, new XSObjectListImpl(null, 0));
  +                    XSComplexTypeDecl.CONTENTTYPE_MIXED, false, 
appinfoAttrs, null, anyWCSequenceParticle, new XSObjectListImpl(null, 0));
               appinfoType.setName("#AnonType_" + SchemaSymbols.ELT_APPINFO);
               appinfoType.setIsAnonymous();
               
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to