View Javadoc
1   /*
2    * reserved comment block
3    * DO NOT REMOVE OR ALTER!
4    */
5   /*
6    * Copyright 2003,2004 The Apache Software Foundation.
7    *
8    * Licensed under the Apache License, Version 2.0 (the "License");
9    * you may not use this file except in compliance with the License.
10   * You may obtain a copy of the License at
11   *
12   *      http://www.apache.org/licenses/LICENSE-2.0
13   *
14   * Unless required by applicable law or agreed to in writing, software
15   * distributed under the License is distributed on an "AS IS" BASIS,
16   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17   * See the License for the specific language governing permissions and
18   * limitations under the License.
19   */
20  
21  package com.sun.org.apache.xerces.internal.xs;
22  
23  /**
24   * This interface represents the Model Group schema component.
25   */
26  public interface XSModelGroup extends XSTerm {
27      // Content model compositors
28      /**
29       * This constant value signifies a sequence operator.
30       */
31      public static final short COMPOSITOR_SEQUENCE       = 1;
32      /**
33       * This constant value signifies a choice operator.
34       */
35      public static final short COMPOSITOR_CHOICE         = 2;
36      /**
37       * This content model represents a simplified version of the SGML
38       * &-Connector and is limited to the top-level of any content model.
39       * No element in the all content model may appear more than once.
40       */
41      public static final short COMPOSITOR_ALL            = 3;
42  
43      /**
44       * [compositor]: one of all, choice or sequence. The valid constant values
45       * are:
46       * <code>COMPOSITOR_SEQUENCE, COMPOSITOR_CHOICE, COMPOSITOR_ALL</code>.
47       */
48      public short getCompositor();
49  
50      /**
51       *  A list of [particles] if it exists, otherwise an empty
52       * <code>XSObjectList</code>.
53       */
54      public XSObjectList getParticles();
55  
56      /**
57       * An annotation if it exists, otherwise <code>null</code>. If not null
58       * then the first [annotation] from the sequence of annotations.
59       */
60      public XSAnnotation getAnnotation();
61  
62      /**
63       * A sequence of [annotations] or an empty <code>XSObjectList</code>.
64       */
65      public XSObjectList getAnnotations();
66  }