Mon, 02 Oct 2017 14:20:23 +0100
8159240: XSOM parser incorrectly processes type names with whitespaces
Reviewed-by: coffeys
1 /*
2 * Copyright (c) 1997, 2017, 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 */
26 /* this file is generated by RelaxNGCC */
27 package com.sun.xml.internal.xsom.impl.parser.state;
29 import com.sun.xml.internal.bind.WhiteSpaceProcessor;
30 import com.sun.xml.internal.xsom.*;
31 import com.sun.xml.internal.xsom.impl.*;
32 import com.sun.xml.internal.xsom.impl.parser.*;
33 import com.sun.xml.internal.xsom.parser.*;
35 import java.util.Collections;
36 import org.xml.sax.Attributes;
37 import org.xml.sax.Locator;
38 import org.xml.sax.SAXException;
40 class complexType extends NGCCHandler {
41 private Integer finalValue;
42 private String name;
43 private String abstractValue;
44 private Integer blockValue;
45 private XSFacet facet;
46 private ForeignAttributesImpl fa;
47 private AnnotationImpl annotation;
48 private ContentTypeImpl explicitContent;
49 private UName baseTypeName;
50 private String mixedValue;
51 protected final NGCCRuntimeEx $runtime;
52 private int $_ngcc_current_state;
53 protected String $uri;
54 protected String $localName;
55 protected String $qname;
57 public final NGCCRuntime getRuntime() {
58 return($runtime);
59 }
61 public complexType(NGCCHandler parent, NGCCEventSource source, NGCCRuntimeEx runtime, int cookie) {
62 super(source, parent, cookie);
63 $runtime = runtime;
64 $_ngcc_current_state = 88;
65 }
67 public complexType(NGCCRuntimeEx runtime) {
68 this(null, runtime, runtime, -1);
69 }
71 private void action0()throws SAXException {
73 result.setContentType(explicitContent);
75 }
77 private void action1()throws SAXException {
79 baseType = $runtime.parser.schemaSet.anyType;
80 makeResult(XSType.RESTRICTION);
82 }
84 private void action2()throws SAXException {
86 result.setExplicitContent(explicitContent);
87 result.setContentType(
88 buildComplexExtensionContentModel(explicitContent));
90 }
92 private void action3()throws SAXException {
94 baseType = new DelayedRef.Type(
95 $runtime, locator2, $runtime.currentSchema, baseTypeName );
96 makeResult(XSType.EXTENSION);
98 }
100 private void action4()throws SAXException {
101 locator2 = $runtime.copyLocator();
102 }
104 private void action5()throws SAXException {
106 result.setContentType(explicitContent);
108 }
110 private void action6()throws SAXException {
112 baseType = new DelayedRef.Type(
113 $runtime, locator2, $runtime.currentSchema, baseTypeName );
114 makeResult(XSType.RESTRICTION);
116 }
118 private void action7()throws SAXException {
119 locator2 = $runtime.copyLocator();
120 }
122 private void action8()throws SAXException {
124 contentType = new BaseContentRef($runtime,baseType);
125 makeResult(XSType.EXTENSION);
126 result.setContentType(contentType);
128 }
130 private void action9()throws SAXException {
132 baseType = new DelayedRef.Type(
133 $runtime, locator2, $runtime.currentSchema, baseTypeName );
135 }
137 private void action10()throws SAXException {
138 locator2 = $runtime.copyLocator();
139 }
141 private void action11()throws SAXException {
143 makeResult(XSType.RESTRICTION);
144 result.setContentType(contentType);
146 }
148 private void action12()throws SAXException {
149 contentSimpleType.addFacet(facet);
150 }
152 private void action13()throws SAXException {
154 if(baseContentType==null) {
155 // contentType of the base type, which must be a complex type
156 baseContentType = new BaseContentSimpleTypeRef(baseType);
157 }
159 contentSimpleType = new RestrictionSimpleTypeImpl(
160 $runtime.document, null/*?*/, locator2, null,
161 null, true, Collections.EMPTY_SET, baseContentType );
162 contentType = contentSimpleType;
164 }
166 private void action14()throws SAXException {
168 baseType = new DelayedRef.Type(
169 $runtime, locator2, $runtime.currentSchema, baseTypeName );
171 }
173 private void action15()throws SAXException {
174 locator2 = $runtime.copyLocator();
175 }
177 private void action16()throws SAXException {
178 locator = $runtime.copyLocator();
179 }
181 public void enterElement(String $__uri, String $__local, String $__qname, Attributes $attrs) throws SAXException {
182 int $ai;
183 $uri = $__uri;
184 $localName = $__local;
185 $qname = $__qname;
186 switch($_ngcc_current_state) {
187 case 54:
188 {
189 if(($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("annotation"))) {
190 NGCCHandler h = new annotation(this, super._source, $runtime, 617, annotation,AnnotationContext.COMPLEXTYPE_DECL);
191 spawnChildFromEnterElement(h, $__uri, $__local, $__qname, $attrs);
192 }
193 else {
194 $_ngcc_current_state = 52;
195 $runtime.sendEnterElement(super._cookie, $__uri, $__local, $__qname, $attrs);
196 }
197 }
198 break;
199 case 76:
200 {
201 if(($ai = $runtime.getAttributeIndex("","final"))>=0) {
202 $runtime.consumeAttribute($ai);
203 $runtime.sendEnterElement(super._cookie, $__uri, $__local, $__qname, $attrs);
204 }
205 else {
206 $_ngcc_current_state = 72;
207 $runtime.sendEnterElement(super._cookie, $__uri, $__local, $__qname, $attrs);
208 }
209 }
210 break;
211 case 49:
212 {
213 if((((((((((((($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("minExclusive")) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("maxExclusive"))) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("minInclusive"))) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("maxInclusive"))) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("totalDigits"))) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("fractionDigits"))) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("length"))) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("maxLength"))) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("minLength"))) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("enumeration"))) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("whiteSpace"))) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("pattern")))) {
214 NGCCHandler h = new facet(this, super._source, $runtime, 610);
215 spawnChildFromEnterElement(h, $__uri, $__local, $__qname, $attrs);
216 }
217 else {
218 $_ngcc_current_state = 48;
219 $runtime.sendEnterElement(super._cookie, $__uri, $__local, $__qname, $attrs);
220 }
221 }
222 break;
223 case 7:
224 {
225 if(($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("restriction"))) {
226 $runtime.onEnterElementConsumed($__uri, $__local, $__qname, $attrs);
227 action7();
228 $_ngcc_current_state = 24;
229 }
230 else {
231 if(($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("extension"))) {
232 $runtime.onEnterElementConsumed($__uri, $__local, $__qname, $attrs);
233 action4();
234 $_ngcc_current_state = 15;
235 }
236 else {
237 unexpectedEnterElement($__qname);
238 }
239 }
240 }
241 break;
242 case 61:
243 {
244 if(($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("annotation"))) {
245 NGCCHandler h = new annotation(this, super._source, $runtime, 626, annotation,AnnotationContext.COMPLEXTYPE_DECL);
246 spawnChildFromEnterElement(h, $__uri, $__local, $__qname, $attrs);
247 }
248 else {
249 $_ngcc_current_state = 35;
250 $runtime.sendEnterElement(super._cookie, $__uri, $__local, $__qname, $attrs);
251 }
252 }
253 break;
254 case 18:
255 {
256 if((($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("attributeGroup")) || (($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("group")) || (($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("anyAttribute")) || (($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("element")) || (($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("any")) || (((($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("all")) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("choice"))) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("sequence"))) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("attribute"))))))))) {
257 NGCCHandler h = new complexType_complexContent_body(this, super._source, $runtime, 571, result);
258 spawnChildFromEnterElement(h, $__uri, $__local, $__qname, $attrs);
259 }
260 else {
261 unexpectedEnterElement($__qname);
262 }
263 }
264 break;
265 case 12:
266 {
267 if((($__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("group")) || (($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("anyAttribute")) || (($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("element")) || (($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("any")) || (((($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("all")) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("choice"))) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("sequence"))) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("attribute")))))))))) {
268 NGCCHandler h = new foreignAttributes(this, super._source, $runtime, 564, fa);
269 spawnChildFromEnterElement(h, $__uri, $__local, $__qname, $attrs);
270 }
271 else {
272 unexpectedEnterElement($__qname);
273 }
274 }
275 break;
276 case 26:
277 {
278 if(($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("annotation"))) {
279 NGCCHandler h = new annotation(this, super._source, $runtime, 582, annotation,AnnotationContext.COMPLEXTYPE_DECL);
280 spawnChildFromEnterElement(h, $__uri, $__local, $__qname, $attrs);
281 }
282 else {
283 $_ngcc_current_state = 7;
284 $runtime.sendEnterElement(super._cookie, $__uri, $__local, $__qname, $attrs);
285 }
286 }
287 break;
288 case 38:
289 {
290 action8();
291 $_ngcc_current_state = 37;
292 $runtime.sendEnterElement(super._cookie, $__uri, $__local, $__qname, $attrs);
293 }
294 break;
295 case 44:
296 {
297 if(($ai = $runtime.getAttributeIndex("","base"))>=0) {
298 $runtime.consumeAttribute($ai);
299 $runtime.sendEnterElement(super._cookie, $__uri, $__local, $__qname, $attrs);
300 }
301 else {
302 unexpectedEnterElement($__qname);
303 }
304 }
305 break;
306 case 68:
307 {
308 if(($ai = $runtime.getAttributeIndex("","name"))>=0) {
309 $runtime.consumeAttribute($ai);
310 $runtime.sendEnterElement(super._cookie, $__uri, $__local, $__qname, $attrs);
311 }
312 else {
313 $_ngcc_current_state = 67;
314 $runtime.sendEnterElement(super._cookie, $__uri, $__local, $__qname, $attrs);
315 }
316 }
317 break;
318 case 35:
319 {
320 if(($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("restriction"))) {
321 $runtime.onEnterElementConsumed($__uri, $__local, $__qname, $attrs);
322 action15();
323 $_ngcc_current_state = 59;
324 }
325 else {
326 if(($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("extension"))) {
327 $runtime.onEnterElementConsumed($__uri, $__local, $__qname, $attrs);
328 action10();
329 $_ngcc_current_state = 44;
330 }
331 else {
332 unexpectedEnterElement($__qname);
333 }
334 }
335 }
336 break;
337 case 80:
338 {
339 if(($ai = $runtime.getAttributeIndex("","block"))>=0) {
340 $runtime.consumeAttribute($ai);
341 $runtime.sendEnterElement(super._cookie, $__uri, $__local, $__qname, $attrs);
342 }
343 else {
344 $_ngcc_current_state = 76;
345 $runtime.sendEnterElement(super._cookie, $__uri, $__local, $__qname, $attrs);
346 }
347 }
348 break;
349 case 63:
350 {
351 if((($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("annotation")) || (($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("restriction")) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("extension"))))) {
352 NGCCHandler h = new foreignAttributes(this, super._source, $runtime, 628, fa);
353 spawnChildFromEnterElement(h, $__uri, $__local, $__qname, $attrs);
354 }
355 else {
356 unexpectedEnterElement($__qname);
357 }
358 }
359 break;
360 case 88:
361 {
362 if(($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("complexType"))) {
363 $runtime.onEnterElementConsumed($__uri, $__local, $__qname, $attrs);
364 action16();
365 $_ngcc_current_state = 84;
366 }
367 else {
368 unexpectedEnterElement($__qname);
369 }
370 }
371 break;
372 case 84:
373 {
374 if(($ai = $runtime.getAttributeIndex("","abstract"))>=0) {
375 $runtime.consumeAttribute($ai);
376 $runtime.sendEnterElement(super._cookie, $__uri, $__local, $__qname, $attrs);
377 }
378 else {
379 $_ngcc_current_state = 80;
380 $runtime.sendEnterElement(super._cookie, $__uri, $__local, $__qname, $attrs);
381 }
382 }
383 break;
384 case 37:
385 {
386 if((($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("attributeGroup")) || (($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("anyAttribute")) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("attribute"))))) {
387 NGCCHandler h = new attributeUses(this, super._source, $runtime, 594, result);
388 spawnChildFromEnterElement(h, $__uri, $__local, $__qname, $attrs);
389 }
390 else {
391 unexpectedEnterElement($__qname);
392 }
393 }
394 break;
395 case 9:
396 {
397 if((($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("attributeGroup")) || (($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("group")) || (($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("anyAttribute")) || (($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("element")) || (($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("any")) || (((($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("all")) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("choice"))) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("sequence"))) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("attribute"))))))))) {
398 NGCCHandler h = new complexType_complexContent_body(this, super._source, $runtime, 560, result);
399 spawnChildFromEnterElement(h, $__uri, $__local, $__qname, $attrs);
400 }
401 else {
402 unexpectedEnterElement($__qname);
403 }
404 }
405 break;
406 case 19:
407 {
408 if(($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("annotation"))) {
409 NGCCHandler h = new annotation(this, super._source, $runtime, 573, annotation,AnnotationContext.COMPLEXTYPE_DECL);
410 spawnChildFromEnterElement(h, $__uri, $__local, $__qname, $attrs);
411 }
412 else {
413 $_ngcc_current_state = 18;
414 $runtime.sendEnterElement(super._cookie, $__uri, $__local, $__qname, $attrs);
415 }
416 }
417 break;
418 case 15:
419 {
420 if(($ai = $runtime.getAttributeIndex("","base"))>=0) {
421 $runtime.consumeAttribute($ai);
422 $runtime.sendEnterElement(super._cookie, $__uri, $__local, $__qname, $attrs);
423 }
424 else {
425 unexpectedEnterElement($__qname);
426 }
427 }
428 break;
429 case 48:
430 {
431 if((((((((((((($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("minExclusive")) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("maxExclusive"))) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("minInclusive"))) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("maxInclusive"))) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("totalDigits"))) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("fractionDigits"))) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("length"))) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("maxLength"))) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("minLength"))) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("enumeration"))) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("whiteSpace"))) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("pattern")))) {
432 NGCCHandler h = new facet(this, super._source, $runtime, 609);
433 spawnChildFromEnterElement(h, $__uri, $__local, $__qname, $attrs);
434 }
435 else {
436 action11();
437 $_ngcc_current_state = 47;
438 $runtime.sendEnterElement(super._cookie, $__uri, $__local, $__qname, $attrs);
439 }
440 }
441 break;
442 case 47:
443 {
444 if((($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("attributeGroup")) || (($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("anyAttribute")) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("attribute"))))) {
445 NGCCHandler h = new attributeUses(this, super._source, $runtime, 606, result);
446 spawnChildFromEnterElement(h, $__uri, $__local, $__qname, $attrs);
447 }
448 else {
449 unexpectedEnterElement($__qname);
450 }
451 }
452 break;
453 case 24:
454 {
455 if(($ai = $runtime.getAttributeIndex("","base"))>=0) {
456 $runtime.consumeAttribute($ai);
457 $runtime.sendEnterElement(super._cookie, $__uri, $__local, $__qname, $attrs);
458 }
459 else {
460 unexpectedEnterElement($__qname);
461 }
462 }
463 break;
464 case 28:
465 {
466 if((($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("annotation")) || (($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("extension")) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("restriction"))))) {
467 NGCCHandler h = new foreignAttributes(this, super._source, $runtime, 584, fa);
468 spawnChildFromEnterElement(h, $__uri, $__local, $__qname, $attrs);
469 }
470 else {
471 unexpectedEnterElement($__qname);
472 }
473 }
474 break;
475 case 29:
476 {
477 if(($ai = $runtime.getAttributeIndex("","mixed"))>=0) {
478 $runtime.consumeAttribute($ai);
479 $runtime.sendEnterElement(super._cookie, $__uri, $__local, $__qname, $attrs);
480 }
481 else {
482 $_ngcc_current_state = 28;
483 $runtime.sendEnterElement(super._cookie, $__uri, $__local, $__qname, $attrs);
484 }
485 }
486 break;
487 case 67:
488 {
489 if((($__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("simpleContent")) || (($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("group")) || (($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("complexContent")) || (($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("anyAttribute")) || (($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("element")) || (($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("any")) || (((($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("all")) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("choice"))) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("sequence"))) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("attribute")))))))))))) {
490 NGCCHandler h = new foreignAttributes(this, super._source, $runtime, 636, fa);
491 spawnChildFromEnterElement(h, $__uri, $__local, $__qname, $attrs);
492 }
493 else {
494 unexpectedEnterElement($__qname);
495 }
496 }
497 break;
498 case 10:
499 {
500 if(($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("annotation"))) {
501 NGCCHandler h = new annotation(this, super._source, $runtime, 562, annotation,AnnotationContext.COMPLEXTYPE_DECL);
502 spawnChildFromEnterElement(h, $__uri, $__local, $__qname, $attrs);
503 }
504 else {
505 $_ngcc_current_state = 9;
506 $runtime.sendEnterElement(super._cookie, $__uri, $__local, $__qname, $attrs);
507 }
508 }
509 break;
510 case 41:
511 {
512 if((($__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("anyAttribute")) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("attribute")))))) {
513 NGCCHandler h = new foreignAttributes(this, super._source, $runtime, 599, fa);
514 spawnChildFromEnterElement(h, $__uri, $__local, $__qname, $attrs);
515 }
516 else {
517 unexpectedEnterElement($__qname);
518 }
519 }
520 break;
521 case 2:
522 {
523 if(($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("simpleContent"))) {
524 $runtime.onEnterElementConsumed($__uri, $__local, $__qname, $attrs);
525 $_ngcc_current_state = 63;
526 }
527 else {
528 if(($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("complexContent"))) {
529 $runtime.onEnterElementConsumed($__uri, $__local, $__qname, $attrs);
530 $_ngcc_current_state = 29;
531 }
532 else {
533 if((($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("attributeGroup")) || (($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("group")) || (($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("anyAttribute")) || (($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("element")) || (($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("any")) || (((($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("all")) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("choice"))) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("sequence"))) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("attribute"))))))))) {
534 action1();
535 NGCCHandler h = new complexType_complexContent_body(this, super._source, $runtime, 557, result);
536 spawnChildFromEnterElement(h, $__uri, $__local, $__qname, $attrs);
537 }
538 else {
539 unexpectedEnterElement($__qname);
540 }
541 }
542 }
543 }
544 break;
545 case 21:
546 {
547 if((($__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("group")) || (($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("anyAttribute")) || (($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("element")) || (($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("any")) || (((($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("all")) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("choice"))) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("sequence"))) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("attribute")))))))))) {
548 NGCCHandler h = new foreignAttributes(this, super._source, $runtime, 575, fa);
549 spawnChildFromEnterElement(h, $__uri, $__local, $__qname, $attrs);
550 }
551 else {
552 unexpectedEnterElement($__qname);
553 }
554 }
555 break;
556 case 72:
557 {
558 if(($ai = $runtime.getAttributeIndex("","mixed"))>=0) {
559 $runtime.consumeAttribute($ai);
560 $runtime.sendEnterElement(super._cookie, $__uri, $__local, $__qname, $attrs);
561 }
562 else {
563 $_ngcc_current_state = 68;
564 $runtime.sendEnterElement(super._cookie, $__uri, $__local, $__qname, $attrs);
565 }
566 }
567 break;
568 case 56:
569 {
570 if((($__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("minExclusive")) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("maxExclusive"))) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("minInclusive"))) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("maxInclusive"))) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("totalDigits"))) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("fractionDigits"))) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("length"))) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("maxLength"))) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("minLength"))) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("enumeration"))) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("whiteSpace"))) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("pattern"))) || (($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("anyAttribute")) || (($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("simpleType")) || ($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("attribute")))))))) {
571 NGCCHandler h = new foreignAttributes(this, super._source, $runtime, 619, fa);
572 spawnChildFromEnterElement(h, $__uri, $__local, $__qname, $attrs);
573 }
574 else {
575 unexpectedEnterElement($__qname);
576 }
577 }
578 break;
579 case 39:
580 {
581 if(($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("annotation"))) {
582 NGCCHandler h = new annotation(this, super._source, $runtime, 597, annotation,AnnotationContext.COMPLEXTYPE_DECL);
583 spawnChildFromEnterElement(h, $__uri, $__local, $__qname, $attrs);
584 }
585 else {
586 $_ngcc_current_state = 38;
587 $runtime.sendEnterElement(super._cookie, $__uri, $__local, $__qname, $attrs);
588 }
589 }
590 break;
591 case 59:
592 {
593 if(($ai = $runtime.getAttributeIndex("","base"))>=0) {
594 $runtime.consumeAttribute($ai);
595 $runtime.sendEnterElement(super._cookie, $__uri, $__local, $__qname, $attrs);
596 }
597 else {
598 unexpectedEnterElement($__qname);
599 }
600 }
601 break;
602 case 52:
603 {
604 if(($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("simpleType"))) {
605 NGCCHandler h = new simpleType(this, super._source, $runtime, 614);
606 spawnChildFromEnterElement(h, $__uri, $__local, $__qname, $attrs);
607 }
608 else {
609 $_ngcc_current_state = 51;
610 $runtime.sendEnterElement(super._cookie, $__uri, $__local, $__qname, $attrs);
611 }
612 }
613 break;
614 case 0:
615 {
616 revertToParentFromEnterElement(result, super._cookie, $__uri, $__local, $__qname, $attrs);
617 }
618 break;
619 case 51:
620 {
621 action13();
622 $_ngcc_current_state = 49;
623 $runtime.sendEnterElement(super._cookie, $__uri, $__local, $__qname, $attrs);
624 }
625 break;
626 case 65:
627 {
628 if(($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("annotation"))) {
629 NGCCHandler h = new annotation(this, super._source, $runtime, 634, null,AnnotationContext.COMPLEXTYPE_DECL);
630 spawnChildFromEnterElement(h, $__uri, $__local, $__qname, $attrs);
631 }
632 else {
633 $_ngcc_current_state = 2;
634 $runtime.sendEnterElement(super._cookie, $__uri, $__local, $__qname, $attrs);
635 }
636 }
637 break;
638 default:
639 {
640 unexpectedEnterElement($__qname);
641 }
642 break;
643 }
644 }
646 public void leaveElement(String $__uri, String $__local, String $__qname) throws SAXException {
647 int $ai;
648 $uri = $__uri;
649 $localName = $__local;
650 $qname = $__qname;
651 switch($_ngcc_current_state) {
652 case 54:
653 {
654 $_ngcc_current_state = 52;
655 $runtime.sendLeaveElement(super._cookie, $__uri, $__local, $__qname);
656 }
657 break;
658 case 76:
659 {
660 if(($ai = $runtime.getAttributeIndex("","final"))>=0) {
661 $runtime.consumeAttribute($ai);
662 $runtime.sendLeaveElement(super._cookie, $__uri, $__local, $__qname);
663 }
664 else {
665 $_ngcc_current_state = 72;
666 $runtime.sendLeaveElement(super._cookie, $__uri, $__local, $__qname);
667 }
668 }
669 break;
670 case 49:
671 {
672 $_ngcc_current_state = 48;
673 $runtime.sendLeaveElement(super._cookie, $__uri, $__local, $__qname);
674 }
675 break;
676 case 6:
677 {
678 if(($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("complexContent"))) {
679 $runtime.onLeaveElementConsumed($__uri, $__local, $__qname);
680 $_ngcc_current_state = 1;
681 }
682 else {
683 unexpectedLeaveElement($__qname);
684 }
685 }
686 break;
687 case 61:
688 {
689 $_ngcc_current_state = 35;
690 $runtime.sendLeaveElement(super._cookie, $__uri, $__local, $__qname);
691 }
692 break;
693 case 46:
694 {
695 if(($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("restriction"))) {
696 $runtime.onLeaveElementConsumed($__uri, $__local, $__qname);
697 $_ngcc_current_state = 34;
698 }
699 else {
700 unexpectedLeaveElement($__qname);
701 }
702 }
703 break;
704 case 36:
705 {
706 if(($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("extension"))) {
707 $runtime.onLeaveElementConsumed($__uri, $__local, $__qname);
708 $_ngcc_current_state = 34;
709 }
710 else {
711 unexpectedLeaveElement($__qname);
712 }
713 }
714 break;
715 case 18:
716 {
717 if(($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("restriction"))) {
718 NGCCHandler h = new complexType_complexContent_body(this, super._source, $runtime, 571, result);
719 spawnChildFromLeaveElement(h, $__uri, $__local, $__qname);
720 }
721 else {
722 unexpectedLeaveElement($__qname);
723 }
724 }
725 break;
726 case 12:
727 {
728 if(($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("extension"))) {
729 NGCCHandler h = new foreignAttributes(this, super._source, $runtime, 564, fa);
730 spawnChildFromLeaveElement(h, $__uri, $__local, $__qname);
731 }
732 else {
733 unexpectedLeaveElement($__qname);
734 }
735 }
736 break;
737 case 26:
738 {
739 $_ngcc_current_state = 7;
740 $runtime.sendLeaveElement(super._cookie, $__uri, $__local, $__qname);
741 }
742 break;
743 case 34:
744 {
745 if(($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("simpleContent"))) {
746 $runtime.onLeaveElementConsumed($__uri, $__local, $__qname);
747 $_ngcc_current_state = 1;
748 }
749 else {
750 unexpectedLeaveElement($__qname);
751 }
752 }
753 break;
754 case 38:
755 {
756 action8();
757 $_ngcc_current_state = 37;
758 $runtime.sendLeaveElement(super._cookie, $__uri, $__local, $__qname);
759 }
760 break;
761 case 44:
762 {
763 if(($ai = $runtime.getAttributeIndex("","base"))>=0) {
764 $runtime.consumeAttribute($ai);
765 $runtime.sendLeaveElement(super._cookie, $__uri, $__local, $__qname);
766 }
767 else {
768 unexpectedLeaveElement($__qname);
769 }
770 }
771 break;
772 case 68:
773 {
774 if(($ai = $runtime.getAttributeIndex("","name"))>=0) {
775 $runtime.consumeAttribute($ai);
776 $runtime.sendLeaveElement(super._cookie, $__uri, $__local, $__qname);
777 }
778 else {
779 $_ngcc_current_state = 67;
780 $runtime.sendLeaveElement(super._cookie, $__uri, $__local, $__qname);
781 }
782 }
783 break;
784 case 1:
785 {
786 if(($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("complexType"))) {
787 $runtime.onLeaveElementConsumed($__uri, $__local, $__qname);
788 $_ngcc_current_state = 0;
789 }
790 else {
791 unexpectedLeaveElement($__qname);
792 }
793 }
794 break;
795 case 80:
796 {
797 if(($ai = $runtime.getAttributeIndex("","block"))>=0) {
798 $runtime.consumeAttribute($ai);
799 $runtime.sendLeaveElement(super._cookie, $__uri, $__local, $__qname);
800 }
801 else {
802 $_ngcc_current_state = 76;
803 $runtime.sendLeaveElement(super._cookie, $__uri, $__local, $__qname);
804 }
805 }
806 break;
807 case 37:
808 {
809 if(($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("extension"))) {
810 NGCCHandler h = new attributeUses(this, super._source, $runtime, 594, result);
811 spawnChildFromLeaveElement(h, $__uri, $__local, $__qname);
812 }
813 else {
814 unexpectedLeaveElement($__qname);
815 }
816 }
817 break;
818 case 84:
819 {
820 if(($ai = $runtime.getAttributeIndex("","abstract"))>=0) {
821 $runtime.consumeAttribute($ai);
822 $runtime.sendLeaveElement(super._cookie, $__uri, $__local, $__qname);
823 }
824 else {
825 $_ngcc_current_state = 80;
826 $runtime.sendLeaveElement(super._cookie, $__uri, $__local, $__qname);
827 }
828 }
829 break;
830 case 9:
831 {
832 if(($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("extension"))) {
833 NGCCHandler h = new complexType_complexContent_body(this, super._source, $runtime, 560, result);
834 spawnChildFromLeaveElement(h, $__uri, $__local, $__qname);
835 }
836 else {
837 unexpectedLeaveElement($__qname);
838 }
839 }
840 break;
841 case 19:
842 {
843 $_ngcc_current_state = 18;
844 $runtime.sendLeaveElement(super._cookie, $__uri, $__local, $__qname);
845 }
846 break;
847 case 15:
848 {
849 if(($ai = $runtime.getAttributeIndex("","base"))>=0) {
850 $runtime.consumeAttribute($ai);
851 $runtime.sendLeaveElement(super._cookie, $__uri, $__local, $__qname);
852 }
853 else {
854 unexpectedLeaveElement($__qname);
855 }
856 }
857 break;
858 case 48:
859 {
860 action11();
861 $_ngcc_current_state = 47;
862 $runtime.sendLeaveElement(super._cookie, $__uri, $__local, $__qname);
863 }
864 break;
865 case 47:
866 {
867 if(($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("restriction"))) {
868 NGCCHandler h = new attributeUses(this, super._source, $runtime, 606, result);
869 spawnChildFromLeaveElement(h, $__uri, $__local, $__qname);
870 }
871 else {
872 unexpectedLeaveElement($__qname);
873 }
874 }
875 break;
876 case 8:
877 {
878 if(($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("extension"))) {
879 $runtime.onLeaveElementConsumed($__uri, $__local, $__qname);
880 $_ngcc_current_state = 6;
881 }
882 else {
883 unexpectedLeaveElement($__qname);
884 }
885 }
886 break;
887 case 24:
888 {
889 if(($ai = $runtime.getAttributeIndex("","base"))>=0) {
890 $runtime.consumeAttribute($ai);
891 $runtime.sendLeaveElement(super._cookie, $__uri, $__local, $__qname);
892 }
893 else {
894 unexpectedLeaveElement($__qname);
895 }
896 }
897 break;
898 case 29:
899 {
900 if(($ai = $runtime.getAttributeIndex("","mixed"))>=0) {
901 $runtime.consumeAttribute($ai);
902 $runtime.sendLeaveElement(super._cookie, $__uri, $__local, $__qname);
903 }
904 else {
905 $_ngcc_current_state = 28;
906 $runtime.sendLeaveElement(super._cookie, $__uri, $__local, $__qname);
907 }
908 }
909 break;
910 case 67:
911 {
912 if(($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("complexType"))) {
913 NGCCHandler h = new foreignAttributes(this, super._source, $runtime, 636, fa);
914 spawnChildFromLeaveElement(h, $__uri, $__local, $__qname);
915 }
916 else {
917 unexpectedLeaveElement($__qname);
918 }
919 }
920 break;
921 case 10:
922 {
923 $_ngcc_current_state = 9;
924 $runtime.sendLeaveElement(super._cookie, $__uri, $__local, $__qname);
925 }
926 break;
927 case 41:
928 {
929 if(($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("extension"))) {
930 NGCCHandler h = new foreignAttributes(this, super._source, $runtime, 599, fa);
931 spawnChildFromLeaveElement(h, $__uri, $__local, $__qname);
932 }
933 else {
934 unexpectedLeaveElement($__qname);
935 }
936 }
937 break;
938 case 2:
939 {
940 if(($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("complexType"))) {
941 action1();
942 NGCCHandler h = new complexType_complexContent_body(this, super._source, $runtime, 557, result);
943 spawnChildFromLeaveElement(h, $__uri, $__local, $__qname);
944 }
945 else {
946 unexpectedLeaveElement($__qname);
947 }
948 }
949 break;
950 case 21:
951 {
952 if(($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("restriction"))) {
953 NGCCHandler h = new foreignAttributes(this, super._source, $runtime, 575, fa);
954 spawnChildFromLeaveElement(h, $__uri, $__local, $__qname);
955 }
956 else {
957 unexpectedLeaveElement($__qname);
958 }
959 }
960 break;
961 case 72:
962 {
963 if(($ai = $runtime.getAttributeIndex("","mixed"))>=0) {
964 $runtime.consumeAttribute($ai);
965 $runtime.sendLeaveElement(super._cookie, $__uri, $__local, $__qname);
966 }
967 else {
968 $_ngcc_current_state = 68;
969 $runtime.sendLeaveElement(super._cookie, $__uri, $__local, $__qname);
970 }
971 }
972 break;
973 case 56:
974 {
975 if(($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("restriction"))) {
976 NGCCHandler h = new foreignAttributes(this, super._source, $runtime, 619, fa);
977 spawnChildFromLeaveElement(h, $__uri, $__local, $__qname);
978 }
979 else {
980 unexpectedLeaveElement($__qname);
981 }
982 }
983 break;
984 case 39:
985 {
986 $_ngcc_current_state = 38;
987 $runtime.sendLeaveElement(super._cookie, $__uri, $__local, $__qname);
988 }
989 break;
990 case 59:
991 {
992 if(($ai = $runtime.getAttributeIndex("","base"))>=0) {
993 $runtime.consumeAttribute($ai);
994 $runtime.sendLeaveElement(super._cookie, $__uri, $__local, $__qname);
995 }
996 else {
997 unexpectedLeaveElement($__qname);
998 }
999 }
1000 break;
1001 case 52:
1002 {
1003 $_ngcc_current_state = 51;
1004 $runtime.sendLeaveElement(super._cookie, $__uri, $__local, $__qname);
1005 }
1006 break;
1007 case 17:
1008 {
1009 if(($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("restriction"))) {
1010 $runtime.onLeaveElementConsumed($__uri, $__local, $__qname);
1011 $_ngcc_current_state = 6;
1012 }
1013 else {
1014 unexpectedLeaveElement($__qname);
1015 }
1016 }
1017 break;
1018 case 0:
1019 {
1020 revertToParentFromLeaveElement(result, super._cookie, $__uri, $__local, $__qname);
1021 }
1022 break;
1023 case 51:
1024 {
1025 action13();
1026 $_ngcc_current_state = 49;
1027 $runtime.sendLeaveElement(super._cookie, $__uri, $__local, $__qname);
1028 }
1029 break;
1030 case 65:
1031 {
1032 $_ngcc_current_state = 2;
1033 $runtime.sendLeaveElement(super._cookie, $__uri, $__local, $__qname);
1034 }
1035 break;
1036 default:
1037 {
1038 unexpectedLeaveElement($__qname);
1039 }
1040 break;
1041 }
1042 }
1044 public void enterAttribute(String $__uri, String $__local, String $__qname) throws SAXException {
1045 int $ai;
1046 $uri = $__uri;
1047 $localName = $__local;
1048 $qname = $__qname;
1049 switch($_ngcc_current_state) {
1050 case 29:
1051 {
1052 if(($__uri.equals("") && $__local.equals("mixed"))) {
1053 $_ngcc_current_state = 31;
1054 }
1055 else {
1056 $_ngcc_current_state = 28;
1057 $runtime.sendEnterAttribute(super._cookie, $__uri, $__local, $__qname);
1058 }
1059 }
1060 break;
1061 case 54:
1062 {
1063 $_ngcc_current_state = 52;
1064 $runtime.sendEnterAttribute(super._cookie, $__uri, $__local, $__qname);
1065 }
1066 break;
1067 case 10:
1068 {
1069 $_ngcc_current_state = 9;
1070 $runtime.sendEnterAttribute(super._cookie, $__uri, $__local, $__qname);
1071 }
1072 break;
1073 case 76:
1074 {
1075 if(($__uri.equals("") && $__local.equals("final"))) {
1076 $_ngcc_current_state = 78;
1077 }
1078 else {
1079 $_ngcc_current_state = 72;
1080 $runtime.sendEnterAttribute(super._cookie, $__uri, $__local, $__qname);
1081 }
1082 }
1083 break;
1084 case 49:
1085 {
1086 $_ngcc_current_state = 48;
1087 $runtime.sendEnterAttribute(super._cookie, $__uri, $__local, $__qname);
1088 }
1089 break;
1090 case 61:
1091 {
1092 $_ngcc_current_state = 35;
1093 $runtime.sendEnterAttribute(super._cookie, $__uri, $__local, $__qname);
1094 }
1095 break;
1096 case 72:
1097 {
1098 if(($__uri.equals("") && $__local.equals("mixed"))) {
1099 $_ngcc_current_state = 74;
1100 }
1101 else {
1102 $_ngcc_current_state = 68;
1103 $runtime.sendEnterAttribute(super._cookie, $__uri, $__local, $__qname);
1104 }
1105 }
1106 break;
1107 case 39:
1108 {
1109 $_ngcc_current_state = 38;
1110 $runtime.sendEnterAttribute(super._cookie, $__uri, $__local, $__qname);
1111 }
1112 break;
1113 case 59:
1114 {
1115 if(($__uri.equals("") && $__local.equals("base"))) {
1116 $_ngcc_current_state = 58;
1117 }
1118 else {
1119 unexpectedEnterAttribute($__qname);
1120 }
1121 }
1122 break;
1123 case 26:
1124 {
1125 $_ngcc_current_state = 7;
1126 $runtime.sendEnterAttribute(super._cookie, $__uri, $__local, $__qname);
1127 }
1128 break;
1129 case 38:
1130 {
1131 action8();
1132 $_ngcc_current_state = 37;
1133 $runtime.sendEnterAttribute(super._cookie, $__uri, $__local, $__qname);
1134 }
1135 break;
1136 case 44:
1137 {
1138 if(($__uri.equals("") && $__local.equals("base"))) {
1139 $_ngcc_current_state = 43;
1140 }
1141 else {
1142 unexpectedEnterAttribute($__qname);
1143 }
1144 }
1145 break;
1146 case 68:
1147 {
1148 if(($__uri.equals("") && $__local.equals("name"))) {
1149 $_ngcc_current_state = 70;
1150 }
1151 else {
1152 $_ngcc_current_state = 67;
1153 $runtime.sendEnterAttribute(super._cookie, $__uri, $__local, $__qname);
1154 }
1155 }
1156 break;
1157 case 52:
1158 {
1159 $_ngcc_current_state = 51;
1160 $runtime.sendEnterAttribute(super._cookie, $__uri, $__local, $__qname);
1161 }
1162 break;
1163 case 0:
1164 {
1165 revertToParentFromEnterAttribute(result, super._cookie, $__uri, $__local, $__qname);
1166 }
1167 break;
1168 case 51:
1169 {
1170 action13();
1171 $_ngcc_current_state = 49;
1172 $runtime.sendEnterAttribute(super._cookie, $__uri, $__local, $__qname);
1173 }
1174 break;
1175 case 80:
1176 {
1177 if(($__uri.equals("") && $__local.equals("block"))) {
1178 $_ngcc_current_state = 82;
1179 }
1180 else {
1181 $_ngcc_current_state = 76;
1182 $runtime.sendEnterAttribute(super._cookie, $__uri, $__local, $__qname);
1183 }
1184 }
1185 break;
1186 case 84:
1187 {
1188 if(($__uri.equals("") && $__local.equals("abstract"))) {
1189 $_ngcc_current_state = 86;
1190 }
1191 else {
1192 $_ngcc_current_state = 80;
1193 $runtime.sendEnterAttribute(super._cookie, $__uri, $__local, $__qname);
1194 }
1195 }
1196 break;
1197 case 19:
1198 {
1199 $_ngcc_current_state = 18;
1200 $runtime.sendEnterAttribute(super._cookie, $__uri, $__local, $__qname);
1201 }
1202 break;
1203 case 15:
1204 {
1205 if(($__uri.equals("") && $__local.equals("base"))) {
1206 $_ngcc_current_state = 14;
1207 }
1208 else {
1209 unexpectedEnterAttribute($__qname);
1210 }
1211 }
1212 break;
1213 case 65:
1214 {
1215 $_ngcc_current_state = 2;
1216 $runtime.sendEnterAttribute(super._cookie, $__uri, $__local, $__qname);
1217 }
1218 break;
1219 case 48:
1220 {
1221 action11();
1222 $_ngcc_current_state = 47;
1223 $runtime.sendEnterAttribute(super._cookie, $__uri, $__local, $__qname);
1224 }
1225 break;
1226 case 24:
1227 {
1228 if(($__uri.equals("") && $__local.equals("base"))) {
1229 $_ngcc_current_state = 23;
1230 }
1231 else {
1232 unexpectedEnterAttribute($__qname);
1233 }
1234 }
1235 break;
1236 default:
1237 {
1238 unexpectedEnterAttribute($__qname);
1239 }
1240 break;
1241 }
1242 }
1244 public void leaveAttribute(String $__uri, String $__local, String $__qname) throws SAXException {
1245 int $ai;
1246 $uri = $__uri;
1247 $localName = $__local;
1248 $qname = $__qname;
1249 switch($_ngcc_current_state) {
1250 case 54:
1251 {
1252 $_ngcc_current_state = 52;
1253 $runtime.sendLeaveAttribute(super._cookie, $__uri, $__local, $__qname);
1254 }
1255 break;
1256 case 76:
1257 {
1258 $_ngcc_current_state = 72;
1259 $runtime.sendLeaveAttribute(super._cookie, $__uri, $__local, $__qname);
1260 }
1261 break;
1262 case 49:
1263 {
1264 $_ngcc_current_state = 48;
1265 $runtime.sendLeaveAttribute(super._cookie, $__uri, $__local, $__qname);
1266 }
1267 break;
1268 case 30:
1269 {
1270 if(($__uri.equals("") && $__local.equals("mixed"))) {
1271 $_ngcc_current_state = 28;
1272 }
1273 else {
1274 unexpectedLeaveAttribute($__qname);
1275 }
1276 }
1277 break;
1278 case 73:
1279 {
1280 if(($__uri.equals("") && $__local.equals("mixed"))) {
1281 $_ngcc_current_state = 68;
1282 }
1283 else {
1284 unexpectedLeaveAttribute($__qname);
1285 }
1286 }
1287 break;
1288 case 61:
1289 {
1290 $_ngcc_current_state = 35;
1291 $runtime.sendLeaveAttribute(super._cookie, $__uri, $__local, $__qname);
1292 }
1293 break;
1294 case 26:
1295 {
1296 $_ngcc_current_state = 7;
1297 $runtime.sendLeaveAttribute(super._cookie, $__uri, $__local, $__qname);
1298 }
1299 break;
1300 case 38:
1301 {
1302 action8();
1303 $_ngcc_current_state = 37;
1304 $runtime.sendLeaveAttribute(super._cookie, $__uri, $__local, $__qname);
1305 }
1306 break;
1307 case 68:
1308 {
1309 $_ngcc_current_state = 67;
1310 $runtime.sendLeaveAttribute(super._cookie, $__uri, $__local, $__qname);
1311 }
1312 break;
1313 case 13:
1314 {
1315 if(($__uri.equals("") && $__local.equals("base"))) {
1316 $_ngcc_current_state = 12;
1317 }
1318 else {
1319 unexpectedLeaveAttribute($__qname);
1320 }
1321 }
1322 break;
1323 case 85:
1324 {
1325 if(($__uri.equals("") && $__local.equals("abstract"))) {
1326 $_ngcc_current_state = 80;
1327 }
1328 else {
1329 unexpectedLeaveAttribute($__qname);
1330 }
1331 }
1332 break;
1333 case 80:
1334 {
1335 $_ngcc_current_state = 76;
1336 $runtime.sendLeaveAttribute(super._cookie, $__uri, $__local, $__qname);
1337 }
1338 break;
1339 case 84:
1340 {
1341 $_ngcc_current_state = 80;
1342 $runtime.sendLeaveAttribute(super._cookie, $__uri, $__local, $__qname);
1343 }
1344 break;
1345 case 19:
1346 {
1347 $_ngcc_current_state = 18;
1348 $runtime.sendLeaveAttribute(super._cookie, $__uri, $__local, $__qname);
1349 }
1350 break;
1351 case 48:
1352 {
1353 action11();
1354 $_ngcc_current_state = 47;
1355 $runtime.sendLeaveAttribute(super._cookie, $__uri, $__local, $__qname);
1356 }
1357 break;
1358 case 29:
1359 {
1360 $_ngcc_current_state = 28;
1361 $runtime.sendLeaveAttribute(super._cookie, $__uri, $__local, $__qname);
1362 }
1363 break;
1364 case 10:
1365 {
1366 $_ngcc_current_state = 9;
1367 $runtime.sendLeaveAttribute(super._cookie, $__uri, $__local, $__qname);
1368 }
1369 break;
1370 case 77:
1371 {
1372 if(($__uri.equals("") && $__local.equals("final"))) {
1373 $_ngcc_current_state = 72;
1374 }
1375 else {
1376 unexpectedLeaveAttribute($__qname);
1377 }
1378 }
1379 break;
1380 case 72:
1381 {
1382 $_ngcc_current_state = 68;
1383 $runtime.sendLeaveAttribute(super._cookie, $__uri, $__local, $__qname);
1384 }
1385 break;
1386 case 69:
1387 {
1388 if(($__uri.equals("") && $__local.equals("name"))) {
1389 $_ngcc_current_state = 67;
1390 }
1391 else {
1392 unexpectedLeaveAttribute($__qname);
1393 }
1394 }
1395 break;
1396 case 39:
1397 {
1398 $_ngcc_current_state = 38;
1399 $runtime.sendLeaveAttribute(super._cookie, $__uri, $__local, $__qname);
1400 }
1401 break;
1402 case 22:
1403 {
1404 if(($__uri.equals("") && $__local.equals("base"))) {
1405 $_ngcc_current_state = 21;
1406 }
1407 else {
1408 unexpectedLeaveAttribute($__qname);
1409 }
1410 }
1411 break;
1412 case 81:
1413 {
1414 if(($__uri.equals("") && $__local.equals("block"))) {
1415 $_ngcc_current_state = 76;
1416 }
1417 else {
1418 unexpectedLeaveAttribute($__qname);
1419 }
1420 }
1421 break;
1422 case 42:
1423 {
1424 if(($__uri.equals("") && $__local.equals("base"))) {
1425 $_ngcc_current_state = 41;
1426 }
1427 else {
1428 unexpectedLeaveAttribute($__qname);
1429 }
1430 }
1431 break;
1432 case 52:
1433 {
1434 $_ngcc_current_state = 51;
1435 $runtime.sendLeaveAttribute(super._cookie, $__uri, $__local, $__qname);
1436 }
1437 break;
1438 case 0:
1439 {
1440 revertToParentFromLeaveAttribute(result, super._cookie, $__uri, $__local, $__qname);
1441 }
1442 break;
1443 case 51:
1444 {
1445 action13();
1446 $_ngcc_current_state = 49;
1447 $runtime.sendLeaveAttribute(super._cookie, $__uri, $__local, $__qname);
1448 }
1449 break;
1450 case 57:
1451 {
1452 if(($__uri.equals("") && $__local.equals("base"))) {
1453 $_ngcc_current_state = 56;
1454 }
1455 else {
1456 unexpectedLeaveAttribute($__qname);
1457 }
1458 }
1459 break;
1460 case 65:
1461 {
1462 $_ngcc_current_state = 2;
1463 $runtime.sendLeaveAttribute(super._cookie, $__uri, $__local, $__qname);
1464 }
1465 break;
1466 default:
1467 {
1468 unexpectedLeaveAttribute($__qname);
1469 }
1470 break;
1471 }
1472 }
1474 public void text(String $value) throws SAXException {
1475 int $ai;
1476 switch($_ngcc_current_state) {
1477 case 58:
1478 {
1479 NGCCHandler h = new qname(this, super._source, $runtime, 621);
1480 spawnChildFromText(h, $value);
1481 }
1482 break;
1483 case 54:
1484 {
1485 $_ngcc_current_state = 52;
1486 $runtime.sendText(super._cookie, $value);
1487 }
1488 break;
1489 case 31:
1490 {
1491 mixedValue = $value;
1492 $_ngcc_current_state = 30;
1493 }
1494 break;
1495 case 76:
1496 {
1497 if(($ai = $runtime.getAttributeIndex("","final"))>=0) {
1498 $runtime.consumeAttribute($ai);
1499 $runtime.sendText(super._cookie, $value);
1500 }
1501 else {
1502 $_ngcc_current_state = 72;
1503 $runtime.sendText(super._cookie, $value);
1504 }
1505 }
1506 break;
1507 case 49:
1508 {
1509 $_ngcc_current_state = 48;
1510 $runtime.sendText(super._cookie, $value);
1511 }
1512 break;
1513 case 61:
1514 {
1515 $_ngcc_current_state = 35;
1516 $runtime.sendText(super._cookie, $value);
1517 }
1518 break;
1519 case 26:
1520 {
1521 $_ngcc_current_state = 7;
1522 $runtime.sendText(super._cookie, $value);
1523 }
1524 break;
1525 case 38:
1526 {
1527 action8();
1528 $_ngcc_current_state = 37;
1529 $runtime.sendText(super._cookie, $value);
1530 }
1531 break;
1532 case 44:
1533 {
1534 if(($ai = $runtime.getAttributeIndex("","base"))>=0) {
1535 $runtime.consumeAttribute($ai);
1536 $runtime.sendText(super._cookie, $value);
1537 }
1538 }
1539 break;
1540 case 68:
1541 {
1542 if(($ai = $runtime.getAttributeIndex("","name"))>=0) {
1543 $runtime.consumeAttribute($ai);
1544 $runtime.sendText(super._cookie, $value);
1545 }
1546 else {
1547 $_ngcc_current_state = 67;
1548 $runtime.sendText(super._cookie, $value);
1549 }
1550 }
1551 break;
1552 case 80:
1553 {
1554 if(($ai = $runtime.getAttributeIndex("","block"))>=0) {
1555 $runtime.consumeAttribute($ai);
1556 $runtime.sendText(super._cookie, $value);
1557 }
1558 else {
1559 $_ngcc_current_state = 76;
1560 $runtime.sendText(super._cookie, $value);
1561 }
1562 }
1563 break;
1564 case 84:
1565 {
1566 if(($ai = $runtime.getAttributeIndex("","abstract"))>=0) {
1567 $runtime.consumeAttribute($ai);
1568 $runtime.sendText(super._cookie, $value);
1569 }
1570 else {
1571 $_ngcc_current_state = 80;
1572 $runtime.sendText(super._cookie, $value);
1573 }
1574 }
1575 break;
1576 case 19:
1577 {
1578 $_ngcc_current_state = 18;
1579 $runtime.sendText(super._cookie, $value);
1580 }
1581 break;
1582 case 15:
1583 {
1584 if(($ai = $runtime.getAttributeIndex("","base"))>=0) {
1585 $runtime.consumeAttribute($ai);
1586 $runtime.sendText(super._cookie, $value);
1587 }
1588 }
1589 break;
1590 case 86:
1591 {
1592 abstractValue = $value;
1593 $_ngcc_current_state = 85;
1594 }
1595 break;
1596 case 48:
1597 {
1598 action11();
1599 $_ngcc_current_state = 47;
1600 $runtime.sendText(super._cookie, $value);
1601 }
1602 break;
1603 case 24:
1604 {
1605 if(($ai = $runtime.getAttributeIndex("","base"))>=0) {
1606 $runtime.consumeAttribute($ai);
1607 $runtime.sendText(super._cookie, $value);
1608 }
1609 }
1610 break;
1611 case 29:
1612 {
1613 if(($ai = $runtime.getAttributeIndex("","mixed"))>=0) {
1614 $runtime.consumeAttribute($ai);
1615 $runtime.sendText(super._cookie, $value);
1616 }
1617 else {
1618 $_ngcc_current_state = 28;
1619 $runtime.sendText(super._cookie, $value);
1620 }
1621 }
1622 break;
1623 case 10:
1624 {
1625 $_ngcc_current_state = 9;
1626 $runtime.sendText(super._cookie, $value);
1627 }
1628 break;
1629 case 72:
1630 {
1631 if(($ai = $runtime.getAttributeIndex("","mixed"))>=0) {
1632 $runtime.consumeAttribute($ai);
1633 $runtime.sendText(super._cookie, $value);
1634 }
1635 else {
1636 $_ngcc_current_state = 68;
1637 $runtime.sendText(super._cookie, $value);
1638 }
1639 }
1640 break;
1641 case 43:
1642 {
1643 NGCCHandler h = new qname(this, super._source, $runtime, 601);
1644 spawnChildFromText(h, $value);
1645 }
1646 break;
1647 case 39:
1648 {
1649 $_ngcc_current_state = 38;
1650 $runtime.sendText(super._cookie, $value);
1651 }
1652 break;
1653 case 59:
1654 {
1655 if(($ai = $runtime.getAttributeIndex("","base"))>=0) {
1656 $runtime.consumeAttribute($ai);
1657 $runtime.sendText(super._cookie, $value);
1658 }
1659 }
1660 break;
1661 case 23:
1662 {
1663 NGCCHandler h = new qname(this, super._source, $runtime, 577);
1664 spawnChildFromText(h, $value);
1665 }
1666 break;
1667 case 52:
1668 {
1669 $_ngcc_current_state = 51;
1670 $runtime.sendText(super._cookie, $value);
1671 }
1672 break;
1673 case 78:
1674 {
1675 NGCCHandler h = new erSet(this, super._source, $runtime, 648);
1676 spawnChildFromText(h, $value);
1677 }
1678 break;
1679 case 70:
1680 {
1681 name = WhiteSpaceProcessor.collapse($value);
1682 $_ngcc_current_state = 69;
1683 }
1684 break;
1685 case 82:
1686 {
1687 NGCCHandler h = new erSet(this, super._source, $runtime, 653);
1688 spawnChildFromText(h, $value);
1689 }
1690 break;
1691 case 0:
1692 {
1693 revertToParentFromText(result, super._cookie, $value);
1694 }
1695 break;
1696 case 51:
1697 {
1698 action13();
1699 $_ngcc_current_state = 49;
1700 $runtime.sendText(super._cookie, $value);
1701 }
1702 break;
1703 case 65:
1704 {
1705 $_ngcc_current_state = 2;
1706 $runtime.sendText(super._cookie, $value);
1707 }
1708 break;
1709 case 74:
1710 {
1711 mixedValue = $value;
1712 $_ngcc_current_state = 73;
1713 }
1714 break;
1715 case 14:
1716 {
1717 NGCCHandler h = new qname(this, super._source, $runtime, 566);
1718 spawnChildFromText(h, $value);
1719 }
1720 break;
1721 }
1722 }
1724 public void onChildCompleted(Object $__result__, int $__cookie__, boolean $__needAttCheck__)throws SAXException {
1725 switch($__cookie__) {
1726 case 573:
1727 {
1728 annotation = ((AnnotationImpl)$__result__);
1729 $_ngcc_current_state = 18;
1730 }
1731 break;
1732 case 636:
1733 {
1734 fa = ((ForeignAttributesImpl)$__result__);
1735 $_ngcc_current_state = 65;
1736 }
1737 break;
1738 case 562:
1739 {
1740 annotation = ((AnnotationImpl)$__result__);
1741 $_ngcc_current_state = 9;
1742 }
1743 break;
1744 case 577:
1745 {
1746 baseTypeName = ((UName)$__result__);
1747 action6();
1748 $_ngcc_current_state = 22;
1749 }
1750 break;
1751 case 648:
1752 {
1753 finalValue = ((Integer)$__result__);
1754 $_ngcc_current_state = 77;
1755 }
1756 break;
1757 case 614:
1758 {
1759 baseContentType = ((SimpleTypeImpl)$__result__);
1760 $_ngcc_current_state = 51;
1761 }
1762 break;
1763 case 653:
1764 {
1765 blockValue = ((Integer)$__result__);
1766 $_ngcc_current_state = 81;
1767 }
1768 break;
1769 case 566:
1770 {
1771 baseTypeName = ((UName)$__result__);
1772 action3();
1773 $_ngcc_current_state = 13;
1774 }
1775 break;
1776 case 621:
1777 {
1778 baseTypeName = ((UName)$__result__);
1779 action14();
1780 $_ngcc_current_state = 57;
1781 }
1782 break;
1783 case 617:
1784 {
1785 annotation = ((AnnotationImpl)$__result__);
1786 $_ngcc_current_state = 52;
1787 }
1788 break;
1789 case 610:
1790 {
1791 facet = ((XSFacet)$__result__);
1792 action12();
1793 $_ngcc_current_state = 48;
1794 }
1795 break;
1796 case 626:
1797 {
1798 annotation = ((AnnotationImpl)$__result__);
1799 $_ngcc_current_state = 35;
1800 }
1801 break;
1802 case 571:
1803 {
1804 explicitContent = ((ContentTypeImpl)$__result__);
1805 action5();
1806 $_ngcc_current_state = 17;
1807 }
1808 break;
1809 case 564:
1810 {
1811 fa = ((ForeignAttributesImpl)$__result__);
1812 $_ngcc_current_state = 10;
1813 }
1814 break;
1815 case 582:
1816 {
1817 annotation = ((AnnotationImpl)$__result__);
1818 $_ngcc_current_state = 7;
1819 }
1820 break;
1821 case 628:
1822 {
1823 fa = ((ForeignAttributesImpl)$__result__);
1824 $_ngcc_current_state = 61;
1825 }
1826 break;
1827 case 594:
1828 {
1829 $_ngcc_current_state = 36;
1830 }
1831 break;
1832 case 560:
1833 {
1834 explicitContent = ((ContentTypeImpl)$__result__);
1835 action2();
1836 $_ngcc_current_state = 8;
1837 }
1838 break;
1839 case 606:
1840 {
1841 $_ngcc_current_state = 46;
1842 }
1843 break;
1844 case 609:
1845 {
1846 facet = ((XSFacet)$__result__);
1847 action12();
1848 $_ngcc_current_state = 48;
1849 }
1850 break;
1851 case 584:
1852 {
1853 fa = ((ForeignAttributesImpl)$__result__);
1854 $_ngcc_current_state = 26;
1855 }
1856 break;
1857 case 599:
1858 {
1859 fa = ((ForeignAttributesImpl)$__result__);
1860 $_ngcc_current_state = 39;
1861 }
1862 break;
1863 case 557:
1864 {
1865 explicitContent = ((ContentTypeImpl)$__result__);
1866 action0();
1867 $_ngcc_current_state = 1;
1868 }
1869 break;
1870 case 575:
1871 {
1872 fa = ((ForeignAttributesImpl)$__result__);
1873 $_ngcc_current_state = 19;
1874 }
1875 break;
1876 case 601:
1877 {
1878 baseTypeName = ((UName)$__result__);
1879 action9();
1880 $_ngcc_current_state = 42;
1881 }
1882 break;
1883 case 619:
1884 {
1885 fa = ((ForeignAttributesImpl)$__result__);
1886 $_ngcc_current_state = 54;
1887 }
1888 break;
1889 case 597:
1890 {
1891 annotation = ((AnnotationImpl)$__result__);
1892 $_ngcc_current_state = 38;
1893 }
1894 break;
1895 case 634:
1896 {
1897 annotation = ((AnnotationImpl)$__result__);
1898 $_ngcc_current_state = 2;
1899 }
1900 break;
1901 }
1902 }
1904 public boolean accepted() {
1905 return(($_ngcc_current_state == 0));
1906 }
1909 private ComplexTypeImpl result;
1910 private Ref.Type baseType;
1911 private Ref.ContentType contentType;
1913 // local variables for simpleContent/restriction
1914 private Ref.SimpleType baseContentType;
1915 private RestrictionSimpleTypeImpl contentSimpleType;
1917 private Locator locator,locator2;
1919 private static class BaseContentSimpleTypeRef implements Ref.SimpleType {
1920 private final Ref.Type baseType;
1921 private BaseContentSimpleTypeRef(Ref.Type _baseType ) { this.baseType = _baseType; }
1922 public XSSimpleType getType() {
1923 return (XSSimpleType)((XSComplexType)baseType.getType()).getContentType();
1924 }
1925 }
1928 // baseType and contentType must be computed before calling this method.
1929 private void makeResult( int derivationMethod ) {
1931 if(finalValue==null)
1932 finalValue = $runtime.finalDefault;
1933 if(blockValue==null)
1934 blockValue = $runtime.blockDefault;
1936 result = new ComplexTypeImpl(
1937 $runtime.document,
1938 annotation,
1939 locator,
1940 fa,
1941 name,
1942 name==null,
1943 $runtime.parseBoolean(abstractValue),
1944 derivationMethod,
1945 baseType,
1946 finalValue,
1947 blockValue,
1948 $runtime.parseBoolean(mixedValue)
1949 );
1950 }
1952 // I had to make them static inner classes (as opposed to anonymous ones),
1953 // so that they will not keep references to parser.
1955 private static class BaseComplexTypeContentRef implements Ref.ContentType {
1956 private final Ref.Type baseType;
1957 private BaseComplexTypeContentRef(Ref.Type _baseType) { this.baseType = _baseType; }
1958 public XSContentType getContentType() {
1959 return ((XSComplexType)baseType.getType()).getContentType();
1960 }
1961 }
1962 private static class InheritBaseContentTypeRef implements Ref.ContentType {
1963 private final Ref.Type baseType;
1964 private final XSContentType empty;
1965 private final XSContentType expContent;
1966 private final SchemaDocumentImpl currentDocument;
1967 private InheritBaseContentTypeRef(
1968 Ref.Type _baseType,XSContentType _explicitContent,NGCCRuntimeEx $runtime) {
1970 this.baseType = _baseType;
1971 this.currentDocument = $runtime.document;
1972 expContent = _explicitContent;
1973 this.empty = $runtime.parser.schemaSet.empty;
1974 }
1975 public XSContentType getContentType() {
1976 XSContentType baseContentType =
1977 ((XSComplexType)baseType.getType()).getContentType();
1978 if(baseContentType==empty)
1979 return expContent;
1980 else
1981 return new ParticleImpl( currentDocument, null, new ModelGroupImpl(
1982 currentDocument,
1983 null, null, null, XSModelGroup.SEQUENCE,
1984 new ParticleImpl[]{
1985 (ParticleImpl)baseContentType,
1986 (ParticleImpl)expContent}), null );
1987 }
1988 };
1990 private Ref.ContentType buildComplexExtensionContentModel( XSContentType explicitContent ) {
1992 if(explicitContent==$runtime.parser.schemaSet.empty)
1993 return new BaseComplexTypeContentRef(baseType);
1994 else
1995 return new InheritBaseContentTypeRef(baseType,explicitContent,$runtime);
1996 }
1998 }