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

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

commit f394a9d3d724074b186a7d470593d34bfb067253
Author: Michael Osipov <micha...@apache.org>
AuthorDate: Fri Mar 8 16:22:52 2024 +0100

    [DOXIASITETOOLS-332] Create anchors for indexable entries automatically
    
    This closes #139
---
 .../doxia/siterenderer/DefaultSiteRenderer.java    |  1 +
 .../maven/doxia/siterenderer/AptVerifier.java      |  9 ++++
 .../doxia/siterenderer/AttributesVerifier.java     | 21 +++++++++
 .../maven/doxia/siterenderer/EntitiesVerifier.java | 54 +++++++++++++++-------
 .../doxia/siterenderer/JavascriptVerifier.java     |  4 ++
 .../doxia/siterenderer/MultipleBlockVerifier.java  |  4 ++
 .../doxia/siterenderer/NestedItemsVerifier.java    | 36 +++++++++------
 .../resources/site-validate/xdoc/entityTest.xml    | 10 ++--
 .../src/test/resources/site/xdoc/macro.xml         |  6 +--
 .../src/test/resources/site/xdoc/nestedItems.xml   |  6 +--
 10 files changed, 110 insertions(+), 41 deletions(-)

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 80afa69..c37562e 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
@@ -322,6 +322,7 @@ public class DefaultSiteRenderer implements Renderer {
             Parser parser = doxia.getParser(docRenderingContext.getParserId());
             // DOXIASITETOOLS-146 don't render comments from source markup
             parser.setEmitComments(false);
+            parser.setEmitAnchorsForIndexableEntries(true);
 
             // TODO: DOXIA-111: the filter used here must be checked generally.
             if (docRenderingContext.getAttribute("velocity") != null) {
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 e9e1762..87584ab 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
@@ -59,6 +59,9 @@ public class AptVerifier extends AbstractVerifier {
 
         HtmlSection section = (HtmlSection) elementIterator.next();
 
+        HtmlAnchor anchor = (HtmlAnchor) elementIterator.next();
+        assertNotNull(anchor);
+        assertEquals("Links", anchor.getAttribute("id"));
         HtmlHeading1 h1 = (HtmlHeading1) elementIterator.next();
         assertNotNull(h1);
         assertEquals("Links", h1.asNormalizedText().trim());
@@ -101,6 +104,9 @@ public class AptVerifier extends AbstractVerifier {
         section = (HtmlSection) elementIterator.next();
         assertNotNull(section);
 
+        anchor = (HtmlAnchor) elementIterator.next();
+        assertNotNull(anchor);
+        assertEquals("Section_formatting.3A_italic_bold_mono", 
anchor.getAttribute("id"));
         h1 = (HtmlHeading1) elementIterator.next();
         assertNotNull(h1);
         // Note: htmlunit strips the white space, actual result is ok
@@ -122,6 +128,9 @@ public class AptVerifier extends AbstractVerifier {
         section = (HtmlSection) elementIterator.next();
         assertNotNull(section);
 
+        anchor = (HtmlAnchor) elementIterator.next();
+        assertNotNull(anchor);
+        assertEquals("SubSection_formatting.3A_italic_bold_mono", 
anchor.getAttribute("id"));
         HtmlHeading2 h2 = (HtmlHeading2) elementIterator.next();
         assertNotNull(h2);
         // Note: htmlunit strips the white space, actual result is ok
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 4916a2b..1672cd6 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
@@ -71,6 +71,9 @@ public class AttributesVerifier extends AbstractVerifier {
 
         HtmlSection section = (HtmlSection) elementIterator.next();
 
+        HtmlAnchor anchor = (HtmlAnchor) elementIterator.next();
+        assertNotNull(anchor);
+        assertEquals("section", anchor.getAttribute("id"));
         HtmlHeading1 h1 = (HtmlHeading1) elementIterator.next();
         assertNotNull(h1);
         assertEquals("section", h1.asNormalizedText().trim());
@@ -186,22 +189,34 @@ public class AttributesVerifier extends AbstractVerifier {
         assertEquals("pretty", pre.getAttribute("id"));
 
         section = (HtmlSection) elementIterator.next();
+        anchor = (HtmlAnchor) elementIterator.next();
+        assertNotNull(anchor);
+        assertEquals("Section_without_id", anchor.getAttribute("id"));
         h1 = (HtmlHeading1) elementIterator.next();
         assertEquals("Section without id", h1.asNormalizedText().trim());
 
         section = (HtmlSection) elementIterator.next();
+        anchor = (HtmlAnchor) elementIterator.next();
+        assertNotNull(anchor);
+        assertEquals("Subsection_without_id", anchor.getAttribute("id"));
         HtmlHeading2 h2 = (HtmlHeading2) elementIterator.next();
         assertEquals("Subsection without id", h2.asNormalizedText().trim());
 
         a = (HtmlAnchor) elementIterator.next();
         assertEquals("section-id", a.getAttribute("id"));
         section = (HtmlSection) elementIterator.next();
+        anchor = (HtmlAnchor) elementIterator.next();
+        assertNotNull(anchor);
+        assertEquals("Section_with_id", anchor.getAttribute("id"));
         h1 = (HtmlHeading1) elementIterator.next();
         assertEquals("Section with id", h1.asNormalizedText().trim());
 
         a = (HtmlAnchor) elementIterator.next();
         assertEquals("subsection-id", a.getAttribute("id"));
         section = (HtmlSection) elementIterator.next();
+        anchor = (HtmlAnchor) elementIterator.next();
+        assertNotNull(anchor);
+        assertEquals("Subsection_with_id", anchor.getAttribute("id"));
         h2 = (HtmlHeading2) elementIterator.next();
         assertEquals("Subsection with id", h2.asNormalizedText().trim());
 
@@ -210,6 +225,9 @@ public class AttributesVerifier extends AbstractVerifier {
         section = (HtmlSection) elementIterator.next();
         assertEquals("bar", section.getAttribute("class"));
         assertEquals("foo", section.getAttribute("id"));
+        anchor = (HtmlAnchor) elementIterator.next();
+        assertNotNull(anchor);
+        assertEquals("Section_name", anchor.getAttribute("id"));
         h1 = (HtmlHeading1) elementIterator.next();
         assertEquals("Section name", h1.asNormalizedText().trim());
         assertEquals("", h1.getAttribute("class"));
@@ -219,6 +237,9 @@ public class AttributesVerifier extends AbstractVerifier {
         section = (HtmlSection) elementIterator.next();
         assertEquals("subbar", section.getAttribute("class"));
         assertEquals("subfoo", section.getAttribute("id"));
+        anchor = (HtmlAnchor) elementIterator.next();
+        assertNotNull(anchor);
+        assertEquals("Subsection_name", anchor.getAttribute("id"));
         h2 = (HtmlHeading2) elementIterator.next();
         assertEquals("Subsection name", h2.asNormalizedText().trim());
         assertEquals("", h2.getAttribute("class"));
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 4d0d295..1528113 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
@@ -20,6 +20,7 @@ package org.apache.maven.doxia.siterenderer;
 
 import java.util.Iterator;
 
+import org.htmlunit.html.HtmlAnchor;
 import org.htmlunit.html.HtmlDivision;
 import org.htmlunit.html.HtmlElement;
 import org.htmlunit.html.HtmlHeading1;
@@ -59,6 +60,11 @@ public class EntitiesVerifier extends AbstractVerifier {
 
         HtmlSection section = (HtmlSection) elementIterator.next();
 
+        HtmlAnchor anchor = (HtmlAnchor) elementIterator.next();
+        assertNotNull(anchor);
+        assertEquals(
+                
"section_name_with_entities.3A_.27.26.27_.27.CE.91.27_.27.C2.A0.27_.27.3F.3F.27",
+                anchor.getAttribute("id"));
         HtmlHeading1 h1 = (HtmlHeading1) elementIterator.next();
         assertNotNull(h1);
         assertEquals(h1.asNormalizedText().trim(), "section name with 
entities: '&' '\u0391' ' ' '\uD835\uDFED'");
@@ -66,20 +72,24 @@ public class EntitiesVerifier extends AbstractVerifier {
         section = (HtmlSection) elementIterator.next();
         assertNotNull(section);
 
+        anchor = (HtmlAnchor) elementIterator.next();
+        assertNotNull(anchor);
+        assertEquals("Entities", anchor.getAttribute("id"));
+        HtmlHeading2 h2 = (HtmlHeading2) elementIterator.next();
+        assertNotNull(h2);
+        assertEquals("Entities", h2.asNormalizedText().trim());
+
         section = (HtmlSection) elementIterator.next();
         assertNotNull(section);
 
+        anchor = (HtmlAnchor) elementIterator.next();
+        assertNotNull(anchor);
+        assertEquals(
+                
"Generic_Entities.3A_.27.26.27_.27.3C.27_.27.3E.27_.27.22.27_.27.27.27", 
anchor.getAttribute("id"));
         HtmlHeading3 h3 = (HtmlHeading3) elementIterator.next();
         assertNotNull(h3);
-        assertEquals("Entities", h3.asNormalizedText().trim());
-
-        section = (HtmlSection) elementIterator.next();
-        assertNotNull(section);
-
-        HtmlHeading2 h2 = (HtmlHeading2) elementIterator.next();
-        assertNotNull(h2);
         assertEquals(
-                "Generic Entities: '&' '<' '>' '\"' '''", 
h2.asNormalizedText().trim());
+                "Generic Entities: '&' '<' '>' '\"' '''", 
h3.asNormalizedText().trim());
 
         HtmlParagraph p = (HtmlParagraph) elementIterator.next();
         assertNotNull(p);
@@ -88,11 +98,15 @@ public class EntitiesVerifier extends AbstractVerifier {
         section = (HtmlSection) elementIterator.next();
         assertNotNull(section);
 
-        h2 = (HtmlHeading2) elementIterator.next();
-        assertNotNull(h2);
+        anchor = (HtmlAnchor) elementIterator.next();
+        assertNotNull(anchor);
+        assertEquals(
+                
"Local_Entities.3A_.27.CE.91.27_.27.CE.92.27_.27.CE.93.27_.27.3F.3F.27", 
anchor.getAttribute("id"));
+        h3 = (HtmlHeading3) elementIterator.next();
+        assertNotNull(h3);
         assertEquals(
                 "Local Entities: '\u0391' '\u0392' '\u0393' '\uD835\uDFED'",
-                h2.asNormalizedText().trim());
+                h3.asNormalizedText().trim());
 
         p = (HtmlParagraph) elementIterator.next();
         assertNotNull(p);
@@ -103,10 +117,13 @@ public class EntitiesVerifier extends AbstractVerifier {
         section = (HtmlSection) elementIterator.next();
         assertNotNull(section);
 
-        h2 = (HtmlHeading2) elementIterator.next();
-        assertNotNull(h2);
+        anchor = (HtmlAnchor) elementIterator.next();
+        assertNotNull(anchor);
+        assertEquals("DTD_Entities.3A_.27.27_.27.C2.A1.27_.27.C2.A2.27", 
anchor.getAttribute("id"));
+        h3 = (HtmlHeading3) elementIterator.next();
+        assertNotNull(h3);
         assertEquals(
-                "DTD Entities: ' ' '\u00A1' '\u00A2'", 
h2.asNormalizedText().trim());
+                "DTD Entities: ' ' '\u00A1' '\u00A2'", 
h3.asNormalizedText().trim());
 
         p = (HtmlParagraph) elementIterator.next();
         assertNotNull(p);
@@ -115,9 +132,12 @@ public class EntitiesVerifier extends AbstractVerifier {
         section = (HtmlSection) elementIterator.next();
         assertNotNull(section);
 
-        h3 = (HtmlHeading3) elementIterator.next();
-        assertNotNull(h3);
-        assertEquals("CDATA", h3.asNormalizedText().trim());
+        anchor = (HtmlAnchor) elementIterator.next();
+        assertNotNull(anchor);
+        assertEquals("CDATA", anchor.getAttribute("id"));
+        h2 = (HtmlHeading2) elementIterator.next();
+        assertNotNull(h2);
+        assertEquals("CDATA", h2.asNormalizedText().trim());
 
         HtmlDivision div = (HtmlDivision) elementIterator.next();
         assertNotNull(div);
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 3acf2a0..56d1f35 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
@@ -26,6 +26,7 @@ import java.util.List;
 
 import org.htmlunit.CollectingAlertHandler;
 import org.htmlunit.WebClient;
+import org.htmlunit.html.HtmlAnchor;
 import org.htmlunit.html.HtmlElement;
 import org.htmlunit.html.HtmlHeading1;
 import org.htmlunit.html.HtmlMain;
@@ -82,6 +83,9 @@ public class JavascriptVerifier extends AbstractVerifier {
             HtmlSection section = (HtmlSection) elementIterator.next();
             assertNotNull(section);
 
+            HtmlAnchor anchor = (HtmlAnchor) elementIterator.next();
+            assertNotNull(anchor);
+            assertEquals("Test", anchor.getAttribute("id"));
             HtmlHeading1 h1 = (HtmlHeading1) elementIterator.next();
             assertNotNull(h1);
             assertEquals("Test", h1.asNormalizedText().trim());
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 1fc7823..49e5a5d 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,6 +20,7 @@ package org.apache.maven.doxia.siterenderer;
 
 import java.util.Iterator;
 
+import org.htmlunit.html.HtmlAnchor;
 import org.htmlunit.html.HtmlElement;
 import org.htmlunit.html.HtmlHeading1;
 import org.htmlunit.html.HtmlListItem;
@@ -57,6 +58,9 @@ public class MultipleBlockVerifier extends AbstractVerifier {
         HtmlSection section = (HtmlSection) elementIterator.next();
         assertNotNull(section);
 
+        HtmlAnchor anchor = (HtmlAnchor) elementIterator.next();
+        assertNotNull(anchor);
+        assertEquals("section_name", anchor.getAttribute("id"));
         HtmlHeading1 h1 = (HtmlHeading1) elementIterator.next();
         assertNotNull(h1);
         assertEquals("section name", h1.asNormalizedText().trim());
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 a5566e3..5fa80d9 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
@@ -20,12 +20,13 @@ package org.apache.maven.doxia.siterenderer;
 
 import java.util.Iterator;
 
+import org.htmlunit.html.HtmlAnchor;
 import org.htmlunit.html.HtmlDefinitionDescription;
 import org.htmlunit.html.HtmlDefinitionList;
 import org.htmlunit.html.HtmlDefinitionTerm;
 import org.htmlunit.html.HtmlElement;
 import org.htmlunit.html.HtmlHeading1;
-import org.htmlunit.html.HtmlHeading3;
+import org.htmlunit.html.HtmlHeading2;
 import org.htmlunit.html.HtmlListItem;
 import org.htmlunit.html.HtmlMain;
 import org.htmlunit.html.HtmlOrderedList;
@@ -62,6 +63,9 @@ public class NestedItemsVerifier extends AbstractVerifier {
         HtmlSection section = (HtmlSection) elementIterator.next();
         assertNotNull(section);
 
+        HtmlAnchor anchor = (HtmlAnchor) elementIterator.next();
+        assertNotNull(anchor);
+        assertEquals("List_Section", anchor.getAttribute("id"));
         HtmlHeading1 h1 = (HtmlHeading1) elementIterator.next();
         assertNotNull(h1);
         assertEquals("List Section", h1.asNormalizedText().trim());
@@ -73,12 +77,12 @@ public class NestedItemsVerifier extends AbstractVerifier {
         section = (HtmlSection) elementIterator.next();
         assertNotNull(section);
 
-        section = (HtmlSection) elementIterator.next();
-        assertNotNull(section);
-
-        HtmlHeading3 h3 = (HtmlHeading3) elementIterator.next();
-        assertNotNull(h3);
-        assertEquals("Unordered lists", h3.asNormalizedText().trim());
+        anchor = (HtmlAnchor) elementIterator.next();
+        assertNotNull(anchor);
+        assertEquals("Unordered_lists", anchor.getAttribute("id"));
+        HtmlHeading2 h2 = (HtmlHeading2) elementIterator.next();
+        assertNotNull(h2);
+        assertEquals("Unordered lists", h2.asNormalizedText().trim());
 
         HtmlParagraph p = (HtmlParagraph) elementIterator.next();
         assertNotNull(p);
@@ -164,9 +168,12 @@ public class NestedItemsVerifier extends AbstractVerifier {
         section = (HtmlSection) elementIterator.next();
         assertNotNull(section);
 
-        h3 = (HtmlHeading3) elementIterator.next();
-        assertNotNull(h3);
-        assertEquals("Ordered lists", h3.asNormalizedText().trim());
+        anchor = (HtmlAnchor) elementIterator.next();
+        assertNotNull(anchor);
+        assertEquals("Ordered_lists", anchor.getAttribute("id"));
+        h2 = (HtmlHeading2) elementIterator.next();
+        assertNotNull(h2);
+        assertEquals("Ordered lists", h2.asNormalizedText().trim());
 
         p = (HtmlParagraph) elementIterator.next();
         assertNotNull(p);
@@ -248,9 +255,12 @@ public class NestedItemsVerifier extends AbstractVerifier {
         section = (HtmlSection) elementIterator.next();
         assertNotNull(section);
 
-        h3 = (HtmlHeading3) elementIterator.next();
-        assertNotNull(h3);
-        assertEquals("Definition lists", h3.asNormalizedText().trim());
+        anchor = (HtmlAnchor) elementIterator.next();
+        assertNotNull(anchor);
+        assertEquals("Definition_lists", anchor.getAttribute("id"));
+        h2 = (HtmlHeading2) elementIterator.next();
+        assertNotNull(h2);
+        assertEquals("Definition lists", h2.asNormalizedText().trim());
 
         p = (HtmlParagraph) elementIterator.next();
         assertNotNull(p);
diff --git 
a/doxia-site-renderer/src/test/resources/site-validate/xdoc/entityTest.xml 
b/doxia-site-renderer/src/test/resources/site-validate/xdoc/entityTest.xml
index 1b453ce..d1d8fa2 100644
--- a/doxia-site-renderer/src/test/resources/site-validate/xdoc/entityTest.xml
+++ b/doxia-site-renderer/src/test/resources/site-validate/xdoc/entityTest.xml
@@ -52,17 +52,17 @@
 
     <section name="section name with entities: '&amp;' '&Alpha;' '&nbsp;' 
'&tritPos;'">
 
-      <h3>Entities</h3>
-      <h2>Generic Entities: '&amp;' '&lt;' '&gt;' '&quot;' '&apos;'</h2>
+      <h2>Entities</h2>
+      <h3>Generic Entities: '&amp;' '&lt;' '&gt;' '&quot;' '&apos;'</h3>
       <p>'&amp;' '&lt;' '&gt;' '&quot;' '&apos;'</p>
 
-      <h2>Local Entities: '&Alpha;' '&Beta;' '&Gamma;' '&tritPos;'</h2>
+      <h3>Local Entities: '&Alpha;' '&Beta;' '&Gamma;' '&tritPos;'</h3>
       <p>'&Alpha;' '&Beta;' '&Gamma;' '&tritPos;&#x1d7ed;' '&flo;&#x159;' 
'&myCustomEntity;'</p>
 
-      <h2>DTD Entities: '&nbsp;' '&iexcl;' '&cent;'</h2>
+      <h3>DTD Entities: '&nbsp;' '&iexcl;' '&cent;'</h3>
       <p>'&nbsp;' '&iexcl;' '&cent;'</p>
 
-      <h3>CDATA</h3>
+      <h2>CDATA</h2>
       <source><![CDATA[<project xmlns:ant="jelly:ant">]]></source>
       <p><![CDATA['&nbsp;' '&iexcl;']]></p>
 
diff --git a/doxia-site-renderer/src/test/resources/site/xdoc/macro.xml 
b/doxia-site-renderer/src/test/resources/site/xdoc/macro.xml
index 8266116..ea04d04 100644
--- a/doxia-site-renderer/src/test/resources/site/xdoc/macro.xml
+++ b/doxia-site-renderer/src/test/resources/site/xdoc/macro.xml
@@ -50,7 +50,7 @@
     <section name="TITLE 1">
       <subsection name="SUB TITLE 1.1"><p>bla bla...</p></subsection>
       <subsection name="SUB TITLE 1.2"><p>bla bla...</p>
-        <h4>SUB SUB TITLE 1.2.1</h4>
+        <h3>SUB SUB TITLE 1.2.1</h3>
       </subsection>
       <subsection name="SUB TITLE 1.3"><p>bla bla...</p></subsection>
     </section>
@@ -58,7 +58,7 @@
     <section name="TITLE 2">
       <subsection name="SUB TITLE 2.1"><p>bla bla...</p></subsection>
       <subsection name="SUB TITLE 2.2"><p>bla bla...</p>
-            <h4>SUB SUB TITLE 2.2.1</h4>
+            <h3>SUB SUB TITLE 2.2.1</h3>
         </subsection>
         <subsection name="SUB TITLE 2.3"><p>bla bla...</p></subsection>
     </section>
@@ -66,7 +66,7 @@
     <section name="TITLE 3">
         <subsection name="SUB TITLE 3.1"><p>bla bla...</p> </subsection>
         <subsection name="SUB TITLE 3.2"><p>bla bla...</p>
-            <h4>SUB SUB TITLE 3.2.1</h4>
+            <h3>SUB SUB TITLE 3.2.1</h3>
         </subsection>
         <subsection name="SUB TITLE 3.3"><p>bla bla...</p></subsection>
     </section>
diff --git a/doxia-site-renderer/src/test/resources/site/xdoc/nestedItems.xml 
b/doxia-site-renderer/src/test/resources/site/xdoc/nestedItems.xml
index 7573218..d8a7b9f 100644
--- a/doxia-site-renderer/src/test/resources/site/xdoc/nestedItems.xml
+++ b/doxia-site-renderer/src/test/resources/site/xdoc/nestedItems.xml
@@ -27,7 +27,7 @@ under the License.
 
     <body>
         <section name="List Section">
-            <h3>Unordered lists</h3>
+            <h2>Unordered lists</h2>
             <p>
                Below is an unordered list, followed by six paragraphs.
             </p>
@@ -92,7 +92,7 @@ under the License.
                Paragraph 6 below list.
             </p>
 
-            <h3>Ordered lists</h3>
+            <h2>Ordered lists</h2>
             <p>
                Below is an ordered list, followed by six paragraphs.
             </p>
@@ -157,7 +157,7 @@ under the License.
                Paragraph 6 below list.
             </p>
 
-            <h3>Definition lists</h3>
+            <h2>Definition lists</h2>
             <p>
                Below is a definition list, followed by six paragraphs.
             </p>

Reply via email to