1 /*2 * Copyright 2003, 2004 The Apache Software Foundation3 * 4 * Licensed under the Apache License, Version 2.0 (the "License");5 * you may not use this file except in compliance with the License.6 * You may obtain a copy of the License at7 * 8 * http://www.apache.org/licenses/LICENSE-2.09 * 10 * Unless required by applicable law or agreed to in writing, software11 * distributed under the License is distributed on an "AS IS" BASIS,12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.13 * See the License for the specific language governing permissions and14 * limitations under the License.15 16 */17 package org.apache.ws.jaxme.xs.xml;18 19 /** <p>Interface of <code>xs:allModel</code>, as specified by20 * the following:21 * <pre>22 * <xs:group name="allModel">23 * <xs:sequence>24 * <xs:element ref="xs:annotation" minOccurs="0"/>25 * <xs:element name="element" minOccurs="0" maxOccurs="unbounded">26 * <xs:complexType>27 * <xs:annotation>28 * <xs:documentation>restricted max/min</xs:documentation>29 * </xs:annotation>30 * <xs:complexContent>31 * <xs:restriction base="xs:localElement">32 * <xs:sequence>33 * <xs:element ref="xs:annotation" minOccurs="0"/>34 * <xs:choice minOccurs="0">35 * <xs:element name="simpleType" type="xs:localSimpleType"/>36 * <xs:element name="complexType" type="xs:localComplexType"/>37 * </xs:choice>38 * <xs:group ref="xs:identityConstraint" minOccurs="0"39 * maxOccurs="unbounded"/>40 * </xs:sequence>41 * <xs:attribute name="minOccurs" use="optional" default="1">42 * <xs:simpleType>43 * <xs:restriction base="xs:nonNegativeInteger">44 * <xs:enumeration value="0"/>45 * <xs:enumeration value="1"/>46 * </xs:restriction>47 * </xs:simpleType>48 * </xs:attribute>49 * <xs:attribute name="maxOccurs" use="optional" default="1">50 * <xs:simpleType>51 * <xs:restriction base="xs:allNNI">52 * <xs:enumeration value="0"/>53 * <xs:enumeration value="1"/>54 * </xs:restriction>55 * </xs:simpleType>56 * </xs:attribute>57 * </xs:restriction>58 * </xs:complexContent>59 * </xs:complexType>60 * </xs:element>61 * </xs:sequence>62 * </xs:group>63 * </pre></p>64 * <p><em>Implementation note: The above restriction of a {@link XsTLocalElement}65 * is interpreted as a usual local element, except that the <code>minOccurs</code>66 * and <code>maxOccurs</code> attributes must be 0 or 1.</p>67 *68 * @author <a HREF="mailto:joe@ispsoft.de">Jochen Wiedmann</a>69 */70 public interface XsGAllModel {71 public XsEAnnotation createAnnotation();72 public XsEAnnotation getAnnotation();73 public XsTLocalElement createElement();74 public XsTLocalElement[] getElements();75 }76