1 /*
   2  * Copyright (c) 1997, 2011, Oracle and/or its affiliates. All rights reserved.
   3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
   4  *
   5  * This code is free software; you can redistribute it and/or modify it
   6  * under the terms of the GNU General Public License version 2 only, as
   7  * published by the Free Software Foundation.  Oracle designates this
   8  * particular file as subject to the "Classpath" exception as provided
   9  * by Oracle in the LICENSE file that accompanied this code.
  10  *
  11  * This code is distributed in the hope that it will be useful, but WITHOUT
  12  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  13  * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
  14  * version 2 for more details (a copy is included in the LICENSE file that
  15  * accompanied this code).
  16  *
  17  * You should have received a copy of the GNU General Public License version
  18  * 2 along with this work; if not, write to the Free Software Foundation,
  19  * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
  20  *
  21  * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  22  * or visit www.oracle.com if you need additional information or have any
  23  * questions.
  24  */
  25 
  26 /* this file is generated by RelaxNGCC */
  27 package com.sun.xml.internal.xsom.impl.parser.state;
  28 import org.xml.sax.SAXException;
  29 import org.xml.sax.XMLReader;
  30 import org.xml.sax.Attributes;
  31 import com.sun.xml.internal.xsom.impl.parser.NGCCRuntimeEx;
  32 import javax.xml.parsers.SAXParserFactory;
  33 import org.xml.sax.XMLReader;
  34 
  35     import com.sun.xml.internal.xsom.*;
  36     import com.sun.xml.internal.xsom.parser.*;
  37     import com.sun.xml.internal.xsom.impl.*;
  38     import com.sun.xml.internal.xsom.impl.parser.*;
  39     import org.xml.sax.Locator;
  40     import org.xml.sax.ContentHandler;
  41     import org.xml.sax.helpers.*;
  42     import java.util.*;
  43     import java.math.BigInteger;
  44 
  45 
  46 
  47 public class Schema extends NGCCHandler {
  48     private Integer finalDefault;
  49     private boolean efd;
  50     private boolean afd;
  51     private Integer blockDefault;
  52     private ForeignAttributesImpl fa;
  53     private boolean includeMode;
  54     private AnnotationImpl anno;
  55     private ComplexTypeImpl ct;
  56     private ElementDecl e;
  57     private String defaultValue;
  58     private XSNotation notation;
  59     private AttGroupDeclImpl ag;
  60     private String fixedValue;
  61     private ModelGroupDeclImpl group;
  62     private AttributeDeclImpl ad;
  63     private SimpleTypeImpl st;
  64     private String expectedNamespace;
  65     protected final NGCCRuntimeEx $runtime;
  66     private int $_ngcc_current_state;
  67     protected String $uri;
  68     protected String $localName;
  69     protected String $qname;
  70 
  71     public final NGCCRuntime getRuntime() {
  72         return($runtime);
  73     }
  74 
  75     public Schema(NGCCHandler parent, NGCCEventSource source, NGCCRuntimeEx runtime, int cookie, boolean _includeMode, String _expectedNamespace) {
  76         super(source, parent, cookie);
  77         $runtime = runtime;
  78         this.includeMode = _includeMode;
  79         this.expectedNamespace = _expectedNamespace;
  80         $_ngcc_current_state = 57;
  81     }
  82 
  83     public Schema(NGCCRuntimeEx runtime, boolean _includeMode, String _expectedNamespace) {
  84         this(null, runtime, runtime, -1, _includeMode, _expectedNamespace);
  85     }
  86 
  87     private void action0()throws SAXException {
  88         $runtime.checkDoubleDefError( $runtime.currentSchema.getAttGroupDecl(ag.getName()) );
  89             $runtime.currentSchema.addAttGroupDecl(ag,false);
  90 }
  91 
  92     private void action1()throws SAXException {
  93         $runtime.currentSchema.addNotation(notation);
  94 }
  95 
  96     private void action2()throws SAXException {
  97         $runtime.checkDoubleDefError( $runtime.currentSchema.getModelGroupDecl(group.getName()) );
  98             $runtime.currentSchema.addModelGroupDecl(group,false);
  99 }
 100 
 101     private void action3()throws SAXException {
 102         $runtime.checkDoubleDefError( $runtime.currentSchema.getAttributeDecl(ad.getName()) );
 103             $runtime.currentSchema.addAttributeDecl(ad);
 104 }
 105 
 106     private void action4()throws SAXException {
 107         locator = $runtime.copyLocator();
 108             defaultValue = null;
 109             fixedValue = null;
 110 }
 111 
 112     private void action5()throws SAXException {
 113         $runtime.checkDoubleDefError( $runtime.currentSchema.getType(ct.getName()) );
 114             $runtime.currentSchema.addComplexType(ct,false);
 115 }
 116 
 117     private void action6()throws SAXException {
 118         $runtime.checkDoubleDefError( $runtime.currentSchema.getType(st.getName()) );
 119             $runtime.currentSchema.addSimpleType(st,false);
 120 }
 121 
 122     private void action7()throws SAXException {
 123         $runtime.checkDoubleDefError( $runtime.currentSchema.getElementDecl(e.getName()) );
 124             $runtime.currentSchema.addElementDecl(e);
 125 }
 126 
 127     private void action8()throws SAXException {
 128         locator = $runtime.copyLocator();
 129 }
 130 
 131     private void action9()throws SAXException {
 132         $runtime.currentSchema.setAnnotation(anno);
 133 }
 134 
 135     private void action10()throws SAXException {
 136         $runtime.currentSchema.addForeignAttributes(fa);
 137 }
 138 
 139     private void action11()throws SAXException {
 140         $runtime.finalDefault=this.finalDefault.intValue();
 141 }
 142 
 143     private void action12()throws SAXException {
 144         $runtime.blockDefault=this.blockDefault.intValue();
 145 }
 146 
 147     private void action13()throws SAXException {
 148         $runtime.elementFormDefault = efd;
 149 }
 150 
 151     private void action14()throws SAXException {
 152         $runtime.attributeFormDefault = afd;
 153 }
 154 
 155     private void action15()throws SAXException {
 156         Attributes test = $runtime.getCurrentAttributes();
 157         String tns = test.getValue("targetNamespace");
 158 
 159       if(!includeMode) {
 160         // importing
 161         if(tns==null) tns=""; // if not present, then the empty namespace
 162         $runtime.currentSchema = $runtime.parser.schemaSet.createSchema(tns,$runtime.copyLocator());
 163         if(expectedNamespace!=null && !expectedNamespace.equals(tns)) {
 164           $runtime.reportError(
 165             Messages.format("UnexpectedTargetnamespace.Import", tns, expectedNamespace, tns ),
 166             $runtime.getLocator());
 167         }
 168       } else {
 169         // including
 170 
 171         // check the consistency of @targetNamespace.
 172         // @targetNamespace must be null or equal to the target namespace of the schema
 173         if(tns!=null && expectedNamespace!=null && !expectedNamespace.equals(tns)) {
 174           $runtime.reportError(
 175             Messages.format("UnexpectedTargetnamespace.Include", tns, expectedNamespace, tns ) );
 176         }
 177         $runtime.chameleonMode = true;
 178       }
 179 
 180       // multiple inclusion test.
 181       if( $runtime.hasAlreadyBeenRead() ) {
 182           // skip this document
 183           $runtime.redirectSubtree(new DefaultHandler(),"","","" );
 184           return;
 185       }
 186 
 187       anno = (AnnotationImpl)$runtime.currentSchema.getAnnotation();
 188       $runtime.blockDefault = 0;
 189       $runtime.finalDefault = 0;
 190 }
 191 
 192     public void enterElement(String $__uri, String $__local, String $__qname, Attributes $attrs) throws SAXException {
 193         int $ai;
 194         $uri = $__uri;
 195         $localName = $__local;
 196         $qname = $__qname;
 197         switch($_ngcc_current_state) {
 198         case 12:
 199             {
 200                 if(($ai = $runtime.getAttributeIndex("","fixed"))>=0) {
 201                     $runtime.consumeAttribute($ai);
 202                     $runtime.sendEnterElement(super._cookie, $__uri, $__local, $__qname, $attrs);
 203                 }
 204                 else {
 205                     $_ngcc_current_state = 11;
 206                     $runtime.sendEnterElement(super._cookie, $__uri, $__local, $__qname, $attrs);
 207                 }
 208             }
 209             break;
 210         case 36:
 211             {
 212                 if((($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("element")) || (($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("annotation")) || (($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("attributeGroup")) || (($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("simpleType")) || (($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("attribute")) || (($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("redefine")) || (($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("notation")) || (($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("group")) || (($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("complexType")) || (($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("import")) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("include"))))))))))))) {
 213                     NGCCHandler h = new foreignAttributes(this, super._source, $runtime, 374, null);
 214                     spawnChildFromEnterElement(h, $__uri, $__local, $__qname, $attrs);
 215                 }
 216                 else {
 217                     unexpectedEnterElement($__qname);
 218                 }
 219             }
 220             break;
 221         case 1:
 222             {
 223                 if(($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("annotation"))) {
 224                     NGCCHandler h = new annotation(this, super._source, $runtime, 351, anno,AnnotationContext.SCHEMA);
 225                     spawnChildFromEnterElement(h, $__uri, $__local, $__qname, $attrs);
 226                 }
 227                 else {
 228                     if(($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("include"))) {
 229                         NGCCHandler h = new includeDecl(this, super._source, $runtime, 352);
 230                         spawnChildFromEnterElement(h, $__uri, $__local, $__qname, $attrs);
 231                     }
 232                     else {
 233                         if(($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("import"))) {
 234                             NGCCHandler h = new importDecl(this, super._source, $runtime, 353);
 235                             spawnChildFromEnterElement(h, $__uri, $__local, $__qname, $attrs);
 236                         }
 237                         else {
 238                             if(($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("redefine"))) {
 239                                 NGCCHandler h = new redefine(this, super._source, $runtime, 354);
 240                                 spawnChildFromEnterElement(h, $__uri, $__local, $__qname, $attrs);
 241                             }
 242                             else {
 243                                 if(($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("element"))) {
 244                                     $runtime.onEnterElementConsumed($__uri, $__local, $__qname, $attrs);
 245                                     action8();
 246                                     $_ngcc_current_state = 27;
 247                                 }
 248                                 else {
 249                                     if(($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("simpleType"))) {
 250                                         NGCCHandler h = new simpleType(this, super._source, $runtime, 356);
 251                                         spawnChildFromEnterElement(h, $__uri, $__local, $__qname, $attrs);
 252                                     }
 253                                     else {
 254                                         if(($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("complexType"))) {
 255                                             NGCCHandler h = new complexType(this, super._source, $runtime, 357);
 256                                             spawnChildFromEnterElement(h, $__uri, $__local, $__qname, $attrs);
 257                                         }
 258                                         else {
 259                                             if(($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("attribute"))) {
 260                                                 $runtime.onEnterElementConsumed($__uri, $__local, $__qname, $attrs);
 261                                                 action4();
 262                                                 $_ngcc_current_state = 16;
 263                                             }
 264                                             else {
 265                                                 if(($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("group"))) {
 266                                                     NGCCHandler h = new group(this, super._source, $runtime, 359);
 267                                                     spawnChildFromEnterElement(h, $__uri, $__local, $__qname, $attrs);
 268                                                 }
 269                                                 else {
 270                                                     if(($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("notation"))) {
 271                                                         NGCCHandler h = new notation(this, super._source, $runtime, 360);
 272                                                         spawnChildFromEnterElement(h, $__uri, $__local, $__qname, $attrs);
 273                                                     }
 274                                                     else {
 275                                                         if(($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("attributeGroup"))) {
 276                                                             NGCCHandler h = new attributeGroupDecl(this, super._source, $runtime, 361);
 277                                                             spawnChildFromEnterElement(h, $__uri, $__local, $__qname, $attrs);
 278                                                         }
 279                                                         else {
 280                                                             unexpectedEnterElement($__qname);
 281                                                         }
 282                                                     }
 283                                                 }
 284                                             }
 285                                         }
 286                                     }
 287                                 }
 288                             }
 289                         }
 290                     }
 291                 }
 292             }
 293             break;
 294         case 0:
 295             {
 296                 revertToParentFromEnterElement(this, super._cookie, $__uri, $__local, $__qname, $attrs);
 297             }
 298             break;
 299         case 53:
 300             {
 301                 if(($ai = $runtime.getAttributeIndex("","targetNamespace"))>=0) {
 302                     $runtime.consumeAttribute($ai);
 303                     $runtime.sendEnterElement(super._cookie, $__uri, $__local, $__qname, $attrs);
 304                 }
 305                 else {
 306                     $_ngcc_current_state = 49;
 307                     $runtime.sendEnterElement(super._cookie, $__uri, $__local, $__qname, $attrs);
 308                 }
 309             }
 310             break;
 311         case 41:
 312             {
 313                 if(($ai = $runtime.getAttributeIndex("","blockDefault"))>=0) {
 314                     $runtime.consumeAttribute($ai);
 315                     $runtime.sendEnterElement(super._cookie, $__uri, $__local, $__qname, $attrs);
 316                 }
 317                 else {
 318                     $_ngcc_current_state = 37;
 319                     $runtime.sendEnterElement(super._cookie, $__uri, $__local, $__qname, $attrs);
 320                 }
 321             }
 322             break;
 323         case 37:
 324             {
 325                 if(($ai = $runtime.getAttributeIndex("","finalDefault"))>=0) {
 326                     $runtime.consumeAttribute($ai);
 327                     $runtime.sendEnterElement(super._cookie, $__uri, $__local, $__qname, $attrs);
 328                 }
 329                 else {
 330                     $_ngcc_current_state = 36;
 331                     $runtime.sendEnterElement(super._cookie, $__uri, $__local, $__qname, $attrs);
 332                 }
 333             }
 334             break;
 335         case 2:
 336             {
 337                 if(($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("annotation"))) {
 338                     NGCCHandler h = new annotation(this, super._source, $runtime, 362, anno,AnnotationContext.SCHEMA);
 339                     spawnChildFromEnterElement(h, $__uri, $__local, $__qname, $attrs);
 340                 }
 341                 else {
 342                     if(($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("include"))) {
 343                         NGCCHandler h = new includeDecl(this, super._source, $runtime, 363);
 344                         spawnChildFromEnterElement(h, $__uri, $__local, $__qname, $attrs);
 345                     }
 346                     else {
 347                         if(($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("import"))) {
 348                             NGCCHandler h = new importDecl(this, super._source, $runtime, 364);
 349                             spawnChildFromEnterElement(h, $__uri, $__local, $__qname, $attrs);
 350                         }
 351                         else {
 352                             if(($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("redefine"))) {
 353                                 NGCCHandler h = new redefine(this, super._source, $runtime, 365);
 354                                 spawnChildFromEnterElement(h, $__uri, $__local, $__qname, $attrs);
 355                             }
 356                             else {
 357                                 if(($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("element"))) {
 358                                     $runtime.onEnterElementConsumed($__uri, $__local, $__qname, $attrs);
 359                                     action8();
 360                                     $_ngcc_current_state = 27;
 361                                 }
 362                                 else {
 363                                     if(($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("simpleType"))) {
 364                                         NGCCHandler h = new simpleType(this, super._source, $runtime, 367);
 365                                         spawnChildFromEnterElement(h, $__uri, $__local, $__qname, $attrs);
 366                                     }
 367                                     else {
 368                                         if(($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("complexType"))) {
 369                                             NGCCHandler h = new complexType(this, super._source, $runtime, 368);
 370                                             spawnChildFromEnterElement(h, $__uri, $__local, $__qname, $attrs);
 371                                         }
 372                                         else {
 373                                             if(($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("attribute"))) {
 374                                                 $runtime.onEnterElementConsumed($__uri, $__local, $__qname, $attrs);
 375                                                 action4();
 376                                                 $_ngcc_current_state = 16;
 377                                             }
 378                                             else {
 379                                                 if(($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("group"))) {
 380                                                     NGCCHandler h = new group(this, super._source, $runtime, 370);
 381                                                     spawnChildFromEnterElement(h, $__uri, $__local, $__qname, $attrs);
 382                                                 }
 383                                                 else {
 384                                                     if(($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("notation"))) {
 385                                                         NGCCHandler h = new notation(this, super._source, $runtime, 371);
 386                                                         spawnChildFromEnterElement(h, $__uri, $__local, $__qname, $attrs);
 387                                                     }
 388                                                     else {
 389                                                         if(($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("attributeGroup"))) {
 390                                                             NGCCHandler h = new attributeGroupDecl(this, super._source, $runtime, 372);
 391                                                             spawnChildFromEnterElement(h, $__uri, $__local, $__qname, $attrs);
 392                                                         }
 393                                                         else {
 394                                                             $_ngcc_current_state = 1;
 395                                                             $runtime.sendEnterElement(super._cookie, $__uri, $__local, $__qname, $attrs);
 396                                                         }
 397                                                     }
 398                                                 }
 399                                             }
 400                                         }
 401                                     }
 402                                 }
 403                             }
 404                         }
 405                     }
 406                 }
 407             }
 408             break;
 409         case 45:
 410             {
 411                 if(($ai = $runtime.getAttributeIndex("","elementFormDefault"))>=0) {
 412                     $runtime.consumeAttribute($ai);
 413                     $runtime.sendEnterElement(super._cookie, $__uri, $__local, $__qname, $attrs);
 414                 }
 415                 else {
 416                     $_ngcc_current_state = 41;
 417                     $runtime.sendEnterElement(super._cookie, $__uri, $__local, $__qname, $attrs);
 418                 }
 419             }
 420             break;
 421         case 57:
 422             {
 423                 if(($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("schema"))) {
 424                     $runtime.onEnterElementConsumed($__uri, $__local, $__qname, $attrs);
 425                     action15();
 426                     $_ngcc_current_state = 53;
 427                 }
 428                 else {
 429                     unexpectedEnterElement($__qname);
 430                 }
 431             }
 432             break;
 433         case 27:
 434             {
 435                 if((($ai = $runtime.getAttributeIndex("","name"))>=0 || (($ai = $runtime.getAttributeIndex("","final"))>=0 || (($ai = $runtime.getAttributeIndex("","form"))>=0 || (($ai = $runtime.getAttributeIndex("","block"))>=0 || (($ai = $runtime.getAttributeIndex("","fixed"))>=0 || (($ai = $runtime.getAttributeIndex("","default"))>=0 || ($ai = $runtime.getAttributeIndex("","abstract"))>=0))))))) {
 436                     NGCCHandler h = new elementDeclBody(this, super._source, $runtime, 286, locator,true);
 437                     spawnChildFromEnterElement(h, $__uri, $__local, $__qname, $attrs);
 438                 }
 439                 else {
 440                     unexpectedEnterElement($__qname);
 441                 }
 442             }
 443             break;
 444         case 11:
 445             {
 446                 if((($ai = $runtime.getAttributeIndex("","form"))>=0 || ($ai = $runtime.getAttributeIndex("","name"))>=0)) {
 447                     NGCCHandler h = new attributeDeclBody(this, super._source, $runtime, 268, locator,false,defaultValue,fixedValue);
 448                     spawnChildFromEnterElement(h, $__uri, $__local, $__qname, $attrs);
 449                 }
 450                 else {
 451                     unexpectedEnterElement($__qname);
 452                 }
 453             }
 454             break;
 455         case 49:
 456             {
 457                 if(($ai = $runtime.getAttributeIndex("","attributeFormDefault"))>=0) {
 458                     $runtime.consumeAttribute($ai);
 459                     $runtime.sendEnterElement(super._cookie, $__uri, $__local, $__qname, $attrs);
 460                 }
 461                 else {
 462                     $_ngcc_current_state = 45;
 463                     $runtime.sendEnterElement(super._cookie, $__uri, $__local, $__qname, $attrs);
 464                 }
 465             }
 466             break;
 467         case 16:
 468             {
 469                 if(($ai = $runtime.getAttributeIndex("","default"))>=0) {
 470                     $runtime.consumeAttribute($ai);
 471                     $runtime.sendEnterElement(super._cookie, $__uri, $__local, $__qname, $attrs);
 472                 }
 473                 else {
 474                     $_ngcc_current_state = 12;
 475                     $runtime.sendEnterElement(super._cookie, $__uri, $__local, $__qname, $attrs);
 476                 }
 477             }
 478             break;
 479         default:
 480             {
 481                 unexpectedEnterElement($__qname);
 482             }
 483             break;
 484         }
 485     }
 486 
 487     public void leaveElement(String $__uri, String $__local, String $__qname) throws SAXException {
 488         int $ai;
 489         $uri = $__uri;
 490         $localName = $__local;
 491         $qname = $__qname;
 492         switch($_ngcc_current_state) {
 493         case 12:
 494             {
 495                 if(($ai = $runtime.getAttributeIndex("","fixed"))>=0) {
 496                     $runtime.consumeAttribute($ai);
 497                     $runtime.sendLeaveElement(super._cookie, $__uri, $__local, $__qname);
 498                 }
 499                 else {
 500                     $_ngcc_current_state = 11;
 501                     $runtime.sendLeaveElement(super._cookie, $__uri, $__local, $__qname);
 502                 }
 503             }
 504             break;
 505         case 36:
 506             {
 507                 if(($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("schema"))) {
 508                     NGCCHandler h = new foreignAttributes(this, super._source, $runtime, 374, null);
 509                     spawnChildFromLeaveElement(h, $__uri, $__local, $__qname);
 510                 }
 511                 else {
 512                     unexpectedLeaveElement($__qname);
 513                 }
 514             }
 515             break;
 516         case 1:
 517             {
 518                 if(($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("schema"))) {
 519                     $runtime.onLeaveElementConsumed($__uri, $__local, $__qname);
 520                     $_ngcc_current_state = 0;
 521                 }
 522                 else {
 523                     unexpectedLeaveElement($__qname);
 524                 }
 525             }
 526             break;
 527         case 0:
 528             {
 529                 revertToParentFromLeaveElement(this, super._cookie, $__uri, $__local, $__qname);
 530             }
 531             break;
 532         case 53:
 533             {
 534                 if(($ai = $runtime.getAttributeIndex("","targetNamespace"))>=0) {
 535                     $runtime.consumeAttribute($ai);
 536                     $runtime.sendLeaveElement(super._cookie, $__uri, $__local, $__qname);
 537                 }
 538                 else {
 539                     $_ngcc_current_state = 49;
 540                     $runtime.sendLeaveElement(super._cookie, $__uri, $__local, $__qname);
 541                 }
 542             }
 543             break;
 544         case 10:
 545             {
 546                 if(($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("attribute"))) {
 547                     $runtime.onLeaveElementConsumed($__uri, $__local, $__qname);
 548                     $_ngcc_current_state = 1;
 549                 }
 550                 else {
 551                     unexpectedLeaveElement($__qname);
 552                 }
 553             }
 554             break;
 555         case 41:
 556             {
 557                 if(($ai = $runtime.getAttributeIndex("","blockDefault"))>=0) {
 558                     $runtime.consumeAttribute($ai);
 559                     $runtime.sendLeaveElement(super._cookie, $__uri, $__local, $__qname);
 560                 }
 561                 else {
 562                     $_ngcc_current_state = 37;
 563                     $runtime.sendLeaveElement(super._cookie, $__uri, $__local, $__qname);
 564                 }
 565             }
 566             break;
 567         case 45:
 568             {
 569                 if(($ai = $runtime.getAttributeIndex("","elementFormDefault"))>=0) {
 570                     $runtime.consumeAttribute($ai);
 571                     $runtime.sendLeaveElement(super._cookie, $__uri, $__local, $__qname);
 572                 }
 573                 else {
 574                     $_ngcc_current_state = 41;
 575                     $runtime.sendLeaveElement(super._cookie, $__uri, $__local, $__qname);
 576                 }
 577             }
 578             break;
 579         case 37:
 580             {
 581                 if(($ai = $runtime.getAttributeIndex("","finalDefault"))>=0) {
 582                     $runtime.consumeAttribute($ai);
 583                     $runtime.sendLeaveElement(super._cookie, $__uri, $__local, $__qname);
 584                 }
 585                 else {
 586                     $_ngcc_current_state = 36;
 587                     $runtime.sendLeaveElement(super._cookie, $__uri, $__local, $__qname);
 588                 }
 589             }
 590             break;
 591         case 2:
 592             {
 593                 $_ngcc_current_state = 1;
 594                 $runtime.sendLeaveElement(super._cookie, $__uri, $__local, $__qname);
 595             }
 596             break;
 597         case 27:
 598             {
 599                 if(((($ai = $runtime.getAttributeIndex("","name"))>=0 && ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("element"))) || ((($ai = $runtime.getAttributeIndex("","final"))>=0 && ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("element"))) || ((($ai = $runtime.getAttributeIndex("","form"))>=0 && ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("element"))) || ((($ai = $runtime.getAttributeIndex("","block"))>=0 && ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("element"))) || ((($ai = $runtime.getAttributeIndex("","fixed"))>=0 && ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("element"))) || ((($ai = $runtime.getAttributeIndex("","default"))>=0 && ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("element"))) || (($ai = $runtime.getAttributeIndex("","abstract"))>=0 && ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("element")))))))))) {
 600                     NGCCHandler h = new elementDeclBody(this, super._source, $runtime, 286, locator,true);
 601                     spawnChildFromLeaveElement(h, $__uri, $__local, $__qname);
 602                 }
 603                 else {
 604                     unexpectedLeaveElement($__qname);
 605                 }
 606             }
 607             break;
 608         case 11:
 609             {
 610                 if(((($ai = $runtime.getAttributeIndex("","form"))>=0 && ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("attribute"))) || (($ai = $runtime.getAttributeIndex("","name"))>=0 && ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("attribute"))))) {
 611                     NGCCHandler h = new attributeDeclBody(this, super._source, $runtime, 268, locator,false,defaultValue,fixedValue);
 612                     spawnChildFromLeaveElement(h, $__uri, $__local, $__qname);
 613                 }
 614                 else {
 615                     unexpectedLeaveElement($__qname);
 616                 }
 617             }
 618             break;
 619         case 26:
 620             {
 621                 if(($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("element"))) {
 622                     $runtime.onLeaveElementConsumed($__uri, $__local, $__qname);
 623                     $_ngcc_current_state = 1;
 624                 }
 625                 else {
 626                     unexpectedLeaveElement($__qname);
 627                 }
 628             }
 629             break;
 630         case 49:
 631             {
 632                 if(($ai = $runtime.getAttributeIndex("","attributeFormDefault"))>=0) {
 633                     $runtime.consumeAttribute($ai);
 634                     $runtime.sendLeaveElement(super._cookie, $__uri, $__local, $__qname);
 635                 }
 636                 else {
 637                     $_ngcc_current_state = 45;
 638                     $runtime.sendLeaveElement(super._cookie, $__uri, $__local, $__qname);
 639                 }
 640             }
 641             break;
 642         case 16:
 643             {
 644                 if(($ai = $runtime.getAttributeIndex("","default"))>=0) {
 645                     $runtime.consumeAttribute($ai);
 646                     $runtime.sendLeaveElement(super._cookie, $__uri, $__local, $__qname);
 647                 }
 648                 else {
 649                     $_ngcc_current_state = 12;
 650                     $runtime.sendLeaveElement(super._cookie, $__uri, $__local, $__qname);
 651                 }
 652             }
 653             break;
 654         default:
 655             {
 656                 unexpectedLeaveElement($__qname);
 657             }
 658             break;
 659         }
 660     }
 661 
 662     public void enterAttribute(String $__uri, String $__local, String $__qname) throws SAXException {
 663         int $ai;
 664         $uri = $__uri;
 665         $localName = $__local;
 666         $qname = $__qname;
 667         switch($_ngcc_current_state) {
 668         case 12:
 669             {
 670                 if(($__uri.equals("") && $__local.equals("fixed"))) {
 671                     $_ngcc_current_state = 14;
 672                 }
 673                 else {
 674                     $_ngcc_current_state = 11;
 675                     $runtime.sendEnterAttribute(super._cookie, $__uri, $__local, $__qname);
 676                 }
 677             }
 678             break;
 679         case 0:
 680             {
 681                 revertToParentFromEnterAttribute(this, super._cookie, $__uri, $__local, $__qname);
 682             }
 683             break;
 684         case 27:
 685             {
 686                 if((($__uri.equals("") && $__local.equals("name")) || (($__uri.equals("") && $__local.equals("final")) || (($__uri.equals("") && $__local.equals("form")) || (($__uri.equals("") && $__local.equals("block")) || (($__uri.equals("") && $__local.equals("fixed")) || (($__uri.equals("") && $__local.equals("default")) || ($__uri.equals("") && $__local.equals("abstract"))))))))) {
 687                     NGCCHandler h = new elementDeclBody(this, super._source, $runtime, 286, locator,true);
 688                     spawnChildFromEnterAttribute(h, $__uri, $__local, $__qname);
 689                 }
 690                 else {
 691                     unexpectedEnterAttribute($__qname);
 692                 }
 693             }
 694             break;
 695         case 53:
 696             {
 697                 if(($__uri.equals("") && $__local.equals("targetNamespace"))) {
 698                     $_ngcc_current_state = 55;
 699                 }
 700                 else {
 701                     $_ngcc_current_state = 49;
 702                     $runtime.sendEnterAttribute(super._cookie, $__uri, $__local, $__qname);
 703                 }
 704             }
 705             break;
 706         case 11:
 707             {
 708                 if((($__uri.equals("") && $__local.equals("form")) || ($__uri.equals("") && $__local.equals("name")))) {
 709                     NGCCHandler h = new attributeDeclBody(this, super._source, $runtime, 268, locator,false,defaultValue,fixedValue);
 710                     spawnChildFromEnterAttribute(h, $__uri, $__local, $__qname);
 711                 }
 712                 else {
 713                     unexpectedEnterAttribute($__qname);
 714                 }
 715             }
 716             break;
 717         case 41:
 718             {
 719                 if(($__uri.equals("") && $__local.equals("blockDefault"))) {
 720                     $_ngcc_current_state = 43;
 721                 }
 722                 else {
 723                     $_ngcc_current_state = 37;
 724                     $runtime.sendEnterAttribute(super._cookie, $__uri, $__local, $__qname);
 725                 }
 726             }
 727             break;
 728         case 49:
 729             {
 730                 if(($__uri.equals("") && $__local.equals("attributeFormDefault"))) {
 731                     $_ngcc_current_state = 51;
 732                 }
 733                 else {
 734                     $_ngcc_current_state = 45;
 735                     $runtime.sendEnterAttribute(super._cookie, $__uri, $__local, $__qname);
 736                 }
 737             }
 738             break;
 739         case 45:
 740             {
 741                 if(($__uri.equals("") && $__local.equals("elementFormDefault"))) {
 742                     $_ngcc_current_state = 47;
 743                 }
 744                 else {
 745                     $_ngcc_current_state = 41;
 746                     $runtime.sendEnterAttribute(super._cookie, $__uri, $__local, $__qname);
 747                 }
 748             }
 749             break;
 750         case 2:
 751             {
 752                 $_ngcc_current_state = 1;
 753                 $runtime.sendEnterAttribute(super._cookie, $__uri, $__local, $__qname);
 754             }
 755             break;
 756         case 37:
 757             {
 758                 if(($__uri.equals("") && $__local.equals("finalDefault"))) {
 759                     $_ngcc_current_state = 39;
 760                 }
 761                 else {
 762                     $_ngcc_current_state = 36;
 763                     $runtime.sendEnterAttribute(super._cookie, $__uri, $__local, $__qname);
 764                 }
 765             }
 766             break;
 767         case 16:
 768             {
 769                 if(($__uri.equals("") && $__local.equals("default"))) {
 770                     $_ngcc_current_state = 18;
 771                 }
 772                 else {
 773                     $_ngcc_current_state = 12;
 774                     $runtime.sendEnterAttribute(super._cookie, $__uri, $__local, $__qname);
 775                 }
 776             }
 777             break;
 778         default:
 779             {
 780                 unexpectedEnterAttribute($__qname);
 781             }
 782             break;
 783         }
 784     }
 785 
 786     public void leaveAttribute(String $__uri, String $__local, String $__qname) throws SAXException {
 787         int $ai;
 788         $uri = $__uri;
 789         $localName = $__local;
 790         $qname = $__qname;
 791         switch($_ngcc_current_state) {
 792         case 12:
 793             {
 794                 $_ngcc_current_state = 11;
 795                 $runtime.sendLeaveAttribute(super._cookie, $__uri, $__local, $__qname);
 796             }
 797             break;
 798         case 0:
 799             {
 800                 revertToParentFromLeaveAttribute(this, super._cookie, $__uri, $__local, $__qname);
 801             }
 802             break;
 803         case 53:
 804             {
 805                 $_ngcc_current_state = 49;
 806                 $runtime.sendLeaveAttribute(super._cookie, $__uri, $__local, $__qname);
 807             }
 808             break;
 809         case 41:
 810             {
 811                 $_ngcc_current_state = 37;
 812                 $runtime.sendLeaveAttribute(super._cookie, $__uri, $__local, $__qname);
 813             }
 814             break;
 815         case 45:
 816             {
 817                 $_ngcc_current_state = 41;
 818                 $runtime.sendLeaveAttribute(super._cookie, $__uri, $__local, $__qname);
 819             }
 820             break;
 821         case 2:
 822             {
 823                 $_ngcc_current_state = 1;
 824                 $runtime.sendLeaveAttribute(super._cookie, $__uri, $__local, $__qname);
 825             }
 826             break;
 827         case 37:
 828             {
 829                 $_ngcc_current_state = 36;
 830                 $runtime.sendLeaveAttribute(super._cookie, $__uri, $__local, $__qname);
 831             }
 832             break;
 833         case 50:
 834             {
 835                 if(($__uri.equals("") && $__local.equals("attributeFormDefault"))) {
 836                     $_ngcc_current_state = 45;
 837                 }
 838                 else {
 839                     unexpectedLeaveAttribute($__qname);
 840                 }
 841             }
 842             break;
 843         case 46:
 844             {
 845                 if(($__uri.equals("") && $__local.equals("elementFormDefault"))) {
 846                     $_ngcc_current_state = 41;
 847                 }
 848                 else {
 849                     unexpectedLeaveAttribute($__qname);
 850                 }
 851             }
 852             break;
 853         case 54:
 854             {
 855                 if(($__uri.equals("") && $__local.equals("targetNamespace"))) {
 856                     $_ngcc_current_state = 49;
 857                 }
 858                 else {
 859                     unexpectedLeaveAttribute($__qname);
 860                 }
 861             }
 862             break;
 863         case 13:
 864             {
 865                 if(($__uri.equals("") && $__local.equals("fixed"))) {
 866                     $_ngcc_current_state = 11;
 867                 }
 868                 else {
 869                     unexpectedLeaveAttribute($__qname);
 870                 }
 871             }
 872             break;
 873         case 17:
 874             {
 875                 if(($__uri.equals("") && $__local.equals("default"))) {
 876                     $_ngcc_current_state = 12;
 877                 }
 878                 else {
 879                     unexpectedLeaveAttribute($__qname);
 880                 }
 881             }
 882             break;
 883         case 42:
 884             {
 885                 if(($__uri.equals("") && $__local.equals("blockDefault"))) {
 886                     $_ngcc_current_state = 37;
 887                 }
 888                 else {
 889                     unexpectedLeaveAttribute($__qname);
 890                 }
 891             }
 892             break;
 893         case 38:
 894             {
 895                 if(($__uri.equals("") && $__local.equals("finalDefault"))) {
 896                     $_ngcc_current_state = 36;
 897                 }
 898                 else {
 899                     unexpectedLeaveAttribute($__qname);
 900                 }
 901             }
 902             break;
 903         case 49:
 904             {
 905                 $_ngcc_current_state = 45;
 906                 $runtime.sendLeaveAttribute(super._cookie, $__uri, $__local, $__qname);
 907             }
 908             break;
 909         case 16:
 910             {
 911                 $_ngcc_current_state = 12;
 912                 $runtime.sendLeaveAttribute(super._cookie, $__uri, $__local, $__qname);
 913             }
 914             break;
 915         default:
 916             {
 917                 unexpectedLeaveAttribute($__qname);
 918             }
 919             break;
 920         }
 921     }
 922 
 923     public void text(String $value) throws SAXException {
 924         int $ai;
 925         switch($_ngcc_current_state) {
 926         case 12:
 927             {
 928                 if(($ai = $runtime.getAttributeIndex("","fixed"))>=0) {
 929                     $runtime.consumeAttribute($ai);
 930                     $runtime.sendText(super._cookie, $value);
 931                 }
 932                 else {
 933                     $_ngcc_current_state = 11;
 934                     $runtime.sendText(super._cookie, $value);
 935                 }
 936             }
 937             break;
 938         case 0:
 939             {
 940                 revertToParentFromText(this, super._cookie, $value);
 941             }
 942             break;
 943         case 53:
 944             {
 945                 if(($ai = $runtime.getAttributeIndex("","targetNamespace"))>=0) {
 946                     $runtime.consumeAttribute($ai);
 947                     $runtime.sendText(super._cookie, $value);
 948                 }
 949                 else {
 950                     $_ngcc_current_state = 49;
 951                     $runtime.sendText(super._cookie, $value);
 952                 }
 953             }
 954             break;
 955         case 43:
 956             {
 957                 NGCCHandler h = new ersSet(this, super._source, $runtime, 381);
 958                 spawnChildFromText(h, $value);
 959             }
 960             break;
 961         case 41:
 962             {
 963                 if(($ai = $runtime.getAttributeIndex("","blockDefault"))>=0) {
 964                     $runtime.consumeAttribute($ai);
 965                     $runtime.sendText(super._cookie, $value);
 966                 }
 967                 else {
 968                     $_ngcc_current_state = 37;
 969                     $runtime.sendText(super._cookie, $value);
 970                 }
 971             }
 972             break;
 973         case 45:
 974             {
 975                 if(($ai = $runtime.getAttributeIndex("","elementFormDefault"))>=0) {
 976                     $runtime.consumeAttribute($ai);
 977                     $runtime.sendText(super._cookie, $value);
 978                 }
 979                 else {
 980                     $_ngcc_current_state = 41;
 981                     $runtime.sendText(super._cookie, $value);
 982                 }
 983             }
 984             break;
 985         case 2:
 986             {
 987                 $_ngcc_current_state = 1;
 988                 $runtime.sendText(super._cookie, $value);
 989             }
 990             break;
 991         case 37:
 992             {
 993                 if(($ai = $runtime.getAttributeIndex("","finalDefault"))>=0) {
 994                     $runtime.consumeAttribute($ai);
 995                     $runtime.sendText(super._cookie, $value);
 996                 }
 997                 else {
 998                     $_ngcc_current_state = 36;
 999                     $runtime.sendText(super._cookie, $value);
1000                 }
1001             }
1002             break;
1003         case 55:
1004             {
1005                 $_ngcc_current_state = 54;
1006             }
1007             break;
1008         case 14:
1009             {
1010                 fixedValue = $value;
1011                 $_ngcc_current_state = 13;
1012             }
1013             break;
1014         case 47:
1015             {
1016                 if($value.equals("unqualified")) {
1017                     NGCCHandler h = new qualification(this, super._source, $runtime, 386);
1018                     spawnChildFromText(h, $value);
1019                 }
1020                 else {
1021                     if($value.equals("qualified")) {
1022                         NGCCHandler h = new qualification(this, super._source, $runtime, 386);
1023                         spawnChildFromText(h, $value);
1024                     }
1025                 }
1026             }
1027             break;
1028         case 39:
1029             {
1030                 NGCCHandler h = new erSet(this, super._source, $runtime, 376);
1031                 spawnChildFromText(h, $value);
1032             }
1033             break;
1034         case 27:
1035             {
1036                 if(($ai = $runtime.getAttributeIndex("","abstract"))>=0) {
1037                     NGCCHandler h = new elementDeclBody(this, super._source, $runtime, 286, locator,true);
1038                     spawnChildFromText(h, $value);
1039                 }
1040                 else {
1041                     if(($ai = $runtime.getAttributeIndex("","default"))>=0) {
1042                         NGCCHandler h = new elementDeclBody(this, super._source, $runtime, 286, locator,true);
1043                         spawnChildFromText(h, $value);
1044                     }
1045                     else {
1046                         if(($ai = $runtime.getAttributeIndex("","fixed"))>=0) {
1047                             NGCCHandler h = new elementDeclBody(this, super._source, $runtime, 286, locator,true);
1048                             spawnChildFromText(h, $value);
1049                         }
1050                         else {
1051                             if(($ai = $runtime.getAttributeIndex("","block"))>=0) {
1052                                 NGCCHandler h = new elementDeclBody(this, super._source, $runtime, 286, locator,true);
1053                                 spawnChildFromText(h, $value);
1054                             }
1055                             else {
1056                                 if(($ai = $runtime.getAttributeIndex("","form"))>=0) {
1057                                     NGCCHandler h = new elementDeclBody(this, super._source, $runtime, 286, locator,true);
1058                                     spawnChildFromText(h, $value);
1059                                 }
1060                                 else {
1061                                     if(($ai = $runtime.getAttributeIndex("","final"))>=0) {
1062                                         NGCCHandler h = new elementDeclBody(this, super._source, $runtime, 286, locator,true);
1063                                         spawnChildFromText(h, $value);
1064                                     }
1065                                     else {
1066                                         if(($ai = $runtime.getAttributeIndex("","name"))>=0) {
1067                                             NGCCHandler h = new elementDeclBody(this, super._source, $runtime, 286, locator,true);
1068                                             spawnChildFromText(h, $value);
1069                                         }
1070                                     }
1071                                 }
1072                             }
1073                         }
1074                     }
1075                 }
1076             }
1077             break;
1078         case 11:
1079             {
1080                 if(($ai = $runtime.getAttributeIndex("","name"))>=0) {
1081                     NGCCHandler h = new attributeDeclBody(this, super._source, $runtime, 268, locator,false,defaultValue,fixedValue);
1082                     spawnChildFromText(h, $value);
1083                 }
1084                 else {
1085                     if(($ai = $runtime.getAttributeIndex("","form"))>=0) {
1086                         NGCCHandler h = new attributeDeclBody(this, super._source, $runtime, 268, locator,false,defaultValue,fixedValue);
1087                         spawnChildFromText(h, $value);
1088                     }
1089                 }
1090             }
1091             break;
1092         case 18:
1093             {
1094                 defaultValue = $value;
1095                 $_ngcc_current_state = 17;
1096             }
1097             break;
1098         case 51:
1099             {
1100                 if($value.equals("unqualified")) {
1101                     NGCCHandler h = new qualification(this, super._source, $runtime, 391);
1102                     spawnChildFromText(h, $value);
1103                 }
1104                 else {
1105                     if($value.equals("qualified")) {
1106                         NGCCHandler h = new qualification(this, super._source, $runtime, 391);
1107                         spawnChildFromText(h, $value);
1108                     }
1109                 }
1110             }
1111             break;
1112         case 49:
1113             {
1114                 if(($ai = $runtime.getAttributeIndex("","attributeFormDefault"))>=0) {
1115                     $runtime.consumeAttribute($ai);
1116                     $runtime.sendText(super._cookie, $value);
1117                 }
1118                 else {
1119                     $_ngcc_current_state = 45;
1120                     $runtime.sendText(super._cookie, $value);
1121                 }
1122             }
1123             break;
1124         case 16:
1125             {
1126                 if(($ai = $runtime.getAttributeIndex("","default"))>=0) {
1127                     $runtime.consumeAttribute($ai);
1128                     $runtime.sendText(super._cookie, $value);
1129                 }
1130                 else {
1131                     $_ngcc_current_state = 12;
1132                     $runtime.sendText(super._cookie, $value);
1133                 }
1134             }
1135             break;
1136         }
1137     }
1138 
1139     public void onChildCompleted(Object $__result__, int $__cookie__, boolean $__needAttCheck__)throws SAXException {
1140         switch($__cookie__) {
1141         case 381:
1142             {
1143                 blockDefault = ((Integer)$__result__);
1144                 action12();
1145                 $_ngcc_current_state = 42;
1146             }
1147             break;
1148         case 268:
1149             {
1150                 ad = ((AttributeDeclImpl)$__result__);
1151                 action3();
1152                 $_ngcc_current_state = 10;
1153             }
1154             break;
1155         case 391:
1156             {
1157                 afd = ((Boolean)$__result__).booleanValue();
1158                 action14();
1159                 $_ngcc_current_state = 50;
1160             }
1161             break;
1162         case 386:
1163             {
1164                 efd = ((Boolean)$__result__).booleanValue();
1165                 action13();
1166                 $_ngcc_current_state = 46;
1167             }
1168             break;
1169         case 351:
1170             {
1171                 anno = ((AnnotationImpl)$__result__);
1172                 action9();
1173                 $_ngcc_current_state = 1;
1174             }
1175             break;
1176         case 352:
1177             {
1178                 $_ngcc_current_state = 1;
1179             }
1180             break;
1181         case 353:
1182             {
1183                 $_ngcc_current_state = 1;
1184             }
1185             break;
1186         case 354:
1187             {
1188                 $_ngcc_current_state = 1;
1189             }
1190             break;
1191         case 356:
1192             {
1193                 st = ((SimpleTypeImpl)$__result__);
1194                 action6();
1195                 $_ngcc_current_state = 1;
1196             }
1197             break;
1198         case 357:
1199             {
1200                 ct = ((ComplexTypeImpl)$__result__);
1201                 action5();
1202                 $_ngcc_current_state = 1;
1203             }
1204             break;
1205         case 359:
1206             {
1207                 group = ((ModelGroupDeclImpl)$__result__);
1208                 action2();
1209                 $_ngcc_current_state = 1;
1210             }
1211             break;
1212         case 360:
1213             {
1214                 notation = ((XSNotation)$__result__);
1215                 action1();
1216                 $_ngcc_current_state = 1;
1217             }
1218             break;
1219         case 361:
1220             {
1221                 ag = ((AttGroupDeclImpl)$__result__);
1222                 action0();
1223                 $_ngcc_current_state = 1;
1224             }
1225             break;
1226         case 286:
1227             {
1228                 e = ((ElementDecl)$__result__);
1229                 action7();
1230                 $_ngcc_current_state = 26;
1231             }
1232             break;
1233         case 374:
1234             {
1235                 fa = ((ForeignAttributesImpl)$__result__);
1236                 action10();
1237                 $_ngcc_current_state = 2;
1238             }
1239             break;
1240         case 362:
1241             {
1242                 anno = ((AnnotationImpl)$__result__);
1243                 action9();
1244                 $_ngcc_current_state = 1;
1245             }
1246             break;
1247         case 363:
1248             {
1249                 $_ngcc_current_state = 1;
1250             }
1251             break;
1252         case 364:
1253             {
1254                 $_ngcc_current_state = 1;
1255             }
1256             break;
1257         case 365:
1258             {
1259                 $_ngcc_current_state = 1;
1260             }
1261             break;
1262         case 367:
1263             {
1264                 st = ((SimpleTypeImpl)$__result__);
1265                 action6();
1266                 $_ngcc_current_state = 1;
1267             }
1268             break;
1269         case 368:
1270             {
1271                 ct = ((ComplexTypeImpl)$__result__);
1272                 action5();
1273                 $_ngcc_current_state = 1;
1274             }
1275             break;
1276         case 370:
1277             {
1278                 group = ((ModelGroupDeclImpl)$__result__);
1279                 action2();
1280                 $_ngcc_current_state = 1;
1281             }
1282             break;
1283         case 371:
1284             {
1285                 notation = ((XSNotation)$__result__);
1286                 action1();
1287                 $_ngcc_current_state = 1;
1288             }
1289             break;
1290         case 372:
1291             {
1292                 ag = ((AttGroupDeclImpl)$__result__);
1293                 action0();
1294                 $_ngcc_current_state = 1;
1295             }
1296             break;
1297         case 376:
1298             {
1299                 finalDefault = ((Integer)$__result__);
1300                 action11();
1301                 $_ngcc_current_state = 38;
1302             }
1303             break;
1304         }
1305     }
1306 
1307     public boolean accepted() {
1308         return(($_ngcc_current_state == 0));
1309     }
1310 
1311 
1312       private String tns=null;  // it defaults to the no namespace.
1313       private Locator locator;
1314 
1315 }