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

jamesbognar pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/juneau.git


The following commit(s) were added to refs/heads/master by this push:
     new 220e608  Update Javadocs.
220e608 is described below

commit 220e60831f746b3d30b83a1e2a86c72ef8072a39
Author: JamesBognar <jamesbog...@apache.org>
AuthorDate: Tue Mar 6 19:22:50 2018 -0500

    Update Javadocs.
---
 .../.settings/org.eclipse.wst.validation.prefs     |   19 +
 juneau-doc/src/main/javadoc/overview.html          | 1387 ++++++++------------
 2 files changed, 580 insertions(+), 826 deletions(-)

diff --git a/juneau-doc/.settings/org.eclipse.wst.validation.prefs 
b/juneau-doc/.settings/org.eclipse.wst.validation.prefs
new file mode 100644
index 0000000..0bd7ac9
--- /dev/null
+++ b/juneau-doc/.settings/org.eclipse.wst.validation.prefs
@@ -0,0 +1,19 @@
+DELEGATES_PREFERENCE=delegateValidatorList
+USER_BUILD_PREFERENCE=enabledBuildValidatorList
+USER_MANUAL_PREFERENCE=enabledManualValidatorListorg.eclipse.wst.wsi.ui.internal.WSIMessageValidator;
+USER_PREFERENCE=overrideGlobalPreferencestruedisableAllValidationfalseversion1.2.701.v201707142105
+eclipse.preferences.version=1
+override=true
+suspend=false
+vals/org.eclipse.jst.jsf.facelet.ui.FaceletHTMLValidator/global=TF01
+vals/org.eclipse.jst.jsp.core.JSPBatchValidator/global=TF01
+vals/org.eclipse.jst.jsp.core.JSPContentValidator/global=TF01
+vals/org.eclipse.jst.jsp.core.TLDValidator/global=TF01
+vals/org.eclipse.wst.dtd.core.dtdDTDValidator/global=TF01
+vals/org.eclipse.wst.html.core.HTMLValidator/global=TF01
+vals/org.eclipse.wst.json.core.json/global=TF03
+vals/org.eclipse.wst.wsdl.validation.wsdl/global=TF02158org.eclipse.wst.wsdl.validation.internal.eclipse.Validator
+vals/org.eclipse.wst.xml.core.xml/global=TF03
+vals/org.eclipse.wst.xsd.core.xsd/global=TF02162org.eclipse.wst.xsd.core.internal.validation.eclipse.Validator
+vals/org.eclipse.wst.xsl.core.xsl/global=TF02
+vf.version=3
diff --git a/juneau-doc/src/main/javadoc/overview.html 
b/juneau-doc/src/main/javadoc/overview.html
index dd4d170..9c8ca85 100644
--- a/juneau-doc/src/main/javadoc/overview.html
+++ b/juneau-doc/src/main/javadoc/overview.html
@@ -87,6 +87,11 @@
                <li><p><a class='doclink' 
href='#juneau-marshall.Groups'>SerializerGroups and ParserGroups</a></p>
                <li><p><a class='doclink' 
href='#juneau-marshall.ObjectMap'>ObjectMap and ObjectList</a></p>
                <li><p><a class='doclink' 
href='#juneau-marshall.ConfigurableProperties'>Configurable Properties</a></p>
+               <ol>
+                       <li><p><a class='doclink' 
href='#juneau-marshall.ConfigurableProperties.Common'>Common Properties</a></p>
+                       <li><p><a class='doclink' 
href='#juneau-marshall.ConfigurableProperties.CommonSerializer'>Common 
Serializer Properties</a></p>
+                       <li><p><a class='doclink' 
href='#juneau-marshall.ConfigurableProperties.CommonParser'>Common Parser 
Properties</a></p>
+               </ol>
                <li><p><a class='doclink' 
href='#juneau-marshall.ContextsBuildersSessionsPropertyStores'>Contexts, 
Builders, Sessions, and PropertyStores</a></p>
                <li><p><a class='doclink' 
href='#juneau-marshall.Transforms'>Transforms</a></p>
                <ol>
@@ -120,7 +125,6 @@
                <li><p><a class='doclink' 
href='#juneau-marshall.ReadingContinuousStreams'>Reading Continuous 
Streams</a></p>
                <li><p><a class='doclink' 
href='#juneau-marshall.JacksonComparison'>Comparison with Jackson</a></p>
                <li><p><a class='doclink' 
href='#juneau-marshall.PojoCategories'>POJO Categories</a></p>
-               <li><p><a class='doclink' 
href='#juneau-marshall.BestPractices'>Best Practices</a></p>
                <li><p><a class='doclink' 
href='#juneau-marshall.JsonDetails'>JSON Details</a></p>
                <ol>
                        <li><p><a class='doclink' 
href='#juneau-marshall.JsonDetails.JsonMethodology'>JSON Methodology</a></p>
@@ -171,6 +175,7 @@
                <li><p><a class='doclink' 
href='#juneau-marshall.SoapDetails'>SOAP Details</a></p>
                <li><p><a class='doclink' 
href='#juneau-marshall.CsvDetails'>CSV Details</a></p>
                <li><p><a class='doclink' 
href='#juneau-marshall.JsoDetails'>Java Serialized Object Details</a></p>
+               <li><p><a class='doclink' 
href='#juneau-marshall.BestPractices'>Best Practices</a></p>
        </ol>
        <li><p class='toc2'><a class='doclink' 
href='#juneau-marshall-rdf'><i>juneau-marshall-rdf</i></a></p>
        <ol>
@@ -1064,87 +1069,107 @@
                .quoteChar(<js>'"'</js>)  <jc>// Use a different quote 
character.</jc>
                .build();
                </p>
-               <p>
-                       The following properties are common to all serializers 
and parsers:
-               </p>
-               <ul class='doctree'>
-                       <li class='jc'>{@link org.apache.juneau.BeanContext}
-                       <ul>
-                               <li class='jf'>{@link 
org.apache.juneau.BeanContext#BEAN_beanClassVisibility BEAN_beanClassVisibility}
-                               <li class='jf'>{@link 
org.apache.juneau.BeanContext#BEAN_beanConstructorVisibility 
BEAN_beanConstructorVisibility}
-                               <li class='jf'>{@link 
org.apache.juneau.BeanContext#BEAN_beanDictionary BEAN_beanDictionary}
-                               <li class='jf'>{@link 
org.apache.juneau.BeanContext#BEAN_beanFieldVisibility BEAN_beanFieldVisibility}
-                               <li class='jf'>{@link 
org.apache.juneau.BeanContext#BEAN_beanFilters BEAN_beanFilters}
-                               <li class='jf'>{@link 
org.apache.juneau.BeanContext#BEAN_beanMapPutReturnsOldValue 
BEAN_beanMapPutReturnsOldValue}
-                               <li class='jf'>{@link 
org.apache.juneau.BeanContext#BEAN_beanMethodVisibility 
BEAN_beanMethodVisibility}
-                               <li class='jf'>{@link 
org.apache.juneau.BeanContext#BEAN_beansRequireDefaultConstructor 
BEAN_beansRequireDefaultConstructor}
-                               <li class='jf'>{@link 
org.apache.juneau.BeanContext#BEAN_beansRequireSerializable 
BEAN_beansRequireSerializable}
-                               <li class='jf'>{@link 
org.apache.juneau.BeanContext#BEAN_beansRequireSettersForGetters 
BEAN_beansRequireSettersForGetters}
-                               <li class='jf'>{@link 
org.apache.juneau.BeanContext#BEAN_beansRequireSomeProperties 
BEAN_beansRequireSomeProperties}
-                               <li class='jf'>{@link 
org.apache.juneau.BeanContext#BEAN_beanTypePropertyName 
BEAN_beanTypePropertyName}
-                               <li class='jf'>{@link 
org.apache.juneau.BeanContext#BEAN_debug BEAN_debug}
-                               <li class='jf'>{@link 
org.apache.juneau.BeanContext#BEAN_excludeProperties BEAN_excludeProperties}
-                               <li class='jf'>{@link 
org.apache.juneau.BeanContext#BEAN_ignoreInvocationExceptionsOnGetters 
BEAN_ignoreInvocationExceptionsOnGetters}
-                               <li class='jf'>{@link 
org.apache.juneau.BeanContext#BEAN_ignoreInvocationExceptionsOnSetters 
BEAN_ignoreInvocationExceptionsOnSetters}
-                               <li class='jf'>{@link 
org.apache.juneau.BeanContext#BEAN_ignorePropertiesWithoutSetters 
BEAN_ignorePropertiesWithoutSetters}
-                               <li class='jf'>{@link 
org.apache.juneau.BeanContext#BEAN_ignoreUnknownBeanProperties 
BEAN_ignoreUnknownBeanProperties}
-                               <li class='jf'>{@link 
org.apache.juneau.BeanContext#BEAN_ignoreUnknownNullBeanProperties 
BEAN_ignoreUnknownNullBeanProperties}
-                               <li class='jf'>{@link 
org.apache.juneau.BeanContext#BEAN_implClasses BEAN_implClasses}
-                               <li class='jf'>{@link 
org.apache.juneau.BeanContext#BEAN_includeProperties BEAN_includeProperties}
-                               <li class='jf'>{@link 
org.apache.juneau.BeanContext#BEAN_locale BEAN_locale}
-                               <li class='jf'>{@link 
org.apache.juneau.BeanContext#BEAN_mediaType BEAN_mediaType}
-                               <li class='jf'>{@link 
org.apache.juneau.BeanContext#BEAN_notBeanClasses BEAN_notBeanClasses}
-                               <li class='jf'>{@link 
org.apache.juneau.BeanContext#BEAN_notBeanPackages BEAN_notBeanPackages}
-                               <li class='jf'>{@link 
org.apache.juneau.BeanContext#BEAN_pojoSwaps BEAN_pojoSwaps}
-                               <li class='jf'>{@link 
org.apache.juneau.BeanContext#BEAN_propertyNamer BEAN_propertyNamer}
-                               <li class='jf'>{@link 
org.apache.juneau.BeanContext#BEAN_sortProperties BEAN_sortProperties}
-                               <li class='jf'>{@link 
org.apache.juneau.BeanContext#BEAN_timeZone BEAN_timeZone}
-                               <li class='jf'>{@link 
org.apache.juneau.BeanContext#BEAN_useInterfaceProxies BEAN_useInterfaceProxies}
-                               <li class='jf'>{@link 
org.apache.juneau.BeanContext#BEAN_useJavaBeanIntrospector 
BEAN_useJavaBeanIntrospector}
+
+               <!-- 
=======================================================================================================
 -->
+               <a id="juneau-marshall.ConfigurableProperties.Common"></a>
+               <h4 class='topic' onclick='toggle(this)'>2.5.1 - Common 
Properties</h4>
+               <div class='topic'>
+                       <p>
+                               All serializers and parsers extend from the 
{@link org.apache.juneau.BeanContext} class.
+                               <br>Therefore, the following properties are 
common to all serializers and parsers:
+                       </p>
+                       <ul class='doctree'>
+                               <li class='jc'>{@link 
org.apache.juneau.BeanContext}
+                               <ul>
+                                       <li class='jf'>{@link 
org.apache.juneau.BeanContext#BEAN_beanClassVisibility BEAN_beanClassVisibility}
+                                       <li class='jf'>{@link 
org.apache.juneau.BeanContext#BEAN_beanConstructorVisibility 
BEAN_beanConstructorVisibility}
+                                       <li class='jf'>{@link 
org.apache.juneau.BeanContext#BEAN_beanDictionary BEAN_beanDictionary}
+                                       <li class='jf'>{@link 
org.apache.juneau.BeanContext#BEAN_beanFieldVisibility BEAN_beanFieldVisibility}
+                                       <li class='jf'>{@link 
org.apache.juneau.BeanContext#BEAN_beanFilters BEAN_beanFilters}
+                                       <li class='jf'>{@link 
org.apache.juneau.BeanContext#BEAN_beanMapPutReturnsOldValue 
BEAN_beanMapPutReturnsOldValue}
+                                       <li class='jf'>{@link 
org.apache.juneau.BeanContext#BEAN_beanMethodVisibility 
BEAN_beanMethodVisibility}
+                                       <li class='jf'>{@link 
org.apache.juneau.BeanContext#BEAN_beansRequireDefaultConstructor 
BEAN_beansRequireDefaultConstructor}
+                                       <li class='jf'>{@link 
org.apache.juneau.BeanContext#BEAN_beansRequireSerializable 
BEAN_beansRequireSerializable}
+                                       <li class='jf'>{@link 
org.apache.juneau.BeanContext#BEAN_beansRequireSettersForGetters 
BEAN_beansRequireSettersForGetters}
+                                       <li class='jf'>{@link 
org.apache.juneau.BeanContext#BEAN_beansRequireSomeProperties 
BEAN_beansRequireSomeProperties}
+                                       <li class='jf'>{@link 
org.apache.juneau.BeanContext#BEAN_beanTypePropertyName 
BEAN_beanTypePropertyName}
+                                       <li class='jf'>{@link 
org.apache.juneau.BeanContext#BEAN_debug BEAN_debug}
+                                       <li class='jf'>{@link 
org.apache.juneau.BeanContext#BEAN_excludeProperties BEAN_excludeProperties}
+                                       <li class='jf'>{@link 
org.apache.juneau.BeanContext#BEAN_ignoreInvocationExceptionsOnGetters 
BEAN_ignoreInvocationExceptionsOnGetters}
+                                       <li class='jf'>{@link 
org.apache.juneau.BeanContext#BEAN_ignoreInvocationExceptionsOnSetters 
BEAN_ignoreInvocationExceptionsOnSetters}
+                                       <li class='jf'>{@link 
org.apache.juneau.BeanContext#BEAN_ignorePropertiesWithoutSetters 
BEAN_ignorePropertiesWithoutSetters}
+                                       <li class='jf'>{@link 
org.apache.juneau.BeanContext#BEAN_ignoreUnknownBeanProperties 
BEAN_ignoreUnknownBeanProperties}
+                                       <li class='jf'>{@link 
org.apache.juneau.BeanContext#BEAN_ignoreUnknownNullBeanProperties 
BEAN_ignoreUnknownNullBeanProperties}
+                                       <li class='jf'>{@link 
org.apache.juneau.BeanContext#BEAN_implClasses BEAN_implClasses}
+                                       <li class='jf'>{@link 
org.apache.juneau.BeanContext#BEAN_includeProperties BEAN_includeProperties}
+                                       <li class='jf'>{@link 
org.apache.juneau.BeanContext#BEAN_locale BEAN_locale}
+                                       <li class='jf'>{@link 
org.apache.juneau.BeanContext#BEAN_mediaType BEAN_mediaType}
+                                       <li class='jf'>{@link 
org.apache.juneau.BeanContext#BEAN_notBeanClasses BEAN_notBeanClasses}
+                                       <li class='jf'>{@link 
org.apache.juneau.BeanContext#BEAN_notBeanPackages BEAN_notBeanPackages}
+                                       <li class='jf'>{@link 
org.apache.juneau.BeanContext#BEAN_pojoSwaps BEAN_pojoSwaps}
+                                       <li class='jf'>{@link 
org.apache.juneau.BeanContext#BEAN_propertyNamer BEAN_propertyNamer}
+                                       <li class='jf'>{@link 
org.apache.juneau.BeanContext#BEAN_sortProperties BEAN_sortProperties}
+                                       <li class='jf'>{@link 
org.apache.juneau.BeanContext#BEAN_timeZone BEAN_timeZone}
+                                       <li class='jf'>{@link 
org.apache.juneau.BeanContext#BEAN_useInterfaceProxies BEAN_useInterfaceProxies}
+                                       <li class='jf'>{@link 
org.apache.juneau.BeanContext#BEAN_useJavaBeanIntrospector 
BEAN_useJavaBeanIntrospector}
+                               </ul>
                        </ul>
-               </ul>
-               <p>
-                       The following properties are also common to all 
serializers:
-               </p>
-               <ul class='doctree'>
-                       <li class='jc'>{@link 
org.apache.juneau.serializer.Serializer}
-                       <ul>
-                               <li class='jf'>{@link 
org.apache.juneau.serializer.Serializer#SERIALIZER_abridged SERIALIZER_abridged}
-                               <li class='jf'>{@link 
org.apache.juneau.serializer.Serializer#SERIALIZER_addBeanTypeProperties 
SERIALIZER_addBeanTypeProperties}
-                               <li class='jf'>{@link 
org.apache.juneau.serializer.Serializer#SERIALIZER_detectRecursions 
SERIALIZER_detectRecursions}
-                               <li class='jf'>{@link 
org.apache.juneau.serializer.Serializer#SERIALIZER_ignoreRecursions 
SERIALIZER_ignoreRecursions}
-                               <li class='jf'>{@link 
org.apache.juneau.serializer.Serializer#SERIALIZER_initialDepth 
SERIALIZER_initialDepth}
-                               <li class='jf'>{@link 
org.apache.juneau.serializer.Serializer#SERIALIZER_listener SERIALIZER_listener}
-                               <li class='jf'>{@link 
org.apache.juneau.serializer.Serializer#SERIALIZER_maxDepth SERIALIZER_maxDepth}
-                               <li class='jf'>{@link 
org.apache.juneau.serializer.Serializer#SERIALIZER_maxIndent 
SERIALIZER_maxIndent}
-                               <li class='jf'>{@link 
org.apache.juneau.serializer.Serializer#SERIALIZER_quoteChar 
SERIALIZER_quoteChar}
-                               <li class='jf'>{@link 
org.apache.juneau.serializer.Serializer#SERIALIZER_sortCollections 
SERIALIZER_sortCollections}
-                               <li class='jf'>{@link 
org.apache.juneau.serializer.Serializer#SERIALIZER_sortMaps SERIALIZER_sortMaps}
-                               <li class='jf'>{@link 
org.apache.juneau.serializer.Serializer#SERIALIZER_trimEmptyCollections 
SERIALIZER_trimEmptyCollections}
-                               <li class='jf'>{@link 
org.apache.juneau.serializer.Serializer#SERIALIZER_trimEmptyMaps 
SERIALIZER_trimEmptyMaps}
-                               <li class='jf'>{@link 
org.apache.juneau.serializer.Serializer#SERIALIZER_trimNullProperties 
SERIALIZER_trimNullProperties}
-                               <li class='jf'>{@link 
org.apache.juneau.serializer.Serializer#SERIALIZER_trimStrings 
SERIALIZER_trimStrings}
-                               <li class='jf'>{@link 
org.apache.juneau.serializer.Serializer#SERIALIZER_uriContext 
SERIALIZER_uriContext}
-                               <li class='jf'>{@link 
org.apache.juneau.serializer.Serializer#SERIALIZER_uriRelativity 
SERIALIZER_uriRelativity}
-                               <li class='jf'>{@link 
org.apache.juneau.serializer.Serializer#SERIALIZER_uriResolution 
SERIALIZER_uriResolution}
-                               <li class='jf'>{@link 
org.apache.juneau.serializer.Serializer#SERIALIZER_useWhitespace 
SERIALIZER_useWhitespace}
+               </div>
+               
+               <!-- 
=======================================================================================================
 -->
+               <a 
id="juneau-marshall.ConfigurableProperties.CommonSerializer"></a>
+               <h4 class='topic' onclick='toggle(this)'>2.5.2 - Common 
Serializer Properties</h4>
+               <div class='topic'>
+                       <p>
+                               In addition to the common properties above, the 
following properties are common to all serializers:
+                       </p>
+                       <ul class='doctree'>
+                               <li class='jc'>{@link 
org.apache.juneau.serializer.Serializer}
+                               <ul>
+                                       <li class='jf'>{@link 
org.apache.juneau.serializer.Serializer#SERIALIZER_abridged SERIALIZER_abridged}
+                                       <li class='jf'>{@link 
org.apache.juneau.serializer.Serializer#SERIALIZER_addBeanTypeProperties 
SERIALIZER_addBeanTypeProperties}
+                                       <li class='jf'>{@link 
org.apache.juneau.serializer.Serializer#SERIALIZER_detectRecursions 
SERIALIZER_detectRecursions}
+                                       <li class='jf'>{@link 
org.apache.juneau.serializer.Serializer#SERIALIZER_ignoreRecursions 
SERIALIZER_ignoreRecursions}
+                                       <li class='jf'>{@link 
org.apache.juneau.serializer.Serializer#SERIALIZER_initialDepth 
SERIALIZER_initialDepth}
+                                       <li class='jf'>{@link 
org.apache.juneau.serializer.Serializer#SERIALIZER_listener SERIALIZER_listener}
+                                       <li class='jf'>{@link 
org.apache.juneau.serializer.Serializer#SERIALIZER_maxDepth SERIALIZER_maxDepth}
+                                       <li class='jf'>{@link 
org.apache.juneau.serializer.Serializer#SERIALIZER_maxIndent 
SERIALIZER_maxIndent}
+                                       <li class='jf'>{@link 
org.apache.juneau.serializer.Serializer#SERIALIZER_quoteChar 
SERIALIZER_quoteChar}
+                                       <li class='jf'>{@link 
org.apache.juneau.serializer.Serializer#SERIALIZER_sortCollections 
SERIALIZER_sortCollections}
+                                       <li class='jf'>{@link 
org.apache.juneau.serializer.Serializer#SERIALIZER_sortMaps SERIALIZER_sortMaps}
+                                       <li class='jf'>{@link 
org.apache.juneau.serializer.Serializer#SERIALIZER_trimEmptyCollections 
SERIALIZER_trimEmptyCollections}
+                                       <li class='jf'>{@link 
org.apache.juneau.serializer.Serializer#SERIALIZER_trimEmptyMaps 
SERIALIZER_trimEmptyMaps}
+                                       <li class='jf'>{@link 
org.apache.juneau.serializer.Serializer#SERIALIZER_trimNullProperties 
SERIALIZER_trimNullProperties}
+                                       <li class='jf'>{@link 
org.apache.juneau.serializer.Serializer#SERIALIZER_trimStrings 
SERIALIZER_trimStrings}
+                                       <li class='jf'>{@link 
org.apache.juneau.serializer.Serializer#SERIALIZER_uriContext 
SERIALIZER_uriContext}
+                                       <li class='jf'>{@link 
org.apache.juneau.serializer.Serializer#SERIALIZER_uriRelativity 
SERIALIZER_uriRelativity}
+                                       <li class='jf'>{@link 
org.apache.juneau.serializer.Serializer#SERIALIZER_uriResolution 
SERIALIZER_uriResolution}
+                                       <li class='jf'>{@link 
org.apache.juneau.serializer.Serializer#SERIALIZER_useWhitespace 
SERIALIZER_useWhitespace}
+                               </ul>
                        </ul>
-               </ul>
-               <p>
-                       The following properties are also common to all parsers:
-               </p>
-               <ul class='doctree'>
-                       <li class='jc'>{@link org.apache.juneau.parser.Parser}
-                       <ul>
-                               <li class='jf'>{@link 
org.apache.juneau.parser.Parser#PARSER_autoCloseStreams PARSER_autoCloseStreams}
-                               <li class='jf'>{@link 
org.apache.juneau.parser.Parser#PARSER_fileCharset PARSER_fileCharset}
-                               <li class='jf'>{@link 
org.apache.juneau.parser.Parser#PARSER_inputStreamCharset 
PARSER_inputStreamCharset}
-                               <li class='jf'>{@link 
org.apache.juneau.parser.Parser#PARSER_listener PARSER_listener}
-                               <li class='jf'>{@link 
org.apache.juneau.parser.Parser#PARSER_strict PARSER_strict}
-                               <li class='jf'>{@link 
org.apache.juneau.parser.Parser#PARSER_trimStrings PARSER_trimStrings}
-                               <li class='jf'>{@link 
org.apache.juneau.parser.Parser#PARSER_unbuffered PARSER_unbuffered}
+               </div>
+
+               <!-- 
=======================================================================================================
 -->
+               <a id="juneau-marshall.ConfigurableProperties.CommonParser"></a>
+               <h4 class='topic' onclick='toggle(this)'>2.5.3 - Common Parser 
Properties</h4>
+               <div class='topic'>
+                       <p>
+                               In addition to the common properties above, the 
following properties are common to all parsers:
+                       </p>
+                       <ul class='doctree'>
+                               <li class='jc'>{@link 
org.apache.juneau.parser.Parser}
+                               <ul>
+                                       <li class='jf'>{@link 
org.apache.juneau.parser.Parser#PARSER_autoCloseStreams PARSER_autoCloseStreams}
+                                       <li class='jf'>{@link 
org.apache.juneau.parser.Parser#PARSER_fileCharset PARSER_fileCharset}
+                                       <li class='jf'>{@link 
org.apache.juneau.parser.Parser#PARSER_inputStreamCharset 
PARSER_inputStreamCharset}
+                                       <li class='jf'>{@link 
org.apache.juneau.parser.Parser#PARSER_listener PARSER_listener}
+                                       <li class='jf'>{@link 
org.apache.juneau.parser.Parser#PARSER_strict PARSER_strict}
+                                       <li class='jf'>{@link 
org.apache.juneau.parser.Parser#PARSER_trimStrings PARSER_trimStrings}
+                                       <li class='jf'>{@link 
org.apache.juneau.parser.Parser#PARSER_unbuffered PARSER_unbuffered}
+                               </ul>
                        </ul>
-               </ul>
+               </div>
+               
        </div>
        
        <!-- 
=======================================================================================================
 -->
@@ -3850,37 +3875,8 @@
        </div>
 
        <!-- 
=======================================================================================================
 -->
-       <a id="juneau-marshall.BestPractices"></a>
-       <h3 class='topic' onclick='toggle(this)'>2.15 - Best Practices</h3>
-       <div class='topic'>
-               <ol class='spaced-list'>
-                       <li>
-                               Reuse instances of serializers and parsers 
whenever possible.
-                               <br>They are designed to be thread safe and 
maintain internal caches of bean metadata to increase performance.
-                       <li>
-                               The {@link 
org.apache.juneau.serializer.Serializer#SERIALIZER_detectRecursions 
SERIALIZER_detectRecursions} 
-                               option on the {@link 
org.apache.juneau.serializer.Serializer} class can cause a performance penalty 
of 
-                               around 20%.  
-                               <br>Therefore, it's recommended that this 
option be used only when necessary. 
-                       <li>
-                               In general, JSON serialization and parsing is 
about 20% faster than XML.  
-                               JSON is also more compact than XML.
-                               <br>MessagePack is fastest and most compact of 
all.
-                       <li>
-                               The RDF parsers are SLOW.
-                               <br>RDF simply isn't efficient with node 
traversal, so creating tree structures out of RDF models
-                               is highly inefficient.          
-                       <li>
-                               The {@link org.apache.juneau.parser.Parser} 
methods that take in {@link org.apache.juneau.ClassMeta} 
-                               parameters are slightly faster than methods 
that 
-                               take in {@link java.lang.Class} or {@link 
java.lang.Object} parameters, since the latter methods involve 
-                               hash lookups to resolve to {@link 
org.apache.juneau.ClassMeta} parameters.
-               </ol>
-       </div>
-
-       <!-- 
=======================================================================================================
 -->
        <a id="juneau-marshall.JsonDetails"></a>
-       <h3 class='topic' onclick='toggle(this)'>2.16 - JSON Details</h3>
+       <h3 class='topic' onclick='toggle(this)'>2.15 - JSON Details</h3>
        <div class='topic'>
                <p>
                        Juneau supports converting arbitrary POJOs to and from 
JSON using ultra-efficient serializers and parsers.
@@ -3963,7 +3959,7 @@
                
                <!-- 
=======================================================================================================
 -->
                <a id="juneau-marshall.JsonDetails.JsonMethodology"></a>
-               <h4 class='topic' onclick='toggle(this)'>2.16.1 - JSON 
Methodology</h4>
+               <h4 class='topic' onclick='toggle(this)'>2.15.1 - JSON 
Methodology</h4>
                <div class='topic'>
                        <p>
                                The JSON data type produced depends on the Java 
object type being serialized.
@@ -4039,25 +4035,26 @@
                
                <!-- 
=======================================================================================================
 -->
                <a id="juneau-marshall.JsonDetails.JsonSerializers"></a>
-               <h4 class='topic' onclick='toggle(this)'>2.16.2 - JSON 
Serializers</h4>
+               <h4 class='topic' onclick='toggle(this)'>2.15.2 - JSON 
Serializers</h4>
                <div class='topic'>
                        <p>
                                The {@link 
org.apache.juneau.json.JsonSerializer} class is used to serialize POJOs into 
JSON.
                        </p>    
                        <p>
-                               In addition to the common <a class='doclink' 
href='#juneau-marshall.ConfigurableProperties'>Configurable Properties</a>, 
-                               the JSON serializer provides the following 
settings:
+                               The JSON serializer provides the following 
settings:
                        </p>
                        <ul class='doctree'>
+                               <li class='link'><a class='doclink' 
href='#juneau-marshall.ConfigurableProperties.Common'>Common Properties</a>
+                               <li class='link'><a class='doclink' 
href='#juneau-marshall.ConfigurableProperties.CommonSerializer'>Common 
Serializer Properties</a>
                                <li class='jc'>{@link 
org.apache.juneau.json.JsonSerializer}
                                <ul>
-                                       <li>{@link 
org.apache.juneau.json.JsonSerializer#JSON_addBeanTypeProperties 
JSON_addBeanTypeProperties}
-                                       <li>{@link 
org.apache.juneau.json.JsonSerializer#JSON_addBeanTypeProperties 
JSON_addBeanTypeProperties}
-                                       <li>{@link 
org.apache.juneau.json.JsonSerializer#JSON_simpleMode JSON_simpleMode}
+                                       <li class='jf'>{@link 
org.apache.juneau.json.JsonSerializer#JSON_addBeanTypeProperties 
JSON_addBeanTypeProperties}
+                                       <li class='jf'>{@link 
org.apache.juneau.json.JsonSerializer#JSON_escapeSolidus JSON_escapeSolidus}
+                                       <li class='jf'>{@link 
org.apache.juneau.json.JsonSerializer#JSON_simpleMode JSON_simpleMode}
                                </ul>
                        </ul>
                        <p>
-                               The following predefined serializers are 
provided for convenience:
+                               The following pre-configured serializers are 
provided for convenience:
                        </p>
                        <ul class='doctree'>
                                <li class='jc'>{@link 
org.apache.juneau.json.JsonSerializer}
@@ -4073,23 +4070,24 @@
                
                <!-- 
=======================================================================================================
 -->
                <a id="juneau-marshall.JsonDetails.JsonParsers"></a>
-               <h4 class='topic' onclick='toggle(this)'>2.16.3 - JSON 
Parsers</h4>
+               <h4 class='topic' onclick='toggle(this)'>2.15.3 - JSON 
Parsers</h4>
                <div class='topic'>
                        <p>
                                The {@link org.apache.juneau.json.JsonParser} 
class is used to parse JSON into POJOs.
                        </p>    
                        <p>
-                               In addition to the common <a class='doclink' 
href='#juneau-marshall.ConfigurableProperties'>Configurable Properties</a>, 
-                               the JSON parser provides the following settings:
+                               The JSON parser provides the following settings:
                        </p>
                        <ul class='doctree'>
+                               <li class='link'><a class='doclink' 
href='#juneau-marshall.ConfigurableProperties.Common'>Common Properties</a>
+                               <li class='link'><a class='doclink' 
href='#juneau-marshall.ConfigurableProperties.CommonParser'>Common Parser 
Properties</a>
                                <li class='jc'>{@link 
org.apache.juneau.json.JsonParser}
                                <ul>
-                                       <li>{@link 
org.apache.juneau.json.JsonParser#JSON_validateEnd JSON_validateEnd}
+                                       <li class='jf'>{@link 
org.apache.juneau.json.JsonParser#JSON_validateEnd JSON_validateEnd}
                                </ul>
                        </ul>
                        <p>
-                               The following predefined parsers are provided 
for convenience:
+                               The following pre-configured parsers are 
provided for convenience:
                        </p>
                        <ul class='doctree'>
                                <li class='jc'>{@link 
org.apache.juneau.json.JsonParser}
@@ -4117,7 +4115,7 @@
                
                <!-- 
=======================================================================================================
 -->
                <a id="juneau-marshall.JsonDetails.JsonAnnotation"></a>
-               <h4 class='topic' onclick='toggle(this)'>2.16.4 - @Json 
Annotation</h4>
+               <h4 class='topic' onclick='toggle(this)'>2.15.4 - @Json 
Annotation</h4>
                <div class='topic'>
                        <p>
                                The {@link 
org.apache.juneau.json.annotation.Json#wrapperAttr() @Json(wrapperAttr)} 
annotation
@@ -4160,7 +4158,7 @@
 
                <!-- 
=======================================================================================================
 -->
                <a id="juneau-marshall.JsonDetails.JsonSchema"></a>
-               <h4 class='topic' onclick='toggle(this)'>2.16.5 - JSON-Schema 
Support</h4>
+               <h4 class='topic' onclick='toggle(this)'>2.15.5 - JSON-Schema 
Support</h4>
                <div class='topic'>
                        <p>
                                Juneau provides the {@link 
org.apache.juneau.json.JsonSchemaSerializer} class for generating JSON-Schema 
@@ -4259,7 +4257,7 @@
 
        <!-- 
=======================================================================================================
 -->
        <a id="juneau-marshall.XmlDetails"></a>
-       <h3 class='topic' onclick='toggle(this)'>2.17 - XML Details</h3>
+       <h3 class='topic' onclick='toggle(this)'>2.16 - XML Details</h3>
        <div class='topic'>
                <p>
                        Juneau supports converting arbitrary POJOs to and from 
XML using ultra-efficient serializers and parsers.
@@ -4337,7 +4335,7 @@
 
                <!-- 
=======================================================================================================
 -->
                <a id="juneau-marshall.XmlDetails.XmlMethodology"></a>
-               <h4 class='topic' onclick='toggle(this)'>2.17.1 - XML 
Methodology</h4>
+               <h4 class='topic' onclick='toggle(this)'>2.16.1 - XML 
Methodology</h4>
                <div class='topic'>
 
                        <p>
@@ -4745,115 +4743,86 @@
                
                <!-- 
=======================================================================================================
 -->
                <a id="juneau-marshall.XmlDetails.XmlSerializers"></a>
-               <h4 class='topic' onclick='toggle(this)'>2.17.2 - XML 
Serializers</h4>
-               <div class='topic'>
-               </div>          
-               
-               <!-- 
=======================================================================================================
 -->
-               <a id="juneau-marshall.XmlDetails.XmlParsers"></a>
-               <h4 class='topic' onclick='toggle(this)'>2.17.3 - XML 
Parsers</h4>
+               <h4 class='topic' onclick='toggle(this)'>2.16.2 - XML 
Serializers</h4>
                <div class='topic'>
                        <p>
-                               The {@link org.apache.juneau.xml.XmlParser} 
class is the class used to parse Juneau-generated XML back into 
-                               POJOs.
+                               The {@link org.apache.juneau.xml.XmlSerializer} 
class is used to serialize POJOs into XML.
                        </p>    
                        <p>
-                               A static reusable instance of 
<code>XmlParser</code> is also provided for convenience:
+                               The {@link 
org.apache.juneau.xml.XmlDocSerializer} class is the same, but serializes a 
<xt>&lt;?xml?&gt;</xt> header 
+                               at the top of the file.
                        </p>
-                       <ul>
-                               <li>{@link 
org.apache.juneau.xml.XmlParser#DEFAULT}
-                       </ul>
                        <p>
-                               Let's build upon the previous example and parse 
the generated XML back into the original bean.
-                               <br>We start with the XML that was generated.
-                       </p>
-                       <p class='bcode'>
-       <jc>// Create a new serializer with readable output.</jc>
-       XmlSerializer s = 
XmlSerializer.<jsm>create</jsm>().ws().sq().ns().build();
-
-       <jc>// Create our bean.</jc>
-       Person p = <jk>new</jk> Person(1, <js>"John Smith"</js>, 
<js>"http://sample/addressBook/person/1";</js>, 
-               <js>"http://sample/addressBook";</js>, <js>"Aug 12, 1946"</js>);
-       Address a = <jk>new</jk> Address();
-       a.<jf>uri</jf> = <jk>new</jk> 
URI(<js>"http://sample/addressBook/address/1";</js>);
-       a.<jf>personUri</jf> = <jk>new</jk> 
URI(<js>"http://sample/addressBook/person/1";</js>);
-       a.<jf>id</jf> = 1;
-       a.<jf>street</jf> = <js>"100 Main Street"</js>;
-       a.<jf>city</jf> = <js>"Anywhereville"</js>;
-       a.<jf>state</jf> = <js>"NY"</js>;
-       a.<jf>zip</jf> = 12345;
-       a.<jf>isCurrent</jf> = <jk>true</jk>;
-       p.<jf>addresses</jf>.add(a);    
-
-       <jc>// Serialize the bean to XML.</jc>
-       String xml = s.serialize(p);
+                               The XML serializers provide the following 
settings:
                        </p>
+                       <ul class='doctree'>
+                               <li class='link'><a class='doclink' 
href='#juneau-marshall.ConfigurableProperties.Common'>Common Properties</a>
+                               <li class='link'><a class='doclink' 
href='#juneau-marshall.ConfigurableProperties.CommonSerializer'>Common 
Serializer Properties</a>
+                               <li class='jc'>{@link 
org.apache.juneau.xml.XmlSerializer}
+                               <ul>
+                                       <li class='jf'>{@link 
org.apache.juneau.xml.XmlSerializer#XML_addBeanTypeProperties 
XML_addBeanTypeProperties}
+                                       <li class='jf'>{@link 
org.apache.juneau.xml.XmlSerializer#XML_addNamespaceUrisToRoot 
XML_addNamespaceUrisToRoot}
+                                       <li class='jf'>{@link 
org.apache.juneau.xml.XmlSerializer#XML_autoDetectNamespaces 
XML_autoDetectNamespaces}
+                                       <li class='jf'>{@link 
org.apache.juneau.xml.XmlSerializer#XML_defaultNamespace XML_defaultNamespace}
+                                       <li class='jf'>{@link 
org.apache.juneau.xml.XmlSerializer#XML_enableNamespaces XML_enableNamespaces}
+                                       <li class='jf'>{@link 
org.apache.juneau.xml.XmlSerializer#XML_namespaces XML_namespaces}
+                                       <li class='jf'>{@link 
org.apache.juneau.xml.XmlSerializer#XML_xsNamespace XML_xsNamespace}
+                               </ul>
+                       </ul>
                        <p>
-                               This code produced the following:
+                               The following pre-configured serializers are 
provided for convenience:
                        </p>
-                       <p class='bcode'>
-       <xt>&lt;per:person</xt> 
-                       
<xa>xmlns</xa>=<xs>'http://www.apache.org/2013/Juneau'</xs> 
-                       
<xa>xmlns:per</xa>=<xs>'http://www.apache.org/person/'</xs> 
-                       
<xa>xmlns:addr</xa>=<xs>'http://www.apache.org/address/'</xs> 
-                       
<xa>xmlns:mail</xa>=<xs>'http://www.apache.org/mail/'</xs> 
-                       
<xa>uri</xa>=<xs>'http://sample/addressBook/person/1'</xs><xt>&gt;</xt>
-               <xt>&lt;per:id&gt;</xt>1<xt>&lt;/per:id&gt;</xt>
-               <xt>&lt;per:name&gt;</xt>John Smith<xt>&lt;/per:name&gt;</xt>
-               
<xt>&lt;per:addressBookUri&gt;</xt>http://sample/addressBook<xt>&lt;/per:addressBookUri&gt;</xt>
-               
<xt>&lt;per:birthDate&gt;</xt>1946-08-12T04:00:00Z<xt>&lt;/per:birthDate&gt;</xt>
-               <xt>&lt;per:addresses&gt;</xt>
-                       <xt>&lt;addr:address</xt> 
<xa>uri</xa>=<xs>'http://sample/addressBook/address/1'</xs><xt>&gt;</xt>
-                               
<xt>&lt;addr:personUri&gt;</xt>http://sample/addressBook/person/1<xt>&lt;/addr:personUri&gt;</xt>
-                               
<xt>&lt;addr:id&gt;</xt>1<xt>&lt;/addr:id&gt;</xt>
-                               <xt>&lt;mail:street&gt;</xt>100 Main 
Street<xt>&lt;/mail:street&gt;</xt>
-                               
<xt>&lt;mail:city&gt;</xt>Anywhereville<xt>&lt;/mail:city&gt;</xt>
-                               
<xt>&lt;mail:state&gt;</xt>NY<xt>&lt;/mail:state&gt;</xt>
-                               
<xt>&lt;mail:zip&gt;</xt>12345<xt>&lt;/mail:zip&gt;</xt>
-                               
<xt>&lt;addr:isCurrent&gt;</xt>true<xt>&lt;/addr:isCurrent&gt;</xt>
-                       <xt>&lt;/addr:address&gt;</xt>
-               <xt>&lt;/per:addresses&gt;</xt>
-       <xt>&lt;/per:person&gt;</xt>
-       </p>
+                       <ul class='doctree'>
+                               <li class='jc'>{@link 
org.apache.juneau.xml.XmlSerializer}
+                               <ul>
+                                       <li class='jf'>{@link 
org.apache.juneau.xml.XmlSerializer#DEFAULT DEFAULT}
+                                       <li class='jf'>{@link 
org.apache.juneau.xml.XmlSerializer#DEFAULT_JUNEAU_NAMESPACE 
DEFAULT_JUNEAU_NAMESPACE}
+                                       <li class='jf'>{@link 
org.apache.juneau.xml.XmlSerializer#DEFAULT_NS DEFAULT_NS}
+                                       <li class='jf'>{@link 
org.apache.juneau.xml.XmlSerializer#DEFAULT_NS_SQ DEFAULT_NS_SQ}
+                                       <li class='jf'>{@link 
org.apache.juneau.xml.XmlSerializer#DEFAULT_NS_SQ_READABLE 
DEFAULT_NS_SQ_READABLE}
+                                       <li class='jf'>{@link 
org.apache.juneau.xml.XmlSerializer#DEFAULT_SQ DEFAULT_SQ}
+                                       <li class='jf'>{@link 
org.apache.juneau.xml.XmlSerializer#DEFAULT_SQ_READABLE DEFAULT_SQ_READABLE}
+                                       <li class='jf'>{@link 
org.apache.juneau.xml.XmlSerializer#DEFAULT_XS_NAMESPACE DEFAULT_XS_NAMESPACE}  
                          
+                               </ul>
+                       </ul>
+               </div>          
+               
+               <!-- 
=======================================================================================================
 -->
+               <a id="juneau-marshall.XmlDetails.XmlParsers"></a>
+               <h4 class='topic' onclick='toggle(this)'>2.16.3 - XML 
Parsers</h4>
+               <div class='topic'>
                        <p>
-                               The code to convert this back into a bean is:
-                       </p>
-                       <p class='bcode'>
-       <jc>// Parse it back into a bean using the reusable XML parser.</jc>
-       Person p = XmlParser.<jsf>DEFAULT</jsf>.parse(xml, 
Person.<jk>class</jk>);
-
-       <jc>// Render it as JSON.</jc>
-       String json = 
JsonSerializer.<jsf>DEFAULT_LAX_READABLE</jsf>.serialize(p);
-                       </p>
+                               The {@link org.apache.juneau.xml.XmlParser} 
class is used to parse XML into POJOs.
+                       </p>    
                        <p>
-                               We print it out to JSON to show that all the 
data has been preserved:
+                               The XML parser provides the following settings:
                        </p>
-                       <p class='bcode'>
-       {
-               id: 1, 
-               name: <js>'John Smith'</js>, 
-               uri: <js>'http://sample/addressBook/person/1'</js>, 
-               addressBookUri: <js>'http://sample/addressBook'</js>, 
-               birthDate: <js>'1946-08-12T00:00:00Z'</js>, 
-               addresses: [
-                       {
-                               uri: 
<js>'http://sample/addressBook/address/1'</js>, 
-                               personUri: 
<js>'http://sample/addressBook/person/1'</js>, 
-                               id: 1, 
-                               street: <js>'100 Main Street'</js>, 
-                               city: <js>'Anywhereville'</js>, 
-                               state: <js>'NY'</js>, 
-                               zip: 12345, 
-                               isCurrent: <jk>true</jk>
-                       }
-               ]
-       }       
+                       <ul class='doctree'>
+                               <li class='link'><a class='doclink' 
href='#juneau-marshall.ConfigurableProperties.Common'>Common Properties</a>
+                               <li class='link'><a class='doclink' 
href='#juneau-marshall.ConfigurableProperties.CommonParser'>Common Parser 
Properties</a>
+                               <li class='jc'>{@link 
org.apache.juneau.xml.XmlParser}
+                               <ul>
+                                       <li class='jf'>{@link 
org.apache.juneau.xml.XmlParser#XML_eventAllocator XML_eventAllocator}
+                                       <li class='jf'>{@link 
org.apache.juneau.xml.XmlParser#XML_preserveRootElement XML_preserveRootElement}
+                                       <li class='jf'>{@link 
org.apache.juneau.xml.XmlParser#XML_reporter XML_reporter}
+                                       <li class='jf'>{@link 
org.apache.juneau.xml.XmlParser#XML_resolver XML_resolver}
+                                       <li class='jf'>{@link 
org.apache.juneau.xml.XmlParser#XML_validating XML_validating}                  
          
+                               </ul>
+                       </ul>
+                       <p>
+                               The following pre-configured parsers are 
provided for convenience:
                        </p>
+                       <ul class='doctree'>
+                               <li class='jc'>{@link 
org.apache.juneau.xml.XmlParser}
+                               <ul>
+                                       <li class='jf'>{@link 
org.apache.juneau.xml.XmlParser#DEFAULT DEFAULT}
+                               </ul>
+                       </ul>
                </div>          
                
                <!-- 
=======================================================================================================
 -->
                <a id="juneau-marshall.XmlDetails.BeanTypeNameAnnotation"></a>
-               <h4 class='topic' onclick='toggle(this)'>2.17.4 - 
@Bean(typeName) Annotation</h4>
+               <h4 class='topic' onclick='toggle(this)'>2.16.4 - 
@Bean(typeName) Annotation</h4>
                <div class='topic'>
                        <p>
                                The {@link 
org.apache.juneau.annotation.Bean#typeName() @Bean.typeName()} annotation can 
be used to 
@@ -4963,7 +4932,7 @@
                                {@link 
org.apache.juneau.annotation.Bean#beanDictionary() @Bean.beanDictionary()} and 
                                {@link 
org.apache.juneau.annotation.BeanProperty#beanDictionary() 
@BeanProperty.beanDictionary()} 
                                annotations so that the beans can be resolved 
at parse time.  
-                               These annotations are not necessary during 
serialization, but are needed during parsing in order to 
+                               <br>These annotations are not necessary during 
serialization, but are needed during parsing in order to 
                                resolve the bean types.
                        </p>
                        <p>
@@ -5085,7 +5054,7 @@
                        </table>
                        <p>
                                Bean type names are also used for resolution 
when abstract fields are used.
-                               The following examples show how they are used 
in a variety of circumstances.
+                               <br>The following examples show how they are 
used in a variety of circumstances.
                        </p>
                        <table class='styled' style='width:auto'>
                                <tr>
@@ -5288,10 +5257,10 @@
                        </table>
                        <p>
                                On a side note, characters that cannot be 
represented in XML 1.0 are encoded using a simple encoding.
-                               Note in the examples below, some characters 
such as <js>'\n'</js>, <js>'\t</js>', and <js>'\r'</js>
+                               <br>Note in the examples below, some characters 
such as <js>'\n'</js>, <js>'\t</js>', and <js>'\r'</js>
                                can be represented as XML entities when used in 
text but not in element names.  Other characters such as
                                <js>'\b'</js> and <js>'\f'</js> cannot be 
encoded in XML 1.0 at all without inventing our own notation.
-                               Whitespace characters in element names are 
encoded as well as whitespace end characters in text.
+                               <br>Whitespace characters in element names are 
encoded as well as whitespace end characters in text.
                        </p>
                        <table class='styled' style='width:auto'>
                                <tr>
@@ -5320,7 +5289,9 @@
                                        </td>
                                        <td class='code'><xt>
        &lt;_x0020__x0020__x0008__x000C__x000A__x0009__x000D__x0020__x0020_&gt;
-               
&lt;_x0020__x0020__x0008__x000C__x000A__x0009__x000D__x0020__x0020_&gt;<xv>_x0020_
 _x0008__x000C_&amp;#x000a;&amp;#x0009;&amp;#x000d; 
_x0020_</xv>&lt;/_x0020__x0020__x0008__x000C__x000A__x0009__x000D__x0020__x0020_&gt;
+               
&lt;_x0020__x0020__x0008__x000C__x000A__x0009__x000D__x0020__x0020_&gt;
+                       <xv>_x0020_ 
_x0008__x000C_&amp;#x000a;&amp;#x0009;&amp;#x000d; _x0020_</xv>
+               
&lt;/_x0020__x0020__x0008__x000C__x000A__x0009__x000D__x0020__x0020_&gt;
        &lt;/_x0020__x0020__x0008__x000C__x000A__x0009__x000D__x0020__x0020_&gt;
                                        </xt></td>
                                </tr>
@@ -5328,7 +5299,7 @@
                        <p>
                                While it's true that these characters CAN be 
represented in XML 1.1, it's impossible to parse XML 1.1 
                                text in Java without the XML containing an XML 
declaration.
-                               Unfortunately, this, and the uselessness of the 
+                               <br>Unfortunately, this, and the uselessness of 
the 
                                {@link 
javax.xml.stream.XMLInputFactory#IS_REPLACING_ENTITY_REFERENCES} setting in Java
                                forced us to make some hard design decisions 
that may not be the most elegant.
                        </p>
@@ -5336,7 +5307,7 @@
                
                <!-- 
=======================================================================================================
 -->
                <a id="juneau-marshall.XmlDetails.XmlChildNameAnnotation"></a>
-               <h4 class='topic' onclick='toggle(this)'>2.17.5 - 
@Xml(childName) Annotation</h4>
+               <h4 class='topic' onclick='toggle(this)'>2.16.5 - 
@Xml(childName) Annotation</h4>
                <div class='topic'>
                        <p>
                                The {@link 
org.apache.juneau.xml.annotation.Xml#childName() @Xml.childName()} annotation 
can be used to 
@@ -5425,7 +5396,7 @@
 
                <!-- 
=======================================================================================================
 -->
                <a id="juneau-marshall.XmlDetails.XmlFormatAnnotation"></a>
-               <h4 class='topic' onclick='toggle(this)'>2.17.6 - @Xml(format) 
Annotation</h4>
+               <h4 class='topic' onclick='toggle(this)'>2.16.6 - @Xml(format) 
Annotation</h4>
                <div class='topic'>
                        <p>
                                The {@link 
org.apache.juneau.xml.annotation.Xml#format() @Xml.format()} annotation can be 
used to tweak 
@@ -6138,7 +6109,7 @@
 
                <!-- 
=======================================================================================================
 -->
                <a id="juneau-marshall.XmlDetails.Namespaces"></a>
-               <h4 class='topic' onclick='toggle(this)'>2.17.7- Namespaces</h4>
+               <h4 class='topic' onclick='toggle(this)'>2.16.7- Namespaces</h4>
                <div class='topic'>
                        <p>
                                Let's go back to the example of our original 
<code>Person</code> bean class:
@@ -6301,13 +6272,13 @@
 
                <!-- 
=======================================================================================================
 -->
                <a id="juneau-marshall.XmlDetails.UriProperties"></a>
-               <h4 class='topic' onclick='toggle(this)'>2.17.8- URI 
Properties</h4>
+               <h4 class='topic' onclick='toggle(this)'>2.16.8- URI 
Properties</h4>
                <div class='topic'>
                </div>
                
                <!-- 
=======================================================================================================
 -->
                <a id="juneau-marshall.XmlDetails.XmlSchema"></a>
-               <h4 class='topic' onclick='toggle(this)'>2.17.9 - XML-Schema 
Support</h4>
+               <h4 class='topic' onclick='toggle(this)'>2.16.9 - XML-Schema 
Support</h4>
                <div class='topic'>
                        <p>
                                Juneau provides the {@link 
org.apache.juneau.xml.XmlSchemaSerializer} class for generating XML-Schema 
@@ -6645,12 +6616,12 @@
 
        <!-- 
=======================================================================================================
 -->
        <a id="juneau-marshall.HtmlDetails"></a>
-       <h3 class='topic' onclick='toggle(this)'>2.18 - HTML Details</h3>
+       <h3 class='topic' onclick='toggle(this)'>2.17 - HTML Details</h3>
        <div class='topic'>
                
                <!-- 
=======================================================================================================
 -->
                <a id="juneau-marshall.HtmlDetails.HtmlMethodology"></a>
-               <h4 class='topic' onclick='toggle(this)'>2.18.1 - HTML 
Methodology</h4>
+               <h4 class='topic' onclick='toggle(this)'>2.17.1 - HTML 
Methodology</h4>
                <div class='topic'>
 
                        <p>
@@ -7169,32 +7140,105 @@
                
                <!-- 
=======================================================================================================
 -->
                <a id="juneau-marshall.HtmlDetails.HtmlSerializers"></a>
-               <h4 class='topic' onclick='toggle(this)'>2.18.2 - HTML 
Serializers</h4>
+               <h4 class='topic' onclick='toggle(this)'>2.17.2 - HTML 
Serializers</h4>
                <div class='topic'>
+                       <p>
+                               The {@link 
org.apache.juneau.html.HtmlSerializer} class is used to serialize POJOs into 
HTML.
+                       </p>    
+                       <p>
+                               The {@link 
org.apache.juneau.html.HtmlDocSerializer} class is the same, but wraps the 
serialized POJO
+                               inside a document template consisting of 
header, nav, aside, and footer sections.
+                       </p>
+                       <p>
+                               The HTML serializers provides the following 
settings:
+                       </p>
+                       <ul class='doctree'>
+                               <li class='link'><a class='doclink' 
href='#juneau-marshall.ConfigurableProperties.Common'>Common Properties</a>
+                               <li class='link'><a class='doclink' 
href='#juneau-marshall.ConfigurableProperties.CommonSerializer'>Common 
Serializer Properties</a>
+                               <li class='jc'>{@link 
org.apache.juneau.html.HtmlSerializer}
+                               <ul>
+                                       <li class='jf'>{@link 
org.apache.juneau.html.HtmlSerializer#HTML_addBeanTypeProperties 
HTML_addBeanTypeProperties}
+                                       <li class='jf'>{@link 
org.apache.juneau.html.HtmlSerializer#HTML_addKeyValueTableHeaders 
HTML_addKeyValueTableHeaders}
+                                       <li class='jf'>{@link 
org.apache.juneau.html.HtmlSerializer#HTML_detectLabelParameters 
HTML_detectLabelParameters}
+                                       <li class='jf'>{@link 
org.apache.juneau.html.HtmlSerializer#HTML_detectLinksInStrings 
HTML_detectLinksInStrings}
+                                       <li class='jf'>{@link 
org.apache.juneau.html.HtmlSerializer#HTML_labelParameter HTML_labelParameter}
+                                       <li class='jf'>{@link 
org.apache.juneau.html.HtmlSerializer#HTML_uriAnchorText HTML_uriAnchorText}
+                               </ul>
+                               <li class='jc'>{@link 
org.apache.juneau.html.HtmlDocSerializer}
+                               <ul>
+                                       <li class='jf'>{@link 
org.apache.juneau.html.HtmlDocSerializer#HTMLDOC_aside HTMLDOC_aside}
+                                       <li class='jf'>{@link 
org.apache.juneau.html.HtmlDocSerializer#HTMLDOC_footer HTMLDOC_footer}
+                                       <li class='jf'>{@link 
org.apache.juneau.html.HtmlDocSerializer#HTMLDOC_head HTMLDOC_head}
+                                       <li class='jf'>{@link 
org.apache.juneau.html.HtmlDocSerializer#HTMLDOC_header HTMLDOC_header}
+                                       <li class='jf'>{@link 
org.apache.juneau.html.HtmlDocSerializer#HTMLDOC_nav HTMLDOC_nav}
+                                       <li class='jf'>{@link 
org.apache.juneau.html.HtmlDocSerializer#HTMLDOC_navlinks HTMLDOC_navlinks}
+                                       <li class='jf'>{@link 
org.apache.juneau.html.HtmlDocSerializer#HTMLDOC_noResultsMessage 
HTMLDOC_noResultsMessage}
+                                       <li class='jf'>{@link 
org.apache.juneau.html.HtmlDocSerializer#HTMLDOC_nowrap HTMLDOC_nowrap}
+                                       <li class='jf'>{@link 
org.apache.juneau.html.HtmlDocSerializer#HTMLDOC_script HTMLDOC_script}
+                                       <li class='jf'>{@link 
org.apache.juneau.html.HtmlDocSerializer#HTMLDOC_style HTMLDOC_style}
+                                       <li class='jf'>{@link 
org.apache.juneau.html.HtmlDocSerializer#HTMLDOC_stylesheet HTMLDOC_stylesheet}
+                                       <li class='jf'>{@link 
org.apache.juneau.html.HtmlDocSerializer#HTMLDOC_template HTMLDOC_template}     
                          
+                               </ul>
+                       </ul>
+                       <p>
+                               The following pre-configured serializers are 
provided for convenience:
+                       </p>
+                       <ul class='doctree'>
+                               <li class='jc'>{@link 
org.apache.juneau.html.HtmlSerializer}
+                               <ul>
+                                       <li class='jf'>{@link 
org.apache.juneau.html.HtmlSerializer#DEFAULT }
+                                       <li class='jf'>{@link 
org.apache.juneau.html.HtmlSerializer#DEFAULT_SQ }
+                                       <li class='jf'>{@link 
org.apache.juneau.html.HtmlSerializer#DEFAULT_SQ_READABLE }
+                               </ul>
+                               <li class='jc'>{@link 
org.apache.juneau.html.HtmlDocSerializer}
+                               <ul>
+                                       <li class='jf'>{@link 
org.apache.juneau.html.HtmlDocSerializer#DEFAULT }
+                               </ul>
+                       </ul>
                </div>          
                
                <!-- 
=======================================================================================================
 -->
                <a id="juneau-marshall.HtmlDetails.HtmlParsers"></a>
-               <h4 class='topic' onclick='toggle(this)'>2.18.3 - HTML 
Parsers</h4>
+               <h4 class='topic' onclick='toggle(this)'>2.17.3 - HTML 
Parsers</h4>
                <div class='topic'>
+                       <p>
+                               The {@link org.apache.juneau.html.HtmlParser} 
class is used to parse HTML into POJOs.
+                               <br>They can also parse the contents produced 
by {@link org.apache.juneau.html.HtmlDocSerializer}.
+                       </p>    
+                       <p>
+                               The HTML parser provides the following settings:
+                       </p>
+                       <ul class='doctree'>
+                               <li class='link'><a class='doclink' 
href='#juneau-marshall.ConfigurableProperties.Common'>Common Properties</a>
+                               <li class='link'><a class='doclink' 
href='#juneau-marshall.ConfigurableProperties.CommonParser'>Common Parser 
Properties</a>
+                       </ul>
+                       <p>
+                               The following pre-configured parsers are 
provided for convenience:
+                       </p>
+                       <ul class='doctree'>
+                               <li class='jc'>{@link 
org.apache.juneau.html.HtmlParser}
+                               <ul>
+                                       <li class='jf'>{@link 
org.apache.juneau.html.HtmlParser#DEFAULT DEFAULT}
+                               </ul>
+                       </ul>
                </div>          
                
                <!-- 
=======================================================================================================
 -->
                <a id="juneau-marshall.HtmlDetails.HtmlAnnotation"></a>
-               <h4 class='topic' onclick='toggle(this)'>2.18.4 - @Html 
Annotation</h4>
+               <h4 class='topic' onclick='toggle(this)'>2.17.4 - @Html 
Annotation</h4>
                <div class='topic'>
                </div>
 
                <!-- 
=======================================================================================================
 -->
                <a id="juneau-marshall.HtmlDetails.HtmlSchema"></a>
-               <h4 class='topic' onclick='toggle(this)'>2.18.5 - HTML-Schema 
Support</h4>
+               <h4 class='topic' onclick='toggle(this)'>2.17.5 - HTML-Schema 
Support</h4>
                <div class='topic'>
                </div>          
        </div>
 
        <!-- 
=======================================================================================================
 -->
        <a id="juneau-marshall.UonDetails"></a>
-       <h3 class='topic' onclick='toggle(this)'>2.19 - UON Details</h3>
+       <h3 class='topic' onclick='toggle(this)'>2.18 - UON Details</h3>
        <div class='topic'>
 
                <p>
@@ -7392,252 +7436,78 @@
                
                <!-- 
=======================================================================================================
 -->
                <a id="juneau-marshall.UonDetails.UonMethodology"></a>
-               <h4 class='topic' onclick='toggle(this)'>2.19.1 - UON 
Methodology</h4>
+               <h4 class='topic' onclick='toggle(this)'>2.18.1 - UON 
Methodology</h4>
                <div class='topic'>
                </div>
                
                <!-- 
=======================================================================================================
 -->
                <a id="juneau-marshall.UonDetails.UonSerializers"></a>
-               <h4 class='topic' onclick='toggle(this)'>2.19.2 - UON 
Serializers</h4>
+               <h4 class='topic' onclick='toggle(this)'>2.18.2 - UON 
Serializers</h4>
                <div class='topic'>
                        <p>
-                               {@link 
org.apache.juneau.urlencoding.UrlEncodingSerializer} and {@link 
org.apache.juneau.uon.UonSerializer} 
-                               classes are used to convert POJOs to 
URL-encoded strings.
-                               <br>The <code>UonSerializer</code> class 
converts parameter values to UON notation. 
-                               The <code>UrlEncodingSerializer</code> class 
converts a POJO to key/value URL-Encoded pairs using 
-                               <code>UonSerializer</code> to serialize the 
values.
-                               If you're trying to construct complete 
URL-Encoded entities, use <code>UrlEncodingSerializer</code>. 
-                               If you're constructing your own key/value 
pairs, use <code>UonSerializer</code>.
+                               The {@link org.apache.juneau.uon.UonSerializer} 
class is used to serialize POJOs into UON.
                        </p>    
                        <p>
-                               The serializers include several configurable 
settings.
-                               <br>Static reusable instances of serializers 
are provided with commonly-used settings:
+                               The UON serializers provides the following 
settings:
                        </p>
-                       <ul class='spaced-list'>
-                               <li>
-                                       {@link 
org.apache.juneau.urlencoding.UrlEncodingSerializer#DEFAULT} - All default 
settings, strict mode.
-                               <li>
-                                       {@link 
org.apache.juneau.urlencoding.UrlEncodingSerializer#DEFAULT_READABLE} - Use 
whitespace and 
-                                       indentation for readability.
-                               <li>
-                                       {@link 
org.apache.juneau.uon.UonSerializer#DEFAULT} - All default settings, strict 
mode.
-                               <li>
-                                       {@link 
org.apache.juneau.uon.UonSerializer#DEFAULT_READABLE} - Use whitespace and 
indentation for 
-                                       readability.
-                               <li>
-                                       {@link 
org.apache.juneau.uon.UonSerializer#DEFAULT_ENCODING} - Same as DEFAULT, but 
use URL-Encoding on 
-                                       special characters.
+                       <ul class='doctree'>
+                               <li class='link'><a class='doclink' 
href='#juneau-marshall.ConfigurableProperties.Common'>Common Properties</a>
+                               <li class='link'><a class='doclink' 
href='#juneau-marshall.ConfigurableProperties.CommonSerializer'>Common 
Serializer Properties</a>
+                               <li class='jc'>{@link 
org.apache.juneau.uon.UonSerializer}
+                               <ul>
+                                       <li class='jf'>{@link 
org.apache.juneau.uon.UonSerializer#UON_addBeanTypeProperties 
UON_addBeanTypeProperties}
+                                       <li class='jf'>{@link 
org.apache.juneau.uon.UonSerializer#UON_encoding UON_encoding}
+                                       <li class='jf'>{@link 
org.apache.juneau.uon.UonSerializer#UON_paramFormat UON_paramFormat}            
                          
+                               </ul>
                        </ul>
                        <p>
-                               The general guidelines on which serializer to 
use is:
+                               The following pre-configured serializers are 
provided for convenience:
                        </p>
-                       <ul class='spaced-list'>
-                               <li>
-                                       Use encoding serializers when you're 
using the results to construct a URI yourself, and therefore 
-                                       need invalid URI characters to be 
encoded.
-                               <li>
-                                       Use un-encoding serializers when you're 
creating parameter values and passing them off to some other
-                                       utility class that will itself encode 
invalid URI characters.
-                               <li>
-                                       Use the readable serializer for 
debugging purposes.
+                       <ul class='doctree'>
+                               <li class='jc'>{@link 
org.apache.juneau.uon.UonSerializer}
+                               <ul>
+                                       <li class='jf'>{@link 
org.apache.juneau.uon.UonSerializer#DEFAULT DEFAULT}
+                                       <li class='jf'>{@link 
org.apache.juneau.uon.UonSerializer#DEFAULT_ENCODING DEFAULT_ENCODING}
+                                       <li class='jf'>{@link 
org.apache.juneau.uon.UonSerializer#DEFAULT_READABLE DEFAULT_READABLE}
+                               </ul>
                        </ul>
+               </div>          
                
-                       <h5 class='topic'>Notes about examples</h5>
-                       <p>
-                               The examples shown in this document will use 
default strict settings.
-                               <br>For brevity, the examples will use public 
fields instead of getters/setters to reduce the size of the 
-                               examples.
-                               <br>In the real world, you'll typically want to 
use standard bean getters and setters.
-                       </p>
-                       <p>
-                               To start off simple, we'll begin with the 
following simplified bean and build upon it.
-                       </p>
-                       <p class='bcode'>
-       <jk>public class</jk> Person {
-               <jc>// Bean properties</jc>
-               <jk>public int</jk> <jf>id</jf>;
-               <jk>public</jk> String <jf>name</jf>;
-
-               <jc>// Bean constructor (needed by parser)</jc>
-               <jk>public</jk> Person() {}
-
-               <jc>// Normal constructor</jc>
-               <jk>public</jk> Person(<jk>int</jk> id, String name) {
-                       <jk>this</jk>.<jf>id</jf> = id;
-                       <jk>this</jk>.<jf>name</jf> = name;
-               }
-       }
-                       </p>
+               <!-- 
=======================================================================================================
 -->
+               <a id="juneau-marshall.UonDetails.UonParsers"></a>
+               <h4 class='topic' onclick='toggle(this)'>2.18.3 - UON 
Parsers</h4>
+               <div class='topic'>
                        <p>
-                               The following code shows how to convert this to 
a URL-encoded value:
-                       </p>
-                       <p class='bcode'>
-       <jc>// Use serializer with readable output, simple mode.</jc>
-       UonSerializer s = UonSerializer.<jsf>DEFAULT</jsf>;
-
-       <jc>// Create our bean.</jc>
-       Person p = <uk>new</uk> Person(1, <js>"John Smith"</js>);
-
-       <jc>// Serialize the bean to URL-encoded parameter value.</jc>
-       String urlencoded = s.serialize(p);
-                       </p>
+                               The {@link org.apache.juneau.uon.UonParser} 
class is used to parse UON into POJOs.
+                       </p>    
                        <p>
-                               The code above produces the following output:
-                       </p>
-                       <p class='bcode'>
-       (<ua>id</ua>=<un>1</un>,<ua>name</ua>=<us>'John+Smith'</us>)
+                               The UON parser provides the following settings:
                        </p>
+                       <ul class='doctree'>
+                               <li class='link'><a class='doclink' 
href='#juneau-marshall.ConfigurableProperties.Common'>Common Properties</a>
+                               <li class='link'><a class='doclink' 
href='#juneau-marshall.ConfigurableProperties.CommonParser'>Common Parser 
Properties</a>
+                               <li class='jc'>{@link 
org.apache.juneau.uon.UonParser}
+                               <ul>
+                                       <li class='jf'>{@link 
org.apache.juneau.uon.UonParser#UON_decoding UON_decoding}
+                                       <li class='jf'>{@link 
org.apache.juneau.uon.UonParser#UON_validateEnd UON_validateEnd}
+                               </ul>
+                       </ul>
                        <p>
-                               The {@link 
org.apache.juneau.urlencoding.UrlEncodingSerializer} class converts
-                               maps and beans into top-level query parameter 
strings.
+                               The following pre-configured parsers are 
provided for convenience:
                        </p>
-                       <p class='bcode'>
-       <jc>// Use serializer with readable output, simple mode.</jc>
-       UrlEncodingSerializer s = UrlEncodingSerializer.<jsf>DEFAULT</jsf>;
-       
-       <jc>// Serialize the bean to URL-encoded query string.</jc>
-       String urlencoded = s.serialize(p);
-                       </p>
-                       <p>
-                               The code above produces the following output:
-                       </p>
-                       <p class='bcode'>
-       <ua>id</ua>=<un>1</un>&amp;<ua>name</ua>=<us>'John+Smith'</us>
-                       </p>
-                       <p>
-                               By default, the 
<code>UrlEncodingSerializer</code> class will URL-Encode special characters, 
and the 
-                               <code>UonSerializer</code> will NOT URL-encode 
special characters.  
-                       </p>
-               </div>          
-               
-               <!-- 
=======================================================================================================
 -->
-               <a id="juneau-marshall.UonDetails.UonParsers"></a>
-               <h4 class='topic' onclick='toggle(this)'>2.19.3 - UON 
Parsers</h4>
-               <div class='topic'>
-                       <p>
-                               {@link 
org.apache.juneau.urlencoding.UrlEncodingParser} and {@link 
org.apache.juneau.uon.UonParser} classes are 
-                               used to convert URL-encoded strings back into 
POJOs.
-                               <br>The <code>UonParser</code> class converts 
UON-encoded parameter values to POJOs.
-                               The <code>UrlEncodingParser</code> class 
converts entire URL-Encoded strings to POJOs using 
-                               <code>UonSerializer</code> to serialize 
individual values.
-                               If you're trying to parse an entire URL-Encoded 
string, use <code>UrlEncodingParser</code>. 
-                               If you're trying to parse an individual value 
(such as that returned by 
-                               
<code>RestServlet.getQueryParameter(name)</code>), use <code>UonParser</code>.
-                       </p>    
-                       <p>
-                               The following static reusable instances of 
<code>UrlEncodingParser</code> are provided for convenience:
-                       </p>
-                       <ul class='spaced-list'>
-                               <li>
-                                       {@link 
org.apache.juneau.urlencoding.UrlEncodingParser#DEFAULT} 
-                                       - Default parser for entire URL-encoded 
strings, decode <code>%xx</code> sequences.
-                               <li>
-                                       {@link 
org.apache.juneau.uon.UonParser#DEFAULT} 
-                                       - Default parser for URL-encoded 
parameter values, don't decode <code>%xx</code> sequences.
-                               <li>
-                                       {@link 
org.apache.juneau.uon.UonParser#DEFAULT_DECODING} 
-                                       - Default parser for URL-encoded 
parameter values, decode <code>%xx</code> sequences.
-                       </ul>
-                       <p>
-                               The general guidelines on which parser to use 
is:
-                       </p>
-                       <ul class='spaced-list'>
-                               <li>
-                                       Use the <code>DEFAULT</code> parser for 
parameter values that have already had <code>%xx</code> sequences 
-                                       decoded, such as when using 
<code>HttpServletRequest.getQueryParameter(name)</code>.
-                               <li>
-                                       Use the <code>DEFAULT_ENCODED</code> 
parser if the input has not already had <code>%xx</code> sequences 
-                                       decoded.
+                       <ul class='doctree'>
+                               <li class='jc'>{@link 
org.apache.juneau.uon.UonParser}
+                               <ul>
+                                       <li class='jf'>{@link 
org.apache.juneau.uon.UonParser#DEFAULT DEFAULT}
+                                       <li class='jf'>{@link 
org.apache.juneau.uon.UonParser#DEFAULT_DECODING DEFAULT_DECODING}              
          
+                               </ul>
                        </ul>
-                       <p>
-                               Let's build upon the previous example and parse 
the generated URL-encoded string back into the original bean.
-                               <br>We start with the URL-encoded string that 
was generated.
-                       </p>
-                       <p class='bcode'>
-       <jc>// Use serializer with readable output.</jc>
-       UonSerializer s = UonSerializer.<jsf>DEFAULT_READABLE</jsf>;
-
-       <jc>// Create our bean.</jc>
-       Person p = <jk>new</jk> Person(1, <js>"John Smith"</js>, 
<js>"http://sample/addressBook/person/1";</js>, 
-               <js>"http://sample/addressBook";</js>, <js>"Aug 12, 1946"</js>);
-       Address a = <jk>new</jk> Address();
-       a.<jf>uri</jf> = <jk>new</jk> 
URI(<js>"http://sample/addressBook/address/1";</js>);
-       a.<jf>personUri</jf> = <jk>new</jk> 
URI(<js>"http://sample/addressBook/person/1";</js>);
-       a.<jf>id</jf> = 1;
-       a.<jf>street</jf> = <js>"100 Main Street"</js>;
-       a.<jf>city</jf> = <js>"Anywhereville"</js>;
-       a.<jf>state</jf> = <js>"NY"</js>;
-       a.<jf>zip</jf> = 12345;
-       a.<jf>isCurrent</jf> = <jk>true</jk>;
-       p.<jf>addresses</jf>.add(a);    
-
-       <jc>// Serialize the bean.</jc>
-       String urlencoded = s.serialize(p);
-                       </p>
-                       <p>
-                               This code produced the following:
-                       </p>
-                       <p class='bcode'>
-       (
-               <ua>id</ua>=<un>1</un>, 
-               <ua>name</ua>=<us>'John+Smith'</us>, 
-               <ua>uri</ua>=<us>http://sample/addressBook/person/1</us>, 
-               <ua>addressBookUri</ua>=<us>http://sample/addressBook</us>,
-               <ua>birthDate</ua>=<us>1946-08-12T00:00:00Z</us>,
-               <ua>addresses</ua>=@(
-                       (
-                               
<ua>uri</ua>=<us>http://sample/addressBook/address/1</us>, 
-                               
<ua>personUri</ua>=<us>http://sample/addressBook/person/1</us>, 
-                               <ua>id</ua>=<un>1</un>, 
-                               <ua>street</ua>=<us>'100+Main+Street'</us>, 
-                               <ua>city</ua>=<us>Anywhereville</us>, 
-                               <ua>state</ua>=<us>NY</us>, 
-                               <ua>zip</ua>=<un>12345</un>, 
-                               <ua>isCurrent</ua>=<uk>true</uk>
-                       )
-               )
-       )
-                       </p>
-                       <p>
-                               The code to convert this back into a bean is:
-                       </p>
-                       <p class='bcode'>
-       <jc>// Parse it back into a bean using the reusable JSON parser.</jc>
-       Person p = UonParser.<jsf>DEFAULT</jsf>.parse(urlencoded, 
Person.<jk>class</jk>);
-
-       <jc>// Render it back as JSON.</jc>
-       json = JsonSerializer.<jsf>DEFAULT_LAX_READABLE</jsf>.serialize(p);
-                       </p>
-                       <p>
-                               We print it back out to JSON to show that all 
the data has been preserved:
-                       </p>
-                       <p class='bcode'>
-       {
-               id: <un>1</un>, 
-               name: <js>'John Smith'</js>, 
-               uri: <js>'http://sample/addressBook/person/1'</js>, 
-               addressBookUri: <js>'http://sample/addressBook'</js>, 
-               birthDate: <js>'1946-08-12T00:00:00Z'</js>, 
-               addresses: [
-                       {
-                               uri: 
<js>'http://sample/addressBook/address/1'</js>, 
-                               personUri: 
<js>'http://sample/addressBook/person/1'</js>, 
-                               id: <un>1</un>, 
-                               street: <js>'100 Main Street'</js>, 
-                               city: <js>'Anywhereville'</js>, 
-                               state: <js>'NY'</js>, 
-                               zip: <un>12345</un>, 
-                               isCurrent: <jk>true</jk>
-                       }
-               ]
-       }       
-                       </p>
                </div>          
        </div>
        
        <!-- 
=======================================================================================================
 -->
        <a id="juneau-marshall.UrlEncodingDetails"></a>
-       <h3 class='topic' onclick='toggle(this)'>2.20 - URL-Encoding 
Details</h3>
+       <h3 class='topic' onclick='toggle(this)'>2.19 - URL-Encoding 
Details</h3>
        <div class='topic'>
                <p>
                        Juneau supports converting arbitrary POJOs to and from 
URL-encoded strings using ultra-efficient serializers 
@@ -7834,299 +7704,194 @@
                
                <!-- 
=======================================================================================================
 -->
                <a 
id="juneau-marshall.UrlEncodingDetails.UrlEncodingMethodology"></a>
-               <h4 class='topic' onclick='toggle(this)'>2.20.1 - URL-Encoding 
Methodology</h4>
+               <h4 class='topic' onclick='toggle(this)'>2.19.1 - URL-Encoding 
Methodology</h4>
                <div class='topic'>
                </div>
                
                <!-- 
=======================================================================================================
 -->
                <a 
id="juneau-marshall.UrlEncodingDetails.UrlEncodingSerializers"></a>
-               <h4 class='topic' onclick='toggle(this)'>2.20.2 - URL-Encoding 
Serializers</h4>
+               <h4 class='topic' onclick='toggle(this)'>2.19.2 - URL-Encoding 
Serializers</h4>
                <div class='topic'>
                        <p>
-                               {@link 
org.apache.juneau.urlencoding.UrlEncodingSerializer} and {@link 
org.apache.juneau.uon.UonSerializer} 
-                               classes are used to convert POJOs to 
URL-encoded strings.
-                               <br>The <code>UonSerializer</code> class 
converts parameter values to UON notation. 
-                               The <code>UrlEncodingSerializer</code> class 
converts a POJO to key/value URL-Encoded pairs using 
-                               <code>UonSerializer</code> to serialize the 
values.
-                               If you're trying to construct complete 
URL-Encoded entities, use <code>UrlEncodingSerializer</code>. 
-                               If you're constructing your own key/value 
pairs, use <code>UonSerializer</code>.
+                               The {@link 
org.apache.juneau.urlencoding.UrlEncodingSerializer} class is used to serialize 
POJOs into URL-Encoding.
                        </p>    
                        <p>
-                               The serializers include several configurable 
settings.
-                               <br>Static reusable instances of serializers 
are provided with commonly-used settings:
+                               The URL-Encoding serializers provides the 
following settings:
                        </p>
-                       <ul class='spaced-list'>
-                               <li>
-                                       {@link 
org.apache.juneau.urlencoding.UrlEncodingSerializer#DEFAULT} 
-                                       - All default settings, strict mode.
-                               <li>
-                                       {@link 
org.apache.juneau.urlencoding.UrlEncodingSerializer#DEFAULT_READABLE} 
-                                       - Use whitespace and indentation for 
readability.
-                               <li>
-                                       {@link 
org.apache.juneau.uon.UonSerializer#DEFAULT} 
-                                       - All default settings, strict mode.
-                               <li>
-                                       {@link 
org.apache.juneau.uon.UonSerializer#DEFAULT_READABLE} 
-                                       - Use whitespace and indentation for 
readability.
-                               <li>
-                                       {@link 
org.apache.juneau.uon.UonSerializer#DEFAULT_ENCODING} 
-                                       - Same as DEFAULT, but use URL-Encoding 
on special characters.
+                       <ul class='doctree'>
+                               <li class='link'><a class='doclink' 
href='#juneau-marshall.ConfigurableProperties.Common'>Common Properties</a>
+                               <li class='link'><a class='doclink' 
href='#juneau-marshall.ConfigurableProperties.CommonSerializer'>Common 
Serializer Properties</a>
+                               <li class='jc'>{@link 
org.apache.juneau.urlencoding.UrlEncodingSerializer}
+                               <ul>
+                                       <li class='jf'>{@link 
org.apache.juneau.urlencoding.UrlEncodingSerializer#URLENC_expandedParams 
URLENC_expandedParams}
+                               </ul>
                        </ul>
                        <p>
-                               The general guidelines on which serializer to 
use is:
+                               The following pre-configured serializers are 
provided for convenience:
                        </p>
-                       <ul class='spaced-list'>
-                               <li>
-                                       Use encoding serializers when you're 
using the results to construct a URI yourself, and therefore 
-                                       need invalid URI characters to be 
encoded.
-                               <li>
-                                       Use un-encoding serializers when you're 
creating parameter values and passing them off to some other
-                                       utility class that will itself encode 
invalid URI characters.
-                               <li>
-                                       Use the readable serializer for 
debugging purposes.
+                       <ul class='doctree'>
+                               <li class='jc'>{@link 
org.apache.juneau.urlencoding.UrlEncodingSerializer}
+                               <ul>
+                                       <li class='jf'>{@link 
org.apache.juneau.urlencoding.UrlEncodingSerializer#DEFAULT DEFAULT}
+                                       <li class='jf'>{@link 
org.apache.juneau.urlencoding.UrlEncodingSerializer#DEFAULT_EXPANDED 
DEFAULT_EXPANDED}
+                                       <li class='jf'>{@link 
org.apache.juneau.urlencoding.UrlEncodingSerializer#DEFAULT_PLAINTEXT 
DEFAULT_PLAINTEXT}
+                                       <li class='jf'>{@link 
org.apache.juneau.urlencoding.UrlEncodingSerializer#DEFAULT_READABLE 
DEFAULT_READABLE}            
+                                       
+                               </ul>
                        </ul>
-               
-                       <h5 class='topic'>Notes about examples</h5>
-                       <p>
-                               The examples shown in this document will use 
default strict settings.
-                               <br>For brevity, the examples will use public 
fields instead of getters/setters to reduce the size of the examples.
-                               <br>In the real world, you'll typically want to 
use standard bean getters and setters.
-                       </p>
-                       <p>
-                               To start off simple, we'll begin with the 
following simplified bean and build upon it.
-                       </p>
-                       <p class='bcode'>
-       <jk>public class</jk> Person {
-               <jc>// Bean properties</jc>
-               <jk>public int</jk> <jf>id</jf>;
-               <jk>public</jk> String <jf>name</jf>;
-
-               <jc>// Bean constructor (needed by parser)</jc>
-               <jk>public</jk> Person() {}
-
-               <jc>// Normal constructor</jc>
-               <jk>public</jk> Person(<jk>int</jk> id, String name) {
-                       <jk>this</jk>.<jf>id</jf> = id;
-                       <jk>this</jk>.<jf>name</jf> = name;
-               }
-       }
-                       </p>
-                       <p>
-                               The following code shows how to convert this to 
a URL-encoded value:
-                       </p>
-                       <p class='bcode'>
-       <jc>// Use serializer with readable output, simple mode.</jc>
-       UonSerializer s = UonSerializer.<jsf>DEFAULT</jsf>;
-
-       <jc>// Create our bean.</jc>
-       Person p = <uk>new</uk> Person(1, <js>"John Smith"</js>);
-
-       <jc>// Serialize the bean to URL-encoded parameter value.</jc>
-       String urlencoded = s.serialize(p);
-                       </p>
-                       <p>
-                               The code above produces the following output:
-                       </p>
-                       <p class='bcode'>
-       (<ua>id</ua>=<un>1</un>,<ua>name</ua>=<us>'John+Smith'</us>)
-                       </p>
-                       <p>
-                               The {@link 
org.apache.juneau.urlencoding.UrlEncodingSerializer} class converts
-                               maps and beans into top-level query parameter 
strings.
-                       </p>
-                       <p class='bcode'>
-       <jc>// Use serializer with readable output, simple mode.</jc>
-       UrlEncodingSerializer s = UrlEncodingSerializer.<jsf>DEFAULT</jsf>;
-       
-       <jc>// Serialize the bean to URL-encoded query string.</jc>
-       String urlencoded = s.serialize(p);
-                       </p>
-                       <p>
-                               The code above produces the following output:
-                       </p>
-                       <p class='bcode'>
-       <ua>id</ua>=<un>1</un>&amp;<ua>name</ua>=<us>'John+Smith'</us>
-                       </p>
-                       <p>
-                               By default, the 
<code>UrlEncodingSerializer</code> class will URL-Encode special characters, 
and the 
-                               <code>UonSerializer</code> will NOT URL-encode 
special characters.  
-                       </p>
                </div>          
                
                <!-- 
=======================================================================================================
 -->
                <a 
id="juneau-marshall.UrlEncodingDetails.UrlEncodingParsers"></a>
-               <h4 class='topic' onclick='toggle(this)'>2.20.3 - URL-Encoding 
Parsers</h4>
+               <h4 class='topic' onclick='toggle(this)'>2.19.3 - URL-Encoding 
Parsers</h4>
                <div class='topic'>
                        <p>
-                               {@link 
org.apache.juneau.urlencoding.UrlEncodingParser} and {@link 
org.apache.juneau.uon.UonParser} classes 
-                               are used to convert URL-encoded strings back 
into POJOs.
-                               <br>The <code>UonParser</code> class converts 
UON-encoded parameter values to POJOs.
-                               The <code>UrlEncodingParser</code> class 
converts entire URL-Encoded strings to POJOs using 
-                               <code>UonSerializer</code> to serialize 
individual values.
-                               If you're trying to parse an entire URL-Encoded 
string, use <code>UrlEncodingParser</code>. 
-                               If you're trying to parse an individual value 
(such as that returned by 
-                               
<code>RestServlet.getQueryParameter(name)</code>), use <code>UonParser</code>.
+                               The {@link 
org.apache.juneau.urlencoding.UrlEncodingParser} class is used to parse 
URL-Encoding into POJOs.
                        </p>    
                        <p>
-                               The following static reusable instances of 
<code>UrlEncodingParser</code> are provided for convenience:
+                               The URL-Encoding parser provides the following 
settings:
                        </p>
-                       <ul class='spaced-list'>
-                               <li>
-                                       {@link 
org.apache.juneau.urlencoding.UrlEncodingParser#DEFAULT} 
-                                       - Default parser for entire URL-encoded 
strings, decode <code>%xx</code> sequences.
-                               <li>
-                                       {@link 
org.apache.juneau.uon.UonParser#DEFAULT} 
-                                       - Default parser for URL-encoded 
parameter values, don't decode <code>%xx</code> sequences.
-                               <li>
-                                       {@link 
org.apache.juneau.uon.UonParser#DEFAULT_DECODING} 
-                                       - Default parser for URL-encoded 
parameter values, decode <code>%xx</code> sequences.
+                       <ul class='doctree'>
+                               <li class='link'><a class='doclink' 
href='#juneau-marshall.ConfigurableProperties.Common'>Common Properties</a>
+                               <li class='link'><a class='doclink' 
href='#juneau-marshall.ConfigurableProperties.CommonParser'>Common Parser 
Properties</a>
+                               <li class='jc'>{@link 
org.apache.juneau.urlencoding.UrlEncodingParser}
+                               <ul>
+                                       <li class='jf'>{@link 
org.apache.juneau.urlencoding.UrlEncodingParser#URLENC_expandedParams 
URLENC_expandedParams}
+                               </ul>
                        </ul>
                        <p>
-                               The general guidelines on which parser to use 
is:
+                               The following pre-configured parsers are 
provided for convenience:
                        </p>
-                       <ul class='spaced-list'>
-                               <li>
-                                       Use the <code>DEFAULT</code> parser for 
parameter values that have already had <code>%xx</code> sequences 
-                                       decoded, such as when using 
<code>HttpServletRequest.getQueryParameter(name)</code>.
-                               <li>
-                                       Use the <code>DEFAULT_ENCODED</code> 
parser if the input has not already had <code>%xx</code> sequences 
-                                       decoded.
+                       <ul class='doctree'>
+                               <li class='jc'>{@link 
org.apache.juneau.urlencoding.UrlEncodingParser}
+                               <ul>
+                                       <li class='jf'>{@link 
org.apache.juneau.urlencoding.UrlEncodingParser#DEFAULT DEFAULT}
+                               </ul>
                        </ul>
-                       <p>
-                               Let's build upon the previous example and parse 
the generated URL-encoded string back into the original bean.
-                               <br>We start with the URL-encoded string that 
was generated.
-                       </p>
-                       <p class='bcode'>
-       <jc>// Use serializer with readable output.</jc>
-       UonSerializer s = UonSerializer.<jsf>DEFAULT_READABLE</jsf>;
-
-       <jc>// Create our bean.</jc>
-       Person p = <jk>new</jk> Person(1, <js>"John Smith"</js>, 
<js>"http://sample/addressBook/person/1";</js>,
-                <js>"http://sample/addressBook";</js>, <js>"Aug 12, 1946"</js>);
-       Address a = <jk>new</jk> Address();
-       a.<jf>uri</jf> = <jk>new</jk> 
URI(<js>"http://sample/addressBook/address/1";</js>);
-       a.<jf>personUri</jf> = <jk>new</jk> 
URI(<js>"http://sample/addressBook/person/1";</js>);
-       a.<jf>id</jf> = 1;
-       a.<jf>street</jf> = <js>"100 Main Street"</js>;
-       a.<jf>city</jf> = <js>"Anywhereville"</js>;
-       a.<jf>state</jf> = <js>"NY"</js>;
-       a.<jf>zip</jf> = 12345;
-       a.<jf>isCurrent</jf> = <jk>true</jk>;
-       p.<jf>addresses</jf>.add(a);    
-
-       <jc>// Serialize the bean.</jc>
-       String urlencoded = s.serialize(p);
-                       </p>
-                       <p>
-                               This code produced the following:
-                       </p>
-                       <p class='bcode'>
-       (
-               <ua>id</ua>=<un>1</un>, 
-               <ua>name</ua>=<us>'John+Smith'</us>, 
-               <ua>uri</ua>=<us>http://sample/addressBook/person/1</us>, 
-               <ua>addressBookUri</ua>=<us>http://sample/addressBook</us>,
-               <ua>birthDate</ua>=<us>1946-08-12T00:00:00Z</us>,
-               <ua>addresses</ua>=@(
-                       (
-                               
<ua>uri</ua>=<us>http://sample/addressBook/address/1</us>, 
-                               
<ua>personUri</ua>=<us>http://sample/addressBook/person/1</us>, 
-                               <ua>id</ua>=<un>1</un>, 
-                               <ua>street</ua>=<us>'100+Main+Street'</us>, 
-                               <ua>city</ua>=<us>Anywhereville</us>, 
-                               <ua>state</ua>=<us>NY</us>, 
-                               <ua>zip</ua>=<un>12345</un>, 
-                               <ua>isCurrent</ua>=<uk>true</uk>
-                       )
-               )
-       )
-                       </p>
-                       <p>
-                               The code to convert this back into a bean is:
-                       </p>
-                       <p class='bcode'>
-       <jc>// Parse it back into a bean using the reusable JSON parser.</jc>
-       Person p = UonParser.<jsf>DEFAULT</jsf>.parse(urlencoded, 
Person.<jk>class</jk>);
-
-       <jc>// Render it back as JSON.</jc>
-       json = JsonSerializer.<jsf>DEFAULT_LAX_READABLE</jsf>.serialize(p);
-                       </p>
-                       <p>
-                               We print it back out to JSON to show that all 
the data has been preserved:
-                       </p>
-                       <p class='bcode'>
-       {
-               id: <un>1</un>, 
-               name: <js>'John Smith'</js>, 
-               uri: <js>'http://sample/addressBook/person/1'</js>, 
-               addressBookUri: <js>'http://sample/addressBook'</js>, 
-               birthDate: <js>'1946-08-12T00:00:00Z'</js>, 
-               addresses: [
-                       {
-                               uri: 
<js>'http://sample/addressBook/address/1'</js>, 
-                               personUri: 
<js>'http://sample/addressBook/person/1'</js>, 
-                               id: <un>1</un>, 
-                               street: <js>'100 Main Street'</js>, 
-                               city: <js>'Anywhereville'</js>, 
-                               state: <js>'NY'</js>, 
-                               zip: <un>12345</un>, 
-                               isCurrent: <jk>true</jk>
-                       }
-               ]
-       }       
-                       </p>
                </div>          
                
                <!-- 
=======================================================================================================
 -->
                <a 
id="juneau-marshall.UrlEncodingDetails.UrlEncodingAnnotation"></a>
-               <h4 class='topic' onclick='toggle(this)'>2.20.4 - @UrlEncoding 
Annotation</h4>
+               <h4 class='topic' onclick='toggle(this)'>2.19.4 - @UrlEncoding 
Annotation</h4>
                <div class='topic'>
                </div>
        </div>
 
        <!-- 
=======================================================================================================
 -->
        <a id="juneau-marshall.MsgPackDetails"></a>
-       <h3 class='topic' onclick='toggle(this)'>2.21 - MessagePack Details</h3>
+       <h3 class='topic' onclick='toggle(this)'>2.20 - MessagePack Details</h3>
        <div class='topic'>
        
                <!-- 
=======================================================================================================
 -->
                <a id="juneau-marshall.MsgPackDetails.MsgPackMethodology"></a>
-               <h4 class='topic' onclick='toggle(this)'>2.21.1 - MessagePack 
Methodology</h4>
+               <h4 class='topic' onclick='toggle(this)'>2.20.1 - MessagePack 
Methodology</h4>
                <div class='topic'>
                </div>
        
                <!-- 
=======================================================================================================
 -->
                <a id="juneau-marshall.MsgPackDetails.MsgPackSerializers"></a>
-               <h4 class='topic' onclick='toggle(this)'>2.21.2 - MessagePack 
Serializers</h4>
+               <h4 class='topic' onclick='toggle(this)'>2.20.2 - MessagePack 
Serializers</h4>
                <div class='topic'>
+                       <p>
+                               The {@link 
org.apache.juneau.msgpack.MsgPackSerializer} class is used to serialize POJOs 
into MessagePack.
+                       </p>    
+                       <p>
+                               The MessagePack serializer provides the 
following settings:
+                       </p>
+                       <ul class='doctree'>
+                               <li class='link'><a class='doclink' 
href='#juneau-marshall.ConfigurableProperties.Common'>Common Properties</a>
+                               <li class='link'><a class='doclink' 
href='#juneau-marshall.ConfigurableProperties.CommonSerializer'>Common 
Serializer Properties</a>
+                               <li class='jc'>{@link 
org.apache.juneau.msgpack.MsgPackSerializer}
+                               <ul>
+                                       <li class='jf'>{@link 
org.apache.juneau.msgpack.MsgPackSerializer#MSGPACK_addBeanTypeProperties 
MSGPACK_addBeanTypeProperties}
+                               </ul>
+                       </ul>
+                       <p>
+                               The following pre-configured serializers are 
provided for convenience:
+                       </p>
+                       <ul class='doctree'>
+                               <li class='jc'>{@link 
org.apache.juneau.msgpack.MsgPackSerializer}
+                               <ul>
+                                       <li class='jf'>{@link 
org.apache.juneau.msgpack.MsgPackSerializer#DEFAULT DEFAULT}
+                                       
+                               </ul>
+                       </ul>
                </div>
 
                <!-- 
=======================================================================================================
 -->
                <a id="juneau-marshall.MsgPackDetails.MsgPackParsers"></a>
-               <h4 class='topic' onclick='toggle(this)'>2.21.3 - MessagePack 
Parsers</h4>
+               <h4 class='topic' onclick='toggle(this)'>2.20.3 - MessagePack 
Parsers</h4>
                <div class='topic'>
+                       <p>
+                               The {@link 
org.apache.juneau.msgpack.MsgPackParser} class is used to parse MessagePack 
into POJOs.
+                       </p>    
+                       <p>
+                               The MessagePack parser provides the following 
settings:
+                       </p>
+                       <ul class='doctree'>
+                               <li class='link'><a class='doclink' 
href='#juneau-marshall.ConfigurableProperties.Common'>Common Properties</a>
+                               <li class='link'><a class='doclink' 
href='#juneau-marshall.ConfigurableProperties.CommonParser'>Common Parser 
Properties</a>
+                       </ul>
+                       <p>
+                               The following pre-configured parsers are 
provided for convenience:
+                       </p>
+                       <ul class='doctree'>
+                               <li class='jc'>{@link 
org.apache.juneau.msgpack.MsgPackParser}
+                               <ul>
+                                       <li class='jf'>{@link 
org.apache.juneau.msgpack.MsgPackParser#DEFAULT DEFAULT}
+                               </ul>
+                       </ul>
                </div>
                
        </div>
 
        <!-- 
=======================================================================================================
 -->
        <a id="juneau-marshall.SoapDetails"></a>
-       <h3 class='topic' onclick='toggle(this)'>2.22 - SOAP Details</h3>
+       <h3 class='topic' onclick='toggle(this)'>2.21 - SOAP Details</h3>
        <div class='topic'>
        </div>
 
        <!-- 
=======================================================================================================
 -->
        <a id="juneau-marshall.SoapDetails"></a>
-       <h3 class='topic' onclick='toggle(this)'>2.23 - CSV Details</h3>
+       <h3 class='topic' onclick='toggle(this)'>2.22 - CSV Details</h3>
        <div class='topic'>
        </div>
 
        <!-- 
=======================================================================================================
 -->
        <a id="juneau-marshall.SoapDetails"></a>
-       <h3 class='topic' onclick='toggle(this)'>2.24 - Java Serialized Object 
Details</h3>
+       <h3 class='topic' onclick='toggle(this)'>2.23 - Java Serialized Object 
Details</h3>
        <div class='topic'>
        </div>
        
+       <!-- 
=======================================================================================================
 -->
+       <a id="juneau-marshall.BestPractices"></a>
+       <h3 class='topic' onclick='toggle(this)'>2.24 - Best Practices</h3>
+       <div class='topic'>
+               <ol class='spaced-list'>
+                       <li>
+                               Reuse instances of serializers and parsers 
whenever possible.
+                               <br>They are designed to be thread safe and 
maintain internal caches of bean metadata to increase performance.
+                       <li>
+                               The {@link 
org.apache.juneau.serializer.Serializer#SERIALIZER_detectRecursions 
SERIALIZER_detectRecursions} 
+                               option on the {@link 
org.apache.juneau.serializer.Serializer} class can cause a performance penalty 
of 
+                               around 20%.  
+                               <br>Therefore, it's recommended that this 
option be used only when necessary. 
+                       <li>
+                               In general, JSON serialization and parsing is 
about 20% faster than XML.  
+                               JSON is also more compact than XML.
+                               <br>MessagePack is fastest and most compact of 
all.
+                       <li>
+                               The RDF parsers are SLOW.
+                               <br>RDF simply isn't efficient with node 
traversal, so creating tree structures out of RDF models
+                               is highly inefficient.          
+                       <li>
+                               The {@link org.apache.juneau.parser.Parser} 
methods that take in {@link org.apache.juneau.ClassMeta} 
+                               parameters are slightly faster than methods 
that 
+                               take in {@link java.lang.Class} or {@link 
java.lang.Object} parameters, since the latter methods involve 
+                               hash lookups to resolve to {@link 
org.apache.juneau.ClassMeta} parameters.
+               </ol>
+       </div>
+
 </div>
 
 <!-- 
===========================================================================================================
 -->
@@ -8265,91 +8030,82 @@
                                The {@link 
org.apache.juneau.jena.RdfSerializer} class is the top-level class for all 
Jena-based serializers.
                                <br>Language-specific serializers are defined 
as inner subclasses of the <code>RdfSerializer</code> class:
                        </p>    
-                       <ul>
-                               <li>{@link 
org.apache.juneau.jena.RdfSerializer.Xml}
-                               <li>{@link 
org.apache.juneau.jena.RdfSerializer.XmlAbbrev}
-                               <li>{@link 
org.apache.juneau.jena.RdfSerializer.NTriple}
-                               <li>{@link 
org.apache.juneau.jena.RdfSerializer.Turtle}
-                               <li>{@link 
org.apache.juneau.jena.RdfSerializer.N3}
+                       <ul class='doctree'>
+                               <li class='jc'>{@link 
org.apache.juneau.jena.RdfSerializer}
+                               <ul>
+                                       <li class='jc'>{@link 
org.apache.juneau.jena.RdfSerializer.Xml}
+                                       <li class='jc'>{@link 
org.apache.juneau.jena.RdfSerializer.XmlAbbrev}
+                                       <li class='jc'>{@link 
org.apache.juneau.jena.RdfSerializer.NTriple}
+                                       <li class='jc'>{@link 
org.apache.juneau.jena.RdfSerializer.Turtle}
+                                       <li class='jc'>{@link 
org.apache.juneau.jena.RdfSerializer.N3}
+                               </ul>
+                       </ul>
+                       
+                       <ul class='doctree'>
+                               <li class='link'><a class='doclink' 
href='#juneau-marshall.ConfigurableProperties.Common'>Common Properties</a>
+                               <li class='link'><a class='doclink' 
href='#juneau-marshall.ConfigurableProperties.CommonSerializer'>Common 
Serializer Properties</a>
+                               <li class='jic'>{@link 
org.apache.juneau.jena.RdfCommon}
+                               <ul>
+                                       <li class='jf'>{@link 
org.apache.juneau.jena.RdfCommon#RDF_arp_embedding RDF_arp_embedding}
+                                       <li class='jf'>{@link 
org.apache.juneau.jena.RdfCommon#RDF_arp_err_ RDF_arp_err_}
+                                       <li class='jf'>{@link 
org.apache.juneau.jena.RdfCommon#RDF_arp_errorMode RDF_arp_errorMode}
+                                       <li class='jf'>{@link 
org.apache.juneau.jena.RdfCommon#RDF_arp_ign_ RDF_arp_ign_}
+                                       <li class='jf'>{@link 
org.apache.juneau.jena.RdfCommon#RDF_arp_iriRules RDF_arp_iriRules}
+                                       <li class='jf'>{@link 
org.apache.juneau.jena.RdfCommon#RDF_arp_warn_ RDF_arp_warn_}
+                                       <li class='jf'>{@link 
org.apache.juneau.jena.RdfCommon#RDF_collectionFormat RDF_collectionFormat}
+                                       <li class='jf'>{@link 
org.apache.juneau.jena.RdfCommon#RDF_juneauBpNs RDF_juneauBpNs}
+                                       <li class='jf'>{@link 
org.apache.juneau.jena.RdfCommon#RDF_juneauNs RDF_juneauNs}
+                                       <li class='jf'>{@link 
org.apache.juneau.jena.RdfCommon#RDF_language RDF_language}
+                                       <li class='jf'>{@link 
org.apache.juneau.jena.RdfCommon#RDF_looseCollections RDF_looseCollections}
+                                       <li class='jf'>{@link 
org.apache.juneau.jena.RdfCommon#RDF_n3_abbrevBaseUri RDF_n3_abbrevBaseUri}
+                                       <li class='jf'>{@link 
org.apache.juneau.jena.RdfCommon#RDF_n3_indentProperty RDF_n3_indentProperty}
+                                       <li class='jf'>{@link 
org.apache.juneau.jena.RdfCommon#RDF_n3_minGap RDF_n3_minGap}
+                                       <li class='jf'>{@link 
org.apache.juneau.jena.RdfCommon#RDF_n3_objectLists RDF_n3_objectLists}
+                                       <li class='jf'>{@link 
org.apache.juneau.jena.RdfCommon#RDF_n3_propertyColumn RDF_n3_propertyColumn}
+                                       <li class='jf'>{@link 
org.apache.juneau.jena.RdfCommon#RDF_n3_subjectColumn RDF_n3_subjectColumn}
+                                       <li class='jf'>{@link 
org.apache.juneau.jena.RdfCommon#RDF_n3_useDoubles RDF_n3_useDoubles}
+                                       <li class='jf'>{@link 
org.apache.juneau.jena.RdfCommon#RDF_n3_usePropertySymbols 
RDF_n3_usePropertySymbols}
+                                       <li class='jf'>{@link 
org.apache.juneau.jena.RdfCommon#RDF_n3_useTripleQuotedStrings 
RDF_n3_useTripleQuotedStrings}
+                                       <li class='jf'>{@link 
org.apache.juneau.jena.RdfCommon#RDF_n3_widePropertyLen RDF_n3_widePropertyLen}
+                                       <li class='jf'>{@link 
org.apache.juneau.jena.RdfCommon#RDF_rdfxml_allowBadUris 
RDF_rdfxml_allowBadUris}
+                                       <li class='jf'>{@link 
org.apache.juneau.jena.RdfCommon#RDF_rdfxml_attributeQuoteChar 
RDF_rdfxml_attributeQuoteChar}
+                                       <li class='jf'>{@link 
org.apache.juneau.jena.RdfCommon#RDF_rdfxml_blockRules RDF_rdfxml_blockRules}
+                                       <li class='jf'>{@link 
org.apache.juneau.jena.RdfCommon#RDF_rdfxml_longId RDF_rdfxml_longId}
+                                       <li class='jf'>{@link 
org.apache.juneau.jena.RdfCommon#RDF_rdfxml_relativeUris 
RDF_rdfxml_relativeUris}
+                                       <li class='jf'>{@link 
org.apache.juneau.jena.RdfCommon#RDF_rdfxml_showDoctypeDeclaration 
RDF_rdfxml_showDoctypeDeclaration}
+                                       <li class='jf'>{@link 
org.apache.juneau.jena.RdfCommon#RDF_rdfxml_showXmlDeclaration 
RDF_rdfxml_showXmlDeclaration}
+                                       <li class='jf'>{@link 
org.apache.juneau.jena.RdfCommon#RDF_rdfxml_tab RDF_rdfxml_tab}
+                                       <li class='jf'>{@link 
org.apache.juneau.jena.RdfCommon#RDF_rdfxml_xmlBase RDF_rdfxml_xmlBase}
+                                       <li class='jf'>{@link 
org.apache.juneau.jena.RdfCommon#RDF_useXmlNamespaces RDF_useXmlNamespaces}     
                                  
+                               </ul>
+                               <li class='jc'>{@link 
org.apache.juneau.jena.RdfSerializer}
+                               <ul>
+                                       <li class='jf'>{@link 
org.apache.juneau.jena.RdfSerializer#RDF_addBeanTypeProperties 
RDF_addBeanTypeProperties}
+                                       <li class='jf'>{@link 
org.apache.juneau.jena.RdfSerializer#RDF_addLiteralTypes RDF_addLiteralTypes}
+                                       <li class='jf'>{@link 
org.apache.juneau.jena.RdfSerializer#RDF_addRootProperty RDF_addRootProperty}
+                                       <li class='jf'>{@link 
org.apache.juneau.jena.RdfSerializer#RDF_autoDetectNamespaces 
RDF_autoDetectNamespaces}
+                                       <li class='jf'>{@link 
org.apache.juneau.jena.RdfSerializer#RDF_namespaces RDF_namespaces}             
                  
+                               </ul>
                        </ul>
                        <p>
-                               Static reusable instances of serializers are 
also provided with default settings:
+                               The following pre-configured serializers are 
provided for convenience:
                        </p>
-                       <ul>
-                               <li>{@link 
org.apache.juneau.jena.RdfSerializer#DEFAULT_XML}
-                               <li>{@link 
org.apache.juneau.jena.RdfSerializer#DEFAULT_XMLABBREV}
-                               <li>{@link 
org.apache.juneau.jena.RdfSerializer#DEFAULT_TURTLE}
-                               <li>{@link 
org.apache.juneau.jena.RdfSerializer#DEFAULT_NTRIPLE}
-                               <li>{@link 
org.apache.juneau.jena.RdfSerializer#DEFAULT_N3}
+                       <ul class='doctree'>
+                               <li class='jc'>{@link 
org.apache.juneau.jena.RdfSerializer}
+                               <ul>
+                                       <li class='jf'>{@link 
org.apache.juneau.jena.RdfSerializer#DEFAULT_JUNEAU_NS DEFAULT_JUNEAU_NS}
+                                       <li class='jf'>{@link 
org.apache.juneau.jena.RdfSerializer#DEFAULT_JUNEAUBP_NS DEFAULT_JUNEAUBP_NS}
+                                       <li class='jf'>{@link 
org.apache.juneau.jena.RdfSerializer#DEFAULT_N3 DEFAULT_N3}
+                                       <li class='jf'>{@link 
org.apache.juneau.jena.RdfSerializer#DEFAULT_NTRIPLE DEFAULT_NTRIPLE}
+                                       <li class='jf'>{@link 
org.apache.juneau.jena.RdfSerializer#DEFAULT_TURTLE DEFAULT_TURTLE}
+                                       <li class='jf'>{@link 
org.apache.juneau.jena.RdfSerializer#DEFAULT_XML DEFAULT_XML}
+                                       <li class='jf'>{@link 
org.apache.juneau.jena.RdfSerializer#DEFAULT_XMLABBREV DEFAULT_XMLABBREV}       
                  
+                               </ul>
                        </ul>
                        <p>
                                Abbreviated RDF/XML is currently the most 
widely accepted and readable RDF syntax, so the examples shown here 
                                will use that format.
                        </p>
-                       <p>
-                               For brevity, the examples will use public 
fields instead of getters/setters to reduce the size of the examples.
-                               <br>In the real world, you'll typically want to 
use standard bean getters and setters.
-                       </p>
-                       <p>
-                               To start off simple, we'll begin with the 
following simplified bean and build it up.
-                       </p>
-                       <p class='bcode'>
-       <jk>public class</jk> Person {
-               <jc>// Bean properties</jc>
-               <jk>public int</jk> <jf>id</jf>;
-               <jk>public</jk> String <jf>name</jf>;
-
-               <jc>// Bean constructor (needed by parser)</jc>
-               <jk>public</jk> Person() {}
-
-               <jc>// Normal constructor</jc>
-               <jk>public</jk> Person(<jk>int</jk> id, String name) {
-                       <jk>this</jk>.<jf>id</jf> = id;
-                       <jk>this</jk>.<jf>name</jf> = name;
-               }
-       }
-                       </p>
-                       <p>
-                               The following code shows how to convert this to 
abbreviated RDF/XML:
-                       </p>
-                       <p class='bcode'>
-       <jc>// Create a new serializer with readable output.</jc>
-       RdfSerializer s = RdfSerializer.<jsm>create</jsm>().xmlabbrev()
-               .set(RdfProperties.<jsf>RDF_rdfxml_tab</jsf>, 3).build();
-
-       <jc>// Create our bean.</jc>
-       Person p = <jk>new</jk> Person(1, <js>"John Smith"</js>);
-
-       <jc>// Serialize the bean to RDF/XML.</jc>
-       String rdfXml = s.serialize(p);
-                       </p>
-                       <p>
-                               It should be noted that serializers can also be 
created by cloning existing serializers:
-                       </p>
-                       <p class='bcode'>
-       <jc>// Create a new serializer with readable output by cloning an 
existing serializer.</jc>
-       RdfSerializer s = RdfSerializer.<jsf>DEFAULT_XMLABBREV</jsf>.builder()
-               .set(RdfProperties.<jsf>RDF_rdfxml_tab</jsf>, 3).build();
-                       </p>
-                       <p>
-                               This code produces the following output:
-                       </p>
-                       <p class='bcode'>
-       <xt>&lt;rdf:RDF</xt>
-           
<xa>xmlns:rdf</xa>=<xs>"http://www.w3.org/1999/02/22-rdf-syntax-ns#";</xs>
-           <xa>xmlns:j</xa>=<xs>"http://www.apache.org/juneau/";</xs>
-           
<xa>xmlns:jp</xa>=<xs>"http://www.apache.org/juneaubp/";</xs><xt>&gt;</xt>
-          <xt>&lt;rdf:Description&gt;</xt>
-             <xt>&lt;jp:id&gt;</xt>1<xt>&lt;/jp:id&gt;</xt>
-             <xt>&lt;jp:name&gt;</xt>John Smith<xt>&lt;/jp:name&gt;</xt>
-          <xt>&lt;/rdf:Description&gt;</xt>
-       <xt>&lt;/rdf:RDF&gt;</xt>
-                       </p>
-                       <p>
-                               Notice that we've taken an arbitrary POJO and 
converted it to RDF.
-                               <br>The Juneau serializers and parsers are 
designed to work with arbitrary POJOs without requiring any annotations.
-                               <br>That being said, several annotations are 
provided to customize how POJOs are handled to produce usable RDF.
-                       </p>
                </div>          
                
                <!-- 
=======================================================================================================
 -->
@@ -8360,84 +8116,63 @@
                                The {@link org.apache.juneau.jena.RdfParser} 
class is the top-level class for all Jena-based parsers.
                                <br>Language-specific parsers are defined as 
inner subclasses of the <code>RdfParser</code> class:
                        </p>    
-                       <ul>
-                               <li>{@link org.apache.juneau.jena.RdfParser.Xml}
-                               <li>{@link 
org.apache.juneau.jena.RdfParser.NTriple}
-                               <li>{@link 
org.apache.juneau.jena.RdfParser.Turtle}
-                               <li>{@link org.apache.juneau.jena.RdfParser.N3}
+                       <ul class='doctree'>
+                               <li class='jc'>{@link 
org.apache.juneau.jena.RdfParser}
+                               <ul>
+                                       <li class='jc'>{@link 
org.apache.juneau.jena.RdfParser.Xml}
+                                       <li class='jc'>{@link 
org.apache.juneau.jena.RdfParser.NTriple}
+                                       <li class='jc'>{@link 
org.apache.juneau.jena.RdfParser.Turtle}
+                                       <li class='jc'>{@link 
org.apache.juneau.jena.RdfParser.N3}
+                               </ul>
                        </ul>
                        <p>
                                The <code>RdfParser.Xml</code> parser handles 
both regular and abbreviated RDF/XML.
                        </p>
                        <p>
-                               Static reusable instances of parsers are also 
provided with default settings:
+                               The RDF parser provides the following settings:
                        </p>
-                       <ul>
-                               <li>{@link 
org.apache.juneau.jena.RdfParser#DEFAULT_XML}
-                               <li>{@link 
org.apache.juneau.jena.RdfParser#DEFAULT_TURTLE}
-                               <li>{@link 
org.apache.juneau.jena.RdfParser#DEFAULT_NTRIPLE}
-                               <li>{@link 
org.apache.juneau.jena.RdfParser#DEFAULT_N3}
+                       <ul class='doctree'>
+                               <li class='link'><a class='doclink' 
href='#juneau-marshall.ConfigurableProperties.Common'>Common Properties</a>
+                               <li class='link'><a class='doclink' 
href='#juneau-marshall.ConfigurableProperties.CommonParser'>Common Parser 
Properties</a>
+                               <li class='jic'>{@link 
org.apache.juneau.jena.RdfCommon}
+                               <ul>
+                                       <li class='jf'>{@link 
org.apache.juneau.jena.RdfCommon#RDF_arp_embedding RDF_arp_embedding}
+                                       <li class='jf'>{@link 
org.apache.juneau.jena.RdfCommon#RDF_arp_err_ RDF_arp_err_}
+                                       <li class='jf'>{@link 
org.apache.juneau.jena.RdfCommon#RDF_arp_errorMode RDF_arp_errorMode}
+                                       <li class='jf'>{@link 
org.apache.juneau.jena.RdfCommon#RDF_arp_ign_ RDF_arp_ign_}
+                                       <li class='jf'>{@link 
org.apache.juneau.jena.RdfCommon#RDF_arp_iriRules RDF_arp_iriRules}
+                                       <li class='jf'>{@link 
org.apache.juneau.jena.RdfCommon#RDF_arp_warn_ RDF_arp_warn_}
+                                       <li class='jf'>{@link 
org.apache.juneau.jena.RdfCommon#RDF_collectionFormat RDF_collectionFormat}
+                                       <li class='jf'>{@link 
org.apache.juneau.jena.RdfCommon#RDF_juneauBpNs RDF_juneauBpNs}
+                                       <li class='jf'>{@link 
org.apache.juneau.jena.RdfCommon#RDF_juneauNs RDF_juneauNs}
+                                       <li class='jf'>{@link 
org.apache.juneau.jena.RdfCommon#RDF_language RDF_language}
+                                       <li class='jf'>{@link 
org.apache.juneau.jena.RdfCommon#RDF_looseCollections RDF_looseCollections}
+                                       <li class='jf'>{@link 
org.apache.juneau.jena.RdfCommon#RDF_n3_abbrevBaseUri RDF_n3_abbrevBaseUri}
+                                       <li class='jf'>{@link 
org.apache.juneau.jena.RdfCommon#RDF_n3_indentProperty RDF_n3_indentProperty}
+                                       <li class='jf'>{@link 
org.apache.juneau.jena.RdfCommon#RDF_n3_minGap RDF_n3_minGap}
+                                       <li class='jf'>{@link 
org.apache.juneau.jena.RdfCommon#RDF_n3_objectLists RDF_n3_objectLists}
+                                       <li class='jf'>{@link 
org.apache.juneau.jena.RdfCommon#RDF_n3_propertyColumn RDF_n3_propertyColumn}
+                                       <li class='jf'>{@link 
org.apache.juneau.jena.RdfCommon#RDF_n3_subjectColumn RDF_n3_subjectColumn}
+                                       <li class='jf'>{@link 
org.apache.juneau.jena.RdfCommon#RDF_n3_useDoubles RDF_n3_useDoubles}
+                                       <li class='jf'>{@link 
org.apache.juneau.jena.RdfCommon#RDF_n3_usePropertySymbols 
RDF_n3_usePropertySymbols}
+                                       <li class='jf'>{@link 
org.apache.juneau.jena.RdfCommon#RDF_n3_useTripleQuotedStrings 
RDF_n3_useTripleQuotedStrings}
+                                       <li class='jf'>{@link 
org.apache.juneau.jena.RdfCommon#RDF_n3_widePropertyLen RDF_n3_widePropertyLen}
+                                       <li class='jf'>{@link 
org.apache.juneau.jena.RdfCommon#RDF_rdfxml_allowBadUris 
RDF_rdfxml_allowBadUris}
+                                       <li class='jf'>{@link 
org.apache.juneau.jena.RdfCommon#RDF_rdfxml_attributeQuoteChar 
RDF_rdfxml_attributeQuoteChar}
+                                       <li class='jf'>{@link 
org.apache.juneau.jena.RdfCommon#RDF_rdfxml_blockRules RDF_rdfxml_blockRules}
+                                       <li class='jf'>{@link 
org.apache.juneau.jena.RdfCommon#RDF_rdfxml_longId RDF_rdfxml_longId}
+                                       <li class='jf'>{@link 
org.apache.juneau.jena.RdfCommon#RDF_rdfxml_relativeUris 
RDF_rdfxml_relativeUris}
+                                       <li class='jf'>{@link 
org.apache.juneau.jena.RdfCommon#RDF_rdfxml_showDoctypeDeclaration 
RDF_rdfxml_showDoctypeDeclaration}
+                                       <li class='jf'>{@link 
org.apache.juneau.jena.RdfCommon#RDF_rdfxml_showXmlDeclaration 
RDF_rdfxml_showXmlDeclaration}
+                                       <li class='jf'>{@link 
org.apache.juneau.jena.RdfCommon#RDF_rdfxml_tab RDF_rdfxml_tab}
+                                       <li class='jf'>{@link 
org.apache.juneau.jena.RdfCommon#RDF_rdfxml_xmlBase RDF_rdfxml_xmlBase}
+                                       <li class='jf'>{@link 
org.apache.juneau.jena.RdfCommon#RDF_useXmlNamespaces RDF_useXmlNamespaces}     
                                  
+                               </ul>
+                               <li class='jc'>{@link 
org.apache.juneau.jena.RdfParser}
+                               <ul>
+                                       <li class='jf'>{@link 
org.apache.juneau.jena.RdfParser#RDF_trimWhitespace RDF_trimWhitespace}
+                               </ul>
                        </ul>
-                       <p>
-                               For an example, we will build upon the previous 
example and parse the generated RDF/XML back into the original 
-                               bean.
-                       </p>
-                       <p class='bcode'>
-       <jc>// Create a new serializer with readable output.</jc>
-       RdfSerializer s = RdfSerializer.<jsm>create</jsm>()
-               .xmlabbrev()
-               .set(RdfProperties.<jsf>RDF_rdfxml_tab</jsf>, 3)
-               .addRootProperty(<jk>true</jk>)
-               .build();
-
-       <jc>// Create our bean.</jc>
-       Person p = <jk>new</jk> Person(1, <js>"John Smith"</js>, 
<js>"http://sample/addressBook/person/1";</js>, 
-               <js>"http://sample/addressBook";</js>, <js>"Aug 12, 1946"</js>);
-       Address a = <jk>new</jk> Address();
-       a.<jf>uri</jf> = <jk>new</jk> 
URI(<js>"http://sample/addressBook/address/1";</js>);
-       a.<jf>personUri</jf> = <jk>new</jk> 
URI(<js>"http://sample/addressBook/person/1";</js>);
-       a.<jf>id</jf> = 1;
-       a.<jf>street</jf> = <js>"100 Main Street"</js>;
-       a.<jf>city</jf> = <js>"Anywhereville"</js>;
-       a.<jf>state</jf> = <js>"NY"</js>;
-       a.<jf>zip</jf> = 12345;
-       a.<jf>isCurrent</jf> = <jk>true</jk>;
-       p.<jf>addresses</jf>.add(a);    
-
-       <jc>// Serialize the bean to RDF/XML.</jc>
-       String rdfXml = s.serialize(p);
-       
-       <jc>// Parse it back into a bean using the reusable XML parser.</jc>
-       p = RdfParser.<jsf>DEFAULT_XML</jsf>.parse(rdfXml, 
Person.<jk>class</jk>);
-
-       <jc>// Render it as JSON.</jc>
-       String json = 
JsonSerializer.<jsf>DEFAULT_LAX_READABLE</jsf>.serialize(p);
-       System.<jsm>err</jsm>.println(json);
-                       </p>
-                       <p>
-                               We print it out to JSON to show that all the 
data has been preserved:
-                       </p>
-                       <p class='bcode'>
-       {
-               uri: <js>'http://sample/addressBook/person/1'</js>, 
-               addressBookUri: <js>'http://sample/addressBook'</js>, 
-               id: 1, 
-               name: <js>'John Smith'</js>, 
-               birthDate: <js>'1946-08-12T00:00:00Z'</js>, 
-               addresses: [
-                       {
-                               uri: 
<js>'http://sample/addressBook/address/1'</js>, 
-                               personUri: 
<js>'http://sample/addressBook/person/1'</js>, 
-                               id: 1, 
-                               street: <js>'100 Main Street'</js>, 
-                               city: <js>'Anywhereville'</js>, 
-                               state: <js>'NY'</js>, 
-                               zip: 12345, 
-                               isCurrent: <jk>true</jk>
-                       }
-               ]
-       }       
-                       </p>
                </div>          
                
                <!-- 
=======================================================================================================
 -->

-- 
To stop receiving notification emails like this one, please contact
jamesbog...@apache.org.

Reply via email to