You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@maven.apache.org by br...@apache.org on 2005/06/08 07:25:12 UTC

svn commit: r189527 [2/2] - /maven/maven-1/core/trunk/src/xsd/maven-v3_0_0.xsd /maven/maven-1/core/trunk/src/xsd/maven-v4_0_0.xsd

Modified: maven/maven-1/core/trunk/src/xsd/maven-v4_0_0.xsd
URL: http://svn.apache.org/viewcvs/maven/maven-1/core/trunk/src/xsd/maven-v4_0_0.xsd?rev=189527&r1=189526&r2=189527&view=diff
==============================================================================
--- maven/maven-1/core/trunk/src/xsd/maven-v4_0_0.xsd (original)
+++ maven/maven-1/core/trunk/src/xsd/maven-v4_0_0.xsd Tue Jun  7 22:25:11 2005
@@ -1,387 +1,1683 @@
 <?xml version="1.0"?>
 <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="http://maven.apache.org/POM/4.0.0" xmlns="http://maven.apache.org/POM/4.0.0">
-  <xs:element name="project">
-    <xs:complexType>
-      <xs:all>
-        <xs:element name="parent" minOccurs="0"/>
-        <xs:element name="modelVersion" type="xs:string" minOccurs="0"/>
-        <xs:element name="groupId" type="xs:string" minOccurs="0"/>
-        <xs:element name="artifactId" type="xs:string" minOccurs="0"/>
-        <xs:element name="packaging" type="xs:string" default="jar" minOccurs="0"/>
-        <xs:element name="modules" minOccurs="0"/>
-        <xs:element name="name" type="xs:string" minOccurs="0"/>
-        <xs:element name="version" type="xs:string" minOccurs="0"/>
-        <xs:element name="description" type="xs:string" minOccurs="0"/>
-        <xs:element name="url" type="xs:string" minOccurs="0"/>
-        <xs:element name="issueManagement" minOccurs="0"/>
-        <xs:element name="ciManagement" minOccurs="0"/>
-        <xs:element name="inceptionYear" type="xs:string" minOccurs="0"/>
-        <xs:element name="repositories" minOccurs="0"/>
-        <xs:element name="pluginRepositories" minOccurs="0"/>
-        <xs:element name="mailingLists" minOccurs="0"/>
-        <xs:element name="developers" minOccurs="0"/>
-        <xs:element name="contributors" minOccurs="0"/>
-        <xs:element name="dependencies" minOccurs="0"/>
-        <xs:element name="licenses" minOccurs="0"/>
-        <xs:element name="reports" minOccurs="0"/>
-        <xs:element name="scm" minOccurs="0"/>
-        <xs:element name="build" minOccurs="0"/>
-        <xs:element name="organization" minOccurs="0"/>
-        <xs:element name="distributionManagement" minOccurs="0"/>
-        <xs:element name="dependencyManagement" minOccurs="0"/>
-      </xs:all>
-    </xs:complexType>
-  </xs:element>
-  <xs:element name="parent">
-    <xs:complexType>
-      <xs:all>
-        <xs:element name="artifactId" type="xs:string" minOccurs="0"/>
-        <xs:element name="groupId" type="xs:string" minOccurs="0"/>
-        <xs:element name="version" type="xs:string" minOccurs="0"/>
-      </xs:all>
-    </xs:complexType>
-  </xs:element>
-  <xs:element name="modules">
-    <xs:complexType>
-      <xs:sequence>
-        <xs:element name="module" minOccurs="0" maxOccurs="unbounded"/>
-      </xs:sequence>
-    </xs:complexType>
-  </xs:element>
-  <xs:element name="issueManagement">
-    <xs:complexType>
-      <xs:all>
-        <xs:element name="system" type="xs:string" minOccurs="0"/>
-        <xs:element name="url" type="xs:string" minOccurs="0"/>
-      </xs:all>
-    </xs:complexType>
-  </xs:element>
-  <xs:element name="ciManagement">
-    <xs:complexType>
-      <xs:all>
-        <xs:element name="system" type="xs:string" minOccurs="0"/>
-        <xs:element name="url" type="xs:string" minOccurs="0"/>
-        <xs:element name="notifiers" minOccurs="0"/>
-      </xs:all>
-    </xs:complexType>
-  </xs:element>
-  <xs:element name="notifier">
-    <xs:complexType>
-      <xs:all>
-        <xs:element name="type" type="xs:string" default="mail" minOccurs="0"/>
-        <xs:element name="address" type="xs:string" minOccurs="0"/>
-        <xs:element name="configuration" minOccurs="0"/>
-      </xs:all>
-    </xs:complexType>
-  </xs:element>
-  <xs:element name="configuration">
-    <xs:complexType>
-      <xs:sequence>
-        <xs:any minOccurs="0" maxOccurs="unbounded" processContents="lax"/>
-      </xs:sequence>
-    </xs:complexType>
-  </xs:element>
-  <xs:element name="notifiers">
-    <xs:complexType>
-      <xs:sequence>
-        <xs:element name="notifier" minOccurs="0" maxOccurs="unbounded"/>
-      </xs:sequence>
-    </xs:complexType>
-  </xs:element>
-  <xs:element name="repository">
-    <xs:complexType>
-      <xs:all>
-        <xs:element name="id" type="xs:string" minOccurs="0"/>
-        <xs:element name="name" type="xs:string" minOccurs="0"/>
-        <xs:element name="url" type="xs:string" minOccurs="0"/>
-        <xs:element name="snapshotPolicy" type="xs:string" default="daily" minOccurs="0"/>
-        <xs:element name="layout" type="xs:string" default="default" minOccurs="0"/>
-      </xs:all>
-    </xs:complexType>
-  </xs:element>
-  <xs:element name="repositories">
-    <xs:complexType>
-      <xs:sequence>
-        <xs:element name="repository" minOccurs="0" maxOccurs="unbounded"/>
-      </xs:sequence>
-    </xs:complexType>
-  </xs:element>
-  <xs:element name="pluginRepositories">
-    <xs:complexType>
-      <xs:sequence>
-        <xs:element name="pluginRepository" minOccurs="0" maxOccurs="unbounded"/>
-      </xs:sequence>
-    </xs:complexType>
-  </xs:element>
-  <xs:element name="mailingList">
-    <xs:complexType>
-      <xs:all>
-        <xs:element name="name" type="xs:string" minOccurs="0"/>
-        <xs:element name="subscribe" type="xs:string" minOccurs="0"/>
-        <xs:element name="unsubscribe" type="xs:string" minOccurs="0"/>
-        <xs:element name="post" type="xs:string" minOccurs="0"/>
-        <xs:element name="archive" type="xs:string" minOccurs="0"/>
-        <xs:element name="otherArchives" minOccurs="0"/>
-      </xs:all>
-    </xs:complexType>
-  </xs:element>
-  <xs:element name="otherArchives">
-    <xs:complexType>
-      <xs:sequence>
-        <xs:element name="otherArchive" minOccurs="0" maxOccurs="unbounded"/>
-      </xs:sequence>
-    </xs:complexType>
-  </xs:element>
-  <xs:element name="mailingLists">
-    <xs:complexType>
-      <xs:sequence>
-        <xs:element name="mailingList" minOccurs="0" maxOccurs="unbounded"/>
-      </xs:sequence>
-    </xs:complexType>
-  </xs:element>
-  <xs:element name="developer">
-    <xs:complexType>
-      <xs:all>
-        <xs:element name="id" type="xs:string" minOccurs="0"/>
-        <xs:element name="name" type="xs:string" minOccurs="0"/>
-        <xs:element name="email" type="xs:string" minOccurs="0"/>
-        <xs:element name="url" type="xs:string" minOccurs="0"/>
-        <xs:element name="organization" type="xs:string" minOccurs="0"/>
-        <xs:element name="organizationUrl" type="xs:string" minOccurs="0"/>
-        <xs:element name="roles" minOccurs="0"/>
-        <xs:element name="timezone" type="xs:string" minOccurs="0"/>
-        <xs:element name="properties" minOccurs="0"/>
-      </xs:all>
-    </xs:complexType>
-  </xs:element>
-  <xs:element name="roles">
-    <xs:complexType>
-      <xs:sequence>
-        <xs:element name="role" minOccurs="0" maxOccurs="unbounded"/>
-      </xs:sequence>
-    </xs:complexType>
-  </xs:element>
-  <xs:element name="properties">
-    <xs:complexType>
-      <xs:sequence>
-        <xs:any minOccurs="0" maxOccurs="unbounded" processContents="lax"/>
-      </xs:sequence>
-    </xs:complexType>
-  </xs:element>
-  <xs:element name="developers">
-    <xs:complexType>
-      <xs:sequence>
-        <xs:element name="developer" minOccurs="0" maxOccurs="unbounded"/>
-      </xs:sequence>
-    </xs:complexType>
-  </xs:element>
-  <xs:element name="contributor">
-    <xs:complexType>
-      <xs:all>
-        <xs:element name="name" type="xs:string" minOccurs="0"/>
-        <xs:element name="email" type="xs:string" minOccurs="0"/>
-        <xs:element name="url" type="xs:string" minOccurs="0"/>
-        <xs:element name="organization" type="xs:string" minOccurs="0"/>
-        <xs:element name="organizationUrl" type="xs:string" minOccurs="0"/>
-        <xs:element name="roles" minOccurs="0"/>
-        <xs:element name="timezone" type="xs:string" minOccurs="0"/>
-        <xs:element name="properties" minOccurs="0"/>
-      </xs:all>
-    </xs:complexType>
-  </xs:element>
-  <xs:element name="contributors">
-    <xs:complexType>
-      <xs:sequence>
-        <xs:element name="contributor" minOccurs="0" maxOccurs="unbounded"/>
-      </xs:sequence>
-    </xs:complexType>
-  </xs:element>
-  <xs:element name="dependency">
-    <xs:complexType>
-      <xs:all>
-        <xs:element name="groupId" type="xs:string" minOccurs="0"/>
-        <xs:element name="artifactId" type="xs:string" minOccurs="0"/>
-        <xs:element name="version" type="xs:string" minOccurs="0"/>
-        <xs:element name="type" type="xs:string" default="jar" minOccurs="0"/>
-        <xs:element name="scope" type="xs:string" default="compile" minOccurs="0"/>
-      </xs:all>
-    </xs:complexType>
-  </xs:element>
-  <xs:element name="dependencies">
-    <xs:complexType>
-      <xs:sequence>
-        <xs:element name="dependency" minOccurs="0" maxOccurs="unbounded"/>
-      </xs:sequence>
-    </xs:complexType>
-  </xs:element>
-  <xs:element name="license">
-    <xs:complexType>
-      <xs:all>
-        <xs:element name="name" type="xs:string" minOccurs="0"/>
-        <xs:element name="url" type="xs:string" minOccurs="0"/>
-        <xs:element name="distribution" type="xs:string" minOccurs="0"/>
-        <xs:element name="comments" type="xs:string" minOccurs="0"/>
-      </xs:all>
-    </xs:complexType>
-  </xs:element>
-  <xs:element name="licenses">
-    <xs:complexType>
-      <xs:sequence>
-        <xs:element name="license" minOccurs="0" maxOccurs="unbounded"/>
-      </xs:sequence>
-    </xs:complexType>
-  </xs:element>
-  <xs:element name="reports">
-    <xs:complexType>
-      <xs:all>
-        <xs:element name="outputDirectory" type="xs:string" minOccurs="0"/>
-        <xs:element name="plugins" minOccurs="0"/>
-      </xs:all>
-    </xs:complexType>
-  </xs:element>
-  <xs:element name="plugin">
-    <xs:complexType>
-      <xs:all>
-        <xs:element name="groupId" type="xs:string" default="org.apache.maven.plugins" minOccurs="0"/>
-        <xs:element name="artifactId" type="xs:string" minOccurs="0"/>
-        <xs:element name="version" type="xs:string" minOccurs="0"/>
-        <xs:element name="configuration" minOccurs="0"/>
-        <xs:element name="goals" minOccurs="0"/>
-      </xs:all>
-    </xs:complexType>
-  </xs:element>
-  <xs:element name="configuration">
-    <xs:complexType>
-      <xs:sequence>
-        <xs:any minOccurs="0" maxOccurs="unbounded" processContents="lax"/>
-      </xs:sequence>
-    </xs:complexType>
-  </xs:element>
-  <xs:element name="goal">
-    <xs:complexType>
-      <xs:all>
-        <xs:element name="id" type="xs:string" minOccurs="0"/>
-        <xs:element name="configuration" minOccurs="0"/>
-      </xs:all>
-    </xs:complexType>
-  </xs:element>
-  <xs:element name="goals">
-    <xs:complexType>
-      <xs:sequence>
-        <xs:element name="goal" minOccurs="0" maxOccurs="unbounded"/>
-      </xs:sequence>
-    </xs:complexType>
-  </xs:element>
-  <xs:element name="plugins">
-    <xs:complexType>
-      <xs:sequence>
-        <xs:element name="plugin" minOccurs="0" maxOccurs="unbounded"/>
-      </xs:sequence>
-    </xs:complexType>
-  </xs:element>
-  <xs:element name="scm">
-    <xs:complexType>
-      <xs:all>
-        <xs:element name="connection" type="xs:string" minOccurs="0"/>
-        <xs:element name="developerConnection" type="xs:string" minOccurs="0"/>
-        <xs:element name="url" type="xs:string" minOccurs="0"/>
-      </xs:all>
-    </xs:complexType>
-  </xs:element>
-  <xs:element name="build">
-    <xs:complexType>
-      <xs:all>
-        <xs:element name="defaultGoal" type="xs:string" minOccurs="0"/>
-        <xs:element name="sourceDirectory" type="xs:string" minOccurs="0"/>
-        <xs:element name="scriptSourceDirectory" type="xs:string" minOccurs="0"/>
-        <xs:element name="testSourceDirectory" type="xs:string" minOccurs="0"/>
-        <xs:element name="resources" minOccurs="0"/>
-        <xs:element name="testResources" minOccurs="0"/>
-        <xs:element name="directory" type="xs:string" minOccurs="0"/>
-        <xs:element name="outputDirectory" type="xs:string" minOccurs="0"/>
-        <xs:element name="finalName" type="xs:string" minOccurs="0"/>
-        <xs:element name="testOutputDirectory" type="xs:string" minOccurs="0"/>
-        <xs:element name="pluginManagement" minOccurs="0"/>
-        <xs:element name="plugins" minOccurs="0"/>
-      </xs:all>
-    </xs:complexType>
-  </xs:element>
-  <xs:element name="resource">
-    <xs:complexType>
-      <xs:all>
-        <xs:element name="targetPath" type="xs:string" minOccurs="0"/>
-        <xs:element name="directory" type="xs:string" minOccurs="0"/>
-        <xs:element name="includes" minOccurs="0"/>
-        <xs:element name="excludes" minOccurs="0"/>
-      </xs:all>
-    </xs:complexType>
-  </xs:element>
-  <xs:element name="includes">
-    <xs:complexType>
-      <xs:sequence>
-        <xs:element name="include" minOccurs="0" maxOccurs="unbounded"/>
-      </xs:sequence>
-    </xs:complexType>
-  </xs:element>
-  <xs:element name="excludes">
-    <xs:complexType>
-      <xs:sequence>
-        <xs:element name="exclude" minOccurs="0" maxOccurs="unbounded"/>
-      </xs:sequence>
-    </xs:complexType>
-  </xs:element>
-  <xs:element name="resources">
-    <xs:complexType>
-      <xs:sequence>
-        <xs:element name="resource" minOccurs="0" maxOccurs="unbounded"/>
-      </xs:sequence>
-    </xs:complexType>
-  </xs:element>
-  <xs:element name="testResources">
-    <xs:complexType>
-      <xs:sequence>
-        <xs:element name="testResource" minOccurs="0" maxOccurs="unbounded"/>
-      </xs:sequence>
-    </xs:complexType>
-  </xs:element>
-  <xs:element name="pluginManagement">
-    <xs:complexType>
-      <xs:all>
-        <xs:element name="plugins" minOccurs="0"/>
-      </xs:all>
-    </xs:complexType>
-  </xs:element>
-  <xs:element name="organization">
-    <xs:complexType>
-      <xs:all>
-        <xs:element name="name" type="xs:string" minOccurs="0"/>
-        <xs:element name="url" type="xs:string" minOccurs="0"/>
-      </xs:all>
-    </xs:complexType>
-  </xs:element>
-  <xs:element name="distributionManagement">
-    <xs:complexType>
-      <xs:all>
-        <xs:element name="repository" minOccurs="0"/>
-        <xs:element name="site" minOccurs="0"/>
-        <xs:element name="downloadUrl" type="xs:string" minOccurs="0"/>
-      </xs:all>
-    </xs:complexType>
-  </xs:element>
-  <xs:element name="site">
-    <xs:complexType>
-      <xs:all>
-        <xs:element name="id" type="xs:string" minOccurs="0"/>
-        <xs:element name="name" type="xs:string" minOccurs="0"/>
-        <xs:element name="url" type="xs:string" minOccurs="0"/>
-      </xs:all>
-    </xs:complexType>
-  </xs:element>
-  <xs:element name="dependencyManagement">
-    <xs:complexType>
-      <xs:all>
-        <xs:element name="dependencies" minOccurs="0"/>
-      </xs:all>
-    </xs:complexType>
-  </xs:element>
+  <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="parent" minOccurs="0" type="Parent">
+        <xs:annotation>
+          <xs:documentation source="version">4.0.0</xs:documentation>
+          <xs:documentation source="description">Information on which parent POM to extend.</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element name="modelVersion" minOccurs="0" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">4.0.0</xs:documentation>
+          <xs:documentation source="description">Declares to which version of project descriptor this POM conforms.</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element name="groupId" minOccurs="0" type="xs:string">
+        <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" minOccurs="0" type="xs:string">
+        <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="packaging" minOccurs="0" type="xs:string" default="jar">
+        <xs:annotation>
+          <xs:documentation source="version">4.0.0</xs:documentation>
+          <xs:documentation source="description">The type of artifact this project produces.</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element name="name" minOccurs="0" type="xs:string">
+        <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="version" minOccurs="0" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">4.0.0</xs:documentation>
+          <xs:documentation source="description">
+            The current version of the artifact produced by this project.
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element name="description" minOccurs="0" type="xs:string">
+        <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" minOccurs="0" type="xs:string">
+        <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="issueManagement" minOccurs="0" type="IssueManagement">
+        <xs:annotation>
+          <xs:documentation source="version">4.0.0</xs:documentation>
+          <xs:documentation source="description">The project's issue management information.</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element name="ciManagement" minOccurs="0" type="CiManagement">
+        <xs:annotation>
+          <xs:documentation source="version">4.0.0</xs:documentation>
+          <xs:documentation source="description">The project's continuous integration management information.</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element name="inceptionYear" minOccurs="0" type="xs:string">
+        <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="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" minOccurs="0" maxOccurs="unbounded" type="MailingList"/>
+          </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" minOccurs="0" maxOccurs="unbounded" type="Developer"/>
+          </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" minOccurs="0" maxOccurs="unbounded" type="Contributor"/>
+          </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" minOccurs="0" maxOccurs="unbounded" type="License"/>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+      <xs:element name="scm" minOccurs="0" type="Scm">
+        <xs:annotation>
+          <xs:documentation source="version">4.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" minOccurs="0" type="Organization">
+        <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="build" minOccurs="0" type="Build">
+        <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="profiles" minOccurs="0">
+        <xs:annotation>
+          <xs:documentation source="version">4.0.0</xs:documentation>
+          <xs:documentation source="description">
+            Listing of project-local build profiles which will modify the build process when activated.
+          </xs:documentation>
+        </xs:annotation>
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element name="profile" minOccurs="0" maxOccurs="unbounded" type="Profile"/>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+      <xs:element name="modules" minOccurs="0">
+        <xs:annotation>
+          <xs:documentation source="version">4.0.0</xs:documentation>
+          <xs:documentation source="description">The modules to build in addition to the current project</xs:documentation>
+        </xs:annotation>
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element name="module" minOccurs="0" maxOccurs="unbounded" type="xs:string"/>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+      <xs:element name="repositories" minOccurs="0">
+        <xs:annotation>
+          <xs:documentation source="version">4.0.0</xs:documentation>
+          <xs:documentation source="description">The lists of the remote repositories</xs:documentation>
+        </xs:annotation>
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element name="repository" minOccurs="0" maxOccurs="unbounded" type="Repository"/>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+      <xs:element name="pluginRepositories" minOccurs="0">
+        <xs:annotation>
+          <xs:documentation source="version">4.0.0</xs:documentation>
+          <xs:documentation source="description">The lists of the remote repositories for discovering plugins</xs:documentation>
+        </xs:annotation>
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element name="pluginRepository" minOccurs="0" maxOccurs="unbounded" type="Repository"/>
+          </xs:sequence>
+        </xs:complexType>
+      </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" minOccurs="0" maxOccurs="unbounded" type="Dependency"/>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+      <xs:element name="reports" minOccurs="0" type="Reports">
+        <xs:annotation>
+          <xs:documentation source="version">4.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:element>
+      <xs:element name="dependencyManagement" minOccurs="0" type="DependencyManagement">
+        <xs:annotation>
+          <xs:documentation source="version">4.0.0</xs:documentation>
+          <xs:documentation source="description">
+            Default dependency information for grouped projects inheriting from 
+            this one. The dependency information here will not be checked.
+            Instead, when a POM derived from this one declares a dependency 
+            described by a groupId and an artifactId (version not necessary), 
+            the entries in here will supply default values for that dependency.
+            Any locally-supplied information for a particular dependency will
+            overwrite any information specified here for that project.
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element name="distributionManagement" minOccurs="0" type="DistributionManagement">
+        <xs:annotation>
+          <xs:documentation source="version">4.0.0</xs:documentation>
+          <xs:documentation source="description">Distribution information for a 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" minOccurs="0" type="xs:string">
+        <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" minOccurs="0" type="xs:string">
+        <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" minOccurs="0" type="xs:string">
+        <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" minOccurs="0" type="xs:string">
+        <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" minOccurs="0" type="xs:string">
+        <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" minOccurs="0" maxOccurs="unbounded" type="xs:string"/>
+          </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" minOccurs="0" type="xs:string">
+        <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" minOccurs="0" type="xs:string">
+        <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:all>
+  </xs:complexType>
+  <xs:complexType name="Repository">
+    <xs:annotation>
+      <xs:documentation source="version">4.0.0</xs:documentation>
+      <xs:documentation source="description">
+         Repository contains the information needed
+         for establishing connections with remote repoistory
+      </xs:documentation>
+    </xs:annotation>
+    <xs:all>
+      <xs:element name="id" minOccurs="0" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">4.0.0</xs:documentation>
+          <xs:documentation source="description">
+            A unique identifier for a repository.
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element name="name" minOccurs="0" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">4.0.0</xs:documentation>
+          <xs:documentation source="description">
+            Human readable name of the repository
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element name="url" minOccurs="0" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">4.0.0</xs:documentation>
+          <xs:documentation source="description">
+             The url of the repository
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element name="snapshotPolicy" minOccurs="0" type="xs:string" default="daily">
+        <xs:annotation>
+          <xs:documentation source="version">4.0.0</xs:documentation>
+          <xs:documentation source="description">
+            The policy for downloading snapshots - can be "always", "daily" (default), "interval:XXX" (in minutes) or
+            "never".
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element name="layout" minOccurs="0" type="xs:string" default="default">
+        <xs:annotation>
+          <xs:documentation source="version">4.0.0</xs:documentation>
+          <xs:documentation source="description">The type of layout this repository uses for locating and storing artifacts - can be "legacy" or "default".</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+    </xs:all>
+  </xs:complexType>
+  <xs:complexType name="Scm">
+    <xs:annotation>
+      <xs:documentation source="version">4.0.0</xs:documentation>
+    </xs:annotation>
+    <xs:all>
+      <xs:element name="connection" minOccurs="0" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">4.0.0</xs:documentation>
+          <xs:documentation source="description">
+            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.
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element name="developerConnection" minOccurs="0" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">4.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="tag" minOccurs="0" type="xs:string" default="HEAD">
+        <xs:annotation>
+          <xs:documentation source="version">4.0.0</xs:documentation>
+          <xs:documentation source="description">
+            The tag of current code. By default, it's set to HEAD during development.
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element name="url" minOccurs="0" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">4.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="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" minOccurs="0" type="xs:string">
+        <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" minOccurs="0" type="xs:string">
+        <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" minOccurs="0" type="xs:string">
+        <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" minOccurs="0" type="xs:string">
+        <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" minOccurs="0" type="xs:string">
+        <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" minOccurs="0" type="xs:string">
+        <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" minOccurs="0" maxOccurs="unbounded" type="xs:string"/>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+      <xs:element name="timezone" minOccurs="0" type="xs:string">
+        <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 minOccurs="0" maxOccurs="unbounded" processContents="lax"/>
+          </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="sourceDirectory" minOccurs="0" type="xs:string">
+        <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="scriptSourceDirectory" minOccurs="0" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">4.0.0</xs:documentation>
+          <xs:documentation source="description">
+            This element specifies a directory containing the script sources
+            of the project. This directory is meant to be different from the
+            sourceDirectory, in that its contents will be copied to the output
+            directory in most cases (since scripts are interpreted rather than
+            compiled).
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element name="testSourceDirectory" minOccurs="0" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">4.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="directory" minOccurs="0" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">4.0.0</xs:documentation>
+          <xs:documentation source="description">
+            The directory where all files generated by the build is placed.
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element name="outputDirectory" minOccurs="0" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">4.0.0</xs:documentation>
+          <xs:documentation source="description">
+            The directory where compiled application classes are placed.
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element name="testOutputDirectory" minOccurs="0" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">4.0.0</xs:documentation>
+          <xs:documentation source="description">
+            The directory where compiled test classes are placed.
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element name="defaultGoal" minOccurs="0" type="xs:string">
+        <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" minOccurs="0" maxOccurs="unbounded" type="Resource"/>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+      <xs:element name="testResources" minOccurs="0">
+        <xs:annotation>
+          <xs:documentation source="version">4.0.0</xs:documentation>
+          <xs:documentation source="description">
+            This element describes all of the resources associated with a 
+            project's 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="testResource" minOccurs="0" maxOccurs="unbounded" type="Resource"/>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+      <xs:element name="finalName" minOccurs="0" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">4.0.0</xs:documentation>
+          <xs:documentation source="description">
+            The filename (including an extension, but with no path information) that the produced artifact
+            will be called. The default value is artifactId-version.extension (where extension is derived from
+            type).
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element name="pluginManagement" minOccurs="0" type="PluginManagement">
+        <xs:annotation>
+          <xs:documentation source="version">4.0.0</xs:documentation>
+          <xs:documentation source="description">
+            Default plugin information to be made available for reference by 
+            projects derived from this one. This plugin configuration will not
+            be validated or bound to the lifecycle unless referenced. Any local
+            configuration for a given plugin will override the plugin's entire
+            definition here.
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element name="plugins" minOccurs="0">
+        <xs:annotation>
+          <xs:documentation source="version">4.0.0</xs:documentation>
+          <xs:documentation source="description">
+            The plugins specified here are not validated until they
+            are referenced in a POM within the group. This allows the
+            specification of a "standard" version for a particular
+            plugin.
+          </xs:documentation>
+        </xs:annotation>
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element name="plugin" minOccurs="0" maxOccurs="unbounded" type="Plugin"/>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+    </xs:all>
+  </xs:complexType>
+  <xs:complexType name="Plugin">
+    <xs:annotation>
+      <xs:documentation source="version">4.0.0</xs:documentation>
+    </xs:annotation>
+    <xs:all>
+      <xs:element name="groupId" minOccurs="0" type="xs:string" default="org.apache.maven.plugins">
+        <xs:annotation>
+          <xs:documentation source="version">4.0.0</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element name="artifactId" minOccurs="0" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">4.0.0</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element name="version" minOccurs="0" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">4.0.0</xs:documentation>
+          <xs:documentation source="description">The version of the plugin to be used.</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element name="inherited" minOccurs="0" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">4.0.0</xs:documentation>
+          <xs:documentation source="description">Whether this plugin configuration should be propagated to child POMs.</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element name="configuration" minOccurs="0">
+        <xs:annotation>
+          <xs:documentation source="version">0.0.0+</xs:documentation>
+        </xs:annotation>
+        <xs:complexType>
+          <xs:sequence>
+            <xs:any minOccurs="0" maxOccurs="unbounded" processContents="lax"/>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+      <xs:element name="goals" minOccurs="0">
+        <xs:annotation>
+          <xs:documentation source="version">4.0.0</xs:documentation>
+        </xs:annotation>
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element name="goal" minOccurs="0" maxOccurs="unbounded" type="Goal"/>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+    </xs:all>
+  </xs:complexType>
+  <xs:complexType name="Goal">
+    <xs:annotation>
+      <xs:documentation source="version">4.0.0</xs:documentation>
+    </xs:annotation>
+    <xs:all>
+      <xs:element name="id" minOccurs="0" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">4.0.0</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element name="inherited" minOccurs="0" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">4.0.0</xs:documentation>
+          <xs:documentation source="description">Whether this goal configuration should be propagated to child POMs.</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element name="configuration" minOccurs="0">
+        <xs:annotation>
+          <xs:documentation source="version">0.0.0+</xs:documentation>
+        </xs:annotation>
+        <xs:complexType>
+          <xs:sequence>
+            <xs:any minOccurs="0" maxOccurs="unbounded" processContents="lax"/>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+    </xs:all>
+  </xs:complexType>
+  <xs:complexType name="PluginManagement">
+    <xs:annotation>
+      <xs:documentation source="version">4.0.0</xs:documentation>
+      <xs:documentation source="description">
+        Section for management of default plugin information for use in a group of POMs.
+      </xs:documentation>
+    </xs:annotation>
+    <xs:all>
+      <xs:element name="plugins" minOccurs="0">
+        <xs:annotation>
+          <xs:documentation source="version">4.0.0</xs:documentation>
+          <xs:documentation source="description">
+            The plugins specified here are not validated until they
+            are referenced in a POM within the group. This allows the
+            specification of a "standard" version for a particular
+            plugin.
+          </xs:documentation>
+        </xs:annotation>
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element name="plugin" minOccurs="0" maxOccurs="unbounded" type="Plugin"/>
+          </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" minOccurs="0" type="xs:string">
+        <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="directory" minOccurs="0" type="xs:string">
+        <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" minOccurs="0" maxOccurs="unbounded" type="xs:string"/>
+          </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" minOccurs="0" maxOccurs="unbounded" type="xs:string"/>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+    </xs:all>
+  </xs:complexType>
+  <xs:complexType name="DependencyManagement">
+    <xs:annotation>
+      <xs:documentation source="version">4.0.0</xs:documentation>
+      <xs:documentation source="description">
+        Section for management of default dependency information for use in a group of POMs.
+      </xs:documentation>
+    </xs:annotation>
+    <xs:all>
+      <xs:element name="dependencies" minOccurs="0">
+        <xs:annotation>
+          <xs:documentation source="version">4.0.0</xs:documentation>
+          <xs:documentation source="description">
+            The dependencies specified here are not validated until they
+            are referenced in a POM within the group. This allows the
+            specification of a "standard" version for a particular
+            dependency.
+          </xs:documentation>
+        </xs:annotation>
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element name="dependency" minOccurs="0" maxOccurs="unbounded" type="Dependency"/>
+          </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="groupId" minOccurs="0" type="xs:string">
+        <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" minOccurs="0" type="xs:string">
+        <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" minOccurs="0" type="xs:string">
+        <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="type" minOccurs="0" type="xs:string" default="jar">
+        <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="scope" minOccurs="0" type="xs:string" default="compile">
+        <xs:annotation>
+          <xs:documentation source="version">4.0.0</xs:documentation>
+          <xs:documentation source="description">
+            The scope of the dependency - compile, runtime, test. Used to
+            calculate the various classpaths used for testing, etc. and for 
+            determining which artifacts to include in a distribution of this
+            project. For more information, see 
+            &lt;a href="http://maven.apache.org/maven2/dependencies.html"&gt;Dependency Mechanism&lt;/a&gt;.
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element name="exclusions" minOccurs="0">
+        <xs:annotation>
+          <xs:documentation source="version">4.0.0</xs:documentation>
+          <xs:documentation source="description">
+            Lists a set of artifacts that should be excluded from this dependency's artifact list when it comes to
+            calculating transitive dependencies.
+          </xs:documentation>
+        </xs:annotation>
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element name="exclusion" minOccurs="0" maxOccurs="unbounded" type="Exclusion"/>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+    </xs:all>
+  </xs:complexType>
+  <xs:complexType name="Exclusion">
+    <xs:annotation>
+      <xs:documentation source="version">4.0.0</xs:documentation>
+    </xs:annotation>
+    <xs:all>
+      <xs:element name="artifactId" minOccurs="0" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">4.0.0</xs:documentation>
+          <xs:documentation source="description">The artifact id of the project to exclude.</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element name="groupId" minOccurs="0" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">4.0.0</xs:documentation>
+          <xs:documentation source="description">The group id of the project to exclude.</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" minOccurs="0" type="xs:string">
+        <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" minOccurs="0" type="xs:string">
+        <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" minOccurs="0" type="xs:string">
+        <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" minOccurs="0" type="xs:string">
+        <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="IssueManagement">
+    <xs:annotation>
+      <xs:documentation source="version">4.0.0</xs:documentation>
+      <xs:documentation source="description">
+        Information about the bugtracking system used to manage this project.
+      </xs:documentation>
+    </xs:annotation>
+    <xs:all>
+      <xs:element name="system" minOccurs="0" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">4.0.0</xs:documentation>
+          <xs:documentation source="description">The name of the issue management system i.e. Bugzilla</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element name="url" minOccurs="0" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">4.0.0</xs:documentation>
+          <xs:documentation source="description">Url for the issue management system used by the project.</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+    </xs:all>
+  </xs:complexType>
+  <xs:complexType name="DistributionManagement">
+    <xs:annotation>
+      <xs:documentation source="version">4.0.0</xs:documentation>
+      <xs:documentation source="description">
+        This elements describes all that pertains to distribution for a project.
+        It is primarily used for deployment of artifacts and distributions 
+        produced by the build.
+      </xs:documentation>
+    </xs:annotation>
+    <xs:all>
+      <xs:element name="repository" minOccurs="0" type="Repository">
+        <xs:annotation>
+          <xs:documentation source="version">4.0.0</xs:documentation>
+          <xs:documentation source="description">
+            Information needed for deploying to remote repository artifacts 
+            generated by the project
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element name="site" minOccurs="0" type="Site">
+        <xs:annotation>
+          <xs:documentation source="version">4.0.0</xs:documentation>
+          <xs:documentation source="description">
+            Information needed for deploying website files of the project.
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element name="downloadUrl" minOccurs="0" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">4.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            The URL of the project's download page. If not given users will be referred to the homepage given by
+            &lt;code&gt;url&lt;/code&gt;.
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+    </xs:all>
+  </xs:complexType>
+  <xs:complexType name="Site">
+    <xs:annotation>
+      <xs:documentation source="version">4.0.0</xs:documentation>
+      <xs:documentation source="description">
+         Site contains the information needed
+         for deploying websites.
+      </xs:documentation>
+    </xs:annotation>
+    <xs:all>
+      <xs:element name="id" minOccurs="0" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">4.0.0</xs:documentation>
+          <xs:documentation source="description">
+            A unique identifier for a deployment locataion.
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element name="name" minOccurs="0" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">4.0.0</xs:documentation>
+          <xs:documentation source="description">
+            Human readable name of the deployment location
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element name="url" minOccurs="0" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">4.0.0</xs:documentation>
+          <xs:documentation source="description">
+             The url of the location where website is deployed
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+    </xs:all>
+  </xs:complexType>
+  <xs:complexType name="Reports">
+    <xs:annotation>
+      <xs:documentation source="version">4.0.0</xs:documentation>
+      <xs:documentation source="description">Section for management of reports and configuration</xs:documentation>
+    </xs:annotation>
+    <xs:all>
+      <xs:element name="outputDirectory" minOccurs="0" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">4.0.0</xs:documentation>
+          <xs:documentation source="description">Where to store all of the generated reports</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element name="plugins" minOccurs="0">
+        <xs:annotation>
+          <xs:documentation source="version">4.0.0</xs:documentation>
+          <xs:documentation source="description">The reporting plugins to use and their configuration</xs:documentation>
+        </xs:annotation>
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element name="plugin" minOccurs="0" maxOccurs="unbounded" type="Plugin"/>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+    </xs:all>
+  </xs:complexType>
+  <xs:complexType name="CiManagement">
+    <xs:annotation>
+      <xs:documentation source="version">4.0.0</xs:documentation>
+    </xs:annotation>
+    <xs:all>
+      <xs:element name="system" minOccurs="0" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">4.0.0</xs:documentation>
+          <xs:documentation source="description">The name of the continuous integration system i.e. Bugzilla</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element name="url" minOccurs="0" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">4.0.0</xs:documentation>
+          <xs:documentation source="description">Url for the continuous integration system used by the project.</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element name="notifiers" minOccurs="0">
+        <xs:annotation>
+          <xs:documentation source="version">4.0.0</xs:documentation>
+          <xs:documentation source="description">
+            Configuration for notifying developers/users when a build is 
+            unsuccessful, including user information and notification mode.
+          </xs:documentation>
+        </xs:annotation>
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element name="notifier" minOccurs="0" maxOccurs="unbounded" type="Notifier"/>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+    </xs:all>
+  </xs:complexType>
+  <xs:complexType name="Notifier">
+    <xs:annotation>
+      <xs:documentation source="version">4.0.0</xs:documentation>
+      <xs:documentation source="description">
+        Configures one method for notifying users/developers when a build breaks.
+      </xs:documentation>
+    </xs:annotation>
+    <xs:all>
+      <xs:element name="type" minOccurs="0" type="xs:string" default="mail">
+        <xs:annotation>
+          <xs:documentation source="version">4.0.0</xs:documentation>
+          <xs:documentation source="description">The mechanism used to deliver notifications.</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element name="address" minOccurs="0" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">4.0.0</xs:documentation>
+          <xs:documentation source="description">
+            Where to send the notification to - eg email address
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element name="configuration" minOccurs="0">
+        <xs:annotation>
+          <xs:documentation source="version">0.0.0+</xs:documentation>
+          <xs:documentation source="description">Extended configuration specific to this notifier goes here.</xs:documentation>
+        </xs:annotation>
+        <xs:complexType>
+          <xs:sequence>
+            <xs:any minOccurs="0" maxOccurs="unbounded" processContents="lax"/>
+          </xs:sequence>
+        </xs:complexType>
+      </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" minOccurs="0" type="xs:string">
+        <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" minOccurs="0" type="xs:string">
+        <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" minOccurs="0" type="xs:string">
+        <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" minOccurs="0" type="xs:string">
+        <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" minOccurs="0" type="xs:string">
+        <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" minOccurs="0" maxOccurs="unbounded" type="xs:string"/>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+      <xs:element name="timezone" minOccurs="0" type="xs:string">
+        <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 minOccurs="0" maxOccurs="unbounded" processContents="lax"/>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+    </xs:all>
+  </xs:complexType>
+  <xs:complexType name="Parent">
+    <xs:annotation>
+      <xs:documentation source="version">4.0.0</xs:documentation>
+    </xs:annotation>
+    <xs:all>
+      <xs:element name="artifactId" minOccurs="0" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">4.0.0</xs:documentation>
+          <xs:documentation source="description">The artifact id of the project to extend.</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element name="groupId" minOccurs="0" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">4.0.0</xs:documentation>
+          <xs:documentation source="description">The group id of the project to extend.</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element name="version" minOccurs="0" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">4.0.0</xs:documentation>
+          <xs:documentation source="description">The version of the project to extend.</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+    </xs:all>
+  </xs:complexType>
+  <xs:complexType name="Profile">
+    <xs:annotation>
+      <xs:documentation source="version">4.0.0</xs:documentation>
+      <xs:documentation source="description">
+        Modifications to the build process which is keyed on some 
+        sort of environmental parameter.
+      </xs:documentation>
+    </xs:annotation>
+    <xs:all>
+      <xs:element name="id" minOccurs="0" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">4.0.0</xs:documentation>
+          <xs:documentation source="description">The ID of this build profile, for activation 
+            purposes.</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element name="activation" minOccurs="0" type="Activation">
+        <xs:annotation>
+          <xs:documentation source="version">4.0.0</xs:documentation>
+          <xs:documentation source="description">The conditional logic which will automatically 
+            trigger the inclusion of this profile.</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element name="build" minOccurs="0" type="BuildBase">
+        <xs:annotation>
+          <xs:documentation source="version">4.0.0</xs:documentation>
+          <xs:documentation source="description">Information required to build the project.</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element name="modules" minOccurs="0">
+        <xs:annotation>
+          <xs:documentation source="version">4.0.0</xs:documentation>
+          <xs:documentation source="description">The modules to build in addition to the current project</xs:documentation>
+        </xs:annotation>
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element name="module" minOccurs="0" maxOccurs="unbounded" type="xs:string"/>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+      <xs:element name="repositories" minOccurs="0">
+        <xs:annotation>
+          <xs:documentation source="version">4.0.0</xs:documentation>
+          <xs:documentation source="description">The lists of the remote repositories</xs:documentation>
+        </xs:annotation>
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element name="repository" minOccurs="0" maxOccurs="unbounded" type="Repository"/>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+      <xs:element name="pluginRepositories" minOccurs="0">
+        <xs:annotation>
+          <xs:documentation source="version">4.0.0</xs:documentation>
+          <xs:documentation source="description">The lists of the remote repositories for discovering plugins</xs:documentation>
+        </xs:annotation>
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element name="pluginRepository" minOccurs="0" maxOccurs="unbounded" type="Repository"/>
+          </xs:sequence>
+        </xs:complexType>
+      </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" minOccurs="0" maxOccurs="unbounded" type="Dependency"/>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+      <xs:element name="reports" minOccurs="0" type="Reports">
+        <xs:annotation>
+          <xs:documentation source="version">4.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:element>
+      <xs:element name="dependencyManagement" minOccurs="0" type="DependencyManagement">
+        <xs:annotation>
+          <xs:documentation source="version">4.0.0</xs:documentation>
+          <xs:documentation source="description">
+            Default dependency information for grouped projects inheriting from 
+            this one. The dependency information here will not be checked.
+            Instead, when a POM derived from this one declares a dependency 
+            described by a groupId and an artifactId (version not necessary), 
+            the entries in here will supply default values for that dependency.
+            Any locally-supplied information for a particular dependency will
+            overwrite any information specified here for that project.
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element name="distributionManagement" minOccurs="0" type="DistributionManagement">
+        <xs:annotation>
+          <xs:documentation source="version">4.0.0</xs:documentation>
+          <xs:documentation source="description">Distribution information for a project.</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+    </xs:all>
+  </xs:complexType>
+  <xs:complexType name="Activation">
+    <xs:annotation>
+      <xs:documentation source="version">4.0.0</xs:documentation>
+      <xs:documentation source="description">
+        The conditions within the build runtime environment which will trigger 
+        the automatic inclusion of the parent build profile.
+      </xs:documentation>
+    </xs:annotation>
+    <xs:all>
+      <xs:element name="jdk" minOccurs="0" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">4.0.0</xs:documentation>
+          <xs:documentation source="description">
+            Specifies that this profile will be activated when a matching JDK is detected.
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element name="property" minOccurs="0" type="ActivationProperty">
+        <xs:annotation>
+          <xs:documentation source="version">4.0.0</xs:documentation>
+          <xs:documentation source="description">
+            Specifies that this profile will be activated when this System property is specified.
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+    </xs:all>
+  </xs:complexType>
+  <xs:complexType name="ActivationProperty">
+    <xs:annotation>
+      <xs:documentation source="version">4.0.0</xs:documentation>
+      <xs:documentation source="description">
+        This is the property specification used to activate a profile. If the value field is empty, 
+        then the existence of the named property will activate the profile, otherwise it does a case-sensitive
+        match against the property value as well.
+      </xs:documentation>
+    </xs:annotation>
+    <xs:all>
+      <xs:element name="name" minOccurs="0" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">4.0.0</xs:documentation>
+          <xs:documentation source="description">The name of the property to be used to activate a profile</xs:documentation>
+        </xs:annotation>
+      </xs:element>

[... 97 lines stripped ...]


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
For additional commands, e-mail: dev-help@maven.apache.org