This is an automated email from the ASF dual-hosted git repository.

gian pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-druid.git


The following commit(s) were added to refs/heads/master by this push:
     new 6fd6e5d  Make JavaScript and XML errors non-TeamCity errors; Update 
JavaScript language level to ES6 in IntelliJ settings (#7541)
6fd6e5d is described below

commit 6fd6e5de891e8bafee8d87b90647c6bc068f98e0
Author: Roman Leventov <[email protected]>
AuthorDate: Thu Apr 25 20:21:58 2019 +0200

    Make JavaScript and XML errors non-TeamCity errors; Update JavaScript 
language level to ES6 in IntelliJ settings (#7541)
    
    * Make JavaScript and XML errors non-TeamCity errors; Update JavaScript 
language level to ES6 in IntelliJ settings
    
    * Add license comment to assembly-2.0.0.xsd
    
    * Add .idea/README.md with comments
---
 .idea/README.md                                    |   39 +
 .idea/inspectionProfiles/Druid.xml                 |   13 +
 .idea/inspectionProfiles/profiles_settings.xml     |   27 +-
 .idea/misc.xml                                     |   15 +-
 .idea/xml-schemas/assembly-2.0.0.xsd               | 1368 ++++++++++++++++++++
 .idea/xml-schemas/svg11.dtd                        |  333 +++++
 .../query/topn/TopNQueryQueryToolChestTest.java    |    2 +-
 7 files changed, 1786 insertions(+), 11 deletions(-)

diff --git a/.idea/README.md b/.idea/README.md
new file mode 100644
index 0000000..b366b5a
--- /dev/null
+++ b/.idea/README.md
@@ -0,0 +1,39 @@
+<!--
+  ~ 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.
+  -->
+  
+Comments to various parts of IntelliJ's settings XML files. These comments 
cannot currently be placed close to the
+things that they are about, because IntelliJ keeps removing the comments from 
settings XML files: see
+https://youtrack.jetbrains.com/issue/IDEA-211087. Please vote for this issue 
to increase the chances that it's fixed
+faster. [This Druid's 
issue](https://github.com/apache/incubator-druid/issues/7549) records the fact 
that the comments
+should be moved when that IntelliJ's issue is fixed.
+
+1) [`inspectionProfiles/Druid.xml`](inspectionProfiles/Druid.xml), 
`StaticPseudoFunctionalStyleMethod` is turned off
+because the current rate of false-positives produced by this inspection is 
very high, see
+https://youtrack.jetbrains.com/issue/IDEA-153047#focus=streamItem-27-3326648.0-0.
+
+2) [`misc.xml`](misc.xml), `ProjectResources` component: this component is 
needed because IntelliJ verifies XML
+documents by the schema. XML documents usually reference those schemas as URLs:
+```
+<assembly xmlns="http://maven.apache.org/ASSEMBLY/2.0.0";
+          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
+          xsi:schemaLocation="http://maven.apache.org/ASSEMBLY/2.0.0 
http://maven.apache.org/xsd/assembly-2.0.0.xsd";>
+```
+
+But IntelliJ doesn't automatically go to the internet to download the 
resource. It needs to know what schema corresponds
+to what URL, statically. Hence the `ProjectResources` component.
\ No newline at end of file
diff --git a/.idea/inspectionProfiles/Druid.xml 
b/.idea/inspectionProfiles/Druid.xml
index 0a9adb1..9770c11 100644
--- a/.idea/inspectionProfiles/Druid.xml
+++ b/.idea/inspectionProfiles/Druid.xml
@@ -17,7 +17,9 @@
     <inspection_tool class="CatchMayIgnoreException" enabled="true" 
level="WARNING" enabled_by_default="true">
       <option name="m_ignoreCatchBlocksWithComments" value="false" />
     </inspection_tool>
+    <inspection_tool class="CheckDtdRefs" enabled="true" level="Non-TeamCity 
Error" enabled_by_default="true" />
     <inspection_tool class="CheckValidXmlInScriptTagBody" enabled="true" 
level="WARNING" enabled_by_default="true" />
+    <inspection_tool class="CheckXmlFileWithXercesValidator" enabled="true" 
level="Non-TeamCity Error" enabled_by_default="true" />
     <inspection_tool class="ClassGetClass" enabled="true" level="ERROR" 
enabled_by_default="true" />
     <inspection_tool class="ClassNewInstance" enabled="true" level="WARNING" 
enabled_by_default="true" />
     <inspection_tool class="CollectionAddedToSelf" enabled="true" 
level="ERROR" enabled_by_default="true" />
@@ -58,6 +60,7 @@
       <option name="IGNORE_FIELDS_USED_IN_MULTIPLE_METHODS" value="true" />
     </inspection_tool>
     <inspection_tool class="FieldMayBeFinal" enabled="true" level="WARNING" 
enabled_by_default="true" />
+    <inspection_tool class="FlowJSError" enabled="false" level="Non-TeamCity 
Error" enabled_by_default="false" />
     <inspection_tool class="ForCanBeForeach" enabled="true" level="WARNING" 
enabled_by_default="true">
       <scope name="NonGeneratedFiles" level="ERROR" enabled="true">
         <option name="REPORT_INDEXED_LOOP" value="true" />
@@ -79,10 +82,16 @@
     <inspection_tool class="InvalidComparatorMethodReference" enabled="true" 
level="ERROR" enabled_by_default="true" />
     <inspection_tool class="IteratorHasNextCallsIteratorNext" enabled="true" 
level="ERROR" enabled_by_default="true" />
     <inspection_tool class="IteratorNextDoesNotThrowNoSuchElementException" 
enabled="true" level="WARNING" enabled_by_default="true" />
+    <inspection_tool class="JSAnnotator" enabled="true" level="Non-TeamCity 
Error" enabled_by_default="true" />
+    <inspection_tool class="JSHint" enabled="false" level="Non-TeamCity Error" 
enabled_by_default="false" />
+    <inspection_tool class="JSLint" enabled="false" level="Non-TeamCity Error" 
enabled_by_default="false" />
+    <inspection_tool class="JSRedeclarationOfBlockScope" enabled="true" 
level="Non-TeamCity Error" enabled_by_default="true" />
+    <inspection_tool class="JSReferencingArgumentsOutsideOfFunction" 
enabled="true" level="Non-TeamCity Error" enabled_by_default="true" />
     <inspection_tool class="Java8MapForEach" enabled="true" level="ERROR" 
enabled_by_default="true" />
     <inspection_tool class="JavadocReference" enabled="true" level="ERROR" 
enabled_by_default="true">
       <option name="REPORT_INACCESSIBLE" value="false" />
     </inspection_tool>
+    <inspection_tool class="Jscs" enabled="false" level="Non-TeamCity Error" 
enabled_by_default="false" />
     <inspection_tool class="JsonDuplicatePropertyKeys" enabled="true" 
level="ERROR" enabled_by_default="true" />
     <inspection_tool class="JsonStandardCompliance" enabled="true" 
level="WARNING" enabled_by_default="true" />
     <inspection_tool class="LengthOneStringInIndexOf" enabled="true" 
level="ERROR" enabled_by_default="true" />
@@ -304,6 +313,7 @@
       <option name="processLiterals" value="true" />
       <option name="processComments" value="true" />
     </inspection_tool>
+    <inspection_tool class="StandardJS" enabled="false" level="Non-TeamCity 
Error" enabled_by_default="false" />
     <inspection_tool class="StaticCallOnSubclass" enabled="true" level="ERROR" 
enabled_by_default="true" />
     <inspection_tool class="StaticFieldReferenceOnSubclass" enabled="true" 
level="ERROR" enabled_by_default="true" />
     <inspection_tool class="StaticPseudoFunctionalStyleMethod" enabled="true" 
level="INFORMATION" enabled_by_default="true" />
@@ -361,7 +371,10 @@
     <inspection_tool class="UnusedLibrary" enabled="true" level="WARNING" 
enabled_by_default="true" />
     <inspection_tool class="UseOfPropertiesAsHashtable" enabled="true" 
level="WARNING" enabled_by_default="true" />
     <inspection_tool class="VariableNotUsedInsideIf" enabled="true" 
level="WARNING" enabled_by_default="true" />
+    <inspection_tool class="XmlDuplicatedId" enabled="true" 
level="Non-TeamCity Error" enabled_by_default="true" />
     <inspection_tool class="XmlHighlighting" enabled="true" 
level="Non-TeamCity Warning" enabled_by_default="true" />
+    <inspection_tool class="XmlInvalidId" enabled="true" level="Non-TeamCity 
Error" enabled_by_default="true" />
+    <inspection_tool class="XmlPathReference" enabled="true" 
level="Non-TeamCity Error" enabled_by_default="true" />
     <inspection_tool class="unused" enabled="true" level="WARNING" 
enabled_by_default="true">
       <scope name="UnusedInspectionsScope" level="ERROR" enabled="true">
         <option name="LOCAL_VARIABLE" value="true" />
diff --git a/.idea/inspectionProfiles/profiles_settings.xml 
b/.idea/inspectionProfiles/profiles_settings.xml
index 75b0a83..3660904 100644
--- a/.idea/inspectionProfiles/profiles_settings.xml
+++ b/.idea/inspectionProfiles/profiles_settings.xml
@@ -2,6 +2,16 @@
   <settings>
     <option name="PROJECT_PROFILE" value="Druid" />
     <version value="1.0" />
+    <info color="be1e0e">
+      <option name="BACKGROUND" value="521717" />
+      <option name="ERROR_STRIPE_COLOR" value="be1e0e" />
+      <option name="myName" value="Non-TeamCity Error" />
+      <option name="myVal" value="50" />
+      <option name="myExternalName" value="Non-TeamCity Error" />
+      <option name="myDefaultAttributes">
+        <option name="ERROR_STRIPE_COLOR" value="be1e0e" />
+      </option>
+    </info>
     <info color="be9117">
       <option name="BACKGROUND" value="52503a" />
       <option name="ERROR_STRIPE_COLOR" value="be9117" />
@@ -12,15 +22,16 @@
         <option name="ERROR_STRIPE_COLOR" value="be9117" />
       </option>
     </info>
-    <list size="8">
+    <list size="9">
       <item index="0" class="java.lang.String" itemvalue="INFORMATION" />
-      <item index="1" class="java.lang.String" itemvalue="Non-TeamCity 
Warning" />
-      <item index="2" class="java.lang.String" itemvalue="TYPO" />
-      <item index="3" class="java.lang.String" itemvalue="SERVER PROBLEM" />
-      <item index="4" class="java.lang.String" itemvalue="WEAK WARNING" />
-      <item index="5" class="java.lang.String" itemvalue="INFO" />
-      <item index="6" class="java.lang.String" itemvalue="WARNING" />
-      <item index="7" class="java.lang.String" itemvalue="ERROR" />
+      <item index="1" class="java.lang.String" itemvalue="Non-TeamCity Error" 
/>
+      <item index="2" class="java.lang.String" itemvalue="Non-TeamCity 
Warning" />
+      <item index="3" class="java.lang.String" itemvalue="TYPO" />
+      <item index="4" class="java.lang.String" itemvalue="SERVER PROBLEM" />
+      <item index="5" class="java.lang.String" itemvalue="WEAK WARNING" />
+      <item index="6" class="java.lang.String" itemvalue="INFO" />
+      <item index="7" class="java.lang.String" itemvalue="WARNING" />
+      <item index="8" class="java.lang.String" itemvalue="ERROR" />
     </list>
   </settings>
 </component>
\ No newline at end of file
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 9d0b022..61e7e5b 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -31,6 +31,9 @@
       <writeAnnotation name="org.powermock.api.easymock.annotation.Mock" />
     </writeAnnotations>
   </component>
+  <component name="JavaScriptSettings">
+    <option name="languageLevel" value="ES6" />
+  </component>
   <component name="MavenProjectsManager">
     <option name="originalFiles">
       <list>
@@ -43,7 +46,7 @@
     <option name="myDefaultNotNull" value="javax.annotation.Nonnull" />
     <option name="myNullables">
       <value>
-        <list size="10">
+        <list size="12">
           <item index="0" class="java.lang.String" 
itemvalue="org.jetbrains.annotations.Nullable" />
           <item index="1" class="java.lang.String" 
itemvalue="javax.annotation.Nullable" />
           <item index="2" class="java.lang.String" 
itemvalue="javax.annotation.CheckForNull" />
@@ -54,12 +57,14 @@
           <item index="7" class="java.lang.String" 
itemvalue="org.checkerframework.checker.nullness.qual.Nullable" />
           <item index="8" class="java.lang.String" 
itemvalue="org.checkerframework.checker.nullness.compatqual.NullableDecl" />
           <item index="9" class="java.lang.String" 
itemvalue="org.checkerframework.checker.nullness.compatqual.NullableType" />
+          <item index="10" class="java.lang.String" 
itemvalue="androidx.annotation.RecentlyNullable" />
+          <item index="11" class="java.lang.String" 
itemvalue="com.android.annotations.Nullable" />
         </list>
       </value>
     </option>
     <option name="myNotNulls">
       <value>
-        <list size="9">
+        <list size="11">
           <item index="0" class="java.lang.String" 
itemvalue="org.jetbrains.annotations.NotNull" />
           <item index="1" class="java.lang.String" 
itemvalue="javax.annotation.Nonnull" />
           <item index="2" class="java.lang.String" 
itemvalue="edu.umd.cs.findbugs.annotations.NonNull" />
@@ -69,10 +74,16 @@
           <item index="6" class="java.lang.String" 
itemvalue="org.checkerframework.checker.nullness.qual.NonNull" />
           <item index="7" class="java.lang.String" 
itemvalue="org.checkerframework.checker.nullness.compatqual.NonNullDecl" />
           <item index="8" class="java.lang.String" 
itemvalue="org.checkerframework.checker.nullness.compatqual.NonNullType" />
+          <item index="9" class="java.lang.String" 
itemvalue="androidx.annotation.RecentlyNonNull" />
+          <item index="10" class="java.lang.String" 
itemvalue="com.android.annotations.NonNull" />
         </list>
       </value>
     </option>
   </component>
+  <component name="ProjectResources">
+    <resource url="http://maven.apache.org/ASSEMBLY/2.0.0"; 
location="$PROJECT_DIR$/.idea/xml-schemas/assembly-2.0.0.xsd" />
+    <resource url="http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"; 
location="$PROJECT_DIR$/.idea/xml-schemas/svg11.dtd" />
+  </component>
   <component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" 
default="false" project-jdk-name="1.8" project-jdk-type="JavaSDK">
     <output url="file://$PROJECT_DIR$/classes" />
   </component>
diff --git a/.idea/xml-schemas/assembly-2.0.0.xsd 
b/.idea/xml-schemas/assembly-2.0.0.xsd
new file mode 100644
index 0000000..db101fe
--- /dev/null
+++ b/.idea/xml-schemas/assembly-2.0.0.xsd
@@ -0,0 +1,1368 @@
+<?xml version="1.0"?>
+<!-- Other than this comment, this file is identical to
+     https://maven.apache.org/xsd/assembly-2.0.0.xsd, which, as part of
+     Apache Maven, is licensed under the Apache 2.0 license.
+  -->
+<!-- =================== DO NOT EDIT THIS FILE ====================         -->
+<!-- Generated by Modello 1.8.3,                                            -->
+<!-- any modifications will be overwritten.                                 -->
+<!-- ==============================================================         -->
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"; 
elementFormDefault="qualified" xmlns="http://maven.apache.org/ASSEMBLY/2.0.0"; 
targetNamespace="http://maven.apache.org/ASSEMBLY/2.0.0";>
+  <xs:element name="assembly" type="Assembly">
+    <xs:annotation>
+      <xs:documentation source="version">1.0.0+</xs:documentation>
+      <xs:documentation source="description">
+        
+        An assembly defines a collection of files usually distributed in an
+        archive format such as zip, tar, or tar.gz that is generated from a
+        project.  For example, a project could produce a ZIP assembly which
+        contains a project&apos;s JAR artifact in the root directory, the
+        runtime dependencies in a lib/ directory, and a shell script to launch
+        a stand-alone application.
+        
+      </xs:documentation>
+    </xs:annotation>
+  </xs:element>
+  <xs:complexType name="Assembly">
+    <xs:annotation>
+      <xs:documentation source="version">1.0.0+</xs:documentation>
+      <xs:documentation source="description">
+        
+        An assembly defines a collection of files usually distributed in an
+        archive format such as zip, tar, or tar.gz that is generated from a
+        project.  For example, a project could produce a ZIP assembly which
+        contains a project&apos;s JAR artifact in the root directory, the
+        runtime dependencies in a lib/ directory, and a shell script to launch
+        a stand-alone application.
+        
+      </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">
+            Sets the id of this assembly. This is a symbolic name for a
+            particular assembly of files from this project. Also, aside from
+            being used to distinctly name the assembled package by attaching
+            its value to the generated archive, the id is used as your
+            artifact&apos;s classifier when deploying.
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="formats">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            
+            Specifies the formats of the assembly.
+
+            It is often better to specify the formats via the goal parameter 
rather
+            than here. For example, that allows different profiles to generate
+            different types of archives.
+
+            Multiple formats can be
+            supplied and the Assembly Plugin will generate an archive for each
+            of the desired formats. When deploying your project, all file 
formats
+            specified will also be deployed. A format is specified by supplying
+            one of the following values in a &amp;lt;format&amp;gt; subelement:
+            &lt;ul&gt;
+              &lt;li&gt;&lt;b&gt;&quot;zip&quot;&lt;/b&gt; - Creates a ZIP 
file format&lt;/li&gt;
+              &lt;li&gt;&lt;b&gt;&quot;tar&quot;&lt;/b&gt; - Creates a TAR 
format&lt;/li&gt;
+              &lt;li&gt;&lt;b&gt;&quot;tar.gz&quot;&lt;/b&gt; or 
&lt;b&gt;&quot;tgz&quot;&lt;/b&gt; - Creates a gzip&apos;d TAR format&lt;/li&gt;
+              &lt;li&gt;&lt;b&gt;&quot;tar.bz2&quot;&lt;/b&gt; or 
&lt;b&gt;&quot;tbz2&quot;&lt;/b&gt; - Creates a bzip&apos;d TAR 
format&lt;/li&gt;
+              &lt;li&gt;&lt;b&gt;&quot;jar&quot;&lt;/b&gt; - Creates a JAR 
format&lt;/li&gt;
+              &lt;li&gt;&lt;b&gt;&quot;dir&quot;&lt;/b&gt; - Creates an 
exploded directory format&lt;/li&gt;
+              &lt;li&gt;&lt;b&gt;&quot;war&quot;&lt;/b&gt; - Creates a WAR 
format&lt;/li&gt;
+            &lt;/ul&gt;
+            
+          </xs:documentation>
+        </xs:annotation>
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element name="format" minOccurs="0" maxOccurs="unbounded" 
type="xs:string"/>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+      <xs:element minOccurs="0" name="includeBaseDirectory" type="xs:boolean" 
default="true">
+        <xs:annotation>
+          <xs:documentation source="version">0.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            Includes a base directory in the final archive. For example,
+            if you are creating an assembly named &quot;your-app&quot;, setting
+            includeBaseDirectory to true will create an archive that
+            includes this base directory. If this option is set to false
+            the archive created will unzip its content to the current
+            directory.
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="baseDirectory" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.1.0+</xs:documentation>
+          <xs:documentation source="description">
+            Sets the base directory of the resulting assembly archive. If this 
is not
+            set and includeBaseDirectory == true, ${project.build.finalName} 
will be used instead.
+            (Since 2.2-beta-1)
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="includeSiteDirectory" type="xs:boolean" 
default="false">
+        <xs:annotation>
+          <xs:documentation source="version">0.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            Includes a site directory in the final archive. The site directory
+            location of a project is determined by the siteDirectory parameter
+            of the Assembly Plugin.
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="containerDescriptorHandlers">
+        <xs:annotation>
+          <xs:documentation source="version">1.1.0+</xs:documentation>
+          <xs:documentation source="description">
+            
+            Set of components which filter various container descriptors out of
+            the normal archive stream, so they can be aggregated then added.
+            
+          </xs:documentation>
+        </xs:annotation>
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element name="containerDescriptorHandler" minOccurs="0" 
maxOccurs="unbounded" type="ContainerDescriptorHandlerConfig"/>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+      <xs:element minOccurs="0" name="moduleSets">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            
+            Specifies which module files to include in the assembly. A 
moduleSet
+            is specified by providing one or more of &amp;lt;moduleSet&amp;gt;
+            subelements.
+            
+          </xs:documentation>
+        </xs:annotation>
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element name="moduleSet" minOccurs="0" maxOccurs="unbounded" 
type="ModuleSet"/>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+      <xs:element minOccurs="0" name="fileSets">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            
+            Specifies which groups of files to include in the assembly. A
+            fileSet is specified by providing one or more of 
&amp;lt;fileSet&amp;gt;
+            subelements.
+            
+          </xs:documentation>
+        </xs:annotation>
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element name="fileSet" minOccurs="0" maxOccurs="unbounded" 
type="FileSet"/>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+      <xs:element minOccurs="0" name="files">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            
+            Specifies which single files to include in the assembly. A file
+            is specified by providing one or more of &amp;lt;file&amp;gt;
+            subelements.
+            
+          </xs:documentation>
+        </xs:annotation>
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element name="file" minOccurs="0" maxOccurs="unbounded" 
type="FileItem"/>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+      <xs:element minOccurs="0" name="dependencySets">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            
+            Specifies which dependencies to include in the assembly. A
+            dependencySet is specified by providing one or more of
+            &amp;lt;dependencySet&amp;gt; subelements.
+            
+          </xs:documentation>
+        </xs:annotation>
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element name="dependencySet" minOccurs="0" 
maxOccurs="unbounded" type="DependencySet"/>
+          </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">
+            
+            Specifies which repository files to include in the assembly. A
+            repository is specified by providing one or more of
+            &amp;lt;repository&amp;gt; subelements.
+            
+          </xs:documentation>
+        </xs:annotation>
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element name="repository" minOccurs="0" maxOccurs="unbounded" 
type="Repository"/>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+      <xs:element minOccurs="0" name="componentDescriptors">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            
+            Specifies the shared components xml file locations to include in 
the
+            assembly. The locations specified must be relative to the base 
location
+            of the descriptor. If the descriptor was found via a 
&amp;lt;descriptorRef/&amp;gt;
+            element in the
+            classpath, any components it specifies will also be found on the 
classpath.
+            If it is found by pathname via a &amp;lt;descriptor/&amp;gt; 
element
+            the value here will be interpreted
+            as a path relative to the project basedir.
+            When multiple componentDescriptors are found, their
+            contents are merged. Check out the &lt;a 
href=&quot;component.html&quot;&gt;
+            descriptor components&lt;/a&gt; for more information. A
+            componentDescriptor is specified by providing one or more of
+            &amp;lt;componentDescriptor&amp;gt; subelements.
+            
+          </xs:documentation>
+        </xs:annotation>
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element name="componentDescriptor" minOccurs="0" 
maxOccurs="unbounded" type="xs:string"/>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+    </xs:all>
+  </xs:complexType>
+  <xs:complexType name="FileItem">
+    <xs:annotation>
+      <xs:documentation source="version">1.0.0+</xs:documentation>
+      <xs:documentation source="description">
+        A file allows individual file inclusion with the option to change
+        the destination filename not supported by fileSets.
+      </xs:documentation>
+    </xs:annotation>
+    <xs:all>
+      <xs:element minOccurs="0" name="source" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            Sets the absolute or relative path from the module&apos;s directory
+            of the file to be included in the assembly.
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="outputDirectory" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            Sets the output directory relative to the root
+            of the root directory of the assembly. For example,
+            &quot;log&quot; will put the specified files in the log directory.
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="destName" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            Sets the destination filename in the outputDirectory.
+            Default is the same name as the source&apos;s file.
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="fileMode" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            
+            Similar to a UNIX permission, sets the file mode of the files 
included.
+            THIS IS AN OCTAL VALUE.
+            Format: (User)(Group)(Other) where each component is a sum of Read 
= 4,
+            Write = 2, and Execute = 1.  For example, the value 0644
+            translates to User read-write, Group and Other read-only.  The 
default value is 0644
+            &lt;a 
href=&quot;http://www.onlamp.com/pub/a/bsd/2000/09/06/FreeBSD_Basics.html&quot;&gt;(more
 on unix-style permissions)&lt;/a&gt;
+            
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="lineEnding" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            
+            Sets the line-endings of the files in this file.
+            Valid values are:
+            &lt;ul&gt;
+              &lt;li&gt;&lt;b&gt;&quot;keep&quot;&lt;/b&gt; - Preserve all 
line endings&lt;/li&gt;
+              &lt;li&gt;&lt;b&gt;&quot;unix&quot;&lt;/b&gt; - Use Unix-style 
line endings (i.e. &quot;\n&quot;)&lt;/li&gt;
+              &lt;li&gt;&lt;b&gt;&quot;lf&quot;&lt;/b&gt; - Use a single 
line-feed line endings (i.e. &quot;\n&quot;)&lt;/li&gt;
+              &lt;li&gt;&lt;b&gt;&quot;dos&quot;&lt;/b&gt; - Use 
DOS-/Windows-style line endings (i.e. &quot;\r\n&quot;)&lt;/li&gt;
+              &lt;li&gt;&lt;b&gt;&quot;windows&quot;&lt;/b&gt; - Use 
DOS-/Windows-style line endings (i.e. &quot;\r\n&quot;)&lt;/li&gt;
+              &lt;li&gt;&lt;b&gt;&quot;crlf&quot;&lt;/b&gt; - Use 
carriage-return, line-feed line endings (i.e. &quot;\r\n&quot;)&lt;/li&gt;
+            &lt;/ul&gt;
+            
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="filtered" type="xs:boolean" 
default="false">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            Sets whether to determine if the file is filtered.
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+    </xs:all>
+  </xs:complexType>
+  <xs:complexType name="ContainerDescriptorHandlerConfig">
+    <xs:annotation>
+      <xs:documentation source="version">1.1.0+</xs:documentation>
+      <xs:documentation source="description">
+        Configures a filter for files headed into the assembly archive, to 
enable
+        aggregation of various types of descriptor fragments, such as 
components.xml,
+        web.xml, etc.
+      </xs:documentation>
+    </xs:annotation>
+    <xs:all>
+      <xs:element minOccurs="0" name="handlerName" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.1.0+</xs:documentation>
+          <xs:documentation source="description">
+            The handler&apos;s plexus role-hint, for lookup from the container.
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="configuration">
+        <xs:annotation>
+          <xs:documentation source="version">1.1.1+</xs:documentation>
+          <xs:documentation source="description">
+            Configuration options for the handler.
+          </xs:documentation>
+        </xs:annotation>
+        <xs:complexType>
+          <xs:sequence>
+            <xs:any minOccurs="0" maxOccurs="unbounded" 
processContents="skip"/>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+    </xs:all>
+  </xs:complexType>
+  <xs:complexType name="FileSet">
+    <xs:annotation>
+      <xs:documentation source="version">1.0.0+</xs:documentation>
+      <xs:documentation source="description">
+        A fileSet allows the inclusion of groups of files into the assembly.
+      </xs:documentation>
+    </xs:annotation>
+    <xs:all>
+      <xs:element minOccurs="0" name="useDefaultExcludes" type="xs:boolean" 
default="true">
+        <xs:annotation>
+          <xs:documentation source="version">1.1.0+</xs:documentation>
+          <xs:documentation source="description">
+            Whether standard exclusion patterns, such as those matching CVS 
and Subversion
+            metadata files, should be used when calculating the files affected 
by this set.
+            For backward compatibility, the default value is true. (Since 
2.2-beta-1)
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="outputDirectory" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            Sets the output directory relative to the root
+            of the root directory of the assembly. For example,
+            &quot;log&quot; will put the specified files in the log directory.
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="includes">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            
+            When &amp;lt;include&amp;gt; subelements are present, they define 
a set of
+            files and directory to include. If none is present, then
+            &amp;lt;includes&amp;gt; represents all valid values.
+            
+          </xs:documentation>
+        </xs:annotation>
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element name="include" minOccurs="0" maxOccurs="unbounded" 
type="xs:string"/>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+      <xs:element minOccurs="0" name="excludes">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            
+            When &amp;lt;exclude&amp;gt; subelements are present, they define 
a set of
+            files and directory to exclude. If none is present, then
+            &amp;lt;excludes&amp;gt; represents no exclusions.
+            
+          </xs:documentation>
+        </xs:annotation>
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element name="exclude" minOccurs="0" maxOccurs="unbounded" 
type="xs:string"/>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+      <xs:element minOccurs="0" name="fileMode" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            
+            Similar to a UNIX permission, sets the file mode of the files 
included.
+            THIS IS AN OCTAL VALUE.
+            Format: (User)(Group)(Other) where each component is a sum of Read 
= 4,
+            Write = 2, and Execute = 1.  For example, the value 0644
+            translates to User read-write, Group and Other read-only. The 
default value is 0644.
+            &lt;a 
href=&quot;http://www.onlamp.com/pub/a/bsd/2000/09/06/FreeBSD_Basics.html&quot;&gt;(more
 on unix-style permissions)&lt;/a&gt;
+            
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="directoryMode" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            
+            Similar to a UNIX permission, sets the directory mode of the 
directories
+            included.
+            THIS IS AN OCTAL VALUE.
+            Format: (User)(Group)(Other) where each component is a sum of
+            Read = 4, Write = 2, and Execute = 1.  For example, the value
+            0755 translates to User read-write, Group and Other read-only.  
The default value is 0755.
+            &lt;a 
href=&quot;http://www.onlamp.com/pub/a/bsd/2000/09/06/FreeBSD_Basics.html&quot;&gt;(more
 on unix-style permissions)&lt;/a&gt;
+            
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="directory" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            Sets the absolute or relative location from the module&apos;s
+            directory. For example, &quot;src/main/bin&quot; would select this
+            subdirectory of the project in which this dependency is defined.
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="lineEnding" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            
+            Sets the line-endings of the files in this fileSet.
+            Valid values:
+            &lt;ul&gt;
+              &lt;li&gt;&lt;b&gt;&quot;keep&quot;&lt;/b&gt; - Preserve all 
line endings&lt;/li&gt;
+              &lt;li&gt;&lt;b&gt;&quot;unix&quot;&lt;/b&gt; - Use Unix-style 
line endings (i.e. &quot;\n&quot;)&lt;/li&gt;
+              &lt;li&gt;&lt;b&gt;&quot;lf&quot;&lt;/b&gt; - Use a single 
line-feed line endings (i.e. &quot;\n&quot;)&lt;/li&gt;
+              &lt;li&gt;&lt;b&gt;&quot;dos&quot;&lt;/b&gt; - Use 
DOS-/Windows-style line endings (i.e. &quot;\r\n&quot;)&lt;/li&gt;
+              &lt;li&gt;&lt;b&gt;&quot;windows&quot;&lt;/b&gt; - Use 
DOS-/Windows-style line endings (i.e. &quot;\r\n&quot;)&lt;/li&gt;
+              &lt;li&gt;&lt;b&gt;&quot;crlf&quot;&lt;/b&gt; - Use 
carriage-return, line-feed line endings (i.e. &quot;\r\n&quot;)&lt;/li&gt;
+            &lt;/ul&gt;
+            
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="filtered" type="xs:boolean" 
default="false">
+        <xs:annotation>
+          <xs:documentation source="version">1.1.0+</xs:documentation>
+          <xs:documentation source="description">
+          Whether to filter symbols in the files as they are copied, using
+          properties from the build configuration. (Since 2.2-beta-1)
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+    </xs:all>
+  </xs:complexType>
+  <xs:complexType name="ModuleSet">
+    <xs:annotation>
+      <xs:documentation source="version">1.0.0+</xs:documentation>
+      <xs:documentation source="description">
+        
+        A moduleSet represent one or more project &amp;lt;module&amp;gt; 
present inside
+        a project&apos;s pom.xml. This allows you to include sources or 
binaries
+        belonging to a project&apos;s &amp;lt;modules&amp;gt;.
+
+        &lt;br/&gt;&lt;b&gt;NOTE:&lt;/b&gt; When using 
&amp;lt;moduleSets&amp;gt; from the command-line, it
+        is required to pass first the package phase by doing: &quot;mvn package
+        assembly:assembly&quot;. This bug/issue is scheduled to be addressed 
by Maven 2.1.
+        
+      </xs:documentation>
+    </xs:annotation>
+    <xs:all>
+      <xs:element minOccurs="0" name="useAllReactorProjects" type="xs:boolean" 
default="false">
+        <xs:annotation>
+          <xs:documentation source="version">1.1.2+</xs:documentation>
+          <xs:documentation source="description">
+          If set to true, the plugin will include all projects in the current 
reactor for processing
+          in this ModuleSet. These will be subject to include/exclude rules. 
(Since 2.2)
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="includeSubModules" type="xs:boolean" 
default="true">
+        <xs:annotation>
+          <xs:documentation source="version">1.1.0+</xs:documentation>
+          <xs:documentation source="description">
+          If set to false, the plugin will exclude sub-modules from processing 
in this ModuleSet.
+          Otherwise, it will process all sub-modules, each subject to 
include/exclude rules. (Since 2.2-beta-1)
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="includes">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            
+            When &amp;lt;include&amp;gt; subelements are present, they define 
a set of
+            project coordinates to include. If none is present, then
+            &amp;lt;includes&amp;gt; represents all valid values.
+
+            Artifact coordinates may be given in simple groupId:artifactId 
form,
+            or they may be fully qualified in the form 
groupId:artifactId:type[:classifier]:version.
+            Additionally, wildcards can be used, as in *:maven-*
+            
+          </xs:documentation>
+        </xs:annotation>
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element name="include" minOccurs="0" maxOccurs="unbounded" 
type="xs:string"/>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+      <xs:element minOccurs="0" name="excludes">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            
+            When &amp;lt;exclude&amp;gt; subelements are present, they define 
a set of
+            project artifact coordinates to exclude. If none is present, then
+            &amp;lt;excludes&amp;gt; represents no exclusions.
+
+            Artifact coordinates may be given in simple groupId:artifactId 
form,
+            or they may be fully qualified in the form 
groupId:artifactId:type[:classifier]:version.
+            Additionally, wildcards can be used, as in *:maven-*
+            
+          </xs:documentation>
+        </xs:annotation>
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element name="exclude" minOccurs="0" maxOccurs="unbounded" 
type="xs:string"/>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+      <xs:element minOccurs="0" name="sources" type="ModuleSources">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            When this is present, the plugin will include the source files of
+            the included modules from this set in the resulting assembly.
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="binaries" type="ModuleBinaries">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            When this is present, the plugin will include the binaries of the
+            included modules from this set in the resulting assembly.
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+    </xs:all>
+  </xs:complexType>
+  <xs:complexType name="ModuleSources">
+    <xs:annotation>
+      <xs:documentation source="version">1.0.0+</xs:documentation>
+      <xs:documentation source="description">
+        Contains configuration options for including the source files of a
+        project module in an assembly.
+      </xs:documentation>
+    </xs:annotation>
+    <xs:all>
+      <xs:element minOccurs="0" name="useDefaultExcludes" type="xs:boolean" 
default="true">
+        <xs:annotation>
+          <xs:documentation source="version">1.1.0+</xs:documentation>
+          <xs:documentation source="description">
+            Whether standard exclusion patterns, such as those matching CVS 
and Subversion
+            metadata files, should be used when calculating the files affected 
by this set.
+            For backward compatibility, the default value is true. (Since 
2.2-beta-1)
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="outputDirectory" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            Sets the output directory relative to the root
+            of the root directory of the assembly. For example,
+            &quot;log&quot; will put the specified files in the log directory.
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="includes">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            
+            When &amp;lt;include&amp;gt; subelements are present, they define 
a set of
+            files and directory to include. If none is present, then
+            &amp;lt;includes&amp;gt; represents all valid values.
+            
+          </xs:documentation>
+        </xs:annotation>
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element name="include" minOccurs="0" maxOccurs="unbounded" 
type="xs:string"/>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+      <xs:element minOccurs="0" name="excludes">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            
+            When &amp;lt;exclude&amp;gt; subelements are present, they define 
a set of
+            files and directory to exclude. If none is present, then
+            &amp;lt;excludes&amp;gt; represents no exclusions.
+            
+          </xs:documentation>
+        </xs:annotation>
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element name="exclude" minOccurs="0" maxOccurs="unbounded" 
type="xs:string"/>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+      <xs:element minOccurs="0" name="fileMode" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            
+            Similar to a UNIX permission, sets the file mode of the files 
included.
+            THIS IS AN OCTAL VALUE.
+            Format: (User)(Group)(Other) where each component is a sum of Read 
= 4,
+            Write = 2, and Execute = 1.  For example, the value 0644
+            translates to User read-write, Group and Other read-only. The 
default value is 0644
+            &lt;a 
href=&quot;http://www.onlamp.com/pub/a/bsd/2000/09/06/FreeBSD_Basics.html&quot;&gt;(more
 on unix-style permissions)&lt;/a&gt;
+            
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="directoryMode" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            
+            Similar to a UNIX permission, sets the directory mode of the 
directories
+            included.
+            THIS IS AN OCTAL VALUE.
+            Format: (User)(Group)(Other) where each component is a sum of
+            Read = 4, Write = 2, and Execute = 1.  For example, the value
+            0755 translates to User read-write, Group and Other read-only. The 
default value is 0755.
+            &lt;a 
href=&quot;http://www.onlamp.com/pub/a/bsd/2000/09/06/FreeBSD_Basics.html&quot;&gt;(more
 on unix-style permissions)&lt;/a&gt;
+            
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="fileSets">
+        <xs:annotation>
+          <xs:documentation source="version">1.1.0+</xs:documentation>
+          <xs:documentation source="description">
+            
+            Specifies which groups of files from each included module to 
include in the assembly. A
+            fileSet is specified by providing one or more of 
&amp;lt;fileSet&amp;gt; subelements. (Since 2.2-beta-1)
+            
+          </xs:documentation>
+        </xs:annotation>
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element name="fileSet" minOccurs="0" maxOccurs="unbounded" 
type="FileSet"/>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+      <xs:element minOccurs="0" name="includeModuleDirectory" 
type="xs:boolean" default="true">
+        <xs:annotation>
+          <xs:documentation source="version">1.1.0+</xs:documentation>
+          <xs:documentation source="description">
+            
+            Specifies whether the module&apos;s finalName should be prepended 
to the outputDirectory
+            values of any fileSets applied to it. (Since 2.2-beta-1)
+            
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="excludeSubModuleDirectories" 
type="xs:boolean" default="true">
+        <xs:annotation>
+          <xs:documentation source="version">1.1.0+</xs:documentation>
+          <xs:documentation source="description">
+            
+            Specifies whether sub-module directories below the current module 
should be excluded
+            from fileSets applied to that module. This might be useful if you 
only mean to copy
+            the sources for the exact module list matched by this ModuleSet, 
ignoring (or processing
+            separately) the modules which exist in directories below the 
current one. (Since 2.2-beta-1)
+            
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="outputDirectoryMapping" type="xs:string" 
default="${module.artifactId}">
+        <xs:annotation>
+          <xs:documentation source="version">1.1.0+</xs:documentation>
+          <xs:documentation source="description">
+            Sets the mapping pattern for all module base-directories included 
in this assembly.
+            NOTE: This field is only used if includeModuleDirectory == true.
+            Default is the module&apos;s ${artifactId} in 2.2-beta-1, and 
${module.artifactId} in subsequent versions. (Since 2.2-beta-1)
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+    </xs:all>
+  </xs:complexType>
+  <xs:complexType name="ModuleBinaries">
+    <xs:annotation>
+      <xs:documentation source="version">1.0.0+</xs:documentation>
+      <xs:documentation source="description">
+        Contains configuration options for including the binary files of a
+        project module in an assembly.
+      </xs:documentation>
+    </xs:annotation>
+    <xs:all>
+      <xs:element minOccurs="0" name="outputDirectory" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            Sets the output directory relative to the root
+            of the root directory of the assembly. For example,
+            &quot;log&quot; will put the specified files in the log directory,
+            directly beneath the root of the archive.
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="includes">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            
+            When &amp;lt;include&amp;gt; subelements are present, they define 
a set of
+            artifact coordinates to include. If none is present, then
+            &amp;lt;includes&amp;gt; represents all valid values.
+
+            Artifact coordinates may be given in simple groupId:artifactId 
form,
+            or they may be fully qualified in the form 
groupId:artifactId:type[:classifier]:version.
+            Additionally, wildcards can be used, as in *:maven-*
+            
+          </xs:documentation>
+        </xs:annotation>
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element name="include" minOccurs="0" maxOccurs="unbounded" 
type="xs:string"/>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+      <xs:element minOccurs="0" name="excludes">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            
+            When &amp;lt;exclude&amp;gt; subelements are present, they define 
a set of
+            dependency artifact coordinates to exclude. If none is present, 
then
+            &amp;lt;excludes&amp;gt; represents no exclusions.
+
+            Artifact coordinates may be given in simple groupId:artifactId 
form,
+            or they may be fully qualified in the form 
groupId:artifactId:type[:classifier]:version.
+            Additionally, wildcards can be used, as in *:maven-*
+            
+          </xs:documentation>
+        </xs:annotation>
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element name="exclude" minOccurs="0" maxOccurs="unbounded" 
type="xs:string"/>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+      <xs:element minOccurs="0" name="fileMode" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            
+            Similar to a UNIX permission, sets the file mode of the files 
included.
+            THIS IS AN OCTAL VALUE.
+            Format: (User)(Group)(Other) where each component is a sum of Read 
= 4,
+            Write = 2, and Execute = 1.  For example, the value 0644
+            translates to User read-write, Group and Other read-only. The 
default value is 0644
+            &lt;a 
href=&quot;http://www.onlamp.com/pub/a/bsd/2000/09/06/FreeBSD_Basics.html&quot;&gt;(more
 on unix-style permissions)&lt;/a&gt;
+            
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="directoryMode" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            
+            Similar to a UNIX permission, sets the directory mode of the 
directories
+            included.
+            THIS IS AN OCTAL VALUE.
+            Format: (User)(Group)(Other) where each component is a sum of
+            Read = 4, Write = 2, and Execute = 1.  For example, the value
+            0755 translates to User read-write, Group and Other read-only. The 
default value is 0755.
+            &lt;a 
href=&quot;http://www.onlamp.com/pub/a/bsd/2000/09/06/FreeBSD_Basics.html&quot;&gt;(more
 on unix-style permissions)&lt;/a&gt;
+            
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="attachmentClassifier" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.1.0+</xs:documentation>
+          <xs:documentation source="description">
+          When specified, the attachmentClassifier will cause the assembler to 
look at artifacts
+          attached to the module instead of the main project artifact. If it 
can find an attached
+          artifact matching the specified classifier, it will use it; 
otherwise, it will throw an
+          exception. (Since 2.2-beta-1)
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="includeDependencies" type="xs:boolean" 
default="true">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+          If set to true, the plugin will include the direct and transitive 
dependencies of
+          of the project modules included here.  Otherwise, it will only 
include the module
+          packages only.
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="dependencySets">
+        <xs:annotation>
+          <xs:documentation source="version">1.1.0+</xs:documentation>
+          <xs:documentation source="description">
+            
+            Specifies which dependencies of the module to include in the 
assembly. A
+            dependencySet is specified by providing one or more of
+            &amp;lt;dependencySet&amp;gt; subelements. (Since 2.2-beta-1)
+            
+          </xs:documentation>
+        </xs:annotation>
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element name="dependencySet" minOccurs="0" 
maxOccurs="unbounded" type="DependencySet"/>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+      <xs:element minOccurs="0" name="unpack" type="xs:boolean" default="true">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            If set to true, this property will unpack all module packages
+            into the specified output directory. When set to false
+            module packages will be included as archives (jars).
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="unpackOptions" type="UnpackOptions">
+        <xs:annotation>
+          <xs:documentation source="version">1.1.0+</xs:documentation>
+          <xs:documentation source="description">
+          Allows the specification of includes and excludes, along with 
filtering options, for items
+          unpacked from a module artifact. (Since 2.2-beta-1)
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="outputFileNameMapping" type="xs:string" 
default="${module.artifactId}-${module.version}${dashClassifier?}.${module.extension}">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            Sets the mapping pattern for all NON-UNPACKED dependencies included
+            in this assembly.
+            (Since 2.2-beta-2; 2.2-beta-1 uses 
${artifactId}-${version}${dashClassifier?}.${extension} as default value)
+            NOTE: If the dependencySet specifies unpack == true, 
outputFileNameMapping WILL NOT BE USED; in these cases,
+            use outputDirectory.
+            See the plugin FAQ for more details about entries usable in the 
outputFileNameMapping parameter.
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+    </xs:all>
+  </xs:complexType>
+  <xs:complexType name="UnpackOptions">
+    <xs:annotation>
+      <xs:documentation source="version">1.1.0+</xs:documentation>
+      <xs:documentation source="description">
+      Specifies options for including/excluding/filtering items extracted from 
an archive. (Since 2.2-beta-1)
+      </xs:documentation>
+    </xs:annotation>
+    <xs:all>
+      <xs:element minOccurs="0" name="includes">
+        <xs:annotation>
+          <xs:documentation source="version">1.1.0+</xs:documentation>
+          <xs:documentation source="description">
+            
+            Set of file and/or directory patterns for matching items to be 
included from an archive as it is unpacked.
+            Each item is specified as 
&amp;lt;include&amp;gt;some/path&amp;lt;/include&amp;gt; (Since 2.2-beta-1)
+            
+          </xs:documentation>
+        </xs:annotation>
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element name="include" minOccurs="0" maxOccurs="unbounded" 
type="xs:string"/>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+      <xs:element minOccurs="0" name="excludes">
+        <xs:annotation>
+          <xs:documentation source="version">1.1.0+</xs:documentation>
+          <xs:documentation source="description">
+            
+            Set of file and/or directory patterns for matching items to be 
excluded from an archive as it is unpacked.
+            Each item is specified as 
&amp;lt;exclude&amp;gt;some/path&amp;lt;/exclude&amp;gt; (Since 2.2-beta-1)
+            
+          </xs:documentation>
+        </xs:annotation>
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element name="exclude" minOccurs="0" maxOccurs="unbounded" 
type="xs:string"/>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+      <xs:element minOccurs="0" name="filtered" type="xs:boolean" 
default="false">
+        <xs:annotation>
+          <xs:documentation source="version">1.1.0+</xs:documentation>
+          <xs:documentation source="description">
+          Whether to filter symbols in the files as they are unpacked from the 
archive, using
+          properties from the build configuration. (Since 2.2-beta-1)
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="lineEnding" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.1.2+</xs:documentation>
+          <xs:documentation source="description">
+            
+            Sets the line-endings of the files. (Since 2.2)
+            Valid values:
+            &lt;ul&gt;
+              &lt;li&gt;&lt;b&gt;&quot;keep&quot;&lt;/b&gt; - Preserve all 
line endings&lt;/li&gt;
+              &lt;li&gt;&lt;b&gt;&quot;unix&quot;&lt;/b&gt; - Use Unix-style 
line endings&lt;/li&gt;
+              &lt;li&gt;&lt;b&gt;&quot;lf&quot;&lt;/b&gt; - Use a single 
line-feed line endings&lt;/li&gt;
+              &lt;li&gt;&lt;b&gt;&quot;dos&quot;&lt;/b&gt; - Use DOS-style 
line endings&lt;/li&gt;
+              &lt;li&gt;&lt;b&gt;&quot;crlf&quot;&lt;/b&gt; - Use 
Carraige-return, line-feed line endings&lt;/li&gt;
+            &lt;/ul&gt;
+            
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="useDefaultExcludes" type="xs:boolean" 
default="true">
+        <xs:annotation>
+          <xs:documentation source="version">1.1.2+</xs:documentation>
+          <xs:documentation source="description">
+            Whether standard exclusion patterns, such as those matching CVS 
and Subversion
+            metadata files, should be used when calculating the files affected 
by this set.
+            For backward compatibility, the default value is true. (Since 2.2)
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="encoding" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.1.3+</xs:documentation>
+          <xs:documentation source="description">
+            
+            Allows to specify the encoding to use when unpacking archives, for 
unarchivers
+            that support specifying encoding. If unspecified, archiver default 
will be used.
+            Archiver defaults generally represent sane (modern) values.
+            
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+    </xs:all>
+  </xs:complexType>
+  <xs:complexType name="DependencySet">
+    <xs:annotation>
+      <xs:documentation source="version">1.0.0+</xs:documentation>
+      <xs:documentation source="description">
+        A dependencySet allows inclusion and exclusion of project dependencies
+        in the assembly.
+      </xs:documentation>
+    </xs:annotation>
+    <xs:all>
+      <xs:element minOccurs="0" name="outputDirectory" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            Sets the output directory relative to the root
+            of the root directory of the assembly. For example,
+            &quot;log&quot; will put the specified files in the log directory,
+            directly beneath the root of the archive.
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="includes">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            
+            When &amp;lt;include&amp;gt; subelements are present, they define 
a set of
+            artifact coordinates to include. If none is present, then
+            &amp;lt;includes&amp;gt; represents all valid values.
+
+            Artifact coordinates may be given in simple groupId:artifactId 
form,
+            or they may be fully qualified in the form 
groupId:artifactId:type[:classifier]:version.
+            Additionally, wildcards can be used, as in *:maven-*
+            
+          </xs:documentation>
+        </xs:annotation>
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element name="include" minOccurs="0" maxOccurs="unbounded" 
type="xs:string"/>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+      <xs:element minOccurs="0" name="excludes">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            
+            When &amp;lt;exclude&amp;gt; subelements are present, they define 
a set of
+            dependency artifact coordinates to exclude. If none is present, 
then
+            &amp;lt;excludes&amp;gt; represents no exclusions.
+
+            Artifact coordinates may be given in simple groupId:artifactId 
form,
+            or they may be fully qualified in the form 
groupId:artifactId:type[:classifier]:version.
+            Additionally, wildcards can be used, as in *:maven-*
+            
+          </xs:documentation>
+        </xs:annotation>
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element name="exclude" minOccurs="0" maxOccurs="unbounded" 
type="xs:string"/>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+      <xs:element minOccurs="0" name="fileMode" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            
+            Similar to a UNIX permission, sets the file mode of the files 
included.
+            THIS IS AN OCTAL VALUE.
+            Format: (User)(Group)(Other) where each component is a sum of Read 
= 4,
+            Write = 2, and Execute = 1.  For example, the value 0644
+            translates to User read-write, Group and Other read-only.  The 
default value is 0644
+            &lt;a 
href=&quot;http://www.onlamp.com/pub/a/bsd/2000/09/06/FreeBSD_Basics.html&quot;&gt;(more
 on unix-style permissions)&lt;/a&gt;
+            
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="directoryMode" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            
+            Similar to a UNIX permission, sets the directory mode of the 
directories
+            included.
+            THIS IS AN OCTAL VALUE.
+            Format: (User)(Group)(Other) where each component is a sum of
+            Read = 4, Write = 2, and Execute = 1.  For example, the value
+            0755 translates to User read-write, Group and Other read-only. The 
default value is 0755.
+            &lt;a 
href=&quot;http://www.onlamp.com/pub/a/bsd/2000/09/06/FreeBSD_Basics.html&quot;&gt;(more
 on unix-style permissions)&lt;/a&gt;
+            
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="useStrictFiltering" type="xs:boolean" 
default="false">
+        <xs:annotation>
+          <xs:documentation source="version">1.1.2+</xs:documentation>
+          <xs:documentation source="description">
+          When specified as true, any include/exclude patterns which 
aren&apos;t used to filter an actual
+          artifact during assembly creation will cause the build to fail with 
an error. This is meant
+          to highlight obsolete inclusions or exclusions, or else signal that 
the assembly descriptor
+          is incorrectly configured. (Since 2.2)
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="outputFileNameMapping" type="xs:string" 
default="${artifact.artifactId}-${artifact.version}${dashClassifier?}.${artifact.extension}">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            Sets the mapping pattern for all dependencies included in this
+            assembly. (Since 2.2-beta-2; 2.2-beta-1 uses 
${artifactId}-${version}${dashClassifier?}.${extension}
+            as default value).
+            See the plugin FAQ for more details about entries usable in the 
outputFileNameMapping parameter.
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="unpack" type="xs:boolean" 
default="false">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            If set to true, this property will unpack all dependencies
+            into the specified output directory. When set to false
+            dependencies will be includes as archives (jars). Can only unpack
+            jar, zip, tar.gz, and tar.bz archives.
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="unpackOptions" type="UnpackOptions">
+        <xs:annotation>
+          <xs:documentation source="version">1.1.0+</xs:documentation>
+          <xs:documentation source="description">
+          Allows the specification of includes and excludes, along with 
filtering options, for items
+          unpacked from a dependency artifact. (Since 2.2-beta-1)
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="scope" type="xs:string" 
default="runtime">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            Sets the dependency scope for this dependencySet.
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="useProjectArtifact" type="xs:boolean" 
default="true">
+        <xs:annotation>
+          <xs:documentation source="version">1.1.0+</xs:documentation>
+          <xs:documentation source="description">
+          Determines whether the artifact produced during the current 
project&apos;s
+          build should be included in this dependency set. (Since 2.2-beta-1)
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="useProjectAttachments" type="xs:boolean" 
default="false">
+        <xs:annotation>
+          <xs:documentation source="version">1.1.0+</xs:documentation>
+          <xs:documentation source="description">
+          Determines whether the attached artifacts produced during the 
current project&apos;s
+          build should be included in this dependency set. (Since 2.2-beta-1)
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="useTransitiveDependencies" 
type="xs:boolean" default="true">
+        <xs:annotation>
+          <xs:documentation source="version">1.1.0+</xs:documentation>
+          <xs:documentation source="description">
+          Determines whether transitive dependencies will be included in the 
processing of
+          the current dependency set. If true, 
includes/excludes/useTransitiveFiltering
+          will apply to transitive dependency artifacts in addition to the 
main project
+          dependency artifacts. If false, useTransitiveFiltering is 
meaningless, and
+          includes/excludes only affect the immediate dependencies of the 
project.
+          By default, this value is true. (Since 2.2-beta-1)
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="useTransitiveFiltering" 
type="xs:boolean" default="false">
+        <xs:annotation>
+          <xs:documentation source="version">1.1.0+</xs:documentation>
+          <xs:documentation source="description">
+          Determines whether the include/exclude patterns in this dependency 
set will be applied to
+          the transitive path of a given artifact. If true, and the current 
artifact is a transitive
+          dependency brought in by another artifact which matches an inclusion 
or exclusion pattern,
+          then the current artifact has the same inclusion/exclusion logic 
applied to it as well. By
+          default, this value is false, in order to preserve backward 
compatibility with version 2.1.
+          This means that includes/excludes only apply directly to the current 
artifact, and not to
+          the transitive set of artifacts which brought it in. (Since 
2.2-beta-1)
+          </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">
+        
+        Defines a Maven repository to be included in the assembly. The 
artifacts
+        available to be included in a repository are your project&apos;s 
dependency
+        artifacts. The repository created contains the needed metadata entries
+        and also contains both sha1 and md5 checksums. This is useful for 
creating
+        archives which will be deployed to internal repositories.
+
+        &lt;br/&gt;&lt;b&gt;NOTE:&lt;/b&gt; Currently, only artifacts from the 
central repository
+        are allowed.
+        
+      </xs:documentation>
+    </xs:annotation>
+    <xs:all>
+      <xs:element minOccurs="0" name="outputDirectory" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            Sets the output directory relative to the root
+            of the root directory of the assembly. For example,
+            &quot;log&quot; will put the specified files in the log directory,
+            directly beneath the root of the archive.
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="includes">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            
+            When &amp;lt;include&amp;gt; subelements are present, they define 
a set of
+            artifact coordinates to include. If none is present, then
+            &amp;lt;includes&amp;gt; represents all valid values.
+
+            Artifact coordinates may be given in simple groupId:artifactId 
form,
+            or they may be fully qualified in the form 
groupId:artifactId:type[:classifier]:version.
+            Additionally, wildcards can be used, as in *:maven-*
+            
+          </xs:documentation>
+        </xs:annotation>
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element name="include" minOccurs="0" maxOccurs="unbounded" 
type="xs:string"/>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+      <xs:element minOccurs="0" name="excludes">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            
+            When &amp;lt;exclude&amp;gt; subelements are present, they define 
a set of
+            dependency artifact coordinates to exclude. If none is present, 
then
+            &amp;lt;excludes&amp;gt; represents no exclusions.
+
+            Artifact coordinates may be given in simple groupId:artifactId 
form,
+            or they may be fully qualified in the form 
groupId:artifactId:type[:classifier]:version.
+            Additionally, wildcards can be used, as in *:maven-*
+            
+          </xs:documentation>
+        </xs:annotation>
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element name="exclude" minOccurs="0" maxOccurs="unbounded" 
type="xs:string"/>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+      <xs:element minOccurs="0" name="fileMode" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            
+            Similar to a UNIX permission, sets the file mode of the files 
included.
+            THIS IS AN OCTAL VALUE.
+            Format: (User)(Group)(Other) where each component is a sum of Read 
= 4,
+            Write = 2, and Execute = 1.  For example, the value 0644
+            translates to User read-write, Group and Other read-only. The 
default value is 0644
+            &lt;a 
href=&quot;http://www.onlamp.com/pub/a/bsd/2000/09/06/FreeBSD_Basics.html&quot;&gt;(more
 on unix-style permissions)&lt;/a&gt;
+            
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="directoryMode" type="xs:string">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            
+            Similar to a UNIX permission, sets the directory mode of the 
directories
+            included.
+            THIS IS AN OCTAL VALUE.
+            Format: (User)(Group)(Other) where each component is a sum of
+            Read = 4, Write = 2, and Execute = 1.  For example, the value
+            0755 translates to User read-write, Group and Other read-only. The 
default value is 0755.
+            &lt;a 
href=&quot;http://www.onlamp.com/pub/a/bsd/2000/09/06/FreeBSD_Basics.html&quot;&gt;(more
 on unix-style permissions)&lt;/a&gt;
+            
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="includeMetadata" type="xs:boolean" 
default="false">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            If set to true, this property will trigger the creation of 
repository
+            metadata which will allow the repository to be used as a 
functional remote
+            repository.
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="groupVersionAlignments">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            
+            Specifies that you want to align a group of artifacts to a 
specified
+            version. A groupVersionAlignment is specified by providing one or
+            more of &amp;lt;groupVersionAlignment&amp;gt; subelements.
+            
+          </xs:documentation>
+        </xs:annotation>
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element name="groupVersionAlignment" minOccurs="0" 
maxOccurs="unbounded" type="GroupVersionAlignment"/>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+      <xs:element minOccurs="0" name="scope" type="xs:string" 
default="runtime">
+        <xs:annotation>
+          <xs:documentation source="version">1.1.0+</xs:documentation>
+          <xs:documentation source="description">
+            Specifies the scope for artifacts included in this repository. 
(Since 2.2-beta-1)
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+    </xs:all>
+  </xs:complexType>
+  <xs:complexType name="GroupVersionAlignment">
+    <xs:annotation>
+      <xs:documentation source="version">1.0.0+</xs:documentation>
+      <xs:documentation source="description">
+        Allows a group of artifacts to be aligned to a specified version.
+      </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 groupId of the artifacts for which you want to align the
+            versions.
+          </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 you want to align this group to.
+          </xs:documentation>
+        </xs:annotation>
+      </xs:element>
+      <xs:element minOccurs="0" name="excludes">
+        <xs:annotation>
+          <xs:documentation source="version">1.0.0+</xs:documentation>
+          <xs:documentation source="description">
+            
+            When &amp;lt;exclude&amp;gt; subelements are present, they define 
the
+            artifactIds of the artifacts to exclude. If none is present, then
+            &amp;lt;excludes&amp;gt; represents no exclusions. An exclude is 
specified
+            by providing one or more of &amp;lt;exclude&amp;gt; subelements.
+            
+          </xs:documentation>
+        </xs:annotation>
+        <xs:complexType>
+          <xs:sequence>
+            <xs:element name="exclude" minOccurs="0" maxOccurs="unbounded" 
type="xs:string"/>
+          </xs:sequence>
+        </xs:complexType>
+      </xs:element>
+    </xs:all>
+  </xs:complexType>
+</xs:schema>
\ No newline at end of file
diff --git a/.idea/xml-schemas/svg11.dtd b/.idea/xml-schemas/svg11.dtd
new file mode 100644
index 0000000..44cbcb8
--- /dev/null
+++ b/.idea/xml-schemas/svg11.dtd
@@ -0,0 +1,333 @@
+<!-- ....................................................................... 
-->
+<!-- SVG 1.1 DTD ........................................................... 
-->
+<!-- file: svg11.dtd
+-->
+
+<!-- SVG 1.1 DTD
+
+     This is SVG, a language for describing two-dimensional graphics in XML.
+
+     The Scalable Vector Graphics (SVG)
+     Copyright 2001, 2002, 2011 World Wide Web Consortium
+        (Massachusetts Institute of Technology, Institut National de
+         Recherche en Informatique et en Automatique, Keio University).
+         All Rights Reserved.
+
+     Permission to use, copy, modify and distribute the SVG DTD and its
+     accompanying documentation for any purpose and without fee is hereby
+     granted in perpetuity, provided that the above copyright notice and
+     this paragraph appear in all copies.  The copyright holders make no
+     representation about the suitability of the DTD for any purpose.
+
+     It is provided "as is" without expressed or implied warranty.
+
+        Author:   Jun Fujisawa <[email protected]>
+        Revision: $Id: svg11.dtd,v 1.15 2011/07/08 03:20:22 cmccorma Exp $
+
+-->
+<!-- This is the driver file for version 1.1 of the SVG DTD.
+
+     This DTD is identified by the PUBLIC and SYSTEM identifiers:
+
+        PUBLIC "-//W3C//DTD SVG 1.1//EN"
+        SYSTEM "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd";
+-->
+<!ENTITY % SVG.version "-//W3C//DTD SVG 1.1//EN" >
+
+<!-- Use this URI to identify the default namespace:
+
+        "http://www.w3.org/2000/svg";
+
+     See the Qualified Names module for information
+     on the use of namespace prefixes in the DTD.
+-->
+<!ENTITY % NS.prefixed "IGNORE" >
+<!ENTITY % SVG.prefix "" >
+
+<!-- reserved for future use with document profiles -->
+<!ENTITY % SVG.profile "" >
+
+<!-- ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: 
-->
+
+<!-- Pre-Framework Redeclaration Placeholder ..................... -->
+<!ENTITY % svg-prefw-redecl.module "IGNORE" >
+<![%svg-prefw-redecl.module;[
+%svg-prefw-redecl.mod;]]>
+
+<!-- Document Model Module ....................................... -->
+<!ENTITY % svg-model.mod
+    PUBLIC "-//W3C//ENTITIES SVG 1.1 Document Model//EN"
+           "svg11-model.mod" >
+
+<!-- Attribute Collection Module ................................. -->
+<!ENTITY % svg-attribs.mod
+    PUBLIC "-//W3C//ENTITIES SVG 1.1 Attribute Collection//EN"
+           "svg11-attribs.mod" >
+
+<!-- Modular Framework Module .................................... -->
+<!ENTITY % svg-framework.module "INCLUDE" >
+<![%svg-framework.module;[
+<!ENTITY % svg-framework.mod
+    PUBLIC "-//W3C//ENTITIES SVG 1.1 Modular Framework//EN"
+           "svg-framework.mod" >
+%svg-framework.mod;]]>
+
+<!-- Post-Framework Redeclaration Placeholder .................... -->
+<!ENTITY % svg-postfw-redecl.module "IGNORE" >
+<![%svg-postfw-redecl.module;[
+%svg-postfw-redecl.mod;]]>
+
+<!-- ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: 
-->
+
+<!-- Core Attribute Module ....................................... -->
+<!ENTITY % svg-core-attrib.module "INCLUDE" >
+<![%svg-core-attrib.module;[
+<!ENTITY % svg-core-attrib.mod
+    PUBLIC "-//W3C//ENTITIES SVG 1.1 Core Attribute//EN"
+           "svg-core-attrib.mod" >
+%svg-core-attrib.mod;]]>
+
+<!-- Container Attribute Module .................................. -->
+<!ENTITY % svg-container-attrib.module "INCLUDE" >
+<![%svg-container-attrib.module;[
+<!ENTITY % svg-container-attrib.mod
+    PUBLIC "-//W3C//ENTITIES SVG 1.1 Container Attribute//EN"
+           "svg-container-attrib.mod" >
+%svg-container-attrib.mod;]]>
+
+<!-- Viewport Attribute Module ................................... -->
+<!ENTITY % svg-viewport-attrib.module "INCLUDE" >
+<![%svg-viewport-attrib.module;[
+<!ENTITY % svg-viewport-attrib.mod
+    PUBLIC "-//W3C//ENTITIES SVG 1.1 Viewport Attribute//EN"
+           "svg-viewport-attrib.mod" >
+%svg-viewport-attrib.mod;]]>
+
+<!-- Paint Attribute Module ...................................... -->
+<!ENTITY % svg-paint-attrib.module "INCLUDE" >
+<![%svg-paint-attrib.module;[
+<!ENTITY % svg-paint-attrib.mod
+    PUBLIC "-//W3C//ENTITIES SVG 1.1 Paint Attribute//EN"
+           "svg-paint-attrib.mod" >
+%svg-paint-attrib.mod;]]>
+
+<!-- Paint Opacity Attribute Module .............................. -->
+<!ENTITY % svg-opacity-attrib.module "INCLUDE" >
+<![%svg-opacity-attrib.module;[
+<!ENTITY % svg-opacity-attrib.mod
+    PUBLIC "-//W3C//ENTITIES SVG 1.1 Paint Opacity Attribute//EN"
+           "svg-opacity-attrib.mod" >
+%svg-opacity-attrib.mod;]]>
+
+<!-- Graphics Attribute Module ................................... -->
+<!ENTITY % svg-graphics-attrib.module "INCLUDE" >
+<![%svg-graphics-attrib.module;[
+<!ENTITY % svg-graphics-attrib.mod
+    PUBLIC "-//W3C//ENTITIES SVG 1.1 Graphics Attribute//EN"
+           "svg-graphics-attrib.mod" >
+%svg-graphics-attrib.mod;]]>
+
+<!-- Document Events Attribute Module ............................ -->
+<!ENTITY % svg-docevents-attrib.module "INCLUDE" >
+<![%svg-docevents-attrib.module;[
+<!ENTITY % svg-docevents-attrib.mod
+    PUBLIC "-//W3C//ENTITIES SVG 1.1 Document Events Attribute//EN"
+           "svg-docevents-attrib.mod" >
+%svg-docevents-attrib.mod;]]>
+
+<!-- Graphical Element Events Attribute Module ................... -->
+<!ENTITY % svg-graphevents-attrib.module "INCLUDE" >
+<![%svg-graphevents-attrib.module;[
+<!ENTITY % svg-graphevents-attrib.mod
+    PUBLIC "-//W3C//ENTITIES SVG 1.1 Graphical Element Events Attribute//EN"
+           "svg-graphevents-attrib.mod" >
+%svg-graphevents-attrib.mod;]]>
+
+<!-- Animation Events Attribute Module ........................... -->
+<!ENTITY % svg-animevents-attrib.module "INCLUDE" >
+<![%svg-animevents-attrib.module;[
+<!ENTITY % svg-animevents-attrib.mod
+    PUBLIC "-//W3C//ENTITIES SVG 1.1 Animation Events Attribute//EN"
+           "svg-animevents-attrib.mod" >
+%svg-animevents-attrib.mod;]]>
+
+<!-- XLink Attribute Module ...................................... -->
+<!ENTITY % svg-xlink-attrib.module "INCLUDE" >
+<![%svg-xlink-attrib.module;[
+<!ENTITY % svg-xlink-attrib.mod
+    PUBLIC "-//W3C//ENTITIES SVG 1.1 XLink Attribute//EN"
+           "svg-xlink-attrib.mod" >
+%svg-xlink-attrib.mod;]]>
+
+<!-- External Resources Attribute Module ......................... -->
+<!ENTITY % svg-extresources-attrib.module "INCLUDE" >
+<![%svg-extresources-attrib.module;[
+<!ENTITY % svg-extresources-attrib.mod
+    PUBLIC "-//W3C//ENTITIES SVG 1.1 External Resources Attribute//EN"
+           "svg-extresources-attrib.mod" >
+%svg-extresources-attrib.mod;]]>
+
+<!-- ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: 
-->
+
+<!-- Structure Module ............................................ -->
+<!ENTITY % svg-structure.module "INCLUDE" >
+<![%svg-structure.module;[
+<!ENTITY % svg-structure.mod
+    PUBLIC "-//W3C//ELEMENTS SVG 1.1 Structure//EN"
+           "svg-structure.mod" >
+%svg-structure.mod;]]>
+
+<!-- Conditional Processing Module ............................... -->
+<!ENTITY % svg-conditional.module "INCLUDE" >
+<![%svg-conditional.module;[
+<!ENTITY % svg-conditional.mod
+    PUBLIC "-//W3C//ELEMENTS SVG 1.1 Conditional Processing//EN"
+           "svg-conditional.mod" >
+%svg-conditional.mod;]]>
+
+<!-- Image Module ................................................ -->
+<!ENTITY % svg-image.module "INCLUDE" >
+<![%svg-image.module;[
+<!ENTITY % svg-image.mod
+    PUBLIC "-//W3C//ELEMENTS SVG 1.1 Image//EN"
+           "svg-image.mod" >
+%svg-image.mod;]]>
+
+<!-- Style Module ................................................ -->
+<!ENTITY % svg-style.module "INCLUDE" >
+<![%svg-style.module;[
+<!ENTITY % svg-style.mod
+    PUBLIC "-//W3C//ELEMENTS SVG 1.1 Style//EN"
+           "svg-style.mod" >
+%svg-style.mod;]]>
+
+<!-- Shape Module ................................................ -->
+<!ENTITY % svg-shape.module "INCLUDE" >
+<![%svg-shape.module;[
+<!ENTITY % svg-shape.mod
+    PUBLIC "-//W3C//ELEMENTS SVG 1.1 Shape//EN"
+           "svg-shape.mod" >
+%svg-shape.mod;]]>
+
+<!-- Text Module ................................................. -->
+<!ENTITY % svg-text.module "INCLUDE" >
+<![%svg-text.module;[
+<!ENTITY % svg-text.mod
+    PUBLIC "-//W3C//ELEMENTS SVG 1.1 Text//EN"
+           "svg-text.mod" >
+%svg-text.mod;]]>
+
+<!-- Marker Module ............................................... -->
+<!ENTITY % svg-marker.module "INCLUDE" >
+<![%svg-marker.module;[
+<!ENTITY % svg-marker.mod
+    PUBLIC "-//W3C//ELEMENTS SVG 1.1 Marker//EN"
+           "svg-marker.mod" >
+%svg-marker.mod;]]>
+
+<!-- Color Profile Module ........................................ -->
+<!ENTITY % svg-profile.module "INCLUDE" >
+<![%svg-profile.module;[
+<!ENTITY % svg-profile.mod
+    PUBLIC "-//W3C//ELEMENTS SVG 1.1 Color Profile//EN"
+           "svg-profile.mod" >
+%svg-profile.mod;]]>
+
+<!-- Gradient Module ............................................. -->
+<!ENTITY % svg-gradient.module "INCLUDE" >
+<![%svg-gradient.module;[
+<!ENTITY % svg-gradient.mod
+    PUBLIC "-//W3C//ELEMENTS SVG 1.1 Gradient//EN"
+           "svg-gradient.mod" >
+%svg-gradient.mod;]]>
+
+<!-- Pattern Module .............................................. -->
+<!ENTITY % svg-pattern.module "INCLUDE" >
+<![%svg-pattern.module;[
+<!ENTITY % svg-pattern.mod
+    PUBLIC "-//W3C//ELEMENTS SVG 1.1 Pattern//EN"
+           "svg-pattern.mod" >
+%svg-pattern.mod;]]>
+
+<!-- Clip Module ................................................. -->
+<!ENTITY % svg-clip.module "INCLUDE" >
+<![%svg-clip.module;[
+<!ENTITY % svg-clip.mod
+    PUBLIC "-//W3C//ELEMENTS SVG 1.1 Clip//EN"
+           "svg-clip.mod" >
+%svg-clip.mod;]]>
+
+<!-- Mask Module ................................................. -->
+<!ENTITY % svg-mask.module "INCLUDE" >
+<![%svg-mask.module;[
+<!ENTITY % svg-mask.mod
+    PUBLIC "-//W3C//ELEMENTS SVG 1.1 Mask//EN"
+           "svg-mask.mod" >
+%svg-mask.mod;]]>
+
+<!-- Filter Module ............................................... -->
+<!ENTITY % svg-filter.module "INCLUDE" >
+<![%svg-filter.module;[
+<!ENTITY % svg-filter.mod
+    PUBLIC "-//W3C//ELEMENTS SVG 1.1 Filter//EN"
+           "svg-filter.mod" >
+%svg-filter.mod;]]>
+
+<!-- Cursor Module ............................................... -->
+<!ENTITY % svg-cursor.module "INCLUDE" >
+<![%svg-cursor.module;[
+<!ENTITY % svg-cursor.mod
+    PUBLIC "-//W3C//ELEMENTS SVG 1.1 Cursor//EN"
+           "svg-cursor.mod" >
+%svg-cursor.mod;]]>
+
+<!-- Hyperlinking Module ......................................... -->
+<!ENTITY % svg-hyperlink.module "INCLUDE" >
+<![%svg-hyperlink.module;[
+<!ENTITY % svg-hyperlink.mod
+    PUBLIC "-//W3C//ELEMENTS SVG 1.1 Hyperlinking//EN"
+           "svg-hyperlink.mod" >
+%svg-hyperlink.mod;]]>
+
+<!-- View Module ................................................. -->
+<!ENTITY % svg-view.module "INCLUDE" >
+<![%svg-view.module;[
+<!ENTITY % svg-view.mod
+    PUBLIC "-//W3C//ELEMENTS SVG 1.1 View//EN"
+           "svg-view.mod" >
+%svg-view.mod;]]>
+
+<!-- Scripting Module ............................................ -->
+<!ENTITY % svg-script.module "INCLUDE" >
+<![%svg-script.module;[
+<!ENTITY % svg-script.mod
+    PUBLIC "-//W3C//ELEMENTS SVG 1.1 Scripting//EN"
+           "svg-script.mod" >
+%svg-script.mod;]]>
+
+<!-- Animation Module ............................................ -->
+<!ENTITY % svg-animation.module "INCLUDE" >
+<![%svg-animation.module;[
+<!ENTITY % svg-animation.mod
+    PUBLIC "-//W3C//ELEMENTS SVG 1.1 Animation//EN"
+           "svg-animation.mod" >
+%svg-animation.mod;]]>
+
+<!-- Font Module ................................................. -->
+<!ENTITY % svg-font.module "INCLUDE" >
+<![%svg-font.module;[
+<!ENTITY % svg-font.mod
+    PUBLIC "-//W3C//ELEMENTS SVG 1.1 Font//EN"
+           "svg-font.mod" >
+%svg-font.mod;]]>
+
+<!-- Extensibility Module ........................................ -->
+<!ENTITY % svg-extensibility.module "INCLUDE" >
+<![%svg-extensibility.module;[
+<!ENTITY % svg-extensibility.mod
+    PUBLIC "-//W3C//ELEMENTS SVG 1.1 Extensibility//EN"
+           "svg-extensibility.mod" >
+%svg-extensibility.mod;]]>
+
+<!-- end of SVG 1.1 DTD .................................................... 
-->
+<!-- ....................................................................... 
-->
diff --git 
a/processing/src/test/java/org/apache/druid/query/topn/TopNQueryQueryToolChestTest.java
 
b/processing/src/test/java/org/apache/druid/query/topn/TopNQueryQueryToolChestTest.java
index cede671..81079df 100644
--- 
a/processing/src/test/java/org/apache/druid/query/topn/TopNQueryQueryToolChestTest.java
+++ 
b/processing/src/test/java/org/apache/druid/query/topn/TopNQueryQueryToolChestTest.java
@@ -134,7 +134,7 @@ public class TopNQueryQueryToolChestTest
   }
 
   @Test
-  public void testComputeResultLevelCacheKeyWithDifferentPostAgg() throws 
IOException
+  public void testComputeResultLevelCacheKeyWithDifferentPostAgg()
   {
     final TopNQuery query1 = new TopNQuery(
         new TableDataSource("dummy"),


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to