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'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'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'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 "[2.0.10,2.1.0),[3.0,)" or use a single version "2.2.1". The latter is a short form for "[2.2.1,)", 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 "[2.0.10,2.1.0),[3.0,)" or use a single version "2.2.1". The latter is a short form for "[2.2.1,)", 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'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'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. + <p><b>Note:</b> 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 <phase>} element from the + surrounding {@code <execution>} element.</p> + </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'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'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'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's final name as a parameter. In + this case, you want the user to modify {@code <build><finalName/></build>} 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'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'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'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. 'windows')</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'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 "legacy" or + "default".</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 "always", "daily" (default), "interval:XXX" (in minutes) or + "never" (only if it doesn'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 "fail" (default for Maven 4 and + above), "warn" (default for Maven 2 and 3) or "ignore". + </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 "groupId/artifactId" or "groupId/artifactId/version".</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 "groupId/artifactId" or "groupId/artifactId/version".</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 "groupId/artifactId" or "groupId/artifactId/version".</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 "groupId/artifactId/version" 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 "groupId".</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 "groupId/artifactId" or "groupId/artifactId/version" 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 ("groupId/artifactId" 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 ("groupId/artifactId" 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) ("groupId/artifactId" 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 "groupId/artifactId" and "groupId/artifactId/version" 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 ("groupId/artifactId/version" 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
