Added: maven/website/content/xsd/plugin-2.0.0-rc-4.xsd
==============================================================================
--- maven/website/content/xsd/plugin-2.0.0-rc-4.xsd (added)
+++ maven/website/content/xsd/plugin-2.0.0-rc-4.xsd Thu Jun 26 06:39:33 2025
@@ -0,0 +1,413 @@
+<?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">
+        <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="resolutions">
+        <xs:annotation>
+          <xs:documentation source="version">2.0.0+</xs:documentation>
+          <xs:documentation source="description"></xs:documentation>
+        </xs:annotation>
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element type="Resolution" name="resolution" 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 parameter 
description.</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:complexType name="Resolution">
+    <xs:annotation>
+      <xs:documentation source="version">2.0.0+</xs:documentation>
+      <xs:documentation source="description">Dependency collection or 
resolution injection.</xs:documentation>
+    </xs:annotation>
+    <xs:all>
+      <xs:element minOccurs="0" name="field" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">2.0.0+</xs:documentation>
+          <xs:documentation source="description">the name of the field to be 
injected</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="pathScope" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">2.0.0+</xs:documentation>
+          <xs:documentation source="description">pathScope used to flatten 
dependencies</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="requestType" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">2.0.0+</xs:documentation>
+          <xs:documentation source="description">either {@code collect}, 
{@code flatten}, or {@code resolve}</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-rc-4.xsd
==============================================================================
--- maven/website/content/xsd/repository-metadata-1.2.0-rc-4.xsd (added)
+++ maven/website/content/xsd/repository-metadata-1.2.0-rc-4.xsd Thu Jun 26 
06:39:33 2025
@@ -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

Added: maven/website/content/xsd/settings-2.0.0-rc-4.xsd
==============================================================================
--- maven/website/content/xsd/settings-2.0.0-rc-4.xsd (added)
+++ maven/website/content/xsd/settings-2.0.0-rc-4.xsd Thu Jun 26 06:39:33 2025
@@ -0,0 +1,739 @@
+<?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/SETTINGS/2.0.0"; 
targetNamespace="http://maven.apache.org/SETTINGS/2.0.0";>
+  <xs:element name="settings" type="Settings">
+    <xs:annotation>
+      <xs:documentation source="version">1.0.0+</xs:documentation>
+      <xs:documentation source="description">
+        Root element of the user configuration file.
+      </xs:documentation>
+    </xs:annotation>
+  </xs:element>
+  <xs:complexType name="Settings">
+    <xs:annotation>
+      <xs:documentation source="version">1.0.0+</xs:documentation>
+      <xs:documentation source="description">
+        Root element of the user configuration file.
+      </xs:documentation>
+    </xs:annotation>
+    <xs:all>
+      <xs:element minOccurs="0" name="localRepository" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            
+            The local repository.&lt;br&gt;&lt;b&gt;Default value 
is:&lt;/b&gt; {@code ${user.home}/.m2/repository}
+            
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="interactiveMode" type="xs:boolean" 
default="true">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            Whether Maven should attempt to interact with the user for input.
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="usePluginRegistry" type="xs:boolean" 
default="false">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            Whether Maven should use the {@code plugin-registry.xml} file to 
manage plugin versions.
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="offline" type="xs:boolean" 
default="false">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            Indicate whether maven should operate in offline mode full-time.
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="proxies">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            Configuration for different proxy profiles. Multiple proxy profiles
+            might come in handy for anyone working from a notebook or other
+            mobile platform, to enable easy switching of entire proxy
+            configurations by simply specifying the profile id, again either 
from
+            the command line or from the defaults section below.
+          </xs:documentation>
+        </xs:annotation>
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element type="Proxy" name="proxy" minOccurs="0" 
maxOccurs="unbounded"/>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+      <xs:element minOccurs="0" name="servers">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            Configuration of server-specific settings, mainly authentication
+            method. This allows configuration of authentication on a per-server
+            basis.
+          </xs:documentation>
+        </xs:annotation>
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element type="Server" name="server" minOccurs="0" 
maxOccurs="unbounded"/>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+      <xs:element minOccurs="0" name="mirrors">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            Configuration of download mirrors for repositories.
+          </xs:documentation>
+        </xs:annotation>
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element type="Mirror" name="mirror" minOccurs="0" 
maxOccurs="unbounded"/>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+      <xs:element minOccurs="0" name="repositories">
+        <xs:annotation>
+          <xs:documentation source="version">1.3.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.3.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: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:element minOccurs="0" name="pluginGroups">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            List of groupIds to search for a plugin when that plugin
+            groupId is not explicitly provided.
+          </xs:documentation>
+        </xs:annotation>
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element type="xs:string" name="pluginGroup" minOccurs="0" 
maxOccurs="unbounded"/>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+    </xs:all>
+  </xs:complexType>
+  <xs:complexType name="Proxy">
+    <xs:annotation>
+      <xs:documentation source="version">1.0.0+</xs:documentation>
+      <xs:documentation source="description">
+        The {@code &lt;proxy&gt;} element contains information required to a 
proxy settings.
+      </xs:documentation>
+    </xs:annotation>
+    <xs:all>
+      <xs:element minOccurs="0" name="active" type="xs:string" default="true">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            Whether this proxy configuration is the active one. Note: While 
the type of this field
+            is {@code String} for technical reasons, the semantic type is 
actually {@code boolean}.
+            @see #isActive()
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="protocol" type="xs:string" 
default="http">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            The proxy protocol.
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="username" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            The proxy user.
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="password" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            The proxy password.
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="port" type="xs:string" default="8080">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            The proxy port. Note: While the type of this field is {@code 
String} for technical
+            reasons, the semantic type is actually {@code int}.
+            @see #getPort()
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="host" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            The proxy host.
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="nonProxyHosts" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            The list of non-proxied hosts (delimited by {@code |}).
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="id" type="xs:string" default="default">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">Item 
identifier.</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+    </xs:all>
+  </xs:complexType>
+  <xs:complexType name="Server">
+    <xs:annotation>
+      <xs:documentation source="version">1.0.0+</xs:documentation>
+      <xs:documentation source="description">
+        The {@code &lt;server&gt;} element contains information required to a 
server settings.
+      </xs:documentation>
+    </xs:annotation>
+    <xs:all>
+      <xs:element minOccurs="0" name="username" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            The username used to authenticate.
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="password" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            The password used in conjunction with the username to authenticate.
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="privateKey" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            The private key location used to authenticate.
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="passphrase" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            The passphrase used in conjunction with the privateKey to 
authenticate.
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="filePermissions" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            The permissions for files when they are created.
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="directoryPermissions" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            The permissions for directories when they are created.
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="configuration">
+        <xs:annotation>
+          <xs:documentation source="version">0.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            Extra configuration for the transport layer.
+          </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="id" type="xs:string" default="default">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">Item 
identifier.</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+    </xs:all>
+  </xs:complexType>
+  <xs:complexType name="Mirror">
+    <xs:annotation>
+      <xs:documentation source="version">1.0.0+</xs:documentation>
+      <xs:documentation source="description">
+        A download mirror for a given repository.
+      </xs:documentation>
+    </xs:annotation>
+    <xs:all>
+      <xs:element minOccurs="0" name="mirrorOf" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            
+            A repository id or an expression matching one or many repository 
ids to mirror, e.g.,
+            &lt;code&gt;central&lt;/code&gt; or 
&lt;code&gt;*,!repo1&lt;/code&gt;.
+            &lt;code&gt;*&lt;/code&gt;, &lt;code&gt;external:*&lt;/code&gt; 
and &lt;code&gt;external:http:*&lt;/code&gt; (since Maven 3.8.0) have
+            a special meaning: see &lt;a 
href=&quot;/guides/mini/guide-mirror-settings.html&quot;&gt;Mirror 
Settings&lt;/a&gt; guide.
+            
+          </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">
+            The optional name that describes the mirror.
+          </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 mirror 
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.1.0+</xs:documentation>
+          <xs:documentation source="description">The layout of the mirror 
repository.
+            @since Maven 3.</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="mirrorOfLayouts" type="xs:string" 
default="default,legacy">
+        <xs:annotation>
+          <xs:documentation source="version">1.1.0+</xs:documentation>
+          <xs:documentation source="description">
+            The layouts of repositories being mirrored. This value can be used 
to restrict the usage
+            of the mirror to repositories with a matching layout (apart from a 
matching id).
+            @since Maven 3.
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="blocked" type="xs:boolean" 
default="false">
+        <xs:annotation>
+          <xs:documentation source="version">1.2.0+</xs:documentation>
+          <xs:documentation source="description">
+            
+            Whether this mirror should be blocked from any download request 
but fail the download process, explaining why.
+            &lt;br&gt;&lt;b&gt;Default value is&lt;/b&gt;: 
&lt;code&gt;false&lt;/code&gt;
+            &lt;br&gt;&lt;b&gt;Since&lt;/b&gt;: Maven 3.8.0
+            
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="id" type="xs:string" default="default">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">Item 
identifier.</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="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:element minOccurs="0" name="id" type="xs:string" default="default">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">Item 
identifier.</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 3) or 
&quot;ignore&quot;.
+          </xs:documentation>
+        </xs:annotation>
+      </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="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.
+            Contents take the form of {@code 
&lt;property.name&gt;property.value&lt;/property.name&gt;}
+          </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:element minOccurs="0" name="id" type="xs:string" default="default">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">Item 
identifier.</xs:documentation>
+        </xs:annotation>
+      </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:element minOccurs="0" name="packaging" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.2.0+</xs:documentation>
+          <xs:documentation source="description">
+            Specifies that this profile will be activated based on the 
project&apos;s packaging.
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="condition" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">2.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            The condition which must be satisfied to activate the profile.
+          </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 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. 
Please note, that missing and exists
+            fields cannot be used together. Only one of them should be used at 
any one time.
+          </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. 
Please note, that missing and exists
+            fields cannot be used together. Only one of them should be used at 
any one time.
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+    </xs:all>
+  </xs:complexType>
+</xs:schema>
\ No newline at end of file

Added: maven/website/content/xsd/toolchains-1.2.0-rc-4.xsd
==============================================================================
--- maven/website/content/xsd/toolchains-1.2.0-rc-4.xsd (added)
+++ maven/website/content/xsd/toolchains-1.2.0-rc-4.xsd Thu Jun 26 06:39:33 2025
@@ -0,0 +1,101 @@
+<?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/TOOLCHAINS/1.2.0"; 
targetNamespace="http://maven.apache.org/TOOLCHAINS/1.2.0";>
+  <xs:element name="toolchains" type="PersistedToolchains">
+    <xs:annotation>
+      <xs:documentation source="version">1.0.0+</xs:documentation>
+      <xs:documentation source="description">
+        The {@code &lt;toolchains&gt;} element is the root of the descriptor.
+        The following table lists all the possible child elements.
+      </xs:documentation>
+    </xs:annotation>
+  </xs:element>
+  <xs:complexType name="PersistedToolchains">
+    <xs:annotation>
+      <xs:documentation source="version">1.0.0+</xs:documentation>
+      <xs:documentation source="description">
+        The {@code &lt;toolchains&gt;} element is the root of the descriptor.
+        The following table lists all the possible child elements.
+      </xs:documentation>
+    </xs:annotation>
+    <xs:sequence>
+      <xs:element minOccurs="0" name="toolchain" type="ToolchainModel" 
maxOccurs="unbounded">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">The toolchain instance 
definition.</xs:documentation>
+        </xs:annotation>
+      </xs:element>
+    </xs:sequence>
+  </xs:complexType>
+  <xs:complexType name="ToolchainModel">
+    <xs:annotation>
+      <xs:documentation source="version">1.0.0+</xs:documentation>
+      <xs:documentation source="description">Definition of a toolchain 
instance.</xs:documentation>
+    </xs:annotation>
+    <xs:all>
+      <xs:element minOccurs="0" name="type" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            Type of toolchain:&lt;ul&gt;
+            &lt;li&gt;{@code jdk} for &lt;a
+            
href=&quot;https://maven.apache.org/plugins/maven-toolchains-plugin/toolchains/jdk.html&quot;&gt;JDK
 Standard Toolchain&lt;/a&gt;,&lt;/li&gt;
+            &lt;li&gt;other value for &lt;a
+            
href=&quot;https://maven.apache.org/plugins/maven-toolchains-plugin/toolchains/custom.html&quot;&gt;Custom
 Toolchain&lt;/a&gt;&lt;/li&gt;
+            &lt;/ul&gt;
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="provides">
+        <xs:annotation>
+          <xs:documentation source="version">1.1.0+</xs:documentation>
+          <xs:documentation source="description">
+            Toolchain identification information, which will be matched 
against project requirements.
+            &lt;p&gt;Each toolchain defines its own properties names and 
semantics.
+          </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="configuration">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            Toolchain configuration information, like location or any 
information that is to be retrieved.
+            &lt;p&gt;Actual content structure is completely open: each 
toolchain type will define its own format and
+            semantics.
+            &lt;p&gt;In general, this is a properties format: {@code 
&lt;name&gt;value&lt;/name&gt;} with per-toolchain
+            defined properties names.
+          </xs:documentation>
+        </xs:annotation>
+        <xs:complexType>
+          <xs:sequence>
+            <xs:any minOccurs="0" maxOccurs="unbounded" 
processContents="skip"/>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+    </xs:all>
+  </xs:complexType>
+</xs:schema>
\ No newline at end of file


Reply via email to