You are viewing a plain text version of this content. The canonical link for it is here.
Posted to site-commits@maven.apache.org by sv...@apache.org on 2024/05/30 21:09:12 UTC

svn commit: r1918063 [3/4] - /maven/website/content/xsd/

Added: maven/website/content/xsd/paramdoc-1.0.0-beta-3.xsd
==============================================================================
--- maven/website/content/xsd/paramdoc-1.0.0-beta-3.xsd (added)
+++ maven/website/content/xsd/paramdoc-1.0.0-beta-3.xsd Thu May 30 21:09:12 2024
@@ -0,0 +1,115 @@
+<?xml version="1.0"?>
+<!-- Licensed to the Apache Software Foundation (ASF) under one             -->
+<!-- or more contributor license agreements. See the NOTICE file            -->
+<!-- distributed with this work for additional information                  -->
+<!-- regarding copyright ownership. The ASF licenses this file              -->
+<!-- to you under the Apache License, Version 2.0 (the                      -->
+<!-- "License"); you may not use this file except in compliance             -->
+<!-- with the License. You may obtain a copy of the License at              -->
+<!--                                                                        -->
+<!-- http://www.apache.org/licenses/LICENSE-2.0                             -->
+<!--                                                                        -->
+<!-- Unless required by applicable law or agreed to in writing,             -->
+<!-- software distributed under the License is distributed on an            -->
+<!-- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY                 -->
+<!-- KIND, either express or implied. See the License for the               -->
+<!-- specific language governing permissions and limitations                -->
+<!-- under the License.                                                     -->
+<!-- =================== DO NOT EDIT THIS FILE ====================         -->
+<!-- Generated by Modello 2.4.0,                                            -->
+<!-- any modifications will be overwritten.                                 -->
+<!-- ==============================================================         -->
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" xmlns="http://maven.apache.org/PARAMDOC/1.0.0" targetNamespace="http://maven.apache.org/PARAMDOC/1.0.0">
+  <xs:element name="paramdoc" type="ExpressionDocumentation">
+    <xs:annotation>
+      <xs:documentation source="version">1.0.0</xs:documentation>
+      <xs:documentation source="description">The root of a parameter plugin expression document.</xs:documentation>
+    </xs:annotation>
+  </xs:element>
+  <xs:complexType name="ExpressionDocumentation">
+    <xs:annotation>
+      <xs:documentation source="version">1.0.0</xs:documentation>
+      <xs:documentation source="description">The root of a parameter plugin expression document.</xs:documentation>
+    </xs:annotation>
+    <xs:all>
+      <xs:element minOccurs="0" name="expressions">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0</xs:documentation>
+          <xs:documentation source="description">The list of plugin parameter expressions described by this
+            document.</xs:documentation>
+        </xs:annotation>
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element type="Expression" name="expression" minOccurs="0" maxOccurs="unbounded"/>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+    </xs:all>
+  </xs:complexType>
+  <xs:complexType name="Expression">
+    <xs:annotation>
+      <xs:documentation source="version">1.0.0</xs:documentation>
+      <xs:documentation source="description">A plugin parameter expression supported by Maven</xs:documentation>
+    </xs:annotation>
+    <xs:all>
+      <xs:element minOccurs="0" name="syntax" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0</xs:documentation>
+          <xs:documentation source="description">The syntax of the expression</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="description" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0</xs:documentation>
+          <xs:documentation source="description">The description of what this expression references, and what it&apos;s generally used for.</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="configuration" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0</xs:documentation>
+          <xs:documentation source="description">The place and syntax used to change the value of this expression.</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="cliOptions">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0</xs:documentation>
+          <xs:documentation source="description">The command-line switches used to change the value of this expression.</xs:documentation>
+        </xs:annotation>
+        <xs:complexType>
+          <xs:sequence>
+            <xs:any minOccurs="0" maxOccurs="unbounded" processContents="skip"/>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+      <xs:element minOccurs="0" name="apiMethods">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0</xs:documentation>
+          <xs:documentation source="description">The programmatic methods used to change the value of this expression.</xs:documentation>
+        </xs:annotation>
+        <xs:complexType>
+          <xs:sequence>
+            <xs:any minOccurs="0" maxOccurs="unbounded" processContents="skip"/>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+      <xs:element minOccurs="0" name="deprecation" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0</xs:documentation>
+          <xs:documentation source="description">A preferred alternative to this expression, in the case where it&apos;s deprecated.</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="ban" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0</xs:documentation>
+          <xs:documentation source="description">A preferred alternative to this expression, in the case where it&apos;s banned from use.</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="editable" type="xs:boolean" default="true">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0</xs:documentation>
+          <xs:documentation source="description">Whether the value of this expression can be changed.</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+    </xs:all>
+  </xs:complexType>
+</xs:schema>
\ No newline at end of file

Added: maven/website/content/xsd/plugin-2.0.0-beta-3.xsd
==============================================================================
--- maven/website/content/xsd/plugin-2.0.0-beta-3.xsd (added)
+++ maven/website/content/xsd/plugin-2.0.0-beta-3.xsd Thu May 30 21:09:12 2024
@@ -0,0 +1,376 @@
+<?xml version="1.0"?>
+<!-- Licensed to the Apache Software Foundation (ASF) under one             -->
+<!-- or more contributor license agreements. See the NOTICE file            -->
+<!-- distributed with this work for additional information                  -->
+<!-- regarding copyright ownership. The ASF licenses this file              -->
+<!-- to you under the Apache License, Version 2.0 (the                      -->
+<!-- "License"); you may not use this file except in compliance             -->
+<!-- with the License. You may obtain a copy of the License at              -->
+<!--                                                                        -->
+<!-- http://www.apache.org/licenses/LICENSE-2.0                             -->
+<!--                                                                        -->
+<!-- Unless required by applicable law or agreed to in writing,             -->
+<!-- software distributed under the License is distributed on an            -->
+<!-- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY                 -->
+<!-- KIND, either express or implied. See the License for the               -->
+<!-- specific language governing permissions and limitations                -->
+<!-- under the License.                                                     -->
+<!-- =================== DO NOT EDIT THIS FILE ====================         -->
+<!-- Generated by Modello 2.4.0,                                            -->
+<!-- any modifications will be overwritten.                                 -->
+<!-- ==============================================================         -->
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" xmlns="http://maven.apache.org/PLUGIN/2.0.0" targetNamespace="http://maven.apache.org/PLUGIN/2.0.0">
+  <xs:element name="plugin" type="PluginDescriptor">
+    <xs:annotation>
+      <xs:documentation source="version">1.0.0+</xs:documentation>
+      <xs:documentation source="description">Root element of the {@code plugin.xml} file.</xs:documentation>
+    </xs:annotation>
+  </xs:element>
+  <xs:complexType name="PluginDescriptor">
+    <xs:annotation>
+      <xs:documentation source="version">1.0.0+</xs:documentation>
+      <xs:documentation source="description">Root element of the {@code plugin.xml} file.</xs:documentation>
+    </xs:annotation>
+    <xs:all>
+      <xs:element minOccurs="0" name="name" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">Name of the plugin.</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="description" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">Description of the plugin.</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="groupId" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">The group id of the plugin.</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="artifactId" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">The artifact id of the plugin.</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="version" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">The version of the plugin.</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="goalPrefix" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description"></xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="isolatedRealm" type="xs:boolean" default="false">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description"></xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="inheritedByDefault" type="xs:boolean" default="true">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description"></xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="requiredJavaVersion" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.1.0+</xs:documentation>
+          <xs:documentation source="description">
+            A version range which specifies the supported Java versions. A version range can either use the usual mathematical syntax &quot;[2.0.10,2.1.0),[3.0,)&quot; or use a single version &quot;2.2.1&quot;. The latter is a short form for &quot;[2.2.1,)&quot;, i.e. denotes the minimum version required.
+            @since Maven 4.0.0-alpha-3
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="requiredMavenVersion" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.1.0+</xs:documentation>
+          <xs:documentation source="description">
+            A version range which specifies the supported Maven versions. A version range can either use the usual mathematical syntax &quot;[2.0.10,2.1.0),[3.0,)&quot; or use a single version &quot;2.2.1&quot;. The latter is a short form for &quot;[2.2.1,)&quot;, i.e. denotes the minimum version required. This value takes precedence over the POMs Maven prerequisite.
+            @since Maven 4.0.0-alpha-3
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="mojos">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">Description of each Mojo provided by the plugin.</xs:documentation>
+        </xs:annotation>
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element type="MojoDescriptor" name="mojo" minOccurs="0" maxOccurs="unbounded"/>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+    </xs:all>
+  </xs:complexType>
+  <xs:complexType name="MojoDescriptor">
+    <xs:annotation>
+      <xs:documentation source="version">1.0.0+</xs:documentation>
+      <xs:documentation source="description">A Mojo description.</xs:documentation>
+    </xs:annotation>
+    <xs:all>
+      <xs:element minOccurs="0" name="goal" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            The goal name for the Mojo, that users will reference from the command line to execute the Mojo directly,
+            or inside a POM in order to provide Mojo-specific configuration.
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="description" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">The description of this Mojo&apos;s functionality.</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="implementation" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            The Mojo&apos;s fully-qualified class name (or script path in the case of non-Java Mojos).
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="language" type="xs:string" default="java">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">The implementation language for this Mojo (java, beanshell, etc.).</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="phase" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            Defines a default phase to bind a Mojo execution to if the user does not explicitly set a phase in the POM.
+            &lt;p&gt;&lt;b&gt;Note:&lt;/b&gt; This will not automagically make a Mojo run when the plugin declaration is added
+            to the POM. It merely enables the user to omit the {@code &lt;phase&gt;} element from the
+            surrounding {@code &lt;execution&gt;} element.&lt;/p&gt;
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="executePhase" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">Reference the invocation phase of the Mojo.</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="executeGoal" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">Reference the invocation goal of the Mojo.</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="executeLifecycle" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description"></xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="dependencyResolution" type="xs:string" default="runtime">
+        <xs:annotation>
+          <xs:documentation source="version">2.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            Flags this Mojo as requiring the dependencies in the specified class path to be resolved before it can
+            execute: {@code compile}, {@code runtime}, {@code test},
+            {@code compile+runtime} (since Maven 3.0) or {@code runtime+system} (since Maven 3.0)
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="dependencyCollection" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">2.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            Flags this Mojo as requiring information about the dependencies that would make up the specified class
+            path. As the name suggests, this is similar to requiresDependencyResolution and supports the same values.
+            The important difference is this will not resolve the files for the dependencies, i.e. the artifacts
+            associated with a Maven project can lack a file. As such, this annotation is meant for Mojos that only
+            want to analyze the set of transitive dependencies, in particular during early lifecycle phases where
+            full dependency resolution might fail due to projects which haven&apos;t been built yet.
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="directInvocationOnly" type="xs:boolean" default="false">
+        <xs:annotation>
+          <xs:documentation source="version">2.0.0+</xs:documentation>
+          <xs:documentation source="description">Flags this Mojo to be invoked directly only.</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="projectRequired" type="xs:boolean" default="true">
+        <xs:annotation>
+          <xs:documentation source="version">2.0.0+</xs:documentation>
+          <xs:documentation source="description">Flags this Mojo to require running inside of a project.</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="onlineRequired" type="xs:boolean" default="false">
+        <xs:annotation>
+          <xs:documentation source="version">2.0.0+</xs:documentation>
+          <xs:documentation source="description">Flags this Mojo to require online mode for its operation.</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="aggregator" type="xs:boolean" default="false">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            Flags this Mojo to run it in a multi-module way, i.e. aggregate the build with the set of projects
+            listed as modules.
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="inheritedByDefault" type="xs:boolean" default="true">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">Specify that the Mojo is inherited.</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="since" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">Specify the version when the Mojo was added to the API. Similar to Javadoc since.</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="deprecated" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            Description with the reason of Mojo deprecation. Similar to Javadoc {@code @deprecated}
+            This will trigger a warning when a user tries to use a Mojo marked as deprecated.
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="configurator" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            The configurator type to use when injecting parameter values into this Mojo. The value is normally deduced
+            from the Mojo&apos;s implementation language, but can be specified to allow a custom ComponentConfigurator
+            implementation to be used.
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="parameters">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description"></xs:documentation>
+        </xs:annotation>
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element type="Parameter" name="parameter" minOccurs="0" maxOccurs="unbounded"/>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+      <xs:element minOccurs="0" name="id" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">2.0.0+</xs:documentation>
+          <xs:documentation source="description">the id of the mojo, based on the goal name</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="fullGoalName" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">2.0.0+</xs:documentation>
+          <xs:documentation source="description">the full goal name</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+    </xs:all>
+  </xs:complexType>
+  <xs:complexType name="Parameter">
+    <xs:annotation>
+      <xs:documentation source="version">1.0.0+</xs:documentation>
+      <xs:documentation source="description">A phase mapping definition.</xs:documentation>
+    </xs:annotation>
+    <xs:all>
+      <xs:element minOccurs="0" name="name" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            The name of the parameter, to be used while configuring this parameter from the Mojo&apos;s declared defaults
+            or from the POM.
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="alias" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            Specifies an alias which can be used to configure this parameter from the POM.
+            This is primarily useful to improve user-friendliness, where Mojo field names are not intuitive to the
+            user or are otherwise not conducive to configuration via the POM.
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="type" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            The Java type for this parameter. This is used to validate the result of any expressions used to calculate
+            the value which should be injected into the Mojo for this parameter.
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="required" type="xs:boolean" default="false">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            Whether this parameter is required for the Mojo to function. This is used to validate the configuration
+            for a Mojo before it is injected, and before the Mojo is executed from some half-state.
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="editable" type="xs:boolean" default="true">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            Specifies that this parameter can be configured directly by the user (as in the case of POM-specified
+            configuration). This is useful when you want to force the user to use common POM elements rather than
+            plugin configurations, as in the case where you want to use the artifact&apos;s final name as a parameter. In
+            this case, you want the user to modify {@code &lt;build&gt;&lt;finalName/&gt;&lt;/build&gt;} rather
+            than specifying a value for finalName directly in the plugin configuration section. It is also useful to
+            ensure that - for example - a List-typed parameter which expects items of type Artifact doesn&apos;t get a List
+            full of Strings.
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="description" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">The description of this parameter&apos;s use inside the Mojo.</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="since" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">Specify the version when the parameter was added to the API. Similar to Javadoc since.</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="deprecated" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            Description with the reason of parameter deprecation. Similar to Javadoc {@code @deprecated}.
+            This will trigger a warning when a user tries to configure a parameter marked as deprecated.
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="expression" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">2.0.0+</xs:documentation>
+          <xs:documentation source="description">Parameter expression, to let user override default value with a user property, system property or project property.</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="defaultValue" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">2.0.0+</xs:documentation>
+          <xs:documentation source="description">The default value, as an expression that will be evaluated at injection or run-time.</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+    </xs:all>
+  </xs:complexType>
+</xs:schema>
\ No newline at end of file

Added: maven/website/content/xsd/profiles-1.0.0-beta-3.xsd
==============================================================================
--- maven/website/content/xsd/profiles-1.0.0-beta-3.xsd (added)
+++ maven/website/content/xsd/profiles-1.0.0-beta-3.xsd Thu May 30 21:09:12 2024
@@ -0,0 +1,344 @@
+<?xml version="1.0"?>
+<!-- Licensed to the Apache Software Foundation (ASF) under one             -->
+<!-- or more contributor license agreements. See the NOTICE file            -->
+<!-- distributed with this work for additional information                  -->
+<!-- regarding copyright ownership. The ASF licenses this file              -->
+<!-- to you under the Apache License, Version 2.0 (the                      -->
+<!-- "License"); you may not use this file except in compliance             -->
+<!-- with the License. You may obtain a copy of the License at              -->
+<!--                                                                        -->
+<!-- http://www.apache.org/licenses/LICENSE-2.0                             -->
+<!--                                                                        -->
+<!-- Unless required by applicable law or agreed to in writing,             -->
+<!-- software distributed under the License is distributed on an            -->
+<!-- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY                 -->
+<!-- KIND, either express or implied. See the License for the               -->
+<!-- specific language governing permissions and limitations                -->
+<!-- under the License.                                                     -->
+<!-- =================== DO NOT EDIT THIS FILE ====================         -->
+<!-- Generated by Modello 2.4.0,                                            -->
+<!-- any modifications will be overwritten.                                 -->
+<!-- ==============================================================         -->
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" xmlns="http://maven.apache.org/PROFILES/1.0.0" targetNamespace="http://maven.apache.org/PROFILES/1.0.0">
+  <xs:element name="profilesXml" type="ProfilesRoot">
+    <xs:annotation>
+      <xs:documentation source="version">1.0.0</xs:documentation>
+      <xs:documentation source="description">Root element of the profiles.xml file.</xs:documentation>
+    </xs:annotation>
+  </xs:element>
+  <xs:complexType name="ProfilesRoot">
+    <xs:annotation>
+      <xs:documentation source="version">1.0.0</xs:documentation>
+      <xs:documentation source="description">Root element of the profiles.xml file.</xs:documentation>
+    </xs:annotation>
+    <xs:all>
+      <xs:element minOccurs="0" name="profiles">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0</xs:documentation>
+          <xs:documentation source="description">
+            Configuration of build profiles for adjusting the build
+            according to environmental parameters
+          </xs:documentation>
+        </xs:annotation>
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element type="Profile" name="profile" minOccurs="0" maxOccurs="unbounded"/>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+      <xs:element minOccurs="0" name="activeProfiles">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0</xs:documentation>
+          <xs:documentation source="description">
+            List of manually-activated build profiles, specified in the order in which
+            they should be applied.
+          </xs:documentation>
+        </xs:annotation>
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element type="xs:string" name="activeProfile" minOccurs="0" maxOccurs="unbounded"/>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+    </xs:all>
+  </xs:complexType>
+  <xs:complexType name="Profile">
+    <xs:annotation>
+      <xs:documentation source="version">1.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 minOccurs="0" name="id" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.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 minOccurs="0" name="activation" type="Activation">
+        <xs:annotation>
+          <xs:documentation source="version">1.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 minOccurs="0" name="properties">
+        <xs:annotation>
+          <xs:documentation source="version">0.0.0+</xs:documentation>
+          <xs:documentation source="description">Extended configuration specific to this profile goes
+            here.</xs:documentation>
+        </xs:annotation>
+        <xs:complexType>
+          <xs:sequence>
+            <xs:any minOccurs="0" maxOccurs="unbounded" processContents="skip"/>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+      <xs:element minOccurs="0" name="repositories">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0</xs:documentation>
+          <xs:documentation source="description">The lists of the remote repositories
+          </xs:documentation>
+        </xs:annotation>
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element type="Repository" name="repository" minOccurs="0" maxOccurs="unbounded"/>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+      <xs:element minOccurs="0" name="pluginRepositories">
+        <xs:annotation>
+          <xs:documentation source="version">1.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 type="Repository" name="pluginRepository" minOccurs="0" maxOccurs="unbounded"/>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+    </xs:all>
+  </xs:complexType>
+  <xs:complexType name="Activation">
+    <xs:annotation>
+      <xs:documentation source="version">1.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 minOccurs="0" name="activeByDefault" type="xs:boolean" default="false">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0</xs:documentation>
+          <xs:documentation source="description">Flag specifying whether this profile is active as a default.</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="jdk" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.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 minOccurs="0" name="os" type="ActivationOS">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0</xs:documentation>
+          <xs:documentation source="description">
+            Specifies that this profile will be activated when matching OS attributes are detected.
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="property" type="ActivationProperty">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0</xs:documentation>
+          <xs:documentation source="description">
+            Specifies that this profile will be activated when this property is specified.
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="file" type="ActivationFile">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0</xs:documentation>
+          <xs:documentation source="description">
+             Specifies that this profile will be activated based on existence of a file.
+             </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+    </xs:all>
+  </xs:complexType>
+  <xs:complexType name="ActivationOS">
+    <xs:annotation>
+      <xs:documentation source="version">1.0.0</xs:documentation>
+      <xs:documentation source="description">
+        This is an activator which will detect an operating system&apos;s attributes in order to activate
+        its profile.
+      </xs:documentation>
+    </xs:annotation>
+    <xs:all>
+      <xs:element minOccurs="0" name="name" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0</xs:documentation>
+          <xs:documentation source="description">The name of the OS to be used to activate a profile</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="family" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0</xs:documentation>
+          <xs:documentation source="description">The general family of the OS to be used to activate a profile (e.g. &apos;windows&apos;)</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="arch" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0</xs:documentation>
+          <xs:documentation source="description">The architecture of the OS to be used to activate a profile</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="version" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0</xs:documentation>
+          <xs:documentation source="description">The version of the OS to be used to activate a profile</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+    </xs:all>
+  </xs:complexType>
+  <xs:complexType name="ActivationProperty">
+    <xs:annotation>
+      <xs:documentation source="version">1.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 minOccurs="0" name="name" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.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>
+      <xs:element minOccurs="0" name="value" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0</xs:documentation>
+          <xs:documentation source="description">The value of the property to be used to activate a profile</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+    </xs:all>
+  </xs:complexType>
+  <xs:complexType name="ActivationFile">
+    <xs:annotation>
+      <xs:documentation source="version">1.0.0</xs:documentation>
+      <xs:documentation source="description">
+        This is the file specification used to activate a profile. The missing value will be a the location
+        of a file that needs to exist, and if it doesn&apos;t the profile must run.  On the other hand exists will test
+        for the existence of the file and if it is there will run the profile.
+      </xs:documentation>
+    </xs:annotation>
+    <xs:all>
+      <xs:element minOccurs="0" name="missing" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0</xs:documentation>
+          <xs:documentation source="description">The name of the file that should be missing to activate a profile</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="exists" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0</xs:documentation>
+          <xs:documentation source="description">The name of the file that should exist to activate a profile</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+    </xs:all>
+  </xs:complexType>
+  <xs:complexType name="Repository">
+    <xs:annotation>
+      <xs:documentation source="version">1.0.0</xs:documentation>
+      <xs:documentation source="description">
+        Repository contains the information needed for establishing connections with remote repository
+      </xs:documentation>
+    </xs:annotation>
+    <xs:all>
+      <xs:element minOccurs="0" name="releases" type="RepositoryPolicy">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0</xs:documentation>
+          <xs:documentation source="description">How to handle downloading of releases from this repository</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="snapshots" type="RepositoryPolicy">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0</xs:documentation>
+          <xs:documentation source="description">How to handle downloading of snapshots from this repository</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="id" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0</xs:documentation>
+          <xs:documentation source="description">
+            A unique identifier for a repository.
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="name" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0</xs:documentation>
+          <xs:documentation source="description">
+            Human readable name of the repository
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="url" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0</xs:documentation>
+          <xs:documentation source="description">
+             The url of the repository
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="layout" type="xs:string" default="default">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0</xs:documentation>
+          <xs:documentation source="description">The type of layout this repository uses for locating and storing artifacts - can be &quot;legacy&quot; or
+            &quot;default&quot;.</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+    </xs:all>
+  </xs:complexType>
+  <xs:complexType name="RepositoryPolicy">
+    <xs:annotation>
+      <xs:documentation source="version">1.0.0</xs:documentation>
+      <xs:documentation source="description">Download policy</xs:documentation>
+    </xs:annotation>
+    <xs:all>
+      <xs:element minOccurs="0" name="enabled" type="xs:boolean" default="true">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0</xs:documentation>
+          <xs:documentation source="description">Whether to use this repository for downloading this type of artifact</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="updatePolicy" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0</xs:documentation>
+          <xs:documentation source="description">
+            The frequency for downloading updates - can be &quot;always&quot;, &quot;daily&quot; (default), &quot;interval:XXX&quot; (in minutes) or
+            &quot;never&quot; (only if it doesn&apos;t exist locally).
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="checksumPolicy" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0</xs:documentation>
+          <xs:documentation source="description">
+            What to do when verification of an artifact checksum fails. Valid values are &quot;fail&quot; (default for Maven 4 and
+            above), &quot;warn&quot; (default for Maven 2 and 3) or &quot;ignore&quot;.
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+    </xs:all>
+  </xs:complexType>
+</xs:schema>
\ No newline at end of file

Added: maven/website/content/xsd/repository-metadata-1.2.0-beta-3.xsd
==============================================================================
--- maven/website/content/xsd/repository-metadata-1.2.0-beta-3.xsd (added)
+++ maven/website/content/xsd/repository-metadata-1.2.0-beta-3.xsd Thu May 30 21:09:12 2024
@@ -0,0 +1,214 @@
+<?xml version="1.0"?>
+<!-- Licensed to the Apache Software Foundation (ASF) under one             -->
+<!-- or more contributor license agreements. See the NOTICE file            -->
+<!-- distributed with this work for additional information                  -->
+<!-- regarding copyright ownership. The ASF licenses this file              -->
+<!-- to you under the Apache License, Version 2.0 (the                      -->
+<!-- "License"); you may not use this file except in compliance             -->
+<!-- with the License. You may obtain a copy of the License at              -->
+<!--                                                                        -->
+<!-- http://www.apache.org/licenses/LICENSE-2.0                             -->
+<!--                                                                        -->
+<!-- Unless required by applicable law or agreed to in writing,             -->
+<!-- software distributed under the License is distributed on an            -->
+<!-- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY                 -->
+<!-- KIND, either express or implied. See the License for the               -->
+<!-- specific language governing permissions and limitations                -->
+<!-- under the License.                                                     -->
+<!-- =================== DO NOT EDIT THIS FILE ====================         -->
+<!-- Generated by Modello 2.4.0,                                            -->
+<!-- any modifications will be overwritten.                                 -->
+<!-- ==============================================================         -->
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" xmlns="http://maven.apache.org/METADATA/1.2.0" targetNamespace="http://maven.apache.org/METADATA/1.2.0">
+  <xs:element name="metadata" type="Metadata">
+    <xs:annotation>
+      <xs:documentation source="version">1.0.0+</xs:documentation>
+    </xs:annotation>
+  </xs:element>
+  <xs:complexType name="Metadata">
+    <xs:annotation>
+      <xs:documentation source="version">1.0.0+</xs:documentation>
+    </xs:annotation>
+    <xs:all>
+      <xs:element minOccurs="0" name="groupId" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">The groupId when this directory represents &quot;groupId/artifactId&quot; or &quot;groupId/artifactId/version&quot;.</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="artifactId" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">The artifactId when this directory represents &quot;groupId/artifactId&quot; or &quot;groupId/artifactId/version&quot;.</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="versioning" type="Versioning">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">Versioning information when this directory represents &quot;groupId/artifactId&quot; or &quot;groupId/artifactId/version&quot;.</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="version" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">The base version (i.e. ending in {@code -SNAPSHOT}) when this directory represents a &quot;groupId/artifactId/version&quot; for a SNAPSHOT.</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="plugins">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">The set of plugins when this directory represents a &quot;groupId&quot;.</xs:documentation>
+        </xs:annotation>
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element type="Plugin" name="plugin" minOccurs="0" maxOccurs="unbounded"/>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+    </xs:all>
+    <xs:attribute name="modelVersion" type="xs:string" use="optional">
+      <xs:annotation>
+        <xs:documentation source="version">1.1.0+</xs:documentation>
+        <xs:documentation source="description">The version of the underlying metadata model.</xs:documentation>
+      </xs:annotation>
+    </xs:attribute>
+  </xs:complexType>
+  <xs:complexType name="Plugin">
+    <xs:annotation>
+      <xs:documentation source="version">1.0.0+</xs:documentation>
+      <xs:documentation source="description">Mapping information for a single plugin within this group.</xs:documentation>
+    </xs:annotation>
+    <xs:all>
+      <xs:element minOccurs="0" name="name" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">Display name for the plugin.</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="prefix" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">The plugin invocation prefix (i.e. eclipse for eclipse:eclipse)</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="artifactId" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">The plugin artifactId</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+    </xs:all>
+  </xs:complexType>
+  <xs:complexType name="Versioning">
+    <xs:annotation>
+      <xs:documentation source="version">1.0.0+</xs:documentation>
+      <xs:documentation source="description">Versioning information for &quot;groupId/artifactId&quot; or &quot;groupId/artifactId/version&quot; SNAPSHOT</xs:documentation>
+    </xs:annotation>
+    <xs:all>
+      <xs:element minOccurs="0" name="latest" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">What the last version added to the directory is, including both releases and snapshots (&quot;groupId/artifactId&quot; directory only)</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="release" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">What the last version added to the directory is, for the releases only (&quot;groupId/artifactId&quot; directory only)</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="versions">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">Versions available of the artifact (both releases and snapshots) (&quot;groupId/artifactId&quot; directory only)</xs:documentation>
+        </xs:annotation>
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element type="xs:string" name="version" minOccurs="0" maxOccurs="unbounded"/>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+      <xs:element minOccurs="0" name="lastUpdated" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">When the metadata was last updated (both &quot;groupId/artifactId&quot; and &quot;groupId/artifactId/version&quot; directories). The timestamp is expressed using UTC in the format yyyyMMddHHmmss.</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="snapshot" type="Snapshot">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">The current snapshot data in use for this version (&quot;groupId/artifactId/version&quot; only)</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="snapshotVersions">
+        <xs:annotation>
+          <xs:documentation source="version">1.1.0+</xs:documentation>
+          <xs:documentation source="description">Information for each sub-artifact available in this artifact snapshot. This is only the most recent SNAPSHOT for each unique extension/classifier combination.</xs:documentation>
+        </xs:annotation>
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element type="SnapshotVersion" name="snapshotVersion" minOccurs="0" maxOccurs="unbounded"/>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+    </xs:all>
+  </xs:complexType>
+  <xs:complexType name="SnapshotVersion">
+    <xs:annotation>
+      <xs:documentation source="version">1.1.0+</xs:documentation>
+      <xs:documentation source="description">Versioning information for a sub-artifact of the current snapshot artifact.</xs:documentation>
+    </xs:annotation>
+    <xs:all>
+      <xs:element minOccurs="0" name="classifier" type="xs:string" default="">
+        <xs:annotation>
+          <xs:documentation source="version">1.1.0+</xs:documentation>
+          <xs:documentation source="description">The classifier of the sub-artifact. Each classifier and extension pair may only appear once.</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="extension" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.1.0+</xs:documentation>
+          <xs:documentation source="description">The file extension of the sub-artifact. Each classifier and extension pair may only appear once.</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="value" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.1.0+</xs:documentation>
+          <xs:documentation source="description">The resolved snapshot version of the sub-artifact.</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="updated" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.1.0+</xs:documentation>
+          <xs:documentation source="description">The timestamp when this version information was last updated. The timestamp is expressed using UTC in the format yyyyMMddHHmmss.</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+    </xs:all>
+  </xs:complexType>
+  <xs:complexType name="Snapshot">
+    <xs:annotation>
+      <xs:documentation source="version">1.0.0+</xs:documentation>
+      <xs:documentation source="description">Snapshot data for the last artifact corresponding to the SNAPSHOT base version</xs:documentation>
+    </xs:annotation>
+    <xs:all>
+      <xs:element minOccurs="0" name="timestamp" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">The timestamp when this version was deployed. The timestamp is expressed using UTC in the format yyyyMMdd.HHmmss.</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="buildNumber" type="xs:int" default="0">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">The incremental build number</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="localCopy" type="xs:boolean" default="false">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">Whether to use a local copy instead (with filename that includes the base version)</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+    </xs:all>
+  </xs:complexType>
+</xs:schema>
\ No newline at end of file