001/*
002 * ModeShape (http://www.modeshape.org)
003 *
004 * Licensed under the Apache License, Version 2.0 (the "License");
005 * you may not use this file except in compliance with the License.
006 * You may obtain a copy of the License at
007 *
008 *       http://www.apache.org/licenses/LICENSE-2.0
009 *
010 * Unless required by applicable law or agreed to in writing, software
011 * distributed under the License is distributed on an "AS IS" BASIS,
012 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
013 * See the License for the specific language governing permissions and
014 * limitations under the License.
015 */
016package org.modeshape.sequencer.xsd;
017
018import static org.modeshape.sequencer.xsd.XsdLexicon.Namespace.PREFIX;
019import org.modeshape.common.annotation.Immutable;
020
021
022/**
023 * A lexicon of names used within the XSD sequencer.
024 */
025@Immutable
026public class XsdLexicon {
027    private XsdLexicon() {
028    }
029
030    public static class Namespace {
031        public static final String URI = "http://www.w3.org/2001/XMLSchema";
032        public static final String PREFIX = "xs";
033    }
034
035    public static final String SCHEMA_DOCUMENT = PREFIX + ":schemaDocument";
036    public static final String COMPLEX_TYPE_DEFINITION = PREFIX + ":complexTypeDefinition";
037    public static final String SIMPLE_TYPE_DEFINITION = PREFIX + ":simpleTypeDefinition";
038    public static final String ATTRIBUTE_DECLARATION = PREFIX + ":attributeDeclaration";
039    public static final String ELEMENT_DECLARATION = PREFIX + ":elementDeclaration";
040    public static final String IMPORT = PREFIX + ":import";
041    public static final String INCLUDE = PREFIX + ":include";
042    public static final String REDEFINE = PREFIX + ":redefine";
043    public static final String ATTRIBUTE_GROUP = PREFIX + ":attributeGroup";
044    public static final String ANY_ATTRIBUTE = PREFIX + ":anyAttribute";
045    public static final String ALL = PREFIX + ":all";
046    public static final String CHOICE = PREFIX + ":choice";
047    public static final String SEQUENCE = PREFIX + ":sequence";
048    public static final String SIMPLE_CONTENT = PREFIX + ":simpleContent";
049    public static final String COMPLEX_CONTENT = PREFIX + ":complexContent";
050    public static final String COMPLEX_TYPE_CONTENT = PREFIX + ":complexTypeContent";
051    public static final String ANNOTATION = PREFIX + ":annotation";
052
053    public static final String IMPORTED_XSDS = PREFIX + ":importedXsds";
054    public static final String INCLUDED_XSDS = PREFIX + ":includedXsds";
055    public static final String REDEFINED_XSDS = PREFIX + ":redefinedXsds";
056    public static final String NC_NAME = PREFIX + ":ncName";
057    public static final String NAMESPACE = PREFIX + ":namespace";
058    public static final String TYPE_NAME = PREFIX + ":typeName";
059    public static final String TYPE_NAMESPACE = PREFIX + ":typeNamespace";
060    public static final String TYPE_REFERENCE = PREFIX + ":type";
061    public static final String BASE_TYPE_REFERENCE = PREFIX + ":baseType";
062    public static final String BASE_TYPE_NAME = PREFIX + ":baseTypeName";
063    public static final String BASE_TYPE_NAMESPACE = PREFIX + ":baseTypeNamespace";
064    public static final String SCHEMA_LOCATION = PREFIX + ":schemaLocation";
065    public static final String REF_NAMESPACE = PREFIX + ":refNamespace";
066    public static final String REF_NAME = PREFIX + ":refName";
067    public static final String REF = PREFIX + ":ref";
068    public static final String METHOD = PREFIX + ":method";
069
070    public static final String MIN_OCCURS = PREFIX + ":minOccurs";
071    public static final String MAX_OCCURS = PREFIX + ":maxOccurs";
072    public static final String MAX_OCCURS_UNBOUNDED = PREFIX + ":maxOccursUnbounded";
073    public static final String MAX_LENGTH = PREFIX + ":maxLength";
074    public static final String MIN_LENGTH = PREFIX + ":minLength";
075    public static final String ENUMERATED_VALUES = PREFIX + ":enumeratedValues";
076    public static final String WHITESPACE = PREFIX + ":whitespace";
077    public static final String MAX_VALUE_EXCLUSIVE = PREFIX + ":maxValueExclusive";
078    public static final String MIN_VALUE_EXCLUSIVE = PREFIX + ":minValueExclusive";
079    public static final String MAX_VALUE_INCLUSIVE = PREFIX + ":maxValueInclusive";
080    public static final String MIN_VALUE_INCLUSIVE = PREFIX + ":minValueInclusive";
081    public static final String TOTAL_DIGITS = PREFIX + ":totalDigits";
082    public static final String FRACTION_DIGITS = PREFIX + ":fractionDigits";
083    public static final String PATTERN = PREFIX + ":pattern";
084    public static final String FINAL = PREFIX + ":final";
085    public static final String BLOCK = PREFIX + ":block";
086    public static final String ABSTRACT = PREFIX + ":abstract";
087    public static final String MIXED = PREFIX + ":mixed";
088    public static final String NILLABLE = PREFIX + ":nillable";
089    public static final String USE = PREFIX + ":use";
090    public static final String PROCESS_CONTENTS = PREFIX + ":processContents";
091    public static final String FORM = PREFIX + ":form";
092
093    public static final String ID = PREFIX + ":id";
094
095    // Used as names for anonymous types ...
096    public static final String COMPLEX_TYPE = PREFIX + ":complexType";
097    public static final String SIMPLE_TYPE = PREFIX + ":simpleType";
098
099}