blob: f7ca184e2f2c4ecc23754800a869bf5d0882a2c3 [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.
-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://maven.apache.org/POM/3.0.0" targetNamespace="http://maven.apache.org/POM/3.0.0" elementFormDefault="qualified">
<xs:element name="project" type="Model">
<xs:annotation>
<xs:documentation source="version">3.0.0+</xs:documentation>
<xs:documentation source="description">
The &lt;code&gt;&amp;lt;project&amp;gt;&lt;/code&gt; element specifies various attributes
about a project. This is the root element of the project descriptor.
The following table lists all of the possible child elements. Child
elements with children are then documented further in subsequent
sections.
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="Model">
<xs:annotation>
<xs:documentation source="version">3.0.0+</xs:documentation>
<xs:documentation source="description">
The &lt;code&gt;&amp;lt;project&amp;gt;&lt;/code&gt; element specifies various attributes
about a project. This is the root element of the project descriptor.
The following table lists all of the possible child elements. Child
elements with children are then documented further in subsequent
sections.
</xs:documentation>
</xs:annotation>
<xs:all>
<xs:element name="extend" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0</xs:documentation>
<xs:documentation source="description">
The location of the parent project, if one exists. Values from the
parent project will be the default for this project if they are
left unspecified. The path may be absolute, or relative to the
current project.xml file.
&lt;div class="source"&gt;&lt;pre&gt;&amp;lt;extend&amp;gt;${basedir}/../project.xml&amp;lt;/extend&amp;gt;&lt;/pre&gt;&lt;/div&gt;
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="pomVersion" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0</xs:documentation>
<xs:documentation source="description">
The current version of the Maven project descriptor. This version
number enables Maven to automatically update an out-of-date project
descriptor when a new version is available. This version number
should not be changed after the descriptor has been created. Maven
will update it automatically.
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="id" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0</xs:documentation>
<xs:documentation source="description">
The short name of the project. This value is used when naming
&lt;a href="/plugins/java/index.html"&gt;jars&lt;/a&gt; and
&lt;a href="/plugins/dist/index.html"&gt;distribution files&lt;/a&gt;.
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="groupId" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0+</xs:documentation>
<xs:documentation source="description">
The short name of the project group. This value is used to group
all jars for a project in one directory. For more info look at the
&lt;a href="/user-guide.html#Naming%20Conventions"&gt;user guide&lt;/a&gt;.
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="artifactId" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0+</xs:documentation>
<xs:documentation source="description">
The short name of the project. This value is used in conjunction
with &lt;code&gt;groupId&lt;/code&gt;
when naming &lt;a href="/plugins/java/index.html"&gt;jars&lt;/a&gt; and
&lt;a href="/plugins/dist/index.html"&gt;distribution files&lt;/a&gt;.
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="name" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0+</xs:documentation>
<xs:documentation source="description">
The full name of the project. This value is used when
generating &lt;a href="/plugins/javadoc/index.html"&gt;JavaDoc&lt;/a&gt;
titles.
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="currentVersion" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0</xs:documentation>
<xs:documentation source="description">
The current version of the project. This value is used when
naming &lt;a href="/plugins/java/index.html"&gt;jars&lt;/a&gt; and
&lt;a href="/plugins/dist/index.html"&gt;distribution files&lt;/a&gt;.
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="shortDescription" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0</xs:documentation>
<xs:documentation source="description">
A short description of the project. The short description should be
limited to a single line.
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="description" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0+</xs:documentation>
<xs:documentation source="description">
Optional. A detailed description of the project.
This description is used as the default to generate the
&lt;a href="/plugins/site/index.html"&gt;Mailing Lists&lt;/a&gt; of the project's
web site, and is shown when &lt;code&gt;maven --usage&lt;/code&gt; is called on
the project. While this element can be specified as CDATA to enable
the use of HTML tags within the description, you are encouraged to
provide an alternative home page using &lt;code&gt;xdocs/index.xml&lt;/code&gt;
if this is required.
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="url" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0+</xs:documentation>
<xs:documentation source="description">
The URL to the project's homepage.
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="logo" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0</xs:documentation>
<xs:documentation source="description">
The URL to the project's logo image. This can be an URL relative
to the base directory of the generated web site,
(e.g., &lt;code&gt;/images/project-logo.png&lt;/code&gt;) or an absolute URL
(e.g., &lt;code&gt;http://my.corp/project-logo.png&lt;/code&gt;). This is used
when generating the project documentation.
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="issueTrackingUrl" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0</xs:documentation>
<xs:documentation source="description">
Optional. The URL to the project's issue tracking system.
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="inceptionYear" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0+</xs:documentation>
<xs:documentation source="description">
The year of the project's inception specified with 4 digits.
This value is used when generating
&lt;a href="/plugins/javadoc/index.html"&gt;JavaDoc&lt;/a&gt; copyright notices.
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="gumpRepositoryId" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0</xs:documentation>
<xs:documentation source="description">
Optional. This is the Id of the Gump repository that this project is
part of (assuming it participates in the Gump integration
effort).
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="siteAddress" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0</xs:documentation>
<xs:documentation source="description">
Optional. The hostname of the web server that hosts the project's web
site. This is used when the web site is
&lt;a href="/plugins/site/index.html"&gt;deployed&lt;/a&gt;.
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="siteDirectory" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0</xs:documentation>
<xs:documentation source="description">
Optional. The directory on the web server where the public web site
for this project resides. This is used when the web site is
&lt;a href="/plugins/site/index.html"&gt;deployed&lt;/a&gt;.
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="distributionSite" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0</xs:documentation>
<xs:documentation source="description">
Optional. The server server where the final
distributions will be published. This is used when the
distributions are
&lt;a href="/plugins/dist/index.html"&gt;deployed&lt;/a&gt;.
&lt;p&gt;
If this isn't defined, the central repository is used instead as
determined by &lt;code&gt;maven.repo.central&lt;/code&gt; and
&lt;code&gt;maven.repo.central.directory&lt;/code&gt;
&lt;/p&gt;
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="distributionDirectory" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0</xs:documentation>
<xs:documentation source="description">
Optional. The directory on the web server where the final
distributions will be published. This is used when the
distributions are
&lt;a href="/plugins/dist/index.html"&gt;deployed&lt;/a&gt;.
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="mailingLists" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0+</xs:documentation>
<xs:documentation source="description">
Contains information about a project's mailing lists. This
is used to generate the &lt;a href="/plugins/site/index.html"&gt;front
page&lt;/a&gt; of the site's web site.
</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="mailingList" type="MailingList" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="developers" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0+</xs:documentation>
<xs:documentation source="description">
Describes the committers to a project. This is used to
generate the &lt;a href="/plugins/site/index.html"&gt;Project Team&lt;/a&gt;
page of the project's web site.
</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="developer" type="Developer" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="contributors" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0+</xs:documentation>
<xs:documentation source="description">
Describes the contributors to a project. This is used to generate
the &lt;a href="/plugins/site/index.html"&gt;Project Team&lt;/a&gt; page of
the project's web site.
</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="contributor" type="Contributor" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="licenses" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0+</xs:documentation>
<xs:documentation source="description">
This element describes all of the licenses for this project.
Each license is described by a &lt;code&gt;license&lt;/code&gt; element, which
is then described by additional elements (described below). The
auto-generated site documentation references this information.
Projects should only list the license(s) that applies to the project
and not the licenses that apply to dependencies.
</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="license" type="License" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="versions" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0</xs:documentation>
<xs:documentation source="description">
Optional. Contains information on previous versions of the
project. This information is used when invoking the
&lt;a href="/plugins/dist/index.html"&gt;&lt;code&gt;maven:dist&lt;/code&gt;&lt;/a&gt;
target.
</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="version" type="Version" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="branches" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0</xs:documentation>
<xs:documentation source="description">
Optional. Contains information on branches of the
project. This information is used when invoking the
&lt;a href="/plugins/dist/index.html"&gt;&lt;code&gt;maven:dist&lt;/code&gt;&lt;/a&gt;
target.
</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="branch" type="Branch" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="packageGroups" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0</xs:documentation>
<xs:documentation source="description">Package groups required for complete javadocs.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="packageGroup" type="PackageGroup" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="reports" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0</xs:documentation>
<xs:documentation source="description">
This element includes the specification of reports to be
included in a Maven-generated site. These reports will be run
when a user executes &lt;code&gt;maven site&lt;/code&gt;. All of the
reports will be included in the navigation bar for browsing in
the order they are specified.
</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="report" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="repository" type="Repository" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0</xs:documentation>
<xs:documentation source="description">Specification for the SCM used by the project.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="organization" type="Organization" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0+</xs:documentation>
<xs:documentation source="description">
This element describes various attributes of the organization to
which the project belongs. These attributes are utilized when
documentation is created (for copyright notices and links).
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="properties" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0</xs:documentation>
<xs:documentation source="description">
Project properties that will be used by various plugins
</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:any processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="package" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0</xs:documentation>
<xs:documentation source="description">
The Java package name of the project. This value is used
when generating &lt;a href="/plugins/javadoc/index.html"&gt;JavaDoc&lt;/a&gt;.
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="build" type="Build" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0+</xs:documentation>
<xs:documentation source="description">Information required to build the project.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="dependencies" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0+</xs:documentation>
<xs:documentation source="description">
&lt;p&gt;
This element describes all of the dependencies associated with a
project. Each dependency is described by a
&lt;code&gt;dependency&lt;/code&gt; element, which is then described by
additional elements (described below).
&lt;/p&gt;
&lt;p&gt;
These dependencies are used to construct a classpath for your
project during the build process.
&lt;/p&gt;
&lt;p&gt;
Maven can automatically download these dependencies from a
&lt;a href="/user-guide.html#Remote%20Repository%20Layout"&gt;remote repository&lt;/a&gt;.
&lt;/p&gt;
&lt;p&gt;
The filename that Maven downloads from the repository is
&lt;code&gt;artifactId-version.jar&lt;/code&gt; where &lt;code&gt;artifactId&lt;/code&gt;
corresponds to the &lt;code&gt;artifactId&lt;/code&gt; element and
&lt;code&gt;version&lt;/code&gt; corresponds to the &lt;code&gt;version&lt;/code&gt; element.
&lt;/p&gt;
&lt;p&gt;
When Maven goes looking for a dependency in the remote repository,
it uses the dependency element to construct the URL to download
from. This URL is defined as:
&lt;/p&gt;
&lt;div class="source"&gt;
&lt;pre&gt;${repo}/${groupId}/${type}s/${artifactId}-${version}.${type}&lt;/pre&gt;
&lt;/div&gt;
&lt;p&gt;
Where
&lt;/p&gt;
&lt;dl&gt;
&lt;dt&gt;repo&lt;/dt&gt;
&lt;dd&gt;
is the remote repository URL specified by
&lt;code&gt;${maven.repo.remote}&lt;/code&gt;
&lt;/dd&gt;
&lt;dt&gt;groupId&lt;/dt&gt;
&lt;dd&gt;is taken from the dependency element&lt;/dd&gt;
&lt;dt&gt;type&lt;/dt&gt;
&lt;dd&gt;is taken from the dependency element&lt;/dd&gt;
&lt;dt&gt;artifactId&lt;/dt&gt;
&lt;dd&gt;is taken from the dependency element&lt;/dd&gt;
&lt;dt&gt;version&lt;/dt&gt;
&lt;dd&gt;is taken from the dependency element&lt;/dd&gt;
&lt;/dl&gt;
</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="dependency" type="Dependency" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:all>
</xs:complexType>
<xs:complexType name="Build">
<xs:annotation>
<xs:documentation source="version">3.0.0+</xs:documentation>
</xs:annotation>
<xs:all>
<xs:element name="nagEmailAddress" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0</xs:documentation>
<xs:documentation source="description">
An address to which notifications regarding the status of builds
for this project can be sent. This is intended for use by tools
which do unattended builds, for example those providing for
continuous integration. Currently this is used by the
&lt;a href="/plugins/gump/"&gt;gump plugin&lt;/a&gt;
target.
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="sourceDirectory" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0+</xs:documentation>
<xs:documentation source="description">
This element specifies a directory containing the source
of the project. The generated build system will compile
the source in this directory when the project is built.
The path given is relative to the project descriptor.
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="unitTestSourceDirectory" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0</xs:documentation>
<xs:documentation source="description">
This element specifies a directory containing the unit test
source of the project. The generated build system will
compile these directories when the project is being tested.
The unit tests must use the JUnit test framework.
The path given is relative to the project descriptor.
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="aspectSourceDirectory" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0</xs:documentation>
<xs:documentation source="description">
This element specifies a directory containing Aspect
sources of the project. The generated build system will
compile the Aspects in this directory when the project is
built if Aspects have been enabled (see the
&lt;a
href="/plugins/aspectj/goals.html"&gt;Aspectj goals&lt;/a&gt; document).
The path given is relative to the project descriptor.
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="integrationUnitTestSourceDirectory" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0</xs:documentation>
<xs:documentation source="description">
This element specifies a directory containing integration test
sources of the project.
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="sourceModifications" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0</xs:documentation>
<xs:documentation source="description">
This element describes all of the sourceModifications associated
with a project. Each source modification is described by a
&lt;code&gt;sourceModification&lt;/code&gt; element, which is then described by
additional elements (described below). These modifications are used
to exclude or include various source depending on the environment
the build is running in.
</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="sourceModification" type="SourceModification" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="unitTest" type="UnitTest" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0</xs:documentation>
<xs:documentation source="description">
This element specifies unit tests associated with the project.
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="defaultGoal" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0+</xs:documentation>
<xs:documentation source="description">
The default goal (or phase in Maven 2) to execute when none is specified for the project.
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="resources" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0+</xs:documentation>
<xs:documentation source="description">
This element describes all of the resources associated with a
project or unit tests. Each resource is described by a resource
element, which is then described by additional elements (described
&lt;a href="#resource"&gt;below&lt;/a&gt;). These resources are used to complete
the jar file or to run unit test.
</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="resource" type="Resource" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:all>
</xs:complexType>
<xs:complexType name="UnitTest">
<xs:annotation>
<xs:documentation source="version">3.0.0</xs:documentation>
</xs:annotation>
<xs:all>
<xs:element name="resources" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0</xs:documentation>
<xs:documentation source="description">the description</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="resource" type="Resource" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="includes" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0+</xs:documentation>
<xs:documentation source="description">the description</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="include" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="excludes" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0+</xs:documentation>
<xs:documentation source="description">the description</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="exclude" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:all>
</xs:complexType>
<xs:complexType name="Resource">
<xs:annotation>
<xs:documentation source="version">3.0.0+</xs:documentation>
<xs:documentation source="description">
This element describes all of the resources associated with a project or
unit tests. Each resource is described by a resource element, which is
then described by additional elements (described
&lt;a href="#resource"&gt;below&lt;/a&gt;). These resources are used to complete the
jar file or to run unit test.
</xs:documentation>
</xs:annotation>
<xs:all>
<xs:element name="targetPath" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0+</xs:documentation>
<xs:documentation source="description">
Describe the resource target path. For example, if you want that
resource appear into a specific package
(&lt;code&gt;org.apache.maven.messages&lt;/code&gt;), you must specify this
element with this value : &lt;code&gt;org/apache/maven/messages&lt;/code&gt;
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="filtering" type="xs:boolean" default="false" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0</xs:documentation>
<xs:documentation source="description">Boolean. Describe if resources are filtered or not.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="directory" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0+</xs:documentation>
<xs:documentation source="description">
Describe the directory where the resource is stored.
The path may be absolute, or relative to the project.xml file.
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="includes" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0+</xs:documentation>
<xs:documentation source="description">the description</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="include" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="excludes" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0+</xs:documentation>
<xs:documentation source="description">the description</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="exclude" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:all>
</xs:complexType>
<xs:complexType name="SourceModification">
<xs:annotation>
<xs:documentation source="version">3.0.0</xs:documentation>
<xs:documentation source="description">
This element describes all of the sourceModifications associated with a
project. Each source modification is described by a
&lt;code&gt;sourceModification&lt;/code&gt; element, which is then described by
additional elements (described below). These modifications are used
to exclude or include various source depending on the environment
the build is running in.
</xs:documentation>
</xs:annotation>
<xs:all>
<xs:element name="className" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0</xs:documentation>
<xs:documentation source="description">
If the class with this name can &lt;strong&gt;not&lt;/strong&gt; be
loaded, then the includes and excludes specified below
will be applied to the contents of the
&lt;a href="#sourceDirectory"&gt;sourceDirectory&lt;/a&gt;
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="property" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0</xs:documentation>
<xs:documentation source="description">the description</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="directory" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0+</xs:documentation>
<xs:documentation source="description">
Describe the directory where the resource is stored.
The path may be absolute, or relative to the project.xml file.
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="includes" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0+</xs:documentation>
<xs:documentation source="description">the description</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="include" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="excludes" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0+</xs:documentation>
<xs:documentation source="description">the description</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="exclude" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:all>
</xs:complexType>
<xs:complexType name="Organization">
<xs:annotation>
<xs:documentation source="version">3.0.0+</xs:documentation>
<xs:documentation source="description">Specifies the organization who produces this project.</xs:documentation>
</xs:annotation>
<xs:all>
<xs:element name="name" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0+</xs:documentation>
<xs:documentation source="description">The full name of the organization.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="url" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0+</xs:documentation>
<xs:documentation source="description">The URL to the organization's home page.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="logo" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0</xs:documentation>
<xs:documentation source="description">
The URL to the organization's logo image. This can be an URL relative
to the base directory of the generated web site,
(e.g., &lt;code&gt;/images/org-logo.png&lt;/code&gt;) or an absolute URL
(e.g., &lt;code&gt;http://my.corp/logo.png&lt;/code&gt;). This value is used
when generating the project documentation.
</xs:documentation>
</xs:annotation>
</xs:element>
</xs:all>
</xs:complexType>
<xs:complexType name="Developer">
<xs:annotation>
<xs:documentation source="version">3.0.0+</xs:documentation>
<xs:documentation source="description">
Information about one of the committers on this project. Derived from
&lt;code&gt;Contributor&lt;/code&gt;.
</xs:documentation>
</xs:annotation>
<xs:all>
<xs:element name="id" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0+</xs:documentation>
<xs:documentation source="description">The username of the developer.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="name" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0+</xs:documentation>
<xs:documentation source="description">The full name of the contributor.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="email" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0+</xs:documentation>
<xs:documentation source="description">The email address of the contributor.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="url" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0+</xs:documentation>
<xs:documentation source="description">The URL for the homepage of the contributor.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="organization" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0+</xs:documentation>
<xs:documentation source="description">The organization to which the contributor belongs.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="organizationUrl" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0+</xs:documentation>
<xs:documentation source="description">The URL of the organization.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="roles" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0+</xs:documentation>
<xs:documentation source="description">
The roles the contributor plays in the project. Each role is
described by a &lt;code&gt;role&lt;/code&gt; element, the body of which is a
role name.
</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="role" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="timezone" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0+</xs:documentation>
<xs:documentation source="description">
The timezone the contributor is in. This is a number in the range -11 to 12.
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="properties" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0+</xs:documentation>
<xs:documentation source="description">
Properties about the contributor, such as an instant messenger handle.
</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:any processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:all>
</xs:complexType>
<xs:complexType name="Dependency">
<xs:annotation>
<xs:documentation source="version">3.0.0+</xs:documentation>
</xs:annotation>
<xs:all>
<xs:element name="id" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0</xs:documentation>
<xs:documentation source="description">
&lt;p&gt;The name of the dependency.&lt;/p&gt;
&lt;p&gt;
&lt;strong&gt;Note:&lt;/strong&gt; The use of the id element for
a dependency is deprecated. Please use &lt;code&gt;groupId&lt;/code&gt; and
&lt;code&gt;artifactId&lt;/code&gt; together instead.
&lt;/p&gt;
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="groupId" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0+</xs:documentation>
<xs:documentation source="description">
The project group that produced the dependency, e.g.
&lt;code&gt;geronimo&lt;/code&gt;.
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="artifactId" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0+</xs:documentation>
<xs:documentation source="description">
The unique id for an artifact produced by the project group, e.g.
&lt;code&gt;germonimo-jms&lt;/code&gt;
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="version" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0+</xs:documentation>
<xs:documentation source="description">
The version of the dependency, e.g. &lt;code&gt;3.2.1&lt;/code&gt;
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="url" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0</xs:documentation>
<xs:documentation source="description">
This url will be provided to the user if the jar file cannot be downloaded
from the central repository.
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="jar" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0</xs:documentation>
<xs:documentation source="description">
Literal name of the artifact. Used to override the calculated artifact name.
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="type" type="xs:string" default="jar" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0+</xs:documentation>
<xs:documentation source="description">
The type of dependency. This defaults to &lt;code&gt;jar&lt;/code&gt;.
Known recognised dependency types are:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;jar&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;ejb&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;plugin&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="properties" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0</xs:documentation>
<xs:documentation source="description">
Properties about the dependency. Various plugins allow you to
&lt;code&gt;mark&lt;/code&gt; dependencies with properties. For example the
&lt;a href="/plugins/war/index.html"&gt;war&lt;/a&gt; plugin looks for a
&lt;code&gt;war.bundle&lt;/code&gt; property, and if found will include the
dependency in &lt;code&gt;WEB-INF/lib&lt;/code&gt;. For example syntax, check
the war plugin docs.
</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:any processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:all>
</xs:complexType>
<xs:complexType name="Repository">
<xs:annotation>
<xs:documentation source="version">3.0.0</xs:documentation>
</xs:annotation>
<xs:all>
<xs:element name="connection" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0</xs:documentation>
<xs:documentation source="description">
&lt;p&gt;
Optional. The source configuration management system URL
that describes the repository and how to connect to the
repository. This is used by Maven when &lt;a href="/plugins/dist/index.html"&gt;building versions&lt;/a&gt;
from specific ID.
&lt;/p&gt;
&lt;p&gt;
The format of this element is as follows:
&lt;/p&gt;
&lt;pre&gt;scm:&amp;lt;provider&amp;gt;:&amp;lt;provider-parameters&amp;gt;&lt;/pre&gt;
&lt;p&gt;For cvs, the format for pserver repositories should be:&lt;/p&gt;
&lt;div class="source"&gt;
&lt;pre&gt;scm:cvs:pserver:user@host:/cvs/root:module-name&lt;/pre&gt;
&lt;/div&gt;
&lt;p&gt;
For local networked repositories (eg. pserver to local machine)
&lt;/p&gt;
&lt;div class="source"&gt;
&lt;pre&gt;scm:cvs:lserver:user@host:/cvs/root:module-name&lt;/pre&gt;
&lt;/div&gt;
&lt;p&gt;
For ssh access:
&lt;/p&gt;
&lt;div class="source"&gt;
&lt;pre&gt;scm:cvs:ext:user@host:/cvs/root:module-name&lt;/pre&gt;
&lt;/div&gt;
Remember that CVS will expect an environment variable called
&lt;code&gt;CVS_RSH&lt;/code&gt; to be set, typically to &lt;code&gt;ssh&lt;/code&gt; or your
ssh client.
&lt;p&gt;
Some cvs clients support other protocols, such as ntserver and extssh.
Here's an example using CVS NT and ntserver:
&lt;/p&gt;
&lt;div class="source"&gt;
&lt;pre&gt;scm|cvs|ntserver|user@server|e:\cvs|Deployment&lt;/pre&gt;
&lt;/div&gt;
Note the use of the vertical bar as delimiter as the repository has a
colon (&lt;code&gt;:&lt;/code&gt;) in it.
&lt;p&gt;
For local file system repositories
&lt;/p&gt;
&lt;div class="source"&gt;
&lt;pre&gt;scm:cvs:local:ignored:/cvs/root:module-name&lt;/pre&gt;
&lt;/div&gt;
&lt;p&gt;
For StarTeam access:
&lt;/p&gt;
&lt;div class="source"&gt;
&lt;pre&gt;scm:starteam:username:password@host:port/project/view/folder&lt;/pre&gt;
&lt;/div&gt;
All of this information can be had from either the StarTeam Universal
Client (Tools-&amp;gt;Server Administration-&amp;gt;Server Properties) or from the
administrator.
&lt;p&gt;
The delimiter is determined by the character after "scm". eg.
&lt;code&gt;scm|cvs|pserver|user@host|/cvs/root|module-name&lt;/code&gt;
is equivalent to that listed above. This can be useful for Windows users
who have : in their cvsroot parameter (eg. D:\cvsroot)
&lt;/p&gt;
&lt;p&gt;
Where &lt;code&gt;pserver&lt;/code&gt; is the protocol used to access CVS,
&lt;code&gt;user@host&lt;/code&gt; is the user name to log in to the specified
cvs &lt;strong&gt;host&lt;/strong&gt;, &lt;code&gt;/cvs/root&lt;/code&gt; is the cvs root
directory, and &lt;code&gt;module-name&lt;/code&gt; is the name of the cvs
module to be worked on
&lt;/p&gt;
&lt;p&gt;As an example, the settings for an Apache project are usually:&lt;/p&gt;
&lt;pre&gt;scm:cvs:pserver:anoncvs@cvs.apache.org:/home/cvspublic:module-name&lt;/pre&gt;
&lt;p&gt;
Currently CVS, Starteam and SubVersion are the only supported scm's.
Others will be added as soon as possible
&lt;/p&gt;
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="developerConnection" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0</xs:documentation>
<xs:documentation source="description">
Just like connection, but for developers, i.e. this scm connection
will not be read only.
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="url" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0</xs:documentation>
<xs:documentation source="description">The URL to the project's browsable CVS repository.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:all>
</xs:complexType>
<xs:complexType name="PackageGroup">
<xs:annotation>
<xs:documentation source="version">3.0.0</xs:documentation>
</xs:annotation>
<xs:all>
<xs:element name="title" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0</xs:documentation>
<xs:documentation source="description">the description</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="packages" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0</xs:documentation>
<xs:documentation source="description">the description</xs:documentation>
</xs:annotation>
</xs:element>
</xs:all>
</xs:complexType>
<xs:complexType name="Version">
<xs:annotation>
<xs:documentation source="version">3.0.0</xs:documentation>
<xs:documentation source="description">
This element describes each of the previous versions of the
project. Each version is described by a &lt;code&gt;version&lt;/code&gt;
element
</xs:documentation>
</xs:annotation>
<xs:all>
<xs:element name="name" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0</xs:documentation>
<xs:documentation source="description">
The external version number under which this release was distributed. Examples include:
&lt;code&gt;1.0&lt;/code&gt;,
&lt;code&gt;1.1-alpha1&lt;/code&gt;,
&lt;code&gt;1.2-beta&lt;/code&gt;,
&lt;code&gt;1.3.2&lt;/code&gt; etc.
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="tag" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0</xs:documentation>
<xs:documentation source="description">
The name given in the version control system (e.g. cvs) used by the project for the source
code associated with this version of the project.
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="id" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0</xs:documentation>
<xs:documentation source="description">
A unique identifier for a version. This ID is
used to specify the version that
&lt;a href="/plugins/dist/index.html"&gt;
&lt;code&gt;maven:dist&lt;/code&gt;
&lt;/a&gt; builds.
</xs:documentation>
</xs:annotation>
</xs:element>
</xs:all>
</xs:complexType>
<xs:complexType name="License">
<xs:annotation>
<xs:documentation source="version">3.0.0+</xs:documentation>
<xs:documentation source="description">
Describes the licenses for this project. This is used to generate
the &lt;a href="/plugins/site/index.html"&gt;License&lt;/a&gt; page of
the project's web site. Typically the licenses listed for the project
are that of the project itself, and not of dependencies.
</xs:documentation>
</xs:annotation>
<xs:all>
<xs:element name="name" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0+</xs:documentation>
<xs:documentation source="description">The full legal name of the license.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="url" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0+</xs:documentation>
<xs:documentation source="description">The official url for the license text.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="distribution" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0+</xs:documentation>
<xs:documentation source="description">
The primary method by which this project may be distributed.
&lt;dl&gt;
&lt;dt&gt;repo&lt;/dt&gt;
&lt;dd&gt;may be downloaded from the Maven repository&lt;/dd&gt;
&lt;dt&gt;manual&lt;/dt&gt;
&lt;dd&gt;user must manually download and install the dependency.&lt;/dd&gt;
&lt;/dl&gt;
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="comments" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0+</xs:documentation>
<xs:documentation source="description">
Addendum information pertaining to this license.
</xs:documentation>
</xs:annotation>
</xs:element>
</xs:all>
</xs:complexType>
<xs:complexType name="Contributor">
<xs:annotation>
<xs:documentation source="version">3.0.0+</xs:documentation>
<xs:documentation source="description">
Description of a person who has contributed to the project, but who does
not have commit privileges. Usually, these contributions come in the
form of patches submitted.
</xs:documentation>
</xs:annotation>
<xs:all>
<xs:element name="name" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0+</xs:documentation>
<xs:documentation source="description">The full name of the contributor.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="email" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0+</xs:documentation>
<xs:documentation source="description">The email address of the contributor.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="url" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0+</xs:documentation>
<xs:documentation source="description">The URL for the homepage of the contributor.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="organization" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0+</xs:documentation>
<xs:documentation source="description">The organization to which the contributor belongs.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="organizationUrl" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0+</xs:documentation>
<xs:documentation source="description">The URL of the organization.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="roles" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0+</xs:documentation>
<xs:documentation source="description">
The roles the contributor plays in the project. Each role is
described by a &lt;code&gt;role&lt;/code&gt; element, the body of which is a
role name.
</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="role" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="timezone" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0+</xs:documentation>
<xs:documentation source="description">
The timezone the contributor is in. This is a number in the range -11 to 12.
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="properties" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0+</xs:documentation>
<xs:documentation source="description">
Properties about the contributor, such as an instant messenger handle.
</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:any processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:all>
</xs:complexType>
<xs:complexType name="Branch">
<xs:annotation>
<xs:documentation source="version">3.0.0</xs:documentation>
<xs:documentation source="description">
Optional. Contains information on branches of the project. This
information is used when invoking the
&lt;a href="/plugins/dist/index.html"&gt;&lt;code&gt;maven:dist&lt;/code&gt;&lt;/a&gt; target.
</xs:documentation>
</xs:annotation>
<xs:all>
<xs:element name="tag" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0</xs:documentation>
<xs:documentation source="description">
The branch tag in the version control system (e.g. cvs) used by the
project for the source code associated with this branch of the
project.
</xs:documentation>
</xs:annotation>
</xs:element>
</xs:all>
</xs:complexType>
<xs:complexType name="MailingList">
<xs:annotation>
<xs:documentation source="version">3.0.0+</xs:documentation>
<xs:documentation source="description">
This element describes all of the mailing lists associated with
a project. Each mailing list is described by a
&lt;code&gt;mailingList&lt;/code&gt; element, which is then described by
additional elements (described below). The auto-generated site
documentation references this information.
</xs:documentation>
</xs:annotation>
<xs:all>
<xs:element name="name" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0+</xs:documentation>
<xs:documentation source="description">The name of the mailing list.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="subscribe" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0+</xs:documentation>
<xs:documentation source="description">
The email address or link that can be used to subscribe to the mailing list.
If this is an email address, a
&lt;code&gt;mailto:&lt;/code&gt; link will automatically be created when
the documentation is created.
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="unsubscribe" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0+</xs:documentation>
<xs:documentation source="description">
The email address or link that can be used to unsubscribe to
the mailing list. If this is an email address, a
&lt;code&gt;mailto:&lt;/code&gt; link will automatically be created
when the documentation is created.
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="post" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0+</xs:documentation>
<xs:documentation source="description">
The email address or link that can be used to post to
the mailing list. If this is an email address, a
&lt;code&gt;mailto:&lt;/code&gt; link will automatically be created
when the documentation is created.
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="archive" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0+</xs:documentation>
<xs:documentation source="description">
The link to a URL where you can browse the mailing list archive.
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="otherArchives" minOccurs="0">
<xs:annotation>
<xs:documentation source="version">3.0.0+</xs:documentation>
<xs:documentation source="description">
The link to other URLs where you can browse the list archive.
</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="otherArchive" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:all>
</xs:complexType>
</xs:schema>