You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by mi...@apache.org on 2022/05/28 12:38:44 UTC

[maven-doxia-sitetools] branch remove-default-skin updated (1c60d8b -> 060139d)

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

michaelo pushed a change to branch remove-default-skin
in repository https://gitbox.apache.org/repos/asf/maven-doxia-sitetools.git


    omit 1c60d8b  Remove default (bundled) skin
     add 9a34df0  Merge pull request #31 from apache/dependabot-release-drafter
     add e328bed  [DOXIASITETOOLS-255] Upgrade Maven Parent to 36
     new 060139d  Remove default (bundled) skin

This update added new revisions after undoing existing revisions.
That is to say, some revisions that were in the old version of the
branch are not in the new version.  This situation occurs
when a user --force pushes a change and generates a repository
containing something like this:

 * -- * -- B -- O -- O -- O   (1c60d8b)
            \
             N -- N -- N   refs/heads/remove-default-skin (060139d)

You should already have received notification emails for all of the O
revisions, and so the following emails describe only the N revisions
from the common base, B.

Any revisions marked "omit" are not gone; other references still
refer to them.  Any revisions marked "discard" are gone forever.

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 pom.xml | 27 +--------------------------
 1 file changed, 1 insertion(+), 26 deletions(-)


[maven-doxia-sitetools] 01/01: Remove default (bundled) skin

Posted by mi...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

michaelo pushed a commit to branch remove-default-skin
in repository https://gitbox.apache.org/repos/asf/maven-doxia-sitetools.git

commit 060139d2126fa2009e0b30c0af0e0bed9a79ce1d
Author: Michael Osipov <mi...@apache.org>
AuthorDate: Sun May 8 22:29:12 2022 +0200

    Remove default (bundled) skin
    
    Move to Fluido 1.11.0
    
    Don't verify head anymore because we care about the content (body) only
    
    Update content verification
---
 doxia-decoration-model/src/main/mdo/decoration.mdo |  22 +-
 .../apache/maven/doxia/tools/DefaultSiteTool.java  |  14 +-
 .../org/apache/maven/doxia/tools/SiteTool.java     |  14 -
 .../src/main/resources/default-site.xml            |   5 +
 .../org/apache/maven/doxia/tools/SiteToolTest.java |  13 -
 .../doxia/siterenderer/DefaultSiteRenderer.java    | 133 ++----
 .../doxia/siterenderer/SiteRenderingContext.java   |  30 +-
 .../siterenderer/resources/css/maven-base.css      | 168 -------
 .../doxia/siterenderer/resources/css/print.css     |  26 --
 .../siterenderer/resources/default-site-macros.vm  | 494 ---------------------
 .../doxia/siterenderer/resources/default-site.vm   | 102 -----
 .../siterenderer/resources/images/collapsed.gif    | Bin 53 -> 0 bytes
 .../siterenderer/resources/images/expanded.gif     | Bin 52 -> 0 bytes
 .../images/logos/build-by-maven-black.png          | Bin 2294 -> 0 bytes
 .../images/logos/build-by-maven-white.png          | Bin 2260 -> 0 bytes
 .../resources/images/logos/maven-feather.png       | Bin 3330 -> 0 bytes
 .../doxia/siterenderer/resources/resources.txt     |  24 -
 .../maven/doxia/siterenderer/AptVerifier.java      |   8 +-
 .../doxia/siterenderer/AttributesVerifier.java     |   7 +-
 .../siterenderer/DefaultSiteRendererTest.java      | 101 ++---
 .../maven/doxia/siterenderer/EntitiesVerifier.java |  48 +-
 .../maven/doxia/siterenderer/FaqVerifier.java      |   7 +-
 .../maven/doxia/siterenderer/HeadVerifier.java     | 105 -----
 .../doxia/siterenderer/JavascriptVerifier.java     |  28 +-
 .../maven/doxia/siterenderer/MiscVerifier.java     |   8 +-
 .../doxia/siterenderer/MultipleBlockVerifier.java  |   8 +-
 .../doxia/siterenderer/NestedItemsVerifier.java    |   8 +-
 27 files changed, 106 insertions(+), 1267 deletions(-)

diff --git a/doxia-decoration-model/src/main/mdo/decoration.mdo b/doxia-decoration-model/src/main/mdo/decoration.mdo
index 752a9b5..691a953 100644
--- a/doxia-decoration-model/src/main/mdo/decoration.mdo
+++ b/doxia-decoration-model/src/main/mdo/decoration.mdo
@@ -127,7 +127,7 @@ under the License.
           <name>edit</name>
           <description><![CDATA[
             The base url to edit Doxia document sources.
-            In general, <code>${project.scm.url}</code> value should do the job. 
+            In general, <code>${project.scm.url}</code> value should do the job.
           ]]></description>
           <version>1.8.0+</version>
           <type>String</type>
@@ -759,26 +759,6 @@ under the License.
           <identifier>true</identifier>
         </field>
       </fields>
-      <codeSegments>
-        <codeSegment>
-          <version>1.0.0+</version>
-          <code>
-            <![CDATA[
-    /**
-     * @return the default skin <code>org.apache.maven.skins:maven-default-skin:1.3</code>.
-     */
-    public static Skin getDefaultSkin()
-    {
-        Skin skin = new Skin();
-        skin.setGroupId( "org.apache.maven.skins" );
-        skin.setArtifactId( "maven-default-skin" );
-        skin.setVersion( "1.3" );
-        return skin;
-    }
-            ]]>
-          </code>
-        </codeSegment>
-      </codeSegments>
     </class>
   </classes>
 </model>
diff --git a/doxia-integration-tools/src/main/java/org/apache/maven/doxia/tools/DefaultSiteTool.java b/doxia-integration-tools/src/main/java/org/apache/maven/doxia/tools/DefaultSiteTool.java
index c51c1d7..0895872 100644
--- a/doxia-integration-tools/src/main/java/org/apache/maven/doxia/tools/DefaultSiteTool.java
+++ b/doxia-integration-tools/src/main/java/org/apache/maven/doxia/tools/DefaultSiteTool.java
@@ -139,12 +139,7 @@ public class DefaultSiteTool
         Objects.requireNonNull( remoteArtifactRepositories, "remoteArtifactRepositories cannot be null" );
         Objects.requireNonNull( decoration, "decoration cannot be null" );
 
-        Skin skin = decoration.getSkin();
-
-        if ( skin == null )
-        {
-            skin = Skin.getDefaultSkin();
-        }
+        Skin skin = Objects.requireNonNull( decoration.getSkin(), "decoration.skin cannot be null" );
 
         String version = skin.getVersion();
         Artifact artifact;
@@ -176,13 +171,6 @@ public class DefaultSiteTool
         return artifact;
     }
 
-    public Artifact getDefaultSkinArtifact( ArtifactRepository localRepository,
-                                            List<ArtifactRepository> remoteArtifactRepositories )
-        throws SiteToolException
-    {
-        return getSkinArtifactFromRepository( localRepository, remoteArtifactRepositories, new DecorationModel() );
-    }
-
     /**
      * This method is not implemented according to the URI specification and has many weird
      * corner cases where it doesn't do the right thing. Please consider using a better
diff --git a/doxia-integration-tools/src/main/java/org/apache/maven/doxia/tools/SiteTool.java b/doxia-integration-tools/src/main/java/org/apache/maven/doxia/tools/SiteTool.java
index dc369f0..b5454ce 100644
--- a/doxia-integration-tools/src/main/java/org/apache/maven/doxia/tools/SiteTool.java
+++ b/doxia-integration-tools/src/main/java/org/apache/maven/doxia/tools/SiteTool.java
@@ -59,20 +59,6 @@ public interface SiteTool
                                             DecorationModel decoration )
         throws SiteToolException;
 
-    /**
-     * Get the default skin artifact for a project from one of the repositories.
-     *
-     * @param localRepository the Maven local repository, not null.
-     * @param remoteArtifactRepositories the Maven remote repositories, not null.
-     * @return the default <code>Skin</code> artifact from a given project and a local repository
-     * @throws SiteToolException if any
-     * @see org.apache.maven.doxia.site.decoration.Skin#getDefaultSkin()
-     * @see #getSkinArtifactFromRepository(ArtifactRepository, List, DecorationModel)
-     */
-    Artifact getDefaultSkinArtifact( ArtifactRepository localRepository,
-                                     List<ArtifactRepository> remoteArtifactRepositories )
-        throws SiteToolException;
-
     /**
      * Get a site descriptor from the project's site directory.
      *
diff --git a/doxia-integration-tools/src/main/resources/default-site.xml b/doxia-integration-tools/src/main/resources/default-site.xml
index 5ba93bf..cc0c102 100644
--- a/doxia-integration-tools/src/main/resources/default-site.xml
+++ b/doxia-integration-tools/src/main/resources/default-site.xml
@@ -22,6 +22,11 @@ under the License.
   <bannerLeft>
     <name>${project.name}</name>
   </bannerLeft>
+  <skin>
+    <groupId>org.apache.maven.skins</groupId>
+    <artifactId>maven-fluido-skin</artifactId>
+    <version>1.11.0</version>
+  </skin>
   <body>
     <links>
       <item name="${project.name}" href="${project.url}"/>
diff --git a/doxia-integration-tools/src/test/java/org/apache/maven/doxia/tools/SiteToolTest.java b/doxia-integration-tools/src/test/java/org/apache/maven/doxia/tools/SiteToolTest.java
index ce40b8e..071ba27 100644
--- a/doxia-integration-tools/src/test/java/org/apache/maven/doxia/tools/SiteToolTest.java
+++ b/doxia-integration-tools/src/test/java/org/apache/maven/doxia/tools/SiteToolTest.java
@@ -107,19 +107,6 @@ public class SiteToolTest
         return new File( getLocalRepo().getBasedir() );
     }
 
-    /**
-     * @throws Exception
-     */
-    @Test
-    public void testGetDefaultSkinArtifact()
-        throws Exception
-    {
-        assertNotNull( tool );
-
-        SiteToolMavenProjectStub project = new SiteToolMavenProjectStub( "site-tool-test" );
-        assertNotNull( tool.getDefaultSkinArtifact( getLocalRepo(), project.getRemoteArtifactRepositories() ) );
-    }
-
     /**
      * @throws Exception
      */
diff --git a/doxia-site-renderer/src/main/java/org/apache/maven/doxia/siterenderer/DefaultSiteRenderer.java b/doxia-site-renderer/src/main/java/org/apache/maven/doxia/siterenderer/DefaultSiteRenderer.java
index 768eda5..edc5599 100644
--- a/doxia-site-renderer/src/main/java/org/apache/maven/doxia/siterenderer/DefaultSiteRenderer.java
+++ b/doxia-site-renderer/src/main/java/org/apache/maven/doxia/siterenderer/DefaultSiteRenderer.java
@@ -29,8 +29,6 @@ import java.io.FileNotFoundException;
 import java.io.FileOutputStream;
 import java.io.IOException;
 import java.io.InputStream;
-import java.io.LineNumberReader;
-import java.io.OutputStream;
 import java.io.Reader;
 import java.io.StringReader;
 import java.io.StringWriter;
@@ -143,10 +141,6 @@ public class DefaultSiteRenderer
     @Inject
     private PlexusContainer plexus;
 
-    private static final String RESOURCE_DIR = "org/apache/maven/doxia/siterenderer/resources";
-
-    private static final String DEFAULT_TEMPLATE = RESOURCE_DIR + "/default-site.vm";
-
     private static final String SKIN_TEMPLATE_LOCATION = "META-INF/maven/site.vm";
 
     private static final String TOOLS_LOCATION = "META-INF/maven/site-tools.xml";
@@ -705,14 +699,12 @@ public class DefaultSiteRenderer
             catch ( ParseErrorException pee )
             {
                 throw new RendererException( "Velocity parsing error while reading the site decoration template "
-                    + ( ( skin == null ) ? ( "'" + templateName + "'" ) : ( "from " + skin.getId() + " skin" ) ),
-                                             pee );
+                    + "from " + skin.getId() + " skin", pee );
             }
             catch ( ResourceNotFoundException rnfe )
             {
                 throw new RendererException( "Could not find the site decoration template "
-                    + ( ( skin == null ) ? ( "'" + templateName + "'" ) : ( "from " + skin.getId() + " skin" ) ),
-                                             rnfe );
+                    + "from " + skin.getId() + " skin", rnfe );
             }
 
             try
@@ -769,17 +761,12 @@ public class DefaultSiteRenderer
 
         try
         {
-            if ( zipFile.getEntry( SKIN_TEMPLATE_LOCATION ) != null )
+            if ( zipFile.getEntry( SKIN_TEMPLATE_LOCATION ) == null )
             {
-                context.setTemplateName( SKIN_TEMPLATE_LOCATION );
-                context.setTemplateClassLoader( new URLClassLoader( new URL[]{skin.getFile().toURI().toURL()} ) );
-            }
-            else
-            {
-                context.setTemplateName( DEFAULT_TEMPLATE );
-                context.setTemplateClassLoader( getClass().getClassLoader() );
-                context.setUsingDefaultTemplate( true );
+                throw new RendererException( "Skin does not contain template at " + SKIN_TEMPLATE_LOCATION );
             }
+            context.setTemplateName( SKIN_TEMPLATE_LOCATION );
+            context.setTemplateClassLoader( new URLClassLoader( new URL[]{skin.getFile().toURI().toURL()} ) );
 
             ZipEntry skinDescriptorEntry = zipFile.getEntry( SkinModel.SKIN_DESCRIPTOR_LOCATION );
             if ( skinDescriptorEntry != null )
@@ -873,111 +860,41 @@ public class DefaultSiteRenderer
     public void copyResources( SiteRenderingContext siteRenderingContext, File outputDirectory )
         throws IOException
     {
-        if ( siteRenderingContext.getSkin() != null )
-        {
-            ZipFile file = getZipFile( siteRenderingContext.getSkin().getFile() );
-
-            try
-            {
-                for ( Enumeration<? extends ZipEntry> e = file.entries(); e.hasMoreElements(); )
-                {
-                    ZipEntry entry = e.nextElement();
-
-                    if ( !entry.getName().startsWith( "META-INF/" ) )
-                    {
-                        File destFile = new File( outputDirectory, entry.getName() );
-                        if ( !entry.isDirectory() )
-                        {
-                            if ( destFile.exists() )
-                            {
-                                // don't override existing content: avoids extra rewrite with same content or extra site
-                                // resource
-                                continue;
-                            }
-
-                            destFile.getParentFile().mkdirs();
+        ZipFile file = getZipFile( siteRenderingContext.getSkin().getFile() );
 
-                            copyFileFromZip( file, entry, destFile );
-                        }
-                        else
-                        {
-                            destFile.mkdirs();
-                        }
-                    }
-                }
-            }
-            finally
-            {
-                closeZipFile( file );
-            }
-        }
-
-        if ( siteRenderingContext.isUsingDefaultTemplate() )
+        try
         {
-            InputStream resourceList = getClass().getClassLoader()
-                    .getResourceAsStream( RESOURCE_DIR + "/resources.txt" );
-
-            if ( resourceList != null )
+            for ( Enumeration<? extends ZipEntry> e = file.entries(); e.hasMoreElements(); )
             {
-                Reader r = null;
-                LineNumberReader reader = null;
-                try
-                {
-                    r = ReaderFactory.newReader( resourceList, ReaderFactory.UTF_8 );
-                    reader = new LineNumberReader( r );
-
-                    String line;
+                ZipEntry entry = e.nextElement();
 
-                    while ( ( line = reader.readLine() ) != null )
+                if ( !entry.getName().startsWith( "META-INF/" ) )
+                {
+                    File destFile = new File( outputDirectory, entry.getName() );
+                    if ( !entry.isDirectory() )
                     {
-                        if ( line.startsWith( "#" ) || line.trim().length() == 0 )
-                        {
-                            continue;
-                        }
-
-                        InputStream is = getClass().getClassLoader().getResourceAsStream( RESOURCE_DIR + "/" + line );
-
-                        if ( is == null )
-                        {
-                            throw new IOException( "The resource " + line + " doesn't exist." );
-                        }
-
-                        File outputFile = new File( outputDirectory, line );
-
-                        if ( outputFile.exists() )
+                        if ( destFile.exists() )
                         {
                             // don't override existing content: avoids extra rewrite with same content or extra site
                             // resource
                             continue;
                         }
 
-                        if ( !outputFile.getParentFile().exists() )
-                        {
-                            outputFile.getParentFile().mkdirs();
-                        }
+                        destFile.getParentFile().mkdirs();
 
-                        OutputStream os = null;
-                        try
-                        {
-                            // for the images
-                            os = new FileOutputStream( outputFile );
-                            IOUtil.copy( is, os );
-                        }
-                        finally
-                        {
-                            IOUtil.close( os );
-                        }
-
-                        IOUtil.close( is );
+                        copyFileFromZip( file, entry, destFile );
+                    }
+                    else
+                    {
+                        destFile.mkdirs();
                     }
-                }
-                finally
-                {
-                    IOUtil.close( reader );
-                    IOUtil.close( r );
                 }
             }
         }
+        finally
+        {
+            closeZipFile( file );
+        }
 
         // Copy extra site resources
         for ( File siteDirectory : siteRenderingContext.getSiteDirectories() )
diff --git a/doxia-site-renderer/src/main/java/org/apache/maven/doxia/siterenderer/SiteRenderingContext.java b/doxia-site-renderer/src/main/java/org/apache/maven/doxia/siterenderer/SiteRenderingContext.java
index 8a6079d..434f971 100644
--- a/doxia-site-renderer/src/main/java/org/apache/maven/doxia/siterenderer/SiteRenderingContext.java
+++ b/doxia-site-renderer/src/main/java/org/apache/maven/doxia/siterenderer/SiteRenderingContext.java
@@ -62,8 +62,6 @@ public class SiteRenderingContext
 
     private SkinModel skinModel;
 
-    private boolean usingDefaultTemplate;
-
     private File rootDirectory;
 
     private List<File> siteDirectories = new ArrayList<File>();
@@ -282,26 +280,6 @@ public class SiteRenderingContext
         this.templateName = templateName;
     }
 
-    /**
-     * <p>Setter for the field <code>usingDefaultTemplate</code>.</p>
-     *
-     * @param usingDefaultTemplate a boolean.
-     */
-    public void setUsingDefaultTemplate( boolean usingDefaultTemplate )
-    {
-        this.usingDefaultTemplate = usingDefaultTemplate;
-    }
-
-    /**
-     * <p>isUsingDefaultTemplate.</p>
-     *
-     * @return a boolean.
-     */
-    public boolean isUsingDefaultTemplate()
-    {
-        return usingDefaultTemplate;
-    }
-
     /**
      * Add a site directory, expected to have a Doxia Site layout, ie one directory per Doxia parser module containing
      * files with parser extension. Typical values are <code>src/site</code> or <code>target/generated-site</code>.
@@ -407,7 +385,7 @@ public class SiteRenderingContext
 
     /**
      * <p>If you want to specify a specific publish date instead of the current date.</p>
-     * 
+     *
      * @return the publish date, can be {@code null}
      */
     public Date getPublishDate()
@@ -417,7 +395,7 @@ public class SiteRenderingContext
 
     /**
      * <p>Specify a specific publish date instead of the current date.</p>
-     * 
+     *
      * @param publishDate the publish date
      */
     public void setPublishDate( Date publishDate )
@@ -427,7 +405,7 @@ public class SiteRenderingContext
 
     /**
      * Directory where to save content after Velocity processing (<code>*.vm</code>), but before parsing it with Doxia.
-     * 
+     *
      * @return not null if the documents are to be saved
      * @since 1.7
      */
@@ -439,7 +417,7 @@ public class SiteRenderingContext
     /**
      * Where to (eventually) save content after Velocity processing (<code>*.vm</code>), but before parsing it with
      * Doxia?
-     * 
+     *
      * @param processedContentOutput not null if the documents are to be saved
      * @since 1.7
      */
diff --git a/doxia-site-renderer/src/main/resources/org/apache/maven/doxia/siterenderer/resources/css/maven-base.css b/doxia-site-renderer/src/main/resources/org/apache/maven/doxia/siterenderer/resources/css/maven-base.css
deleted file mode 100644
index 45dc441..0000000
--- a/doxia-site-renderer/src/main/resources/org/apache/maven/doxia/siterenderer/resources/css/maven-base.css
+++ /dev/null
@@ -1,168 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-body {
-  margin: 0px;
-  padding: 0px;
-}
-table {
-  padding:0px;
-  width: 100%;
-  margin-left: -2px;
-  margin-right: -2px;
-}
-acronym {
-  cursor: help;
-  border-bottom: 1px dotted #feb;
-}
-table.bodyTable th, table.bodyTable td {
-  padding: 2px 4px 2px 4px;
-  vertical-align: top;
-}
-div.clear {
-  clear:both;
-  visibility: hidden;
-}
-div.clear hr {
-  display: none;
-}
-#bannerLeft, #bannerRight {
-  font-size: xx-large;
-  font-weight: bold;
-}
-#bannerLeft img, #bannerRight img {
-  margin: 0px;
-}
-.xleft, #bannerLeft img {
-  float:left;
-}
-.xright, #bannerRight {
-  float:right;
-}
-#banner {
-  padding: 0px;
-}
-#breadcrumbs {
-  padding: 3px 10px 3px 10px;
-}
-#leftColumn {
- width: 170px;
- float:left;
- overflow: auto;
-}
-#bodyColumn {
-  margin-right: 1.5em;
-  margin-left: 197px;
-}
-#legend {
-  padding: 8px 0 8px 0;
-}
-#navcolumn {
-  padding: 8px 4px 0 8px;
-}
-#navcolumn h5 {
-  margin: 0;
-  padding: 0;
-  font-size: small;
-}
-#navcolumn ul {
-  margin: 0;
-  padding: 0;
-  font-size: small;
-}
-#navcolumn li {
-  list-style-type: none;
-  background-image: none;
-  background-repeat: no-repeat;
-  background-position: 0 0.4em;
-  padding-left: 16px;
-  list-style-position: outside;
-  line-height: 1.2em;
-  font-size: smaller;
-}
-#navcolumn li.expanded {
-  background-image: url(../images/expanded.gif);
-}
-#navcolumn li.collapsed {
-  background-image: url(../images/collapsed.gif);
-}
-#navcolumn li.none {
-  text-indent: -1em;
-  margin-left: 1em;
-}
-#poweredBy {
-  text-align: center;
-}
-#navcolumn img {
-  margin-top: 10px;
-  margin-bottom: 3px;
-}
-#poweredBy img {
-  display:block;
-  margin: 20px 0 20px 17px;
-}
-#search img {
-    margin: 0px;
-    display: block;
-}
-#search #q, #search #btnG {
-    border: 1px solid #999;
-    margin-bottom:10px;
-}
-#search form {
-    margin: 0px;
-}
-#lastPublished {
-  font-size: x-small;
-}
-.navSection {
-  margin-bottom: 2px;
-  padding: 8px;
-}
-.navSectionHead {
-  font-weight: bold;
-  font-size: x-small;
-}
-.section {
-  padding: 4px;
-}
-#footer {
-  padding: 3px 10px 3px 10px;
-  font-size: x-small;
-}
-#breadcrumbs {
-  font-size: x-small;
-  margin: 0pt;
-}
-.source {
-  padding: 12px;
-  margin: 1em 7px 1em 7px;
-}
-.source pre {
-  margin: 0px;
-  padding: 0px;
-}
-#navcolumn img.imageLink, .imageLink {
-  padding-left: 0px;
-  padding-bottom: 0px;
-  padding-top: 0px;
-  padding-right: 2px;
-  border: 0px;
-  margin: 0px;
-}
diff --git a/doxia-site-renderer/src/main/resources/org/apache/maven/doxia/siterenderer/resources/css/print.css b/doxia-site-renderer/src/main/resources/org/apache/maven/doxia/siterenderer/resources/css/print.css
deleted file mode 100644
index 18fcbad..0000000
--- a/doxia-site-renderer/src/main/resources/org/apache/maven/doxia/siterenderer/resources/css/print.css
+++ /dev/null
@@ -1,26 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-#banner, #footer, #leftcol, #breadcrumbs, .docs #toc, .docs .courtesylinks, #leftColumn, #navColumn {
-	display: none !important;
-}
-#bodyColumn, body.docs div.docs {
-	margin: 0 !important;
-	border: none !important
-}
diff --git a/doxia-site-renderer/src/main/resources/org/apache/maven/doxia/siterenderer/resources/default-site-macros.vm b/doxia-site-renderer/src/main/resources/org/apache/maven/doxia/siterenderer/resources/default-site-macros.vm
deleted file mode 100644
index 9e879a1..0000000
--- a/doxia-site-renderer/src/main/resources/org/apache/maven/doxia/siterenderer/resources/default-site-macros.vm
+++ /dev/null
@@ -1,494 +0,0 @@
-## Licensed to the Apache Software Foundation (ASF) under one
-## or more contributor license agreements.  See the NOTICE file
-## distributed with this work for additional information
-## regarding copyright ownership.  The ASF licenses this file
-## to you under the Apache License, Version 2.0 (the
-## "License"); you may not use this file except in compliance
-## with the License.  You may obtain a copy of the License at
-##
-##     http://www.apache.org/licenses/LICENSE-2.0
-##
-## Unless required by applicable law or agreed to in writing,
-## software distributed under the License is distributed on an
-## "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-## KIND, either express or implied.  See the License for the
-## specific language governing permissions and limitations
-## under the License.
-##
-#macro ( link $href $name $target $img $position $alt $border $width $height $title )
-#**##set ( $linkTitle = ' title="' + $name + '"' )
-#**##if( $target )
-#*  *##set ( $linkTarget = ' target="' + $target + '"' )
-#**##else
-#*  *##set ( $linkTarget = "" )
-#**##end
-#**##if ( $decoration.isLink( $href ) )
-#*  *##set ( $linkClass = ' class="externalLink"' )
-#**##else
-#*  *##set ( $linkClass = "" )
-#**##end
-#**##if ( $img )
-#*  *##if ( $position == "left" )
-#*    *#<a href="$href"$linkClass$linkTarget$linkTitle>#image($img $alt $border $width $height $title)$name</a>##
-#*  *##else
-#*    *#<a href="$href"$linkClass$linkTarget$linkTitle>$name #image($img $alt $border $width $height $title)</a>##
-#*  *##end
-#**##else
-#*  *#<a href="$href"$linkClass$linkTarget$linkTitle>$name</a>##
-#**##end
-#end
-##
-#macro ( image $img $alt $border $width $height $title )
-#**##if( $img )
-#*  *##if ( !$decoration.isLink( $img ) )
-#*    *##set ( $imgSrc = $PathTool.calculateLink( $img, $relativePath ) )
-#*    *##set ( $imgSrc = $imgSrc.replaceAll( '\\', '/' ) )
-#*    *##set ( $imgSrc = ' src="' + $imgSrc + '"' )
-#*  *##else
-#*    *##set ( $imgSrc = ' src="' + $img + '"' )
-#*  *##end
-#*  *##if( $alt )
-#*    *##set ( $imgAlt = ' alt="' + $alt + '"' )
-#*  *##else
-#*    *##set ( $imgAlt = ' alt=""' )
-#*  *##end
-#*  *##if( $border )
-#*    *##set ( $imgBorder = ' border="' + $border + '"' )
-#*  *##else
-#*    *##set ( $imgBorder = "" )
-#*  *##end
-#*  *##if( $width )
-#*    *##set ( $imgWidth = ' width="' + $width + '"' )
-#*  *##else
-#*    *##set ( $imgWidth = "" )
-#*  *##end
-#*  *##if( $height )
-#*    *##set ( $imgHeight = ' height="' + $height + '"' )
-#*  *##else
-#*    *##set ( $imgHeight = "" )
-#*  *##end
-#*  *##if( $title )
-#*    *##set ( $imgTitle = ' title="' + $title + '"' )
-#*  *##else
-#*    *##set ( $imgTitle = "" )
-#*  *##end
-#*  *#<img class="imageLink"$imgSrc$imgAlt$imgBorder$imgWidth$imgHeight$imgTitle/>##
-#**##end
-#end
-##
-#macro ( banner $banner $id )
-#**##if ( $banner )
-#*  *##if( $banner.href )
-#*    *##set ( $hrf = $banner.href )
-#*    *##if ( !$decoration.isLink( $hrf ) )
-#*      *##set ( $hrf = $PathTool.calculateLink( $hrf, $relativePath ) )
-#*      *##set ( $hrf = $hrf.replaceAll( '\\', '/' ) )
-#*      *##if ( ( $hrf == '' ) )
-#*        *##set ( $hrf = './' )
-#*      *##end
-#*    *##end
-#*    *#<a href="$hrf" id="$id"#if( $banner.alt ) title="$banner.alt"#end>##
-#*  *##else
-#*    *#<div id="$id">##
-#*  *##end
-##
-#*  *##if( $banner.src )
-#*    *##set ( $src = $banner.src )
-#*      *##if ( !$decoration.isLink( $src ) )
-#*        *##set ( $src = $PathTool.calculateLink( $src, $relativePath ) )
-#*        *##set ( $src = $src.replaceAll( '\\', '/' ) )
-#*      *##end
-#*      *##if ( $banner.alt )
-#*        *##set ( $alt = ' alt="' + $banner.alt + '"' )
-#*      *##elseif ( $banner.name )
-#*        *##set ( $alt = ' alt="' + $banner.name + '"' )
-#*      *##else
-#*        *##set ( $alt = ' alt=""' )
-#*      *##end
-#*      *##if( $banner.border )
-#*        *##set ( $imgBorder = ' border="' + $banner.border + '"' )
-#*      *##else
-#*        *##set ( $imgBorder = "" )
-#*      *##end
-#*      *##if( $banner.width )
-#*        *##set ( $imgWidth = ' width="' + $banner.width + '"' )
-#*      *##else
-#*        *##set ( $imgWidth = "" )
-#*      *##end
-#*      *##if( $banner.height )
-#*        *##set ( $imgHeight = ' height="' + $banner.height + '"' )
-#*      *##else
-#*        *##set ( $imgHeight = "" )
-#*      *##end
-#*      *##if( $banner.title )
-#*        *##set ( $bannerTitle=' title="' + $banner.title + '"' )
-#*      *##else
-#*      *##set ( $bannerTitle="" )
-#*    *##end
-#*    *#<img src="$src" $alt$bannerTitle$imgBorder$imgWidth$imgHeight/>##
-#*  *##else
-#*    *#$banner.name
-#*  *##end
-##
-#*  *##if( $banner.href )
-#*    *#</a>##
-#*  *##else
-#*    *#</div>
-#*  *##end
-#**##end
-#end
-##
-#macro ( links $links )
-#**##set ( $counter = 0 )
-#**##foreach( $item in $links )
-#*  *##set ( $counter = $counter + 1 )
-#*  *##set ( $currentItemHref = $PathTool.calculateLink( $item.href, $relativePath ) )
-#*  *##set ( $currentItemHref = $currentItemHref.replaceAll( '\\', '/' ) )
-#*  *##link( $currentItemHref $item.name $item.target $item.img $item.position $item.alt $item.border $item.width $item.height $item.title )
-#*  *##if ( $links.size() > $counter )
-#*  *# |
-#*  *##end
-#**##end
-#end
-##
-#macro ( breadcrumbs $breadcrumbs )
-#**##foreach( $item in $breadcrumbs )
-#*  *##set ( $currentItemHref = $PathTool.calculateLink( $item.href, $relativePath ) )
-#*  *##set ( $currentItemHref = $currentItemHref.replaceAll( '\\', '/' ) )
-#*  *##if ( ( $currentItemHref == '' ) )
-#*    *##set ( $currentItemHref = './' )
-#*  *##end
-##
-#*  *##link( $currentItemHref $item.name $item.target $item.img $item.position $item.alt $item.border $item.width $item.height $item.title )
-#**# &gt;
-#**##end
-#**#$shortTitle
-#**##if( $decoration.edit && $docRenderingContext.editable )
-#*  *# <a href="$docRenderingContext.getDoxiaSourcePath( $decoration.edit )">[edit]</a>
-#**##end
-#end
-##
-#macro ( displayTree $display $item )
-#**##if ( $item && $item.items && $item.items.size() > 0 )
-#*  *##foreach( $subitem in $item.items )
-#*    *##set ( $subitemHref = $PathTool.calculateLink( $subitem.href, $relativePath ) )
-#*    *##set ( $subitemHref = $subitemHref.replaceAll( '\\', '/' ) )
-##
-#*    *##if ( $alignedFileName == $subitemHref )
-#*      *##set ( $display = true )
-#*    *##end
-##
-#*    *##displayTree( $display $subitem )
-#*  *##end
-#**##end
-#end
-##
-#macro ( menuItem $item $indent )
-#**##set ( $collapseClass = "none" )
-#**##set ( $currentItemHref = $PathTool.calculateLink( $item.href, $relativePath ) )
-#**##set ( $currentItemHref = $currentItemHref.replaceAll( '\\', '/' ) )
-##
-#**##if ( $item && $item.items && $item.items.size() > 0 )
-#*  *##if ( $item.collapse == false )
-#*    *##set ( $collapseClass = "expanded" )
-#*  *##else
-#*    *### By default collapsed
-#*    *##set ( $collapseClass = "collapsed" )
-#*  *##end
-##
-#*  *##set ( $display = false )
-#*  *##displayTree( $display $item )
-##
-#*  *##if ( $alignedFileName == $currentItemHref || $display )
-#*    *##set ( $collapseClass = "expanded" )
-#*  *##end
-#**##end
-$indent     <li class="$collapseClass">##
-#**##if ( $item.img )
-#*  *##if ( $item.position == "left" )
-#*    *##if ( $alignedFileName == $currentItemHref )
-#*      *#<strong>#image($item.img $item.alt $item.border $item.width $item.height $item.title) $item.name</strong>
-#*    *##else
-#*      *##link($currentItemHref $item.name $item.target $item.img $item.position $item.alt $item.border $item.width $item.height $item.title)
-#*    *##end
-#*  *##else
-#*    *##if ( $alignedFileName == $currentItemHref )
-#*      *#<strong>$item.name #image($item.img $item.alt $item.border $item.width $item.height $item.title)</strong>
-#*    *##else
-#*      *##link($currentItemHref $item.name $item.target $item.img $item.position $item.alt $item.border $item.width $item.height $item.title)
-#*    *##end
-#*  *##end
-#**##else
-#*  *##if ( $alignedFileName == $currentItemHref )
-#*    *#<strong>$item.name</strong>##
-#*  *##else
-#*    *##link( $currentItemHref $item.name $item.target $item.img $item.position $item.alt $item.border $item.width $item.height $item.title )
-#*  *##end
-#**##end
-#**##if ( $item && $item.items && $item.items.size() > 0 )
-#*  *##if ( $collapseClass == "expanded" )
-
-$indent      <ul>
-#*    *##foreach( $subitem in $item.items )
-#*      *##menuItem( $subitem "$indent  " )
-#*    *##end
-$indent      </ul>##
-#*  *##end
-#**##end
-#**#</li>
-#end
-##
-#macro ( mainMenu $menus )
-#**##foreach( $menu in $menus )
-#*  *##if ( $menu.name )
-#*    *##if ( $menu.img )
-#*      *##if( $menu.position )
-#*        *##set ( $position = $menu.position )
-#*      *##else
-#*        *##set ( $position = "left" )
-#*      *##end
-##
-#*      *##if ( !$decoration.isLink( $menu.img ) )
-#*        *##set ( $src = $PathTool.calculateLink( $menu.img, $relativePath ) )
-#*        *##set ( $src = $src.replaceAll( '\\', '/' ) )
-#*        *##set ( $src = ' src="' + $src + '"' )
-#*      *##else
-#*        *##set ( $src = ' src="' + $menu.img + '"' )
-#*      *##end
-##
-#*      *##if( $menu.alt )
-#*        *##set ( $alt = ' alt="' + $menu.alt + '"' )
-#*      *##else
-#*        *##set ( $alt = ' alt="' + $menu.name + '"' )
-#*      *##end
-##
-#*      *##if( $menu.border )
-#*        *##set ( $border = ' border="' + $menu.border + '"' )
-#*      *##else
-#*        *##set ( $border = ' border="0"' )
-#*      *##end
-##
-#*      *##if( $menu.width )
-#*        *##set ( $width = ' width="' + $menu.width + '"' )
-#*      *##else
-#*        *##set ( $width = "" )
-#*      *##end
-#*      *##if( $menu.height )
-#*        *##set ( $height = ' height="' + $menu.height + '"' )
-#*      *##else
-#*        *##set ( $height = "" )
-#*      *##end
-#*      *##if( $menu.title )
-#*        *##set ( $title = ' title="' + $menu.title + '"' )
-#*      *##else
-#*        *##set ( $title = "" )
-#*      *##end
-##
-#*      *##set ( $img = '<img class="imageLink"' + $src + $alt + $border + $width + $height + $title + "/>" )
-##
-#*      *##if ( $position == "left" )
-        <h5>$img $menu.name</h5>
-#*      *##else
-        <h5>$menu.name $img</h5>
-#*      *##end
-#*    *##else
-       <h5>$menu.name</h5>
-#*    *##end
-#*  *##end
-#*  *##if ( $menu.items && $menu.items.size() > 0 )
-    <ul>
-#*    *##foreach( $item in $menu.items )
-#*      *##menuItem( $item '' )
-#*    *##end
-    </ul>
-#*  *##end
-#**##end
-#end
-##
-#macro ( copyright )
-#**##if ( $project )
-#*  *##if ( ${project.organization} && ${project.organization.name} )
-#*    *##set ( $period = "" )
-#*  *##else
-#*    *##set ( $period = "." )
-#*  *##end
-##
-#*  *##set ( $currentYear = ${currentDate.year} + 1900 )
-##
-#*  *##if ( ${project.inceptionYear} && ( ${project.inceptionYear} != ${currentYear.toString()} ) )
-      ${project.inceptionYear}&#x2013;${currentYear}${period}##
-#*  *##else
-      ${currentYear}${period}##
-#*  *##end
-##
-#*  *##if ( ${project.organization} )
-#*    *##if ( ${project.organization.name} && ${project.organization.url} )
-#*      *#<a href="$project.organization.url">${project.organization.name}</a>.
-#*    *##elseif ( ${project.organization.name} )
-#*      *#${project.organization.name}.
-#*    *##end
-#*  *##end
-#**##end
-#end
-##
-#macro ( publishDate $position $decorationPublishDate $version )
-#**##if ( $publishDate )
-#*  *##set ( $dateValue = $dateFormat.format( $publishDate ) )
-#**##elseif ( $decoration.custom.getChild( 'publishDate' ) )
-#*  *##set ( $dateValue = $decoration.custom.getChild( 'publishDate' ).getValue() )
-#**##else
-#*  *##set ( $dateValue = $dateFormat.format( $currentDate ) )
-#**##end
-##
-#**##set ( $datePosition = $decorationPublishDate.position )
-#**##set ( $versionPosition = $version.position )
-##
-#**##set ( $breadcrumbs = $decoration.body.breadcrumbs )
-#**##set ( $links = $decoration.body.links )
-##
-#**##if ( $datePosition.equalsIgnoreCase( "right" ) && $links && $links.size() > 0 )
-#*  *##set ( $prefix = " |" )
-#**##else
-#*  *##set ( $prefix = "" )
-#**##end
-##
-#**##if ( $datePosition.equalsIgnoreCase( $position ) )
-#*  *##if ( ( $datePosition.equalsIgnoreCase( "right" ) ) || ( $datePosition.equalsIgnoreCase( "bottom" ) ) )
-        $prefix <span id="publishDate">$text.get( "template.lastpublished" ): $dateValue</span>
-#*    *##if ( $versionPosition.equalsIgnoreCase( $position ) )
-         | <span id="projectVersion">$text.get( "template.version" ): ${project.version}</span>
-#*    *##end
-#*  *##elseif ( ( $datePosition.equalsIgnoreCase( "navigation-bottom" ) ) || ( $datePosition.equalsIgnoreCase( "navigation-top" ) ) )
-      <div id="lastPublished">
-        <span id="publishDate">$text.get( "template.lastpublished" ): $dateValue</span>
-#*      *##if ( $versionPosition.equalsIgnoreCase( $position ) )
-           | <span id="projectVersion">$text.get( "template.version" ): ${project.version}</span>
-#*      *##end
-      </div>
-#*    *##elseif ( $datePosition.equalsIgnoreCase( "left" ) )
-      <div class="xleft">
-        <span id="publishDate">$text.get( "template.lastpublished" ): $dateValue</span>
-#*      *##if ( $versionPosition.equalsIgnoreCase( $position ) )
-           | <span id="projectVersion">$text.get( "template.version" ): ${project.version}</span>
-#*      *##end
-#*      *##if ( $breadcrumbs && $breadcrumbs.size() > 0 )
-          | #breadcrumbs( $breadcrumbs )
-#*      *##end
-      </div>
-#*  *##end
-#**##elseif ( $versionPosition.equalsIgnoreCase( $position ) )
-#*  *##if ( ( $versionPosition.equalsIgnoreCase( "right" ) ) || ( $versionPosition.equalsIgnoreCase( "bottom" ) ) )
-      $prefix <span id="projectVersion">$text.get( "template.version" ): ${project.version}</span>
-#*  *##elseif ( ( $versionPosition.equalsIgnoreCase( "navigation-bottom" ) ) || ( $versionPosition.equalsIgnoreCase( "navigation-top" ) ) )
-      <div id="lastPublished">
-        <span id="projectVersion">$text.get( "template.version" ): ${project.version}</span>
-      </div>
-#*  *##elseif ( $versionPosition.equalsIgnoreCase( "left" ) )
-      <div class="xleft">
-        <span id="projectVersion">$text.get( "template.version" ): ${project.version}</span>
-#*      *##if ( $breadcrumbs && $breadcrumbs.size() > 0 )
-          | #breadcrumbs( $breadcrumbs )
-#*      *##end
-      </div>
-#*  *##end
-#**##elseif ( $position.equalsIgnoreCase( "left" ) )
-#*  *##if ( $breadcrumbs && $breadcrumbs.size() > 0 )
-      <div class="xleft">
-#*      *##breadcrumbs( $breadcrumbs )
-      </div>
-#*  *##end
-#**##end
-#end
-##
-#macro ( poweredByLogo $poweredBy )
-#**##if( $poweredBy )
-#*  *##foreach ($item in $poweredBy)
-#*    *##if( $item.href )
-#*      *##set ( $href = $PathTool.calculateLink( $item.href, $relativePath ) )
-#*      *##set ( $href = $href.replaceAll( '\\', '/' ) )
-#*    *##else
-#*      *##set ( $href="https://maven.apache.org/" )
-#*    *##end
-##
-#*    *##if( $item.name )
-#*      *##set ( $name = $item.name )
-#*    *##else
-#*      *##set ( $name = $text.get( "template.builtby" )  )
-#*      *##set ( $name = "${name} Maven"  )
-#*    *##end
-##
-#*    *##if( $item.img )
-#*      *##set ( $img = $item.img )
-#*    *##else
-#*      *##set ( $img = "images/logos/maven-feather.png" )
-#*    *##end
-##
-#*    *##if ( !$decoration.isLink( $img ) )
-#*      *##set ( $img = $PathTool.calculateLink( $img, $relativePath ) )
-#*      *##set ( $img = $img.replaceAll( '\\', '/' ) )
-#*    *##end
-##
-#*    *##if( $item.alt )
-#*      *##set ( $alt = ' alt="' + $item.alt + '"' )
-#*    *##else
-#*      *##set ( $alt = ' alt="' + $name + '"' )
-#*    *##end
-##
-#*    *##if( $item.border )
-#*      *##set ( $border = ' border="' + $item.border + '"' )
-#*    *##else
-#*      *##set ( $border = "" )
-#*    *##end
-##
-#*    *##if( $item.width )
-#*      *##set ( $width = ' width="' + $item.width + '"' )
-#*    *##else
-#*      *##set ( $width = "" )
-#*    *##end
-#*    *##if( $item.height )
-#*      *##set ( $height = ' height="' + $item.height + '"' )
-#*    *##else
-#*      *##set ( $height = "" )
-#*    *##end
-#*    *##if( $item.title )
-#*      *##set ( $title = ' title="' + $item.title + '"' )
-#*    *##else
-#*      *##set ( $title = "" )
-#*    *##end
-##
-      <a href="$href" title="$name" class="poweredBy">
-        <img class="poweredBy" $alt src="$img" $border $width $height $title />
-      </a>
-#*  *##end
-#*  *##if( $poweredBy.isEmpty() )
-      <a href="http://maven.apache.org/" title="$text.get( "template.builtby" ) Maven" class="poweredBy">
-        <img class="poweredBy" alt="$text.get( "template.builtby" ) Maven" src="$relativePath/images/logos/maven-feather.png" />
-      </a>
-#*  *##end
-#**##else
-    <a href="http://maven.apache.org/" title="$text.get( "template.builtby" ) Maven" class="poweredBy">
-      <img class="poweredBy" alt="$text.get( "template.builtby" ) Maven" src="$relativePath/images/logos/maven-feather.png" />
-    </a>
-#**##end
-#end
-##
-#macro ( googleAnalytics $accountId )
-#**##if( $accountId && $accountId != "" )
-    <!-- Google Analytics -->
-    <script>
-      (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
-       (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
-            m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
-      })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
-      ga('create', '$accountId', 'auto');
-      ga('send', 'pageview');
-      ga('set', 'anonymizeIp', true);
-      ga('set', 'forceSSL', true);
-    </script>
-#**##end
-#end
-##
-#macro( generatedBy )
-Apache Maven Doxia Site Renderer#if( $doxiaSiteRendererVersion ) $doxiaSiteRendererVersion#end##
-#end
-##
diff --git a/doxia-site-renderer/src/main/resources/org/apache/maven/doxia/siterenderer/resources/default-site.vm b/doxia-site-renderer/src/main/resources/org/apache/maven/doxia/siterenderer/resources/default-site.vm
deleted file mode 100644
index 2b5e29b..0000000
--- a/doxia-site-renderer/src/main/resources/org/apache/maven/doxia/siterenderer/resources/default-site.vm
+++ /dev/null
@@ -1,102 +0,0 @@
-<!DOCTYPE html>
-## 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.
-##
-#parse( "default-site-macros.vm" )
-<!--
- | Generated by #generatedBy()
-#if( $docRenderingContext && ( $docRenderingContext.generator || $docRenderingContext.doxiaSource ) ) from##
-#**##if( $docRenderingContext.generator ) $docRenderingContext.generator#end##
-#**##if( $docRenderingContext.doxiaSource ) $docRenderingContext.doxiaSourcePath#end##
-#end
- at $dateFormat.format( $currentDate )
-
- | Rendered using Apache Maven Default Skin
--->
-##
-<html xmlns="http://www.w3.org/1999/xhtml"#if ( $locale ) xml:lang="$locale.language" lang="$locale.language"#end>
-  <head>
-    <meta charset="${outputEncoding}" />
-    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
-## put meta together
-    <meta name="generator" content="#generatedBy()" />
-#foreach( $author in $authors )
-    <meta name="author" content="$author" />
-#end
-#if ( $documentDate )
-    <meta name="date" content="$documentDate" />
-#end
-#if ( $title )
-    <title>$title</title>
-#end
-    <link rel="stylesheet" href="$relativePath/css/maven-base.css" />
-    <link rel="stylesheet" href="$relativePath/css/maven-theme.css" />
-    <link rel="stylesheet" href="$relativePath/css/site.css" />
-    <link rel="stylesheet" href="$relativePath/css/print.css" media="print" />
-#**##if( $decoration.body.head )
-#*  *#$render.eval( $decoration.body.head )
-#**##end
-#**##if( $headContent )$headContent#end
-#**##googleAnalytics( $decoration.googleAnalyticsAccountId )
-  </head>
-  <body class="composite">
-    <div id="banner">
-#*  *##banner( $decoration.bannerLeft "bannerLeft" )
-#*  *##banner( $decoration.bannerRight "bannerRight" )
-      <div class="clear">
-        <hr/>
-      </div>
-    </div>
-    <div id="breadcrumbs">
-#*  *##publishDate( "left" $decoration.publishDate $decoration.version )
-      <div class="xright">#links( $decoration.body.links )
-#*  *##publishDate( "right" $decoration.publishDate $decoration.version )
-      </div>
-      <div class="clear">
-        <hr/>
-      </div>
-    </div>
-    <div id="leftColumn">
-      <div id="navcolumn">
-#*   *##publishDate( "navigation-top" $decoration.publishDate $decoration.version )
-#*   *##mainMenu( $decoration.body.menus )
-#*   *##poweredByLogo( $decoration.poweredBy )
-#*   *##publishDate( "navigation-bottom" $decoration.publishDate $decoration.version )
-      </div>
-    </div>
-    <div id="bodyColumn">
-      <div id="contentBox">
-#*   *#$bodyContent
-      </div>
-    </div>
-    <div class="clear">
-      <hr/>
-    </div>
-    <div id="footer">
-      <div class="xright">
-#*  *##if( $decoration.body.footer )
-        $render.eval( $decoration.body.footer )
-#*  *##else
-        Copyright &#169;#copyright().#publishDate( "bottom" $decoration.publishDate $decoration.version )
-#*  *##end
-      </div>
-      <div class="clear">
-        <hr/>
-      </div>
-    </div>
-  </body>
-</html>
diff --git a/doxia-site-renderer/src/main/resources/org/apache/maven/doxia/siterenderer/resources/images/collapsed.gif b/doxia-site-renderer/src/main/resources/org/apache/maven/doxia/siterenderer/resources/images/collapsed.gif
deleted file mode 100644
index 6e71084..0000000
Binary files a/doxia-site-renderer/src/main/resources/org/apache/maven/doxia/siterenderer/resources/images/collapsed.gif and /dev/null differ
diff --git a/doxia-site-renderer/src/main/resources/org/apache/maven/doxia/siterenderer/resources/images/expanded.gif b/doxia-site-renderer/src/main/resources/org/apache/maven/doxia/siterenderer/resources/images/expanded.gif
deleted file mode 100644
index 0fef3d8..0000000
Binary files a/doxia-site-renderer/src/main/resources/org/apache/maven/doxia/siterenderer/resources/images/expanded.gif and /dev/null differ
diff --git a/doxia-site-renderer/src/main/resources/org/apache/maven/doxia/siterenderer/resources/images/logos/build-by-maven-black.png b/doxia-site-renderer/src/main/resources/org/apache/maven/doxia/siterenderer/resources/images/logos/build-by-maven-black.png
deleted file mode 100644
index 919fd0f..0000000
Binary files a/doxia-site-renderer/src/main/resources/org/apache/maven/doxia/siterenderer/resources/images/logos/build-by-maven-black.png and /dev/null differ
diff --git a/doxia-site-renderer/src/main/resources/org/apache/maven/doxia/siterenderer/resources/images/logos/build-by-maven-white.png b/doxia-site-renderer/src/main/resources/org/apache/maven/doxia/siterenderer/resources/images/logos/build-by-maven-white.png
deleted file mode 100644
index 7d44c9c..0000000
Binary files a/doxia-site-renderer/src/main/resources/org/apache/maven/doxia/siterenderer/resources/images/logos/build-by-maven-white.png and /dev/null differ
diff --git a/doxia-site-renderer/src/main/resources/org/apache/maven/doxia/siterenderer/resources/images/logos/maven-feather.png b/doxia-site-renderer/src/main/resources/org/apache/maven/doxia/siterenderer/resources/images/logos/maven-feather.png
deleted file mode 100644
index b5ada83..0000000
Binary files a/doxia-site-renderer/src/main/resources/org/apache/maven/doxia/siterenderer/resources/images/logos/maven-feather.png and /dev/null differ
diff --git a/doxia-site-renderer/src/main/resources/org/apache/maven/doxia/siterenderer/resources/resources.txt b/doxia-site-renderer/src/main/resources/org/apache/maven/doxia/siterenderer/resources/resources.txt
deleted file mode 100644
index 0384226..0000000
--- a/doxia-site-renderer/src/main/resources/org/apache/maven/doxia/siterenderer/resources/resources.txt
+++ /dev/null
@@ -1,24 +0,0 @@
-# Licensed to the Apache Software Foundation (ASF) under one
-# or more contributor license agreements.  See the NOTICE file
-# distributed with this work for additional information
-# regarding copyright ownership.  The ASF licenses this file
-# to you under the Apache License, Version 2.0 (the
-# "License"); you may not use this file except in compliance
-# with the License.  You may obtain a copy of the License at
-#
-#   http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing,
-# software distributed under the License is distributed on an
-# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-# KIND, either express or implied.  See the License for the
-# specific language governing permissions and limitations
-# under the License.
-
-images/expanded.gif
-images/collapsed.gif
-images/logos/maven-feather.png
-images/logos/build-by-maven-white.png
-images/logos/build-by-maven-black.png
-css/maven-base.css
-css/print.css
diff --git a/doxia-site-renderer/src/test/java/org/apache/maven/doxia/siterenderer/AptVerifier.java b/doxia-site-renderer/src/test/java/org/apache/maven/doxia/siterenderer/AptVerifier.java
index 97c843a..1fa6bc7 100644
--- a/doxia-site-renderer/src/test/java/org/apache/maven/doxia/siterenderer/AptVerifier.java
+++ b/doxia-site-renderer/src/test/java/org/apache/maven/doxia/siterenderer/AptVerifier.java
@@ -22,11 +22,11 @@ package org.apache.maven.doxia.siterenderer;
 import com.gargoylesoftware.htmlunit.html.HtmlAnchor;
 import com.gargoylesoftware.htmlunit.html.HtmlBold;
 import com.gargoylesoftware.htmlunit.html.HtmlCode;
-import com.gargoylesoftware.htmlunit.html.HtmlDivision;
 import com.gargoylesoftware.htmlunit.html.HtmlElement;
 import com.gargoylesoftware.htmlunit.html.HtmlHeading2;
 import com.gargoylesoftware.htmlunit.html.HtmlHeading3;
 import com.gargoylesoftware.htmlunit.html.HtmlItalic;
+import com.gargoylesoftware.htmlunit.html.HtmlMain;
 import com.gargoylesoftware.htmlunit.html.HtmlPage;
 import com.gargoylesoftware.htmlunit.html.HtmlParagraph;
 import com.gargoylesoftware.htmlunit.html.HtmlSection;
@@ -53,10 +53,10 @@ public class AptVerifier
 
         HtmlElement element = page.getHtmlElementById( "contentBox" );
         assertNotNull( element );
-        HtmlDivision division = (HtmlDivision) element;
-        assertNotNull( division );
+        HtmlMain main = (HtmlMain) element;
+        assertNotNull( main );
 
-        Iterator<HtmlElement> elementIterator = division.getHtmlElementDescendants().iterator();
+        Iterator<HtmlElement> elementIterator = main.getHtmlElementDescendants().iterator();
 
         // ----------------------------------------------------------------------
         //
diff --git a/doxia-site-renderer/src/test/java/org/apache/maven/doxia/siterenderer/AttributesVerifier.java b/doxia-site-renderer/src/test/java/org/apache/maven/doxia/siterenderer/AttributesVerifier.java
index d326c18..d368c35 100644
--- a/doxia-site-renderer/src/test/java/org/apache/maven/doxia/siterenderer/AttributesVerifier.java
+++ b/doxia-site-renderer/src/test/java/org/apache/maven/doxia/siterenderer/AttributesVerifier.java
@@ -27,6 +27,7 @@ import com.gargoylesoftware.htmlunit.html.HtmlHeading2;
 import com.gargoylesoftware.htmlunit.html.HtmlHeading3;
 import com.gargoylesoftware.htmlunit.html.HtmlImage;
 import com.gargoylesoftware.htmlunit.html.HtmlItalic;
+import com.gargoylesoftware.htmlunit.html.HtmlMain;
 import com.gargoylesoftware.htmlunit.html.HtmlPage;
 import com.gargoylesoftware.htmlunit.html.HtmlParagraph;
 import com.gargoylesoftware.htmlunit.html.HtmlPreformattedText;
@@ -65,10 +66,10 @@ public class AttributesVerifier
 
         HtmlElement element = page.getHtmlElementById( "contentBox" );
         assertNotNull( element );
-        HtmlDivision division = (HtmlDivision) element;
-        assertNotNull( division );
+        HtmlMain main = (HtmlMain) element;
+        assertNotNull( main );
 
-        Iterator<HtmlElement> elementIterator = division.getHtmlElementDescendants().iterator();
+        Iterator<HtmlElement> elementIterator = main.getHtmlElementDescendants().iterator();
 
         // ----------------------------------------------------------------------
         //
diff --git a/doxia-site-renderer/src/test/java/org/apache/maven/doxia/siterenderer/DefaultSiteRendererTest.java b/doxia-site-renderer/src/test/java/org/apache/maven/doxia/siterenderer/DefaultSiteRendererTest.java
index f2ada6b..c7f83fd 100644
--- a/doxia-site-renderer/src/test/java/org/apache/maven/doxia/siterenderer/DefaultSiteRendererTest.java
+++ b/doxia-site-renderer/src/test/java/org/apache/maven/doxia/siterenderer/DefaultSiteRendererTest.java
@@ -29,12 +29,12 @@ import static org.mockito.Matchers.eq;
 import static org.mockito.Matchers.isNull;
 import static org.mockito.Mockito.*;
 
+import java.io.ByteArrayInputStream;
 import java.io.File;
 import java.io.FileInputStream;
 import java.io.FileOutputStream;
 import java.io.IOException;
 import java.io.InputStream;
-import java.io.OutputStream;
 import java.io.Reader;
 import java.io.StringWriter;
 import java.io.Writer;
@@ -102,6 +102,8 @@ public class DefaultSiteRendererTest
 
     private File skinJar = new File( getBasedir(), "target/test-classes/skin.jar" );
 
+    private File minimalSkinJar = new File( getBasedir(), "target/test-classes/minimal-skin.jar" );
+
     /**
      * @throws java.lang.Exception if something goes wrong.
      */
@@ -111,10 +113,6 @@ public class DefaultSiteRendererTest
     {
         renderer = (Renderer) container.lookup( Renderer.class );
 
-        // copy the default-site.vm and default-site-macros.vm
-        copyVm( "default-site.vm", "\n\n\n\r\n\r\n\r\n" );
-        copyVm( "default-site-macros.vm", "" );
-
         InputStream skinIS = getClass().getResourceAsStream( "velocity-toolmanager.vm" );
         JarOutputStream jarOS = new JarOutputStream( new FileOutputStream( skinJar ) );
         try
@@ -129,26 +127,22 @@ public class DefaultSiteRendererTest
             IOUtil.close( jarOS );
         }
 
-        oldLocale = Locale.getDefault();
-        Locale.setDefault( Locale.ENGLISH );
-    }
-
-    private void copyVm( String filename, String append )
-        throws IOException
-    {
-        InputStream is = getClass().getResourceAsStream( "/org/apache/maven/doxia/siterenderer/resources/" + filename );
-        assertNotNull( is );
-        OutputStream os = new FileOutputStream( new File( getBasedir(), "target/test-classes/" + filename ) );
+        skinIS = new ByteArrayInputStream( "<main id=\"contentBox\">$bodyContent</main>".getBytes( StandardCharsets.UTF_8 ) );
+        jarOS = new JarOutputStream( new FileOutputStream( minimalSkinJar ) );
         try
         {
-            IOUtil.copy( is, os );
-            os.write( append.getBytes( "ISO-8859-1" ) );
+            jarOS.putNextEntry( new ZipEntry( "META-INF/maven/site.vm" ) );
+            IOUtil.copy( skinIS, jarOS );
+            jarOS.closeEntry();
         }
         finally
         {
-            IOUtil.close( is );
-            IOUtil.close( os );
+            IOUtil.close( skinIS );
+            IOUtil.close( jarOS );
         }
+
+        oldLocale = Locale.getDefault();
+        Locale.setDefault( Locale.ENGLISH );
     }
 
     /**
@@ -262,7 +256,6 @@ public class DefaultSiteRendererTest
         // ----------------------------------------------------------------------
         // Verify specific pages
         // ----------------------------------------------------------------------
-        verifyHeadPage();
         verifyCdcPage();
         verifyNestedItemsPage();
         verifyMultipleBlock();
@@ -299,39 +292,6 @@ public class DefaultSiteRendererTest
         verify( docRenderer ).renderDocument( isNull( Writer.class ), eq( renderer ), eq( context ) );
     }
 
-    @Test
-    public void testVelocityToolManager()
-        throws Exception
-    {
-        StringWriter writer = new StringWriter();
-
-        SiteRenderingContext siteRenderingContext = new SiteRenderingContext();
-        siteRenderingContext.setDecoration( new DecorationModel() );
-
-        Map<String, Object> attributes = new HashMap<String, Object>();
-
-        /*
-         * We need to add doxiaSiteRendererVersion manually because version property from pom.properties
-         * is not available at test time in some cases.
-         */
-        attributes.put( "doxiaSiteRendererVersion", "1.7-bogus" );
-
-        siteRenderingContext.setTemplateProperties( attributes );
-
-        siteRenderingContext.setTemplateName( "org/apache/maven/doxia/siterenderer/velocity-toolmanager.vm" );
-        RenderingContext context = new RenderingContext( new File( "" ), "document.html", "generator" );
-        SiteRendererSink sink = new SiteRendererSink( context );
-        renderer.mergeDocumentIntoSite( writer, sink, siteRenderingContext );
-
-        String renderResult = writer.toString();
-        String expectedResult =
-            IOUtils.toString(
-                getClass().getResourceAsStream( "velocity-toolmanager.expected.txt" ),
-                StandardCharsets.UTF_8 );
-        expectedResult = StringUtils.unifyLineSeparators( expectedResult );
-        assertEquals( expectedResult, renderResult );
-    }
-
     @Test
     public void testVelocityToolManagerForSkin()
         throws Exception
@@ -375,28 +335,23 @@ public class DefaultSiteRendererTest
     }
 
     private SiteRenderingContext getSiteRenderingContext( DecorationModel decoration, String siteDir, boolean validate )
+        throws RendererException, IOException
     {
-        SiteRenderingContext ctxt = new SiteRenderingContext();
-        ctxt.setTemplateName( "default-site.vm" );
-        ctxt.setTemplateClassLoader( getClass().getClassLoader() );
-        ctxt.setUsingDefaultTemplate( true );
-        final Map<String, String> templateProp = new HashMap<String, String>();
-        templateProp.put( "outputEncoding", "UTF-8" );
-        ctxt.setTemplateProperties( templateProp );
-        ctxt.setDecoration( decoration );
-        ctxt.addSiteDirectory( getTestFile( siteDir ) );
-        ctxt.setValidate( validate );
-
-        return ctxt;
-    }
+        File skinFile = minimalSkinJar;
 
-    /**
-     * @throws Exception if something goes wrong.
-     */
-    public void verifyHeadPage()
-        throws Exception
-    {
-        new HeadVerifier().verify( "target/output/head.html" );
+        final Map<String, String> attributes = new HashMap<String, String>();
+        attributes.put( "outputEncoding", "UTF-8" );
+
+        Artifact skin = new DefaultArtifact( "org.group", "artifact",
+        VersionRange.createFromVersion( "1.1" ), null, "jar", "", null );
+        skin.setFile( skinFile );
+        SiteRenderingContext siteRenderingContext =
+            renderer.createContextForSkin( skin, attributes,decoration, "defaultWindowTitle",
+                                                   Locale.ENGLISH );
+        siteRenderingContext.addSiteDirectory( getTestFile( siteDir ) );
+        siteRenderingContext.setValidate( validate );
+
+        return siteRenderingContext;
     }
 
     /**
diff --git a/doxia-site-renderer/src/test/java/org/apache/maven/doxia/siterenderer/EntitiesVerifier.java b/doxia-site-renderer/src/test/java/org/apache/maven/doxia/siterenderer/EntitiesVerifier.java
index a335910..a6b378c 100644
--- a/doxia-site-renderer/src/test/java/org/apache/maven/doxia/siterenderer/EntitiesVerifier.java
+++ b/doxia-site-renderer/src/test/java/org/apache/maven/doxia/siterenderer/EntitiesVerifier.java
@@ -25,7 +25,7 @@ import com.gargoylesoftware.htmlunit.html.HtmlElement;
 import com.gargoylesoftware.htmlunit.html.HtmlHeading2;
 import com.gargoylesoftware.htmlunit.html.HtmlHeading3;
 import com.gargoylesoftware.htmlunit.html.HtmlHeading4;
-import com.gargoylesoftware.htmlunit.html.HtmlMeta;
+import com.gargoylesoftware.htmlunit.html.HtmlMain;
 import com.gargoylesoftware.htmlunit.html.HtmlPage;
 import com.gargoylesoftware.htmlunit.html.HtmlParagraph;
 import com.gargoylesoftware.htmlunit.html.HtmlPreformattedText;
@@ -36,7 +36,6 @@ import java.util.Iterator;
 import static org.junit.jupiter.api.Assertions.assertEquals;
 import static org.junit.jupiter.api.Assertions.assertFalse;
 import static org.junit.jupiter.api.Assertions.assertNotNull;
-import static org.junit.jupiter.api.Assertions.assertTrue;
 
 /**
  * Verify the <code>site/xdoc/entityTest.xml</code>
@@ -53,51 +52,12 @@ public class EntitiesVerifier
         HtmlPage page = htmlPage( file );
         assertNotNull( page );
 
-        HtmlMeta author = (HtmlMeta) page.getElementsByName( "author" ).get( 0 );
-        assertNotNull( author );
-        assertTrue( author.toString().indexOf( "Ligature \u00C6" ) > 0 );
-        assertEquals( "Ligature \u00C6", author.getContentAttribute() );
-
-        author = (HtmlMeta) page.getElementsByName( "author" ).get( 1 );
-        assertNotNull( author );
-        assertTrue( author.toString().indexOf( "Ampersand &amp;" ) > 0 );
-        assertEquals( "Ampersand &", author.getContentAttribute() );
-
-        author = (HtmlMeta) page.getElementsByName( "author" ).get( 2 );
-        assertNotNull( author );
-        assertTrue( author.toString().indexOf( "Less than &lt;" ) > 0 );
-        assertEquals( "Less than <", author.getContentAttribute() );
-
-        author = (HtmlMeta) page.getElementsByName( "author" ).get( 3 );
-        assertNotNull( author );
-        assertTrue( author.toString().indexOf( "Greater than >" ) > 0 );
-        assertEquals( "Greater than >", author.getContentAttribute() );
-
-        author = (HtmlMeta) page.getElementsByName( "author" ).get( 4 );
-        assertNotNull( author );
-        assertEquals( "Apostrophe '", author.getContentAttribute() );
-
-        author = (HtmlMeta) page.getElementsByName( "author" ).get( 5 );
-        assertNotNull( author );
-        assertTrue( author.toString().indexOf( "Quote &quot;" ) > 0 );
-        assertEquals( "Quote \"", author.getContentAttribute() );
-
-        author = (HtmlMeta) page.getElementsByName( "author" ).get( 6 );
-        assertNotNull( author );
-        assertTrue( author.toString().indexOf( "test@email.com" ) > 0 );
-        assertEquals( "test@email.com", author.getContentAttribute() );
-
-        author = (HtmlMeta) page.getElementsByName( "author" ).get( 7 );
-        assertNotNull( author );
-        assertTrue( author.toString().indexOf( "test\u00A9email.com" ) > 0 );
-        assertEquals( "test\u00A9email.com", author.getContentAttribute() );
-
         HtmlElement element = page.getHtmlElementById( "contentBox" );
         assertNotNull( element );
-        HtmlDivision division = (HtmlDivision) element;
-        assertNotNull( division );
+        HtmlMain main = (HtmlMain) element;
+        assertNotNull( main );
 
-        Iterator<HtmlElement> elementIterator = division.getHtmlElementDescendants().iterator();
+        Iterator<HtmlElement> elementIterator = main.getHtmlElementDescendants().iterator();
 
         // ----------------------------------------------------------------------
         //
diff --git a/doxia-site-renderer/src/test/java/org/apache/maven/doxia/siterenderer/FaqVerifier.java b/doxia-site-renderer/src/test/java/org/apache/maven/doxia/siterenderer/FaqVerifier.java
index 58e3807..47b2ffe 100644
--- a/doxia-site-renderer/src/test/java/org/apache/maven/doxia/siterenderer/FaqVerifier.java
+++ b/doxia-site-renderer/src/test/java/org/apache/maven/doxia/siterenderer/FaqVerifier.java
@@ -27,6 +27,7 @@ import com.gargoylesoftware.htmlunit.html.HtmlDivision;
 import com.gargoylesoftware.htmlunit.html.HtmlElement;
 import com.gargoylesoftware.htmlunit.html.HtmlHeading2;
 import com.gargoylesoftware.htmlunit.html.HtmlListItem;
+import com.gargoylesoftware.htmlunit.html.HtmlMain;
 import com.gargoylesoftware.htmlunit.html.HtmlOrderedList;
 import com.gargoylesoftware.htmlunit.html.HtmlPage;
 import com.gargoylesoftware.htmlunit.html.HtmlParagraph;
@@ -55,10 +56,10 @@ public class FaqVerifier
 
         HtmlElement element = page.getHtmlElementById( "contentBox" );
         assertNotNull( element );
-        HtmlDivision division = (HtmlDivision) element;
-        assertNotNull( division );
+        HtmlMain main = (HtmlMain) element;
+        assertNotNull( main );
 
-        Iterator<HtmlElement> elementIterator = division.getHtmlElementDescendants().iterator();
+        Iterator<HtmlElement> elementIterator = main.getHtmlElementDescendants().iterator();
 
         // ----------------------------------------------------------------------
         //
diff --git a/doxia-site-renderer/src/test/java/org/apache/maven/doxia/siterenderer/HeadVerifier.java b/doxia-site-renderer/src/test/java/org/apache/maven/doxia/siterenderer/HeadVerifier.java
deleted file mode 100644
index 54677c5..0000000
--- a/doxia-site-renderer/src/test/java/org/apache/maven/doxia/siterenderer/HeadVerifier.java
+++ /dev/null
@@ -1,105 +0,0 @@
-package org.apache.maven.doxia.siterenderer;
-
-/*
- * 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.
- */
-
-import com.gargoylesoftware.htmlunit.html.HtmlBase;
-import com.gargoylesoftware.htmlunit.html.HtmlElement;
-import com.gargoylesoftware.htmlunit.html.HtmlLink;
-import com.gargoylesoftware.htmlunit.html.HtmlMeta;
-import com.gargoylesoftware.htmlunit.html.HtmlPage;
-import com.gargoylesoftware.htmlunit.html.HtmlTitle;
-
-import java.util.Iterator;
-import java.util.List;
-
-import static org.junit.jupiter.api.Assertions.assertEquals;
-import static org.junit.jupiter.api.Assertions.assertNotNull;
-
-/**
- * Verify correct rendering of <code>site/xdoc/head.xml</code>.
- *
- * @author ltheussl
- */
-public class HeadVerifier
-    extends AbstractVerifier
-{
-
-    /** {@inheritDoc} */
-    public void verify( String file )
-            throws Exception
-    {
-        HtmlPage page = htmlPage( file );
-        assertNotNull( page );
-
-        HtmlElement html = page.getDocumentElement();
-        assertNotNull( html );
-
-        assertEquals( "en", html.getAttribute( "lang" ) );
-
-        List<HtmlElement> heads = html.getElementsByTagName( "head" );
-        assertEquals( 1, heads.size() );
-        HtmlElement head = heads.get( 0 );
-        assertNotNull( head );
-
-        Iterator<HtmlElement> elementIterator = head.getHtmlElementDescendants().iterator();
-
-        // ----------------------------------------------------------------------
-        //
-        // ----------------------------------------------------------------------
-
-        HtmlMeta meta = (HtmlMeta) elementIterator.next();
-        assertEquals( "UTF-8", meta.getAttribute( "charset" ) );
-
-        // Skip viewport
-        elementIterator.next();
-
-        meta = (HtmlMeta) elementIterator.next();
-        assertEquals( "generator", meta.getAttribute( "name" ), "Unexpected meta entry found generated resource " + file );
-        String generator = meta.getAttribute("content");
-        assertEquals("Apache Maven Doxia Site Renderer", generator, "Unexpected value found for generator meta entry in generated resource " + file );
-
-        meta = (HtmlMeta) elementIterator.next();
-        assertEquals( "author", meta.getAttribute( "name" ) );
-        assertEquals( "John Doe", meta.getAttribute( "content" ).trim() );
-
-        HtmlTitle title = (HtmlTitle) elementIterator.next();
-        assertNotNull( title );
-
-        HtmlLink link = (HtmlLink) elementIterator.next();
-        assertNotNull( link );
-        link = (HtmlLink) elementIterator.next();
-        assertNotNull( link );
-        link = (HtmlLink) elementIterator.next();
-        assertNotNull( link );
-        link = (HtmlLink) elementIterator.next();
-        assertNotNull( link );
-
-        meta = (HtmlMeta) elementIterator.next();
-        assertEquals( "description", meta.getAttribute( "name" ) );
-        assertEquals( "Free Web tutorials", meta.getAttribute( "content" ) );
-
-        meta = (HtmlMeta) elementIterator.next();
-        assertEquals( "keywords", meta.getAttribute( "name" ) );
-        assertEquals( "HTML,CSS,XML,JavaScript", meta.getAttribute( "content" ) );
-
-        HtmlBase base = (HtmlBase) elementIterator.next();
-        assertEquals( "http://maven.apache.org/", base.getAttribute( "href" ) );
-    }
-}
diff --git a/doxia-site-renderer/src/test/java/org/apache/maven/doxia/siterenderer/JavascriptVerifier.java b/doxia-site-renderer/src/test/java/org/apache/maven/doxia/siterenderer/JavascriptVerifier.java
index 44c5976..68abe49 100644
--- a/doxia-site-renderer/src/test/java/org/apache/maven/doxia/siterenderer/JavascriptVerifier.java
+++ b/doxia-site-renderer/src/test/java/org/apache/maven/doxia/siterenderer/JavascriptVerifier.java
@@ -22,9 +22,9 @@ package org.apache.maven.doxia.siterenderer;
 import com.gargoylesoftware.htmlunit.CollectingAlertHandler;
 import com.gargoylesoftware.htmlunit.WebClient;
 import com.gargoylesoftware.htmlunit.html.HtmlAnchor;
-import com.gargoylesoftware.htmlunit.html.HtmlDivision;
 import com.gargoylesoftware.htmlunit.html.HtmlElement;
 import com.gargoylesoftware.htmlunit.html.HtmlHeading2;
+import com.gargoylesoftware.htmlunit.html.HtmlMain;
 import com.gargoylesoftware.htmlunit.html.HtmlPage;
 import com.gargoylesoftware.htmlunit.html.HtmlParagraph;
 import com.gargoylesoftware.htmlunit.html.HtmlScript;
@@ -67,39 +67,39 @@ public class JavascriptVerifier
         // HtmlUnit
         try ( WebClient webClient = new WebClient() ) {
             webClient.getOptions().setCssEnabled( false );
-    
+
             final List<String> collectedAlerts = new ArrayList<String>( 4 );
             webClient.setAlertHandler( new CollectingAlertHandler( collectedAlerts ) );
-    
+
             HtmlPage page = (HtmlPage) webClient.getPage( jsTest.toURI().toURL() );
             assertNotNull( page );
-    
+
             HtmlElement element = page.getHtmlElementById( "contentBox" );
             assertNotNull( element );
-            HtmlDivision division = (HtmlDivision) element;
-            assertNotNull( division );
-    
-            Iterator<HtmlElement> elementIterator = division.getHtmlElementDescendants().iterator();
-    
+            HtmlMain main = (HtmlMain) element;
+            assertNotNull( main );
+
+            Iterator<HtmlElement> elementIterator = main.getHtmlElementDescendants().iterator();
+
             // ----------------------------------------------------------------------
             //
             // ----------------------------------------------------------------------
-    
+
             HtmlSection section = (HtmlSection) elementIterator.next();
             assertNotNull( section );
-    
+
             HtmlHeading2 h2 = (HtmlHeading2) elementIterator.next();
             assertNotNull( h2 );
             assertEquals( "Test", h2.asText().trim() );
-    
+
             HtmlAnchor a = (HtmlAnchor) elementIterator.next();
             assertNotNull( a );
             assertEquals( "Test", a.getAttribute( "name" ) );
-    
+
             HtmlParagraph p = (HtmlParagraph) elementIterator.next();
             assertNotNull( p );
             assertEquals( "You should see a JavaScript alert...", p.asText().trim() );
-    
+
             HtmlScript script = (HtmlScript) elementIterator.next();
             assertNotNull( script  );
             assertEquals( "text/javascript", script.getAttribute( "type" ) );
diff --git a/doxia-site-renderer/src/test/java/org/apache/maven/doxia/siterenderer/MiscVerifier.java b/doxia-site-renderer/src/test/java/org/apache/maven/doxia/siterenderer/MiscVerifier.java
index 1afee17..62c4fba 100644
--- a/doxia-site-renderer/src/test/java/org/apache/maven/doxia/siterenderer/MiscVerifier.java
+++ b/doxia-site-renderer/src/test/java/org/apache/maven/doxia/siterenderer/MiscVerifier.java
@@ -19,8 +19,8 @@ package org.apache.maven.doxia.siterenderer;
  * under the License.
  */
 
-import com.gargoylesoftware.htmlunit.html.HtmlDivision;
 import com.gargoylesoftware.htmlunit.html.HtmlElement;
+import com.gargoylesoftware.htmlunit.html.HtmlMain;
 import com.gargoylesoftware.htmlunit.html.HtmlPage;
 import com.gargoylesoftware.htmlunit.html.HtmlParameter;
 import com.gargoylesoftware.htmlunit.html.HtmlUnknownElement;
@@ -47,10 +47,10 @@ public class MiscVerifier
 
         HtmlElement element = page.getHtmlElementById( "contentBox" );
         assertNotNull( element );
-        HtmlDivision division = (HtmlDivision) element;
-        assertNotNull( division );
+        HtmlMain main = (HtmlMain) element;
+        assertNotNull( main );
 
-        Iterator<HtmlElement> elementIterator = division.getHtmlElementDescendants().iterator();
+        Iterator<HtmlElement> elementIterator = main.getHtmlElementDescendants().iterator();
 
         // ----------------------------------------------------------------------
         //
diff --git a/doxia-site-renderer/src/test/java/org/apache/maven/doxia/siterenderer/MultipleBlockVerifier.java b/doxia-site-renderer/src/test/java/org/apache/maven/doxia/siterenderer/MultipleBlockVerifier.java
index 6857382..8c60100 100644
--- a/doxia-site-renderer/src/test/java/org/apache/maven/doxia/siterenderer/MultipleBlockVerifier.java
+++ b/doxia-site-renderer/src/test/java/org/apache/maven/doxia/siterenderer/MultipleBlockVerifier.java
@@ -20,10 +20,10 @@ package org.apache.maven.doxia.siterenderer;
  */
 
 import com.gargoylesoftware.htmlunit.html.HtmlAnchor;
-import com.gargoylesoftware.htmlunit.html.HtmlDivision;
 import com.gargoylesoftware.htmlunit.html.HtmlElement;
 import com.gargoylesoftware.htmlunit.html.HtmlHeading2;
 import com.gargoylesoftware.htmlunit.html.HtmlListItem;
+import com.gargoylesoftware.htmlunit.html.HtmlMain;
 import com.gargoylesoftware.htmlunit.html.HtmlPage;
 import com.gargoylesoftware.htmlunit.html.HtmlParagraph;
 import com.gargoylesoftware.htmlunit.html.HtmlSection;
@@ -51,10 +51,10 @@ public class MultipleBlockVerifier
 
         HtmlElement element = page.getHtmlElementById( "contentBox" );
         assertNotNull( element );
-        HtmlDivision division = (HtmlDivision) element;
-        assertNotNull( division );
+        HtmlMain main = (HtmlMain) element;
+        assertNotNull( main );
 
-        Iterator<HtmlElement> elementIterator = division.getHtmlElementDescendants().iterator();
+        Iterator<HtmlElement> elementIterator = main.getHtmlElementDescendants().iterator();
 
         // ----------------------------------------------------------------------
         // Verify link
diff --git a/doxia-site-renderer/src/test/java/org/apache/maven/doxia/siterenderer/NestedItemsVerifier.java b/doxia-site-renderer/src/test/java/org/apache/maven/doxia/siterenderer/NestedItemsVerifier.java
index 6e5cca7..79ec098 100644
--- a/doxia-site-renderer/src/test/java/org/apache/maven/doxia/siterenderer/NestedItemsVerifier.java
+++ b/doxia-site-renderer/src/test/java/org/apache/maven/doxia/siterenderer/NestedItemsVerifier.java
@@ -25,11 +25,11 @@ import com.gargoylesoftware.htmlunit.html.HtmlAnchor;
 import com.gargoylesoftware.htmlunit.html.HtmlDefinitionDescription;
 import com.gargoylesoftware.htmlunit.html.HtmlDefinitionList;
 import com.gargoylesoftware.htmlunit.html.HtmlDefinitionTerm;
-import com.gargoylesoftware.htmlunit.html.HtmlDivision;
 import com.gargoylesoftware.htmlunit.html.HtmlElement;
 import com.gargoylesoftware.htmlunit.html.HtmlHeading2;
 import com.gargoylesoftware.htmlunit.html.HtmlHeading4;
 import com.gargoylesoftware.htmlunit.html.HtmlListItem;
+import com.gargoylesoftware.htmlunit.html.HtmlMain;
 import com.gargoylesoftware.htmlunit.html.HtmlOrderedList;
 import com.gargoylesoftware.htmlunit.html.HtmlPage;
 import com.gargoylesoftware.htmlunit.html.HtmlParagraph;
@@ -56,10 +56,10 @@ public class NestedItemsVerifier
 
         HtmlElement element = page.getHtmlElementById( "contentBox" );
         assertNotNull( element );
-        HtmlDivision division = (HtmlDivision) element;
-        assertNotNull( division );
+        HtmlMain main = (HtmlMain) element;
+        assertNotNull( main );
 
-        Iterator<HtmlElement> elementIterator = division.getHtmlElementDescendants().iterator();
+        Iterator<HtmlElement> elementIterator = main.getHtmlElementDescendants().iterator();
 
         // ----------------------------------------------------------------------
         // Verify link