1 /* 2 * Copyright (c) 1997, 2016, 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 29 import com.sun.xml.internal.xsom.impl.*; 30 import com.sun.xml.internal.xsom.impl.parser.*; 31 import com.sun.xml.internal.xsom.parser.*; 32 import java.util.*; 33 34 import org.xml.sax.Attributes; 35 import org.xml.sax.Locator; 36 import org.xml.sax.SAXException; 37 38 39 class elementDeclBody extends NGCCHandler { 40 private Integer finalValue; 41 private String name; 42 private String nillable; 43 private String abstractValue; 44 private Integer blockValue; 45 private ForeignAttributesImpl fa; 46 private AnnotationImpl annotation; 47 private Locator locator; 48 private String defaultValue; 49 private IdentityConstraintImpl idc; 50 private boolean isGlobal; 51 private String fixedValue; 52 private UName typeName; 53 private UName substRef; 54 protected final NGCCRuntimeEx $runtime; 55 private int $_ngcc_current_state; 56 protected String $uri; 57 protected String $localName; 58 protected String $qname; 59 60 public final NGCCRuntime getRuntime() { 61 return($runtime); 62 } 63 64 public elementDeclBody(NGCCHandler parent, NGCCEventSource source, NGCCRuntimeEx runtime, int cookie, Locator _locator, boolean _isGlobal) { 65 super(source, parent, cookie); 66 $runtime = runtime; 67 this.locator = _locator; 68 this.isGlobal = _isGlobal; 69 $_ngcc_current_state = 48; 70 } 71 72 public elementDeclBody(NGCCRuntimeEx runtime, Locator _locator, boolean _isGlobal) { 73 this(null, runtime, runtime, -1, _locator, _isGlobal); 74 } 75 76 private void action0()throws SAXException { 77 idcs.add(idc); 78 } 79 80 private void action1()throws SAXException { 81 82 type = new DelayedRef.Type( 83 $runtime, locator, $runtime.currentSchema, typeName ); 84 85 } 86 87 private void action2()throws SAXException { 88 89 substHeadRef = new DelayedRef.Element( 90 $runtime, locator, $runtime.currentSchema, substRef ); 91 92 } 93 94 private void action3()throws SAXException { 95 formSpecified = true; 96 } 97 98 public void enterElement(String $__uri, String $__local, String $__qname, Attributes $attrs) throws SAXException { 99 int $ai; 100 $uri = $__uri; 101 $localName = $__local; 102 $qname = $__qname; 103 switch($_ngcc_current_state) { 104 case 17: 105 { 106 if(($ai = $runtime.getAttributeIndex("","nillable"))>=0) { 107 $runtime.consumeAttribute($ai); 108 $runtime.sendEnterElement(super._cookie, $__uri, $__local, $__qname, $attrs); 109 } 110 else { 111 $_ngcc_current_state = 13; 112 $runtime.sendEnterElement(super._cookie, $__uri, $__local, $__qname, $attrs); 113 } 114 } 115 break; 116 case 28: 117 { 118 if(($ai = $runtime.getAttributeIndex("","fixed"))>=0) { 119 $runtime.consumeAttribute($ai); 120 $runtime.sendEnterElement(super._cookie, $__uri, $__local, $__qname, $attrs); 121 } 122 else { 123 $_ngcc_current_state = 24; 124 $runtime.sendEnterElement(super._cookie, $__uri, $__local, $__qname, $attrs); 125 } 126 } 127 break; 128 case 0: 129 { 130 if(((($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("key")) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("keyref"))) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("unique")))) { 131 NGCCHandler h = new identityConstraint(this, super._source, $runtime, 6); 132 spawnChildFromEnterElement(h, $__uri, $__local, $__qname, $attrs); 133 } 134 else { 135 revertToParentFromEnterElement(makeResult(), super._cookie, $__uri, $__local, $__qname, $attrs); 136 } 137 } 138 break; 139 case 32: 140 { 141 if(($ai = $runtime.getAttributeIndex("","default"))>=0) { 142 $runtime.consumeAttribute($ai); 143 $runtime.sendEnterElement(super._cookie, $__uri, $__local, $__qname, $attrs); 144 } 145 else { 146 $_ngcc_current_state = 28; 147 $runtime.sendEnterElement(super._cookie, $__uri, $__local, $__qname, $attrs); 148 } 149 } 150 break; 151 case 24: 152 { 153 if(($ai = $runtime.getAttributeIndex("","form"))>=0) { 154 $runtime.consumeAttribute($ai); 155 $runtime.sendEnterElement(super._cookie, $__uri, $__local, $__qname, $attrs); 156 } 157 else { 158 $_ngcc_current_state = 23; 159 $runtime.sendEnterElement(super._cookie, $__uri, $__local, $__qname, $attrs); 160 } 161 } 162 break; 163 case 11: 164 { 165 if(($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("annotation"))) { 166 NGCCHandler h = new annotation(this, super._source, $runtime, 24, null,AnnotationContext.ELEMENT_DECL); 167 spawnChildFromEnterElement(h, $__uri, $__local, $__qname, $attrs); 168 } 169 else { 170 $_ngcc_current_state = 3; 171 $runtime.sendEnterElement(super._cookie, $__uri, $__local, $__qname, $attrs); 172 } 173 } 174 break; 175 case 23: 176 { 177 if(($ai = $runtime.getAttributeIndex("","name"))>=0) { 178 $runtime.consumeAttribute($ai); 179 $runtime.sendEnterElement(super._cookie, $__uri, $__local, $__qname, $attrs); 180 } 181 else { 182 unexpectedEnterElement($__qname); 183 } 184 } 185 break; 186 case 44: 187 { 188 if(($ai = $runtime.getAttributeIndex("","abstract"))>=0) { 189 $runtime.consumeAttribute($ai); 190 $runtime.sendEnterElement(super._cookie, $__uri, $__local, $__qname, $attrs); 191 } 192 else { 193 $_ngcc_current_state = 40; 194 $runtime.sendEnterElement(super._cookie, $__uri, $__local, $__qname, $attrs); 195 } 196 } 197 break; 198 case 40: 199 { 200 if(($ai = $runtime.getAttributeIndex("","block"))>=0) { 201 $runtime.consumeAttribute($ai); 202 $runtime.sendEnterElement(super._cookie, $__uri, $__local, $__qname, $attrs); 203 } 204 else { 205 $_ngcc_current_state = 36; 206 $runtime.sendEnterElement(super._cookie, $__uri, $__local, $__qname, $attrs); 207 } 208 } 209 break; 210 case 48: 211 { 212 if(((($ai = $runtime.getAttributeIndex("","default"))>=0 && (((($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("simpleType")) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("complexType"))) || ((($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("key")) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("keyref"))) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("unique")))) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("annotation")))) || ((($ai = $runtime.getAttributeIndex("","fixed"))>=0 && (((($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("simpleType")) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("complexType"))) || ((($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("key")) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("keyref"))) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("unique")))) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("annotation")))) || ((($ai = $runtime.getAttributeIndex("","form"))>=0 && (((($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("simpleType")) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("complexType"))) || ((($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("key")) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("keyref"))) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("unique")))) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("annotation")))) || ((($ai = $runtime.getAttributeIndex("","block"))>=0 && (((($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("simpleType")) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("complexType"))) || ((($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("key")) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("keyref"))) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("unique")))) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("annotation")))) || ((($ai = $runtime.getAttributeIndex("","final"))>=0 && (((($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("simpleType")) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("complexType"))) || ((($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("key")) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("keyref"))) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("unique")))) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("annotation")))) || ((($ai = $runtime.getAttributeIndex("","name"))>=0 && (((($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("simpleType")) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("complexType"))) || ((($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("key")) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("keyref"))) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("unique")))) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("annotation")))) || (($ai = $runtime.getAttributeIndex("","abstract"))>=0 && (((($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("simpleType")) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("complexType"))) || ((($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("key")) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("keyref"))) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("unique")))) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("annotation"))))))))))) { 213 NGCCHandler h = new foreignAttributes(this, super._source, $runtime, 69, fa); 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("key")) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("keyref"))) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("unique")))) { 224 NGCCHandler h = new identityConstraint(this, super._source, $runtime, 7); 225 spawnChildFromEnterElement(h, $__uri, $__local, $__qname, $attrs); 226 } 227 else { 228 $_ngcc_current_state = 0; 229 $runtime.sendEnterElement(super._cookie, $__uri, $__local, $__qname, $attrs); 230 } 231 } 232 break; 233 case 3: 234 { 235 if(($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("simpleType"))) { 236 NGCCHandler h = new simpleType(this, super._source, $runtime, 19); 237 spawnChildFromEnterElement(h, $__uri, $__local, $__qname, $attrs); 238 } 239 else { 240 if(($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("complexType"))) { 241 NGCCHandler h = new complexType(this, super._source, $runtime, 20); 242 spawnChildFromEnterElement(h, $__uri, $__local, $__qname, $attrs); 243 } 244 else { 245 if(($ai = $runtime.getAttributeIndex("","type"))>=0) { 246 $runtime.consumeAttribute($ai); 247 $runtime.sendEnterElement(super._cookie, $__uri, $__local, $__qname, $attrs); 248 } 249 else { 250 $_ngcc_current_state = 1; 251 $runtime.sendEnterElement(super._cookie, $__uri, $__local, $__qname, $attrs); 252 } 253 } 254 } 255 } 256 break; 257 case 13: 258 { 259 if(($ai = $runtime.getAttributeIndex("","substitutionGroup"))>=0) { 260 $runtime.consumeAttribute($ai); 261 $runtime.sendEnterElement(super._cookie, $__uri, $__local, $__qname, $attrs); 262 } 263 else { 264 $_ngcc_current_state = 11; 265 $runtime.sendEnterElement(super._cookie, $__uri, $__local, $__qname, $attrs); 266 } 267 } 268 break; 269 case 36: 270 { 271 if(($ai = $runtime.getAttributeIndex("","final"))>=0) { 272 $runtime.consumeAttribute($ai); 273 $runtime.sendEnterElement(super._cookie, $__uri, $__local, $__qname, $attrs); 274 } 275 else { 276 $_ngcc_current_state = 32; 277 $runtime.sendEnterElement(super._cookie, $__uri, $__local, $__qname, $attrs); 278 } 279 } 280 break; 281 default: 282 { 283 unexpectedEnterElement($__qname); 284 } 285 break; 286 } 287 } 288 289 public void leaveElement(String $__uri, String $__local, String $__qname) throws SAXException { 290 int $ai; 291 $uri = $__uri; 292 $localName = $__local; 293 $qname = $__qname; 294 switch($_ngcc_current_state) { 295 case 17: 296 { 297 if(($ai = $runtime.getAttributeIndex("","nillable"))>=0) { 298 $runtime.consumeAttribute($ai); 299 $runtime.sendLeaveElement(super._cookie, $__uri, $__local, $__qname); 300 } 301 else { 302 $_ngcc_current_state = 13; 303 $runtime.sendLeaveElement(super._cookie, $__uri, $__local, $__qname); 304 } 305 } 306 break; 307 case 28: 308 { 309 if(($ai = $runtime.getAttributeIndex("","fixed"))>=0) { 310 $runtime.consumeAttribute($ai); 311 $runtime.sendLeaveElement(super._cookie, $__uri, $__local, $__qname); 312 } 313 else { 314 $_ngcc_current_state = 24; 315 $runtime.sendLeaveElement(super._cookie, $__uri, $__local, $__qname); 316 } 317 } 318 break; 319 case 0: 320 { 321 revertToParentFromLeaveElement(makeResult(), super._cookie, $__uri, $__local, $__qname); 322 } 323 break; 324 case 32: 325 { 326 if(($ai = $runtime.getAttributeIndex("","default"))>=0) { 327 $runtime.consumeAttribute($ai); 328 $runtime.sendLeaveElement(super._cookie, $__uri, $__local, $__qname); 329 } 330 else { 331 $_ngcc_current_state = 28; 332 $runtime.sendLeaveElement(super._cookie, $__uri, $__local, $__qname); 333 } 334 } 335 break; 336 case 24: 337 { 338 if(($ai = $runtime.getAttributeIndex("","form"))>=0) { 339 $runtime.consumeAttribute($ai); 340 $runtime.sendLeaveElement(super._cookie, $__uri, $__local, $__qname); 341 } 342 else { 343 $_ngcc_current_state = 23; 344 $runtime.sendLeaveElement(super._cookie, $__uri, $__local, $__qname); 345 } 346 } 347 break; 348 case 11: 349 { 350 $_ngcc_current_state = 3; 351 $runtime.sendLeaveElement(super._cookie, $__uri, $__local, $__qname); 352 } 353 break; 354 case 23: 355 { 356 if(($ai = $runtime.getAttributeIndex("","name"))>=0) { 357 $runtime.consumeAttribute($ai); 358 $runtime.sendLeaveElement(super._cookie, $__uri, $__local, $__qname); 359 } 360 else { 361 unexpectedLeaveElement($__qname); 362 } 363 } 364 break; 365 case 44: 366 { 367 if(($ai = $runtime.getAttributeIndex("","abstract"))>=0) { 368 $runtime.consumeAttribute($ai); 369 $runtime.sendLeaveElement(super._cookie, $__uri, $__local, $__qname); 370 } 371 else { 372 $_ngcc_current_state = 40; 373 $runtime.sendLeaveElement(super._cookie, $__uri, $__local, $__qname); 374 } 375 } 376 break; 377 case 40: 378 { 379 if(($ai = $runtime.getAttributeIndex("","block"))>=0) { 380 $runtime.consumeAttribute($ai); 381 $runtime.sendLeaveElement(super._cookie, $__uri, $__local, $__qname); 382 } 383 else { 384 $_ngcc_current_state = 36; 385 $runtime.sendLeaveElement(super._cookie, $__uri, $__local, $__qname); 386 } 387 } 388 break; 389 case 48: 390 { 391 if((($ai = $runtime.getAttributeIndex("","default"))>=0 || (($ai = $runtime.getAttributeIndex("","fixed"))>=0 || (($ai = $runtime.getAttributeIndex("","form"))>=0 || (($ai = $runtime.getAttributeIndex("","block"))>=0 || (($ai = $runtime.getAttributeIndex("","final"))>=0 || (($ai = $runtime.getAttributeIndex("","name"))>=0 || ($ai = $runtime.getAttributeIndex("","abstract"))>=0))))))) { 392 NGCCHandler h = new foreignAttributes(this, super._source, $runtime, 69, fa); 393 spawnChildFromLeaveElement(h, $__uri, $__local, $__qname); 394 } 395 else { 396 unexpectedLeaveElement($__qname); 397 } 398 } 399 break; 400 case 1: 401 { 402 $_ngcc_current_state = 0; 403 $runtime.sendLeaveElement(super._cookie, $__uri, $__local, $__qname); 404 } 405 break; 406 case 3: 407 { 408 if(($ai = $runtime.getAttributeIndex("","type"))>=0) { 409 $runtime.consumeAttribute($ai); 410 $runtime.sendLeaveElement(super._cookie, $__uri, $__local, $__qname); 411 } 412 else { 413 $_ngcc_current_state = 1; 414 $runtime.sendLeaveElement(super._cookie, $__uri, $__local, $__qname); 415 } 416 } 417 break; 418 case 13: 419 { 420 if(($ai = $runtime.getAttributeIndex("","substitutionGroup"))>=0) { 421 $runtime.consumeAttribute($ai); 422 $runtime.sendLeaveElement(super._cookie, $__uri, $__local, $__qname); 423 } 424 else { 425 $_ngcc_current_state = 11; 426 $runtime.sendLeaveElement(super._cookie, $__uri, $__local, $__qname); 427 } 428 } 429 break; 430 case 36: 431 { 432 if(($ai = $runtime.getAttributeIndex("","final"))>=0) { 433 $runtime.consumeAttribute($ai); 434 $runtime.sendLeaveElement(super._cookie, $__uri, $__local, $__qname); 435 } 436 else { 437 $_ngcc_current_state = 32; 438 $runtime.sendLeaveElement(super._cookie, $__uri, $__local, $__qname); 439 } 440 } 441 break; 442 default: 443 { 444 unexpectedLeaveElement($__qname); 445 } 446 break; 447 } 448 } 449 450 public void enterAttribute(String $__uri, String $__local, String $__qname) throws SAXException { 451 int $ai; 452 $uri = $__uri; 453 $localName = $__local; 454 $qname = $__qname; 455 switch($_ngcc_current_state) { 456 case 17: 457 { 458 if(($__uri.equals("") && $__local.equals("nillable"))) { 459 $_ngcc_current_state = 19; 460 } 461 else { 462 $_ngcc_current_state = 13; 463 $runtime.sendEnterAttribute(super._cookie, $__uri, $__local, $__qname); 464 } 465 } 466 break; 467 case 28: 468 { 469 if(($__uri.equals("") && $__local.equals("fixed"))) { 470 $_ngcc_current_state = 30; 471 } 472 else { 473 $_ngcc_current_state = 24; 474 $runtime.sendEnterAttribute(super._cookie, $__uri, $__local, $__qname); 475 } 476 } 477 break; 478 case 0: 479 { 480 revertToParentFromEnterAttribute(makeResult(), super._cookie, $__uri, $__local, $__qname); 481 } 482 break; 483 case 32: 484 { 485 if(($__uri.equals("") && $__local.equals("default"))) { 486 $_ngcc_current_state = 34; 487 } 488 else { 489 $_ngcc_current_state = 28; 490 $runtime.sendEnterAttribute(super._cookie, $__uri, $__local, $__qname); 491 } 492 } 493 break; 494 case 24: 495 { 496 if(($__uri.equals("") && $__local.equals("form"))) { 497 $_ngcc_current_state = 26; 498 } 499 else { 500 $_ngcc_current_state = 23; 501 $runtime.sendEnterAttribute(super._cookie, $__uri, $__local, $__qname); 502 } 503 } 504 break; 505 case 11: 506 { 507 $_ngcc_current_state = 3; 508 $runtime.sendEnterAttribute(super._cookie, $__uri, $__local, $__qname); 509 } 510 break; 511 case 23: 512 { 513 if(($__uri.equals("") && $__local.equals("name"))) { 514 $_ngcc_current_state = 22; 515 } 516 else { 517 unexpectedEnterAttribute($__qname); 518 } 519 } 520 break; 521 case 44: 522 { 523 if(($__uri.equals("") && $__local.equals("abstract"))) { 524 $_ngcc_current_state = 46; 525 } 526 else { 527 $_ngcc_current_state = 40; 528 $runtime.sendEnterAttribute(super._cookie, $__uri, $__local, $__qname); 529 } 530 } 531 break; 532 case 40: 533 { 534 if(($__uri.equals("") && $__local.equals("block"))) { 535 $_ngcc_current_state = 42; 536 } 537 else { 538 $_ngcc_current_state = 36; 539 $runtime.sendEnterAttribute(super._cookie, $__uri, $__local, $__qname); 540 } 541 } 542 break; 543 case 48: 544 { 545 if((($__uri.equals("") && $__local.equals("default")) || (($__uri.equals("") && $__local.equals("fixed")) || (($__uri.equals("") && $__local.equals("form")) || (($__uri.equals("") && $__local.equals("block")) || (($__uri.equals("") && $__local.equals("final")) || (($__uri.equals("") && $__local.equals("name")) || ($__uri.equals("") && $__local.equals("abstract"))))))))) { 546 NGCCHandler h = new foreignAttributes(this, super._source, $runtime, 69, fa); 547 spawnChildFromEnterAttribute(h, $__uri, $__local, $__qname); 548 } 549 else { 550 unexpectedEnterAttribute($__qname); 551 } 552 } 553 break; 554 case 1: 555 { 556 $_ngcc_current_state = 0; 557 $runtime.sendEnterAttribute(super._cookie, $__uri, $__local, $__qname); 558 } 559 break; 560 case 3: 561 { 562 if(($__uri.equals("") && $__local.equals("type"))) { 563 $_ngcc_current_state = 6; 564 } 565 else { 566 $_ngcc_current_state = 1; 567 $runtime.sendEnterAttribute(super._cookie, $__uri, $__local, $__qname); 568 } 569 } 570 break; 571 case 13: 572 { 573 if(($__uri.equals("") && $__local.equals("substitutionGroup"))) { 574 $_ngcc_current_state = 15; 575 } 576 else { 577 $_ngcc_current_state = 11; 578 $runtime.sendEnterAttribute(super._cookie, $__uri, $__local, $__qname); 579 } 580 } 581 break; 582 case 36: 583 { 584 if(($__uri.equals("") && $__local.equals("final"))) { 585 $_ngcc_current_state = 38; 586 } 587 else { 588 $_ngcc_current_state = 32; 589 $runtime.sendEnterAttribute(super._cookie, $__uri, $__local, $__qname); 590 } 591 } 592 break; 593 default: 594 { 595 unexpectedEnterAttribute($__qname); 596 } 597 break; 598 } 599 } 600 601 public void leaveAttribute(String $__uri, String $__local, String $__qname) throws SAXException { 602 int $ai; 603 $uri = $__uri; 604 $localName = $__local; 605 $qname = $__qname; 606 switch($_ngcc_current_state) { 607 case 21: 608 { 609 if(($__uri.equals("") && $__local.equals("name"))) { 610 $_ngcc_current_state = 17; 611 } 612 else { 613 unexpectedLeaveAttribute($__qname); 614 } 615 } 616 break; 617 case 17: 618 { 619 $_ngcc_current_state = 13; 620 $runtime.sendLeaveAttribute(super._cookie, $__uri, $__local, $__qname); 621 } 622 break; 623 case 18: 624 { 625 if(($__uri.equals("") && $__local.equals("nillable"))) { 626 $_ngcc_current_state = 13; 627 } 628 else { 629 unexpectedLeaveAttribute($__qname); 630 } 631 } 632 break; 633 case 25: 634 { 635 if(($__uri.equals("") && $__local.equals("form"))) { 636 $_ngcc_current_state = 23; 637 } 638 else { 639 unexpectedLeaveAttribute($__qname); 640 } 641 } 642 break; 643 case 41: 644 { 645 if(($__uri.equals("") && $__local.equals("block"))) { 646 $_ngcc_current_state = 36; 647 } 648 else { 649 unexpectedLeaveAttribute($__qname); 650 } 651 } 652 break; 653 case 28: 654 { 655 $_ngcc_current_state = 24; 656 $runtime.sendLeaveAttribute(super._cookie, $__uri, $__local, $__qname); 657 } 658 break; 659 case 32: 660 { 661 $_ngcc_current_state = 28; 662 $runtime.sendLeaveAttribute(super._cookie, $__uri, $__local, $__qname); 663 } 664 break; 665 case 0: 666 { 667 revertToParentFromLeaveAttribute(makeResult(), super._cookie, $__uri, $__local, $__qname); 668 } 669 break; 670 case 24: 671 { 672 $_ngcc_current_state = 23; 673 $runtime.sendLeaveAttribute(super._cookie, $__uri, $__local, $__qname); 674 } 675 break; 676 case 11: 677 { 678 $_ngcc_current_state = 3; 679 $runtime.sendLeaveAttribute(super._cookie, $__uri, $__local, $__qname); 680 } 681 break; 682 case 33: 683 { 684 if(($__uri.equals("") && $__local.equals("default"))) { 685 $_ngcc_current_state = 28; 686 } 687 else { 688 unexpectedLeaveAttribute($__qname); 689 } 690 } 691 break; 692 case 37: 693 { 694 if(($__uri.equals("") && $__local.equals("final"))) { 695 $_ngcc_current_state = 32; 696 } 697 else { 698 unexpectedLeaveAttribute($__qname); 699 } 700 } 701 break; 702 case 44: 703 { 704 $_ngcc_current_state = 40; 705 $runtime.sendLeaveAttribute(super._cookie, $__uri, $__local, $__qname); 706 } 707 break; 708 case 14: 709 { 710 if(($__uri.equals("") && $__local.equals("substitutionGroup"))) { 711 $_ngcc_current_state = 11; 712 } 713 else { 714 unexpectedLeaveAttribute($__qname); 715 } 716 } 717 break; 718 case 40: 719 { 720 $_ngcc_current_state = 36; 721 $runtime.sendLeaveAttribute(super._cookie, $__uri, $__local, $__qname); 722 } 723 break; 724 case 45: 725 { 726 if(($__uri.equals("") && $__local.equals("abstract"))) { 727 $_ngcc_current_state = 40; 728 } 729 else { 730 unexpectedLeaveAttribute($__qname); 731 } 732 } 733 break; 734 case 1: 735 { 736 $_ngcc_current_state = 0; 737 $runtime.sendLeaveAttribute(super._cookie, $__uri, $__local, $__qname); 738 } 739 break; 740 case 3: 741 { 742 $_ngcc_current_state = 1; 743 $runtime.sendLeaveAttribute(super._cookie, $__uri, $__local, $__qname); 744 } 745 break; 746 case 13: 747 { 748 $_ngcc_current_state = 11; 749 $runtime.sendLeaveAttribute(super._cookie, $__uri, $__local, $__qname); 750 } 751 break; 752 case 36: 753 { 754 $_ngcc_current_state = 32; 755 $runtime.sendLeaveAttribute(super._cookie, $__uri, $__local, $__qname); 756 } 757 break; 758 case 5: 759 { 760 if(($__uri.equals("") && $__local.equals("type"))) { 761 $_ngcc_current_state = 1; 762 action1(); 763 } 764 else { 765 unexpectedLeaveAttribute($__qname); 766 } 767 } 768 break; 769 case 29: 770 { 771 if(($__uri.equals("") && $__local.equals("fixed"))) { 772 $_ngcc_current_state = 24; 773 } 774 else { 775 unexpectedLeaveAttribute($__qname); 776 } 777 } 778 break; 779 default: 780 { 781 unexpectedLeaveAttribute($__qname); 782 } 783 break; 784 } 785 } 786 787 public void text(String $value) throws SAXException { 788 int $ai; 789 switch($_ngcc_current_state) { 790 case 17: 791 { 792 if(($ai = $runtime.getAttributeIndex("","nillable"))>=0) { 793 $runtime.consumeAttribute($ai); 794 $runtime.sendText(super._cookie, $value); 795 } 796 else { 797 $_ngcc_current_state = 13; 798 $runtime.sendText(super._cookie, $value); 799 } 800 } 801 break; 802 case 34: 803 { 804 defaultValue = $value; 805 $_ngcc_current_state = 33; 806 } 807 break; 808 case 22: 809 { 810 name = $runtime.collapse($value); 811 $_ngcc_current_state = 21; 812 } 813 break; 814 case 28: 815 { 816 if(($ai = $runtime.getAttributeIndex("","fixed"))>=0) { 817 $runtime.consumeAttribute($ai); 818 $runtime.sendText(super._cookie, $value); 819 } 820 else { 821 $_ngcc_current_state = 24; 822 $runtime.sendText(super._cookie, $value); 823 } 824 } 825 break; 826 case 32: 827 { 828 if(($ai = $runtime.getAttributeIndex("","default"))>=0) { 829 $runtime.consumeAttribute($ai); 830 $runtime.sendText(super._cookie, $value); 831 } 832 else { 833 $_ngcc_current_state = 28; 834 $runtime.sendText(super._cookie, $value); 835 } 836 } 837 break; 838 case 0: 839 { 840 revertToParentFromText(makeResult(), super._cookie, $value); 841 } 842 break; 843 case 6: 844 { 845 NGCCHandler h = new qname(this, super._source, $runtime, 10); 846 spawnChildFromText(h, $value); 847 } 848 break; 849 case 24: 850 { 851 if(($ai = $runtime.getAttributeIndex("","form"))>=0) { 852 $runtime.consumeAttribute($ai); 853 $runtime.sendText(super._cookie, $value); 854 } 855 else { 856 $_ngcc_current_state = 23; 857 $runtime.sendText(super._cookie, $value); 858 } 859 } 860 break; 861 case 11: 862 { 863 $_ngcc_current_state = 3; 864 $runtime.sendText(super._cookie, $value); 865 } 866 break; 867 case 23: 868 { 869 if(($ai = $runtime.getAttributeIndex("","name"))>=0) { 870 $runtime.consumeAttribute($ai); 871 $runtime.sendText(super._cookie, $value); 872 } 873 } 874 break; 875 case 44: 876 { 877 if(($ai = $runtime.getAttributeIndex("","abstract"))>=0) { 878 $runtime.consumeAttribute($ai); 879 $runtime.sendText(super._cookie, $value); 880 } 881 else { 882 $_ngcc_current_state = 40; 883 $runtime.sendText(super._cookie, $value); 884 } 885 } 886 break; 887 case 46: 888 { 889 abstractValue = $value; 890 $_ngcc_current_state = 45; 891 } 892 break; 893 case 19: 894 { 895 nillable = $value; 896 $_ngcc_current_state = 18; 897 } 898 break; 899 case 40: 900 { 901 if(($ai = $runtime.getAttributeIndex("","block"))>=0) { 902 $runtime.consumeAttribute($ai); 903 $runtime.sendText(super._cookie, $value); 904 } 905 else { 906 $_ngcc_current_state = 36; 907 $runtime.sendText(super._cookie, $value); 908 } 909 } 910 break; 911 case 48: 912 { 913 if(($ai = $runtime.getAttributeIndex("","abstract"))>=0) { 914 NGCCHandler h = new foreignAttributes(this, super._source, $runtime, 69, fa); 915 spawnChildFromText(h, $value); 916 } 917 else { 918 if(($ai = $runtime.getAttributeIndex("","name"))>=0) { 919 NGCCHandler h = new foreignAttributes(this, super._source, $runtime, 69, fa); 920 spawnChildFromText(h, $value); 921 } 922 else { 923 if(($ai = $runtime.getAttributeIndex("","final"))>=0) { 924 NGCCHandler h = new foreignAttributes(this, super._source, $runtime, 69, fa); 925 spawnChildFromText(h, $value); 926 } 927 else { 928 if(($ai = $runtime.getAttributeIndex("","block"))>=0) { 929 NGCCHandler h = new foreignAttributes(this, super._source, $runtime, 69, fa); 930 spawnChildFromText(h, $value); 931 } 932 else { 933 if(($ai = $runtime.getAttributeIndex("","form"))>=0) { 934 NGCCHandler h = new foreignAttributes(this, super._source, $runtime, 69, fa); 935 spawnChildFromText(h, $value); 936 } 937 else { 938 if(($ai = $runtime.getAttributeIndex("","fixed"))>=0) { 939 NGCCHandler h = new foreignAttributes(this, super._source, $runtime, 69, fa); 940 spawnChildFromText(h, $value); 941 } 942 else { 943 if(($ai = $runtime.getAttributeIndex("","default"))>=0) { 944 NGCCHandler h = new foreignAttributes(this, super._source, $runtime, 69, fa); 945 spawnChildFromText(h, $value); 946 } 947 } 948 } 949 } 950 } 951 } 952 } 953 } 954 break; 955 case 30: 956 { 957 fixedValue = $value; 958 $_ngcc_current_state = 29; 959 } 960 break; 961 case 1: 962 { 963 $_ngcc_current_state = 0; 964 $runtime.sendText(super._cookie, $value); 965 } 966 break; 967 case 3: 968 { 969 if(($ai = $runtime.getAttributeIndex("","type"))>=0) { 970 $runtime.consumeAttribute($ai); 971 $runtime.sendText(super._cookie, $value); 972 } 973 else { 974 $_ngcc_current_state = 1; 975 $runtime.sendText(super._cookie, $value); 976 } 977 } 978 break; 979 case 13: 980 { 981 if(($ai = $runtime.getAttributeIndex("","substitutionGroup"))>=0) { 982 $runtime.consumeAttribute($ai); 983 $runtime.sendText(super._cookie, $value); 984 } 985 else { 986 $_ngcc_current_state = 11; 987 $runtime.sendText(super._cookie, $value); 988 } 989 } 990 break; 991 case 38: 992 { 993 NGCCHandler h = new erSet(this, super._source, $runtime, 55); 994 spawnChildFromText(h, $value); 995 } 996 break; 997 case 15: 998 { 999 NGCCHandler h = new qname(this, super._source, $runtime, 27); 1000 spawnChildFromText(h, $value); 1001 } 1002 break; 1003 case 26: 1004 { 1005 if($value.equals("unqualified")) { 1006 NGCCHandler h = new qualification(this, super._source, $runtime, 40); 1007 spawnChildFromText(h, $value); 1008 } 1009 else { 1010 if($value.equals("qualified")) { 1011 NGCCHandler h = new qualification(this, super._source, $runtime, 40); 1012 spawnChildFromText(h, $value); 1013 } 1014 } 1015 } 1016 break; 1017 case 36: 1018 { 1019 if(($ai = $runtime.getAttributeIndex("","final"))>=0) { 1020 $runtime.consumeAttribute($ai); 1021 $runtime.sendText(super._cookie, $value); 1022 } 1023 else { 1024 $_ngcc_current_state = 32; 1025 $runtime.sendText(super._cookie, $value); 1026 } 1027 } 1028 break; 1029 case 42: 1030 { 1031 NGCCHandler h = new ersSet(this, super._source, $runtime, 60); 1032 spawnChildFromText(h, $value); 1033 } 1034 break; 1035 } 1036 } 1037 1038 public void onChildCompleted(Object $__result__, int $__cookie__, boolean $__needAttCheck__)throws SAXException { 1039 switch($__cookie__) { 1040 case 24: 1041 { 1042 annotation = ((AnnotationImpl)$__result__); 1043 $_ngcc_current_state = 3; 1044 } 1045 break; 1046 case 27: 1047 { 1048 substRef = ((UName)$__result__); 1049 action2(); 1050 $_ngcc_current_state = 14; 1051 } 1052 break; 1053 case 10: 1054 { 1055 typeName = ((UName)$__result__); 1056 $_ngcc_current_state = 5; 1057 } 1058 break; 1059 case 60: 1060 { 1061 blockValue = ((Integer)$__result__); 1062 $_ngcc_current_state = 41; 1063 } 1064 break; 1065 case 69: 1066 { 1067 fa = ((ForeignAttributesImpl)$__result__); 1068 $_ngcc_current_state = 44; 1069 } 1070 break; 1071 case 19: 1072 { 1073 type = ((SimpleTypeImpl)$__result__); 1074 $_ngcc_current_state = 1; 1075 } 1076 break; 1077 case 20: 1078 { 1079 type = ((ComplexTypeImpl)$__result__); 1080 $_ngcc_current_state = 1; 1081 } 1082 break; 1083 case 40: 1084 { 1085 form = ((Boolean)$__result__).booleanValue(); 1086 action3(); 1087 $_ngcc_current_state = 25; 1088 } 1089 break; 1090 case 6: 1091 { 1092 idc = ((IdentityConstraintImpl)$__result__); 1093 action0(); 1094 $_ngcc_current_state = 0; 1095 } 1096 break; 1097 case 7: 1098 { 1099 idc = ((IdentityConstraintImpl)$__result__); 1100 action0(); 1101 $_ngcc_current_state = 0; 1102 } 1103 break; 1104 case 55: 1105 { 1106 finalValue = ((Integer)$__result__); 1107 $_ngcc_current_state = 37; 1108 } 1109 break; 1110 } 1111 } 1112 1113 public boolean accepted() { 1114 return((($_ngcc_current_state == 1) || (($_ngcc_current_state == 0) || (($_ngcc_current_state == 3) || (($_ngcc_current_state == 17) || (($_ngcc_current_state == 13) || ($_ngcc_current_state == 11))))))); 1115 } 1116 1117 1118 private boolean form; 1119 private boolean formSpecified; 1120 private Ref.Type type; 1121 private List idcs = new ArrayList(); // identity constraints 1122 1123 private DelayedRef.Element substHeadRef; 1124 1125 private ElementDecl makeResult() { 1126 if(finalValue==null) 1127 finalValue = new Integer($runtime.finalDefault); 1128 if(blockValue==null) 1129 blockValue = new Integer($runtime.blockDefault); 1130 1131 if(!formSpecified) 1132 form = $runtime.elementFormDefault; 1133 if(isGlobal) // global elements are always qualified 1134 form = true; 1135 1136 String tns; 1137 if(form) tns = $runtime.currentSchema.getTargetNamespace(); 1138 else tns = ""; 1139 1140 if( type==null ) { 1141 if( substHeadRef!=null ) 1142 type = new SubstGroupBaseTypeRef(substHeadRef); 1143 else 1144 type = $runtime.parser.schemaSet.anyType; 1145 } 1146 1147 ElementDecl ed = new ElementDecl( 1148 $runtime, 1149 $runtime.document, 1150 annotation, 1151 locator, 1152 fa, 1153 tns, 1154 name, 1155 !isGlobal, 1156 $runtime.createXmlString(defaultValue), 1157 $runtime.createXmlString(fixedValue), 1158 $runtime.parseBoolean(nillable), 1159 $runtime.parseBoolean(abstractValue), 1160 (java.lang.Boolean)(formSpecified ? form : null), 1161 type, 1162 substHeadRef, 1163 blockValue.intValue(), 1164 finalValue.intValue(), 1165 idcs); 1166 1167 // if this element has anonymous complex type, it will be set here. 1168 if(type instanceof ComplexTypeImpl) 1169 ((ComplexTypeImpl)type).setScope(ed); 1170 return ed; 1171 } 1172 1173 }