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

svn commit: r1915169 [7/7] - in /maven/website/content: ./ archives/maven-2.x/ background/ developers/ developers/conventions/ developers/release/ developers/website/ docs/ docs/2.0.1/ docs/2.0.10/ docs/2.0.11/ docs/2.0.2/ docs/2.0.3/ docs/2.0.4/ docs/...

Added: maven/website/content/xsd/settings-1.3.0-alpha-10.xsd
==============================================================================
--- maven/website/content/xsd/settings-1.3.0-alpha-10.xsd (added)
+++ maven/website/content/xsd/settings-1.3.0-alpha-10.xsd Tue Jan  9 20:25:10 2024
@@ -0,0 +1,783 @@
+<?xml version="1.0"?>
+<!--
+  Licensed to the Apache Software Foundation (ASF) under one
+  or more contributor license agreements.  See the NOTICE file
+  distributed with this work for additional information
+  regarding copyright ownership.  The ASF licenses this file
+  to you under the Apache License, Version 2.0 (the
+  "License"); you may not use this file except in compliance
+  with the License.  You may obtain a copy of the License at
+
+  http://www.apache.org/licenses/LICENSE-2.0
+
+  Unless required by applicable law or agreed to in writing,
+  software distributed under the License is distributed on an
+  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+  KIND, either express or implied.  See the License for the
+  specific language governing permissions and limitations
+  under the License.
+-->
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" xmlns="http://maven.apache.org/SETTINGS/1.3.0" targetNamespace="http://maven.apache.org/SETTINGS/1.3.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; &lt;code&gt;${user.home}/.m2/repository&lt;/code&gt;
+            
+          </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 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 &lt;code&gt;&amp;lt;proxy&amp;gt;&lt;/code&gt; element contains informations 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 |).
+            
+          </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: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 &lt;code&gt;&amp;lt;server&amp;gt;&lt;/code&gt; element contains informations 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: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">
+            The server ID of the repository being mirrored, e.g.,
+            &quot;central&quot;. This MUST NOT match the mirror id.
+          </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.
+          </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: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:annotation>
+      </xs:element>
+    </xs:all>
+  </xs:complexType>
+  <xs:complexType name="RepositoryPolicy">
+    <xs:annotation>
+      <xs:documentation source="version">1.0.0+</xs:documentation>
+      <xs:documentation source="description">Download policy</xs:documentation>
+    </xs:annotation>
+    <xs:all>
+      <xs:element minOccurs="0" name="enabled" type="xs:boolean" default="true">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            Whether to use this repository for downloading this type of
+            artifact.
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="updatePolicy" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            The frequency for downloading updates - can be &quot;always&quot;,
+            &quot;daily&quot; (default), &quot;interval:XXX&quot; (in minutes) or &quot;never&quot;
+            (only if it doesn&apos;t exist locally).
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="checksumPolicy" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            What to do when verification of an artifact checksum fails. Valid values are &quot;fail&quot; (default for Maven 4 and
+            above), &quot;warn&quot; (default for Maven 2 and 3) or &quot;ignore&quot;.
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+    </xs:all>
+  </xs:complexType>
+  <xs: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
+            &lt;code&gt;&amp;lt;property.name&amp;gt;property.value&amp;lt;/property.name&amp;gt;&lt;/code&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: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:all>
+  </xs:complexType>
+  <xs:complexType name="ActivationOS">
+    <xs:annotation>
+      <xs:documentation source="version">1.0.0+</xs:documentation>
+      <xs:documentation source="description">
+        
+        This is an activator which will detect an operating system&apos;s attributes in order to activate
+        its profile.
+        
+      </xs:documentation>
+    </xs:annotation>
+    <xs:all>
+      <xs:element minOccurs="0" name="name" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            The name of the OS to be used to activate a profile.
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="family" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            The general family of the OS to be used to activate a
+            profile (e.g. &apos;windows&apos;)
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="arch" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            The architecture of the OS to be used to activate a profile.
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="version" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            The version of the OS to be used to activate a profile.
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+    </xs:all>
+  </xs:complexType>
+  <xs:complexType name="ActivationProperty">
+    <xs:annotation>
+      <xs:documentation source="version">1.0.0+</xs:documentation>
+      <xs:documentation source="description">
+        
+        This is the property specification used to activate a profile. If the value field is empty,
+        then the existence of the named property will activate the profile, otherwise it does a case-sensitive
+        match against the property value as well.
+        
+      </xs:documentation>
+    </xs:annotation>
+    <xs:all>
+      <xs:element minOccurs="0" name="name" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            The name of the property to be used to activate a profile.
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="value" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            The value of the property to be used to activate a profile.
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+    </xs:all>
+  </xs:complexType>
+  <xs:complexType name="ActivationFile">
+    <xs:annotation>
+      <xs:documentation source="version">1.0.0+</xs:documentation>
+      <xs:documentation source="description">
+        
+        This is the file specification used to activate a profile. The missing value will be a the location
+        of a file that needs to exist, and if it doesn&apos;t the profile must run.  On the other hand exists will test
+        for the existence of the file and if it is there will run the profile.
+        
+      </xs:documentation>
+    </xs:annotation>
+    <xs:all>
+      <xs:element minOccurs="0" name="missing" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            The name of the file that should be missing to activate a
+            profile.
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="exists" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            The name of the file that should exist to activate a profile.
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+    </xs:all>
+  </xs:complexType>
+</xs:schema>
\ No newline at end of file