blob: eeb111ce0c0e6834780d61904ea6944eb2ea1d49 [file] [log] [blame]
<?xml version="1.0"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements. See the NOTICE file
distributed with this work for additional information
regarding copyright ownership. The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied. See the License for the
specific language governing permissions and limitations
under the License.
-->
<!-- =================== DO NOT EDIT THIS FILE ==================== -->
<!-- Generated by Modello 1.4 on 2010-10-28 03:21:56, -->
<!-- any modifications will be overwritten. -->
<!-- ============================================================== -->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" xmlns="http://maven.apache.org/plugins/maven-archetype-plugin/archetype-descriptor/1.0.0" targetNamespace="http://maven.apache.org/plugins/maven-archetype-plugin/archetype-descriptor/1.0.0">
<xs:element name="archetype-descriptor" type="ArchetypeDescriptor">
<xs:annotation>
<xs:documentation source="version">0.0.0+</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="ArchetypeDescriptor">
<xs:annotation>
<xs:documentation source="version">0.0.0+</xs:documentation>
</xs:annotation>
<xs:all>
<xs:element minOccurs="0" name="requiredProperties">
<xs:annotation>
<xs:documentation source="version">0.0.0+</xs:documentation>
<xs:documentation source="description">List of required properties to generate a project from this archetype.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="requiredProperty" minOccurs="0" maxOccurs="unbounded" type="RequiredProperty"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element minOccurs="0" name="fileSets">
<xs:annotation>
<xs:documentation source="version">0.0.0+</xs:documentation>
<xs:documentation source="description">File sets definition.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="fileSet" minOccurs="0" maxOccurs="unbounded" type="FileSet"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element minOccurs="0" name="modules">
<xs:annotation>
<xs:documentation source="version">0.0.0+</xs:documentation>
<xs:documentation source="description">Modules definition.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="module" minOccurs="0" maxOccurs="unbounded" type="ModuleDescriptor"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:all>
<xs:attribute name="name" type="xs:string">
<xs:annotation>
<xs:documentation source="version">0.0.0+</xs:documentation>
<xs:documentation source="description">Name of the Archetype, that will be displayed to the user when choosing an archetype.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="partial" type="xs:boolean" default="false">
<xs:annotation>
<xs:documentation source="version">0.0.0+</xs:documentation>
<xs:documentation source="description">Is this archetype representing a full Maven project or only parts?</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:complexType>
<xs:complexType name="FileSet">
<xs:annotation>
<xs:documentation source="version">0.0.0+</xs:documentation>
<xs:documentation source="description">A fileset defines the way the project&apos;s files located in the jar file are used by the Archetype Plugin to generate a project.</xs:documentation>
</xs:annotation>
<xs:all>
<xs:element minOccurs="0" name="directory" type="xs:string">
<xs:annotation>
<xs:documentation source="version">0.0.0+</xs:documentation>
<xs:documentation source="description">The directory where the files will be searched for, which is also the directory where the
project&apos;s files will be generated.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element minOccurs="0" name="includes">
<xs:annotation>
<xs:documentation source="version">0.0.0+</xs:documentation>
<xs:documentation source="description">Inclusion definition &quot;à la&quot; Ant.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="include" minOccurs="0" maxOccurs="unbounded" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element minOccurs="0" name="excludes">
<xs:annotation>
<xs:documentation source="version">0.0.0+</xs:documentation>
<xs:documentation source="description">Exclusion definition &quot;à la&quot; Ant.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="exclude" minOccurs="0" maxOccurs="unbounded" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:all>
<xs:attribute name="filtered" type="xs:boolean" default="false">
<xs:annotation>
<xs:documentation source="version">0.0.0+</xs:documentation>
<xs:documentation source="description">Filesets can be filtered, which means the selected files will be used as Velocity templates.
They can be non-filtered, which means the selected files will be copied without modification.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="packaged" type="xs:boolean" default="false">
<xs:annotation>
<xs:documentation source="version">0.0.0+</xs:documentation>
<xs:documentation source="description">Filesets can be packaged, which means the selected files will be generated/copied in a directory
structure that is prepended by the package property. They can be non-packaged, which means that the selected
files will be generated/copied without that prepend.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="encoding" type="xs:string">
<xs:annotation>
<xs:documentation source="version">0.0.0+</xs:documentation>
<xs:documentation source="description">Encoding to use when filtering content.</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:complexType>
<xs:complexType name="RequiredProperty">
<xs:annotation>
<xs:documentation source="version">0.0.0+</xs:documentation>
<xs:documentation source="description">Definition of a property required when generating a project from this archetype.</xs:documentation>
</xs:annotation>
<xs:all>
<xs:element minOccurs="0" name="defaultValue" type="xs:string">
<xs:annotation>
<xs:documentation source="version">0.0.0+</xs:documentation>
<xs:documentation source="description">Default value of the property.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:all>
<xs:attribute name="key" type="xs:string">
<xs:annotation>
<xs:documentation source="version">0.0.0+</xs:documentation>
<xs:documentation source="description">Key value of the property.</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:complexType>
<xs:complexType name="ModuleDescriptor">
<xs:annotation>
<xs:documentation source="version">0.0.0+</xs:documentation>
</xs:annotation>
<xs:all>
<xs:element minOccurs="0" name="fileSets">
<xs:annotation>
<xs:documentation source="version">0.0.0+</xs:documentation>
<xs:documentation source="description">File sets definition.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="fileSet" minOccurs="0" maxOccurs="unbounded" type="FileSet"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element minOccurs="0" name="modules">
<xs:annotation>
<xs:documentation source="version">0.0.0+</xs:documentation>
<xs:documentation source="description">Modules definition.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="module" minOccurs="0" maxOccurs="unbounded" type="ModuleDescriptor"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:all>
<xs:attribute name="id" type="xs:string">
<xs:annotation>
<xs:documentation source="version">0.0.0+</xs:documentation>
<xs:documentation source="description">The module&apos;s artifactId.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="dir" type="xs:string">
<xs:annotation>
<xs:documentation source="version">0.0.0+</xs:documentation>
<xs:documentation source="description">The module&apos;s directory.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="name" type="xs:string">
<xs:annotation>
<xs:documentation source="version">0.0.0+</xs:documentation>
<xs:documentation source="description">The module&apos;s name.</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:complexType>
</xs:schema>