<?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.8.1,                                            -->
<!-- any modifications will be overwritten.                                 -->
<!-- ==============================================================         -->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" xmlns="http://maven.apache.org/METADATA/1.1.0" targetNamespace="http://maven.apache.org/METADATA/1.1.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 (ie. ending in &lt;code&gt;-SNAPSHOT&lt;/code&gt;) 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 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 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 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>