[DOXIA-583] Avoid over-escaping table captions

This closes #17
diff --git a/doxia-core/src/main/java/org/apache/maven/doxia/sink/impl/Xhtml5BaseSink.java b/doxia-core/src/main/java/org/apache/maven/doxia/sink/impl/Xhtml5BaseSink.java
index b927234..c2deb43 100644
--- a/doxia-core/src/main/java/org/apache/maven/doxia/sink/impl/Xhtml5BaseSink.java
+++ b/doxia-core/src/main/java/org/apache/maven/doxia/sink/impl/Xhtml5BaseSink.java
@@ -2434,7 +2434,7 @@
     {
         if ( !this.tableCaptionXMLWriterStack.isEmpty() && this.tableCaptionXMLWriterStack.getLast() != null )
         {
-            this.tableCaptionXMLWriterStack.getLast().writeText( unifyEOLs( text ) );
+            this.tableCaptionXMLWriterStack.getLast().writeMarkup( unifyEOLs( text ) );
         }
         else if ( !this.tableContentWriterStack.isEmpty() && this.tableContentWriterStack.getLast() != null )
         {
diff --git a/doxia-core/src/main/java/org/apache/maven/doxia/sink/impl/XhtmlBaseSink.java b/doxia-core/src/main/java/org/apache/maven/doxia/sink/impl/XhtmlBaseSink.java
index c53e439..87be49a 100644
--- a/doxia-core/src/main/java/org/apache/maven/doxia/sink/impl/XhtmlBaseSink.java
+++ b/doxia-core/src/main/java/org/apache/maven/doxia/sink/impl/XhtmlBaseSink.java
@@ -2219,7 +2219,7 @@
     {
         if ( !this.tableCaptionXMLWriterStack.isEmpty() && this.tableCaptionXMLWriterStack.getLast() != null )
         {
-            this.tableCaptionXMLWriterStack.getLast().writeText( unifyEOLs( text ) );
+            this.tableCaptionXMLWriterStack.getLast().writeMarkup( unifyEOLs( text ) );
         }
         else if ( !this.tableContentWriterStack.isEmpty() && this.tableContentWriterStack.getLast() != null )
         {
diff --git a/doxia-core/src/test/java/org/apache/maven/doxia/sink/impl/Xhtml5BaseSinkTest.java b/doxia-core/src/test/java/org/apache/maven/doxia/sink/impl/Xhtml5BaseSinkTest.java
index 511dd8a..949761c 100644
--- a/doxia-core/src/test/java/org/apache/maven/doxia/sink/impl/Xhtml5BaseSinkTest.java
+++ b/doxia-core/src/test/java/org/apache/maven/doxia/sink/impl/Xhtml5BaseSinkTest.java
@@ -162,7 +162,7 @@
             sink.tableRow_();
             sink.tableRows_();
             sink.tableCaption();
-            sink.text( "caption1" );
+            sink.text( "caption&1" );
             sink.tableCaption_();
             sink.table_();
         }
@@ -173,7 +173,7 @@
 
         String actual = writer.toString();
         assertTrue( actual.contains( "<table border=\"0\" class=\"bodyTable\">"
-            + "<caption>caption1</caption>" ) );
+            + "<caption>caption&amp;1</caption>" ) );
         assertTrue( actual.contains( "<table border=\"0\" class=\"bodyTable\" align=\"left\">"
             + "<caption>caption2</caption>" ) );
         assertTrue( actual.contains( "<table border=\"0\" class=\"bodyTable\" align=\"right\">"
diff --git a/doxia-core/src/test/java/org/apache/maven/doxia/sink/impl/XhtmlBaseSinkTest.java b/doxia-core/src/test/java/org/apache/maven/doxia/sink/impl/XhtmlBaseSinkTest.java
index 39e47a4..b94f253 100644
--- a/doxia-core/src/test/java/org/apache/maven/doxia/sink/impl/XhtmlBaseSinkTest.java
+++ b/doxia-core/src/test/java/org/apache/maven/doxia/sink/impl/XhtmlBaseSinkTest.java
@@ -164,7 +164,7 @@
             sink.tableRow_();
             sink.tableRows_();
             sink.tableCaption();
-            sink.text( "caption1" );
+            sink.text( "caption&1" );
             sink.tableCaption_();
             sink.table_();
         }
@@ -175,7 +175,7 @@
 
         String actual = writer.toString();
         assertTrue( actual.contains( "<table border=\"0\" class=\"bodyTable\">"
-            + "<caption>caption1</caption>" ) );
+            + "<caption>caption&amp;1</caption>" ) );
         assertTrue( actual.contains( "<table border=\"0\" class=\"bodyTable\" align=\"left\">"
             + "<caption>caption2</caption>" ) );
         assertTrue( actual.contains( "<table border=\"0\" class=\"bodyTable\" align=\"right\">"