/*
 * Copyright (c) 1997, 2015, Oracle and/or its affiliates. All rights reserved.
 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 *
 * This code is free software; you can redistribute it and/or modify it
 * under the terms of the GNU General Public License version 2 only, as
 * published by the Free Software Foundation.  Oracle designates this
 * particular file as subject to the "Classpath" exception as provided
 * by Oracle in the LICENSE file that accompanied this code.
 *
 * This code is distributed in the hope that it will be useful, but WITHOUT
 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
 * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
 * version 2 for more details (a copy is included in the LICENSE file that
 * accompanied this code).
 *
 * You should have received a copy of the GNU General Public License version
 * 2 along with this work; if not, write to the Free Software Foundation,
 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
 *
 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
 * or visit www.oracle.com if you need additional information or have any
 * questions.
 */

Schema to Java compiler

.

This module contains the code that implements the schema compiler 'XJC'.

Overview

XJC consists of the following major components.

Schema reader
Schema readers read XML Schema documents (or DTD, RELAX NG, ...) and builds a model.
Model
Model represents the 'blueprint' of the code to be generated. Model talks in terms of higher level constructs like 'class' and 'property' without getting too much into the details of the Java source code.
Code generator
Code generators use a model as an input and builds Java code AST into CodeModel. It also produces an Outline which captures this work.
Outline
Outline can be thought as a series of links between a model and CodeModel.
/** * <h1>Schema to Java compiler</h1>. * * <p> * This module contains the code that implements the schema compiler 'XJC'. * * <h2>Overview</h2> * <p> * XJC consists of the following major components. * <dl> * <dt>{@link com.sun.tools.internal.xjc.reader Schema reader} * <dd> * Schema readers read XML Schema documents (or DTD, RELAX NG, ...) * and builds a model. * * <dt>{@link com.sun.tools.internal.xjc.model Model} * <dd> * Model represents the 'blueprint' of the code to be generated. * Model talks in terms of higher level constructs like 'class' and 'property' * without getting too much into the details of the Java source code. * * <dt>{@link com.sun.tools.internal.xjc.generator Code generator} * <dd> * Code generators use a model as an input and builds Java code AST * into CodeModel. It also produces an {@link com.sun.tools.internal.xjc.outline.Outline} which captures * this work. * * <dt>{@link com.sun.tools.internal.xjc.outline.Outline Outline} * <dd> * Outline can be thought as a series of links between a model * and CodeModel. * </dl> * */
package com.sun.tools.internal.xjc;