juneau-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From jamesbog...@apache.org
Subject [6/7] juneau git commit: Javadoc updates
Date Thu, 11 Jan 2018 01:13:14 GMT
http://git-wip-us.apache.org/repos/asf/juneau/blob/c162400e/juneau-core/juneau-marshall-rdf/src/main/java/org/apache/juneau/jena/RdfParserBuilder.java
----------------------------------------------------------------------
diff --git a/juneau-core/juneau-marshall-rdf/src/main/java/org/apache/juneau/jena/RdfParserBuilder.java b/juneau-core/juneau-marshall-rdf/src/main/java/org/apache/juneau/jena/RdfParserBuilder.java
index b34a6f1..3667649 100644
--- a/juneau-core/juneau-marshall-rdf/src/main/java/org/apache/juneau/jena/RdfParserBuilder.java
+++ b/juneau-core/juneau-marshall-rdf/src/main/java/org/apache/juneau/jena/RdfParserBuilder.java
@@ -73,17 +73,6 @@ public class RdfParserBuilder extends ParserBuilder {
 	 * 		<js>"MULTI_VALUED"</js> - Multi-valued properties.
 	 * </ul>
 	 * 
-	 * <h5 class='section'>Notes:</h5>
-	 * <ul>
-	 * 	<li>If you use <js>"BAG"</js> or <js>"MULTI_VALUED"</js>, the order of the elements in the collection will get 
-	 * 		lost.
-	 * </ul>
-	 * 
-	 * <h5 class='section'>Notes:</h5>
-	 * <ul>
-	 * 	<li>This introduces a slight performance penalty.
-	 * </ul>
-	 *
 	 * <h5 class='section'>See Also:</h5>
 	 * <ul>
 	 * 	<li class='jf'>{@link RdfParser#RDF_collectionFormat}
@@ -104,7 +93,9 @@ public class RdfParserBuilder extends ParserBuilder {
 	 * 	<li class='jf'>{@link RdfParser#RDF_juneauBpNs}
 	 * </ul>
 	 * 
-	 * @param value The new value for this property.
+	 * @param value 
+	 * 	The new value for this property.
+	 * 	<br>The default is <code>{j:<js>'http://www.apache.org/juneaubp/'</js>}</code>.
 	 * @return This object (for method chaining).
 	 */
 	public RdfParserBuilder juneauBpNs(Namespace value) {
@@ -119,7 +110,9 @@ public class RdfParserBuilder extends ParserBuilder {
 	 * 	<li class='jf'>{@link RdfParser#RDF_juneauNs}
 	 * </ul>
 	 *
-	 * @param value The new value for this property.
+	 * @param value 
+	 * 	The new value for this property.
+	 * 	<br>The default is <code>{j:<js>'http://www.apache.org/juneau/'</js>}</code>.
 	 * @return This object (for method chaining).
 	 */
 	public RdfParserBuilder juneauNs(Namespace value) {
@@ -135,7 +128,7 @@ public class RdfParserBuilder extends ParserBuilder {
 	 * 	<li>
 	 * 		<js>"RDF/XML"</js>
 	 * 	<li>
-	 * 		<js>"RDF/XML-ABBREV"</js>
+	 * 		<js>"RDF/XML-ABBREV"</js> (default)
 	 * 	<li>
 	 * 		<js>"N-TRIPLE"</js>
 	 * 	<li>
@@ -178,50 +171,41 @@ public class RdfParserBuilder extends ParserBuilder {
 	 * When specified, collections of resources are handled as loose collections of resources in RDF instead of
 	 * resources that are children of an RDF collection (e.g. Sequence, Bag).
 	 * 
-	 * <p>
-	 * Note that this setting is specialized for RDF syntax, and is incompatible with the concept of
-	 * losslessly representing POJO models, since the tree structure of these POJO models are lost
-	 * when serialized as loose collections.
-	 * 
-	 * <p>
-	 * This setting is typically only useful if the beans being parsed into do not have a bean property
-	 * annotated with {@link Rdf#beanUri @Rdf(beanUri=true)}.
-	 *
-	 * <h5 class='section'>Example:</h5>
-	 * <p class='bcode'>
-	 * 	WriterSerializer s = <jk>new</jk> RdfSerializerBuilder().xmlabbrev().looseCollections(<jk>true</jk>).build();
-	 * 	ReaderParser p = <jk>new</jk> RdfParserBuilder().xml().looseCollections(<jk>true</jk>).build();
-	 *
-	 * 	List&lt;MyBean&gt; l = createListOfMyBeans();
-	 *
-	 * 	<jc>// Serialize to RDF/XML as loose resources</jc>
-	 * 	String rdfXml = s.serialize(l);
+	 * <h5 class='section'>See Also:</h5>
+	 * <ul>
+	 * 	<li class='jf'>{@link RdfParser#RDF_looseCollections}
+	 * </ul>
 	 * 
-	 * 	<jc>// Parse back into a Java collection</jc>
-	 * 	l = p.parse(rdfXml, LinkedList.<jk>class</jk>, MyBean.<jk>class</jk>);
-	 *
-	 * 	MyBean[] b = createArrayOfMyBeans();
-	 *
-	 * 	<jc>// Serialize to RDF/XML as loose resources</jc>
-	 * 	String rdfXml = s.serialize(b);
+	 * @param value 
+	 * 	The new value for this property.
+	 * 	<br>The default is <jk>false</jk>.
+	 * @return This object (for method chaining).
+	 */
+	public RdfParserBuilder looseCollections(boolean value) {
+		return set(RDF_looseCollections, value);
+	}
+
+	/**
+	 * Configuration property:  Collections should be serialized and parsed as loose collections.
 	 * 
-	 * 	<jc>// Parse back into a bean array</jc>
-	 * 	b = p.parse(rdfXml, MyBean[].<jk>class</jk>);
-	 * </p>
+	 * <p>
+	 * Shortcut for calling <code>looseCollection(<jk>true</jk)</code>.
 	 * 
 	 * <h5 class='section'>See Also:</h5>
 	 * <ul>
 	 * 	<li class='jf'>{@link RdfParser#RDF_looseCollections}
 	 * </ul>
 	 * 
-	 * @param value The new value for this property.
 	 * @return This object (for method chaining).
 	 */
-	public RdfParserBuilder looseCollections(boolean value) {
-		return set(RDF_looseCollections, value);
+	public RdfParserBuilder looseCollections() {
+		return set(RDF_looseCollections, true);
 	}
 
 	/**
+	 * Configuration property:  RDF language.
+	 * 
+	 * <p>
 	 * Shortcut for calling <code>language(<jsf>LANG_N3</jsf>)</code>
 	 * 
 	 * <h5 class='section'>See Also:</h5>
@@ -236,6 +220,9 @@ public class RdfParserBuilder extends ParserBuilder {
 	}
 
 	/**
+	 * Configuration property:  RDF language.
+	 * 
+	 * <p>
 	 * Shortcut for calling <code>language(<jsf>LANG_NTRIPLE</jsf>)</code>
 	 * 
 	 * <h5 class='section'>See Also:</h5>
@@ -260,7 +247,9 @@ public class RdfParserBuilder extends ParserBuilder {
 	 * 	<li class='jf'>{@link RdfParser#RDF_trimWhitespace}
 	 * </ul>
 	 * 
-	 * @param value The new value for this property.
+	 * @param value 
+	 * 	The new value for this property.
+	 * 	<br>The default is <jk>false</jk>.
 	 * @return This object (for method chaining).
 	 */
 	public RdfParserBuilder trimWhitespace(boolean value) {
@@ -268,6 +257,23 @@ public class RdfParserBuilder extends ParserBuilder {
 	}
 
 	/**
+	 * Configuration property:  Trim whitespace from text elements.
+	 * 
+	 * <p>
+	 * Shortcut for calling <code>trimWhitespace(<jk>true</jk>)</code>.
+	 * 
+	 * <h5 class='section'>See Also:</h5>
+	 * <ul>
+	 * 	<li class='jf'>{@link RdfParser#RDF_trimWhitespace}
+	 * </ul>
+	 * 
+	 * @return This object (for method chaining).
+	 */
+	public RdfParserBuilder trimWhitespace() {
+		return set(RDF_trimWhitespace, true);
+	}
+
+	/**
 	 * Shortcut for calling <code>language(<jsf>LANG_TURTLE</jsf>)</code>
 	 * 
 	 * <h5 class='section'>See Also:</h5>
@@ -294,7 +300,9 @@ public class RdfParserBuilder extends ParserBuilder {
 	 * 	<li class='jf'>{@link RdfParser#RDF_useXmlNamespaces}
 	 * </ul>
 	 * 
-	 * @param value The new value for this property.
+	 * @param value 
+	 * 	The new value for this property.
+	 * 	<br>The default is <jk>true</jk>.
 	 * @return This object (for method chaining).
 	 */
 	public RdfParserBuilder useXmlNamespaces(boolean value) {
@@ -348,14 +356,14 @@ public class RdfParserBuilder extends ParserBuilder {
 	}
 
 	@Override /* ParserBuilder */
-	public RdfParserBuilder strict() {
-		super.strict();
+	public RdfParserBuilder strict(boolean value) {
+		super.strict(value);
 		return this;
 	}
 
 	@Override /* ParserBuilder */
-	public RdfParserBuilder strict(boolean value) {
-		super.strict(value);
+	public RdfParserBuilder strict() {
+		super.strict();
 		return this;
 	}
 
@@ -365,6 +373,12 @@ public class RdfParserBuilder extends ParserBuilder {
 		return this;
 	}
 
+	@Override /* ParserBuilder */
+	public RdfParserBuilder trimStrings() {
+		super.trimStrings();
+		return this;
+	}
+
 	@Override /* BeanContextBuilder */
 	public RdfParserBuilder beansRequireDefaultConstructor(boolean value) {
 		super.beansRequireDefaultConstructor(value);
@@ -372,18 +386,36 @@ public class RdfParserBuilder extends ParserBuilder {
 	}
 
 	@Override /* BeanContextBuilder */
+	public RdfParserBuilder beansRequireDefaultConstructor() {
+		super.beansRequireDefaultConstructor();
+		return this;
+	}
+
+	@Override /* BeanContextBuilder */
 	public RdfParserBuilder beansRequireSerializable(boolean value) {
 		super.beansRequireSerializable(value);
 		return this;
 	}
 
 	@Override /* BeanContextBuilder */
+	public RdfParserBuilder beansRequireSerializable() {
+		super.beansRequireSerializable();
+		return this;
+	}
+
+	@Override /* BeanContextBuilder */
 	public RdfParserBuilder beansRequireSettersForGetters(boolean value) {
 		super.beansRequireSettersForGetters(value);
 		return this;
 	}
 
 	@Override /* BeanContextBuilder */
+	public RdfParserBuilder beansRequireSettersForGetters() {
+		super.beansRequireSettersForGetters();
+		return this;
+	}
+
+	@Override /* BeanContextBuilder */
 	public RdfParserBuilder beansRequireSomeProperties(boolean value) {
 		super.beansRequireSomeProperties(value);
 		return this;
@@ -396,6 +428,12 @@ public class RdfParserBuilder extends ParserBuilder {
 	}
 
 	@Override /* BeanContextBuilder */
+	public RdfParserBuilder beanMapPutReturnsOldValue() {
+		super.beanMapPutReturnsOldValue();
+		return this;
+	}
+
+	@Override /* BeanContextBuilder */
 	public RdfParserBuilder beanConstructorVisibility(Visibility value) {
 		super.beanConstructorVisibility(value);
 		return this;
@@ -426,6 +464,12 @@ public class RdfParserBuilder extends ParserBuilder {
 	}
 
 	@Override /* BeanContextBuilder */
+	public RdfParserBuilder useJavaBeanIntrospector() {
+		super.useJavaBeanIntrospector();
+		return this;
+	}
+
+	@Override /* BeanContextBuilder */
 	public RdfParserBuilder useInterfaceProxies(boolean value) {
 		super.useInterfaceProxies(value);
 		return this;
@@ -438,6 +482,12 @@ public class RdfParserBuilder extends ParserBuilder {
 	}
 
 	@Override /* BeanContextBuilder */
+	public RdfParserBuilder ignoreUnknownBeanProperties() {
+		super.ignoreUnknownBeanProperties();
+		return this;
+	}
+
+	@Override /* BeanContextBuilder */
 	public RdfParserBuilder ignoreUnknownNullBeanProperties(boolean value) {
 		super.ignoreUnknownNullBeanProperties(value);
 		return this;
@@ -456,18 +506,36 @@ public class RdfParserBuilder extends ParserBuilder {
 	}
 
 	@Override /* BeanContextBuilder */
+	public RdfParserBuilder ignoreInvocationExceptionsOnGetters() {
+		super.ignoreInvocationExceptionsOnGetters();
+		return this;
+	}
+
+	@Override /* BeanContextBuilder */
 	public RdfParserBuilder ignoreInvocationExceptionsOnSetters(boolean value) {
 		super.ignoreInvocationExceptionsOnSetters(value);
 		return this;
 	}
 
 	@Override /* BeanContextBuilder */
+	public RdfParserBuilder ignoreInvocationExceptionsOnSetters() {
+		super.ignoreInvocationExceptionsOnSetters();
+		return this;
+	}
+
+	@Override /* BeanContextBuilder */
 	public RdfParserBuilder sortProperties(boolean value) {
 		super.sortProperties(value);
 		return this;
 	}
 
 	@Override /* BeanContextBuilder */
+	public RdfParserBuilder sortProperties() {
+		super.sortProperties();
+		return this;
+	}
+
+	@Override /* BeanContextBuilder */
 	public RdfParserBuilder notBeanPackages(Object...values) {
 		super.notBeanPackages(values);
 		return this;

http://git-wip-us.apache.org/repos/asf/juneau/blob/c162400e/juneau-core/juneau-marshall-rdf/src/main/java/org/apache/juneau/jena/RdfSerializer.java
----------------------------------------------------------------------
diff --git a/juneau-core/juneau-marshall-rdf/src/main/java/org/apache/juneau/jena/RdfSerializer.java b/juneau-core/juneau-marshall-rdf/src/main/java/org/apache/juneau/jena/RdfSerializer.java
index a704665..db02826 100644
--- a/juneau-core/juneau-marshall-rdf/src/main/java/org/apache/juneau/jena/RdfSerializer.java
+++ b/juneau-core/juneau-marshall-rdf/src/main/java/org/apache/juneau/jena/RdfSerializer.java
@@ -92,6 +92,7 @@ public class RdfSerializer extends WriterSerializer implements RdfCommon {
 	 * 	<li><b>Methods:</b> 
 	 * 		<ul>
 	 * 			<li class='jm'>{@link RdfSerializerBuilder#addLiteralTypes(boolean)}
+	 * 			<li class='jm'>{@link RdfSerializerBuilder#addLiteralTypes()}
 	 * 		</ul>
 	 * </ul>
 	 */
@@ -109,6 +110,7 @@ public class RdfSerializer extends WriterSerializer implements RdfCommon {
 	 * 	<li><b>Methods:</b> 
 	 * 		<ul>
 	 * 			<li class='jm'>{@link RdfSerializerBuilder#addRootProperty(boolean)}
+	 * 			<li class='jm'>{@link RdfSerializerBuilder#addRootProperty()}
 	 * 		</ul>
 	 * </ul>
 	 * 

http://git-wip-us.apache.org/repos/asf/juneau/blob/c162400e/juneau-core/juneau-marshall-rdf/src/main/java/org/apache/juneau/jena/RdfSerializerBuilder.java
----------------------------------------------------------------------
diff --git a/juneau-core/juneau-marshall-rdf/src/main/java/org/apache/juneau/jena/RdfSerializerBuilder.java b/juneau-core/juneau-marshall-rdf/src/main/java/org/apache/juneau/jena/RdfSerializerBuilder.java
index a781002..2cb2ea0 100644
--- a/juneau-core/juneau-marshall-rdf/src/main/java/org/apache/juneau/jena/RdfSerializerBuilder.java
+++ b/juneau-core/juneau-marshall-rdf/src/main/java/org/apache/juneau/jena/RdfSerializerBuilder.java
@@ -58,18 +58,14 @@ public class RdfSerializerBuilder extends SerializerBuilder {
 	/**
 	 * Configuration property:  Add XSI data types to non-<code>String</code> literals.
 	 * 
-	 * <h5 class='section'>Notes:</h5>
-	 * <ul>
-	 * 	<li>This is equivalent to calling <code>property(<jsf>RDF_addLiteralTypes</jsf>, value)</code>.
-	 * 	<li>This introduces a slight performance penalty.
-	 * </ul>
-	 *
 	 * <h5 class='section'>See Also:</h5>
 	 * <ul>
 	 * 	<li class='jf'>{@link RdfSerializer#RDF_addLiteralTypes}
 	 * </ul>
 	 * 
-	 * @param value The new value for this property.
+	 * @param value 
+	 * 	The new value for this property.
+	 * 	<br>The default is <jk>false</jk>.
 	 * @return This object (for method chaining).
 	 */
 	public RdfSerializerBuilder addLiteralTypes(boolean value) {
@@ -77,28 +73,37 @@ public class RdfSerializerBuilder extends SerializerBuilder {
 	}
 
 	/**
+	 * Configuration property:  Add XSI data types to non-<code>String</code> literals.
+	 * 
+	 * <p>
+	 * Shortcut for calling <code>addLiteralTypes(<jk>true</jk>)</code>.
+	 * 
+	 * @return This object (for method chaining).
+	 */
+	public RdfSerializerBuilder addLiteralTypes() {
+		return set(RDF_addLiteralTypes, true);
+	}
+
+	/**
 	 * Configuration property:  Add RDF root identifier property to root node.
 	 * 
 	 * <p>
-	 * When enabled an RDF property <code>http://www.apache.org/juneau/root</code> is added with a value of 
-	 * <js>"true"</js> to identify the root node in the graph.
+	 * When enabled an RDF property <code>http://www.apache.org/juneau/root</code> is added with a value of <js>"true"</js>
+	 * to identify the root node in the graph.
 	 * This helps locate the root node during parsing.
 	 * 
 	 * <p>
 	 * If disabled, the parser has to search through the model to find any resources without incoming predicates to 
 	 * identify root notes, which can introduce a considerable performance degradation.
-	 * 
-	 * <h5 class='section'>Notes:</h5>
-	 * <ul>
-	 * 	<li>This introduces a slight performance penalty.
-	 * </ul>
 	 *
 	 * <h5 class='section'>See Also:</h5>
 	 * <ul>
 	 * 	<li class='jf'>{@link RdfSerializer#RDF_addRootProperty}
 	 * </ul>
 	 * 
-	 * @param value The new value for this property.
+	 * @param value 
+	 * 	The new value for this property.
+	 * 	<br>The default is <jk>false</jk>.
 	 * @return This object (for method chaining).
 	 */
 	public RdfSerializerBuilder addRootProperty(boolean value) {
@@ -106,26 +111,36 @@ public class RdfSerializerBuilder extends SerializerBuilder {
 	}
 
 	/**
-	 * Configuration property:  Auto-detect namespace usage.
+	 * Configuration property:  Add RDF root identifier property to root node.
 	 * 
 	 * <p>
-	 * Detect namespace usage before serialization.
+	 * Shortcut for calling <code>addRootProperty(<jk>true</jk>)</code>.
+	 *
+	 * <h5 class='section'>See Also:</h5>
+	 * <ul>
+	 * 	<li class='jf'>{@link RdfSerializer#RDF_addRootProperty}
+	 * </ul>
+	 * 
+	 * @return This object (for method chaining).
+	 */
+	public RdfSerializerBuilder addRootProperty() {
+		return set(RDF_addRootProperty, true);
+	}
+
+	/**
+	 * Configuration property:  Auto-detect namespace usage.
 	 * 
 	 * <p>
-	 * If enabled, then the data structure will first be crawled looking for namespaces that will be encountered before 
-	 * the root element is serialized.
+	 * Detect namespace usage before serialization.
 	 * 
-	 * <h5 class='section'>Notes:</h5>
-	 * <ul>
-	 * 	<li>This introduces a slight performance penalty.
-	 * </ul>
-	 *
 	 * <h5 class='section'>See Also:</h5>
 	 * <ul>
 	 * 	<li class='jf'>{@link RdfSerializer#RDF_autoDetectNamespaces}
 	 * </ul>
 	 * 
-	 * @param value The new value for this property.
+	 * @param value 
+	 * 	The new value for this property.
+	 * 	<br>The default is <jk>true</jk>.
 	 * @return This object (for method chaining).
 	 */
 	public RdfSerializerBuilder autoDetectNamespaces(boolean value) {
@@ -136,19 +151,6 @@ public class RdfSerializerBuilder extends SerializerBuilder {
 	 * Configuration property:  RDF format for representing collections and arrays.
 	 * 
 	 * <p>
-	 * Possible values:
-	 * <ul class='spaced-list'>
-	 * 	<li>
-	 * 		<js>"DEFAULT"</js> - Default format.  The default is an RDF Sequence container.
-	 * 	<li>
-	 * 		<js>"SEQ"</js> - RDF Sequence container.
-	 * 	<li>
-	 * 		<js>"BAG"</js> - RDF Bag container.
-	 * 	<li>
-	 * 		<js>"LIST"</js> - RDF List container.
-	 * 	<li>
-	 * 		<js>"MULTI_VALUED"</js> - Multi-valued properties.
-	 * </ul>
 	 * 
 	 * <h5 class='section'>Notes:</h5>
 	 * <ul>
@@ -156,17 +158,21 @@ public class RdfSerializerBuilder extends SerializerBuilder {
 	 * 		lost.
 	 * </ul>
 	 * 
-	 * <h5 class='section'>Notes:</h5>
-	 * <ul>
-	 * 	<li>This introduces a slight performance penalty.
-	 * </ul>
-	 *
 	 * <h5 class='section'>See Also:</h5>
 	 * <ul>
 	 * 	<li class='jf'>{@link RdfSerializer#RDF_collectionFormat}
 	 * </ul>
 	 * 
-	 * @param value The new value for this property.
+	 * @param value 
+	 * 	The new value for this property.
+	 * 	<br>Possible values:
+	 * 	<ul'>
+	 * 		<li><js>"DEFAULT"</js> - Default format.  The default is an RDF Sequence container.
+	 * 		<li><js>"SEQ"</js> - RDF Sequence container.
+	 * 		<li><js>"BAG"</js> - RDF Bag container.
+	 * 		<li><js>"LIST"</js> - RDF List container.
+	 * 		<li><js>"MULTI_VALUED"</js> - Multi-valued properties.
+	 * 	</ul>
 	 * @return This object (for method chaining).
 	 */
 	public RdfSerializerBuilder collectionFormat(RdfCollectionFormat value) {
@@ -176,17 +182,14 @@ public class RdfSerializerBuilder extends SerializerBuilder {
 	/**
 	 * Configuration property:  Default XML namespace for bean properties.
 	 * 
-	 * <h5 class='section'>Notes:</h5>
-	 * <ul>
-	 * 	<li>This introduces a slight performance penalty.
-	 * </ul>
-	 *
 	 * <h5 class='section'>See Also:</h5>
 	 * <ul>
 	 * 	<li class='jf'>{@link RdfSerializer#RDF_juneauBpNs}
 	 * </ul>
 	 * 
-	 * @param value The new value for this property.
+	 * @param value 
+	 * 	The new value for this property.
+	 * 	<br>The default is <code>{j:<js>'http://www.apache.org/juneaubp/'</js>}</code>.
 	 * @return This object (for method chaining).
 	 */
 	public RdfSerializerBuilder juneauBpNs(Namespace value) {
@@ -196,17 +199,14 @@ public class RdfSerializerBuilder extends SerializerBuilder {
 	/**
 	 * Configuration property:  XML namespace for Juneau properties.
 	 * 
-	 * <h5 class='section'>Notes:</h5>
-	 * <ul>
-	 * 	<li>This introduces a slight performance penalty.
-	 * </ul>
-	 *
 	 * <h5 class='section'>See Also:</h5>
 	 * <ul>
 	 * 	<li class='jf'>{@link RdfSerializer#RDF_juneauNs}
 	 * </ul>
 	 * 
-	 * @param value The new value for this property.
+	 * @param value 
+	 * 	The new value for this property.
+	 * 	<br>The default is <code>{j:<js>'http://www.apache.org/juneau/'</js>}</code>.
 	 * @return This object (for method chaining).
 	 */
 	public RdfSerializerBuilder juneauNs(Namespace value) {
@@ -222,7 +222,7 @@ public class RdfSerializerBuilder extends SerializerBuilder {
 	 * 	<li>
 	 * 		<js>"RDF/XML"</js>
 	 * 	<li>
-	 * 		<js>"RDF/XML-ABBREV"</js>
+	 * 		<js>"RDF/XML-ABBREV"</js> (default)
 	 * 	<li>
 	 * 		<js>"N-TRIPLE"</js>
 	 * 	<li>
@@ -246,17 +246,13 @@ public class RdfSerializerBuilder extends SerializerBuilder {
 	 * 		http://www.dajobe.org/2004/01/turtle/
 	 * </ul>
 	 * 
-	 * <h5 class='section'>Notes:</h5>
-	 * <ul>
-	 * 	<li>This introduces a slight performance penalty.
-	 * </ul>
-	 *
 	 * <h5 class='section'>See Also:</h5>
 	 * <ul>
 	 * 	<li class='jf'>{@link RdfSerializer#RDF_language}
 	 * </ul>
 	 * 
-	 * @param value The new value for this property.
+	 * @param value 
+	 * 	The new value for this property.
 	 * @return This object (for method chaining).
 	 */
 	public RdfSerializerBuilder language(String value) {
@@ -270,50 +266,41 @@ public class RdfSerializerBuilder extends SerializerBuilder {
 	 * When specified, collections of resources are handled as loose collections of resources in RDF instead of
 	 * resources that are children of an RDF collection (e.g. Sequence, Bag).
 	 * 
-	 * <p>
-	 * Note that this setting is specialized for RDF syntax, and is incompatible with the concept of
-	 * losslessly representing POJO models, since the tree structure of these POJO models are lost
-	 * when serialized as loose collections.
+	 * <h5 class='section'>See Also:</h5>
+	 * <ul>
+	 * 	<li class='jf'>{@link RdfSerializer#RDF_looseCollections}
+	 * </ul>
+	 * 
+	 * @param value 
+	 * 	The new value for this property.
+	 * 	<br>The default is <jk>false</jk>.
+	 * @return This object (for method chaining).
+	 */
+	public RdfSerializerBuilder looseCollections(boolean value) {
+		return set(RDF_looseCollections, value);
+	}
+
+	/**
+	 * Configuration property:  Collections should be serialized and parsed as loose collections.
 	 * 
 	 * <p>
-	 * This setting is typically only useful if the beans being parsed into do not have a bean property
-	 * annotated with {@link Rdf#beanUri @Rdf(beanUri=true)}.
-	 *
-	 * <h5 class='section'>Example:</h5>
-	 * <p class='bcode'>
-	 * 	WriterSerializer s = <jk>new</jk> RdfSerializerBuilder().xmlabbrev().looseCollections(<jk>true</jk>).build();
-	 * 	ReaderParser p = <jk>new</jk> RdfParserBuilder().xml().looseCollections(<jk>true</jk>).build();
-	 *
-	 * 	List&lt;MyBean&gt; l = createListOfMyBeans();
-	 *
-	 * 	<jc>// Serialize to RDF/XML as loose resources</jc>
-	 * 	String rdfXml = s.serialize(l);
-	 *
-	 * 	<jc>// Parse back into a Java collection</jc>
-	 * 	l = p.parse(rdfXml, LinkedList.<jk>class</jk>, MyBean.<jk>class</jk>);
-	 *
-	 * 	MyBean[] b = createArrayOfMyBeans();
-	 *
-	 * 	<jc>// Serialize to RDF/XML as loose resources</jc>
-	 * 	String rdfXml = s.serialize(b);
-	 *
-	 * 	<jc>// Parse back into a bean array</jc>
-	 * 	b = p.parse(rdfXml, MyBean[].<jk>class</jk>);
-	 * </p>
+	 * Shortcut for <code>looseCollections(<jk>true</jk>)</code>.
 	 * 
 	 * <h5 class='section'>See Also:</h5>
 	 * <ul>
 	 * 	<li class='jf'>{@link RdfSerializer#RDF_looseCollections}
 	 * </ul>
 	 * 
-	 * @param value The new value for this property.
 	 * @return This object (for method chaining).
 	 */
-	public RdfSerializerBuilder looseCollections(boolean value) {
-		return set(RDF_looseCollections, value);
+	public RdfSerializerBuilder looseCollections() {
+		return set(RDF_looseCollections, true);
 	}
 
 	/**
+	 * Configuration property:  RDF language.
+	 * 
+	 * <p>
 	 * Shortcut for calling <code>language(<jsf>LANG_N3</jsf>)</code>
 	 * 
 	 * <h5 class='section'>See Also:</h5>
@@ -333,12 +320,6 @@ public class RdfSerializerBuilder extends SerializerBuilder {
 	 * <p>
 	 * The default list of namespaces associated with this serializer.
 	 * 
-	 * <h5 class='section'>Notes:</h5>
-	 * <ul>
-	 * 	<li>This is equivalent to calling <code>property(<jsf>RDF_namespaces</jsf>, values)</code>.
-	 * 	<li>This introduces a slight performance penalty.
-	 * </ul>
-	 *
 	 * <h5 class='section'>See Also:</h5>
 	 * <ul>
 	 * 	<li class='jf'>{@link RdfSerializer#RDF_namespaces}
@@ -352,6 +333,9 @@ public class RdfSerializerBuilder extends SerializerBuilder {
 	}
 
 	/**
+	 * Configuration property:  RDF language.
+	 * 
+	 * <p>
 	 * Shortcut for calling <code>language(<jsf>LANG_NTRIPLE</jsf>)</code>
 	 * 
 	 * <h5 class='section'>See Also:</h5>
@@ -366,6 +350,9 @@ public class RdfSerializerBuilder extends SerializerBuilder {
 	}
 
 	/**
+	 * Configuration property:  RDF language.
+	 * 
+	 * <p>
 	 * Shortcut for calling <code>language(<jsf>LANG_TURTLE</jsf>)</code>
 	 * 
 	 * <h5 class='section'>See Also:</h5>
@@ -387,17 +374,14 @@ public class RdfSerializerBuilder extends SerializerBuilder {
 	 * inherited by the RDF serializers.
 	 * Otherwise, namespaces will be defined using {@link RdfNs} and {@link Rdf}.
 	 * 
-	 * <h5 class='section'>Notes:</h5>
-	 * <ul>
-	 * 	<li>This introduces a slight performance penalty.
-	 * </ul>
-	 *
 	 * <h5 class='section'>See Also:</h5>
 	 * <ul>
 	 * 	<li class='jf'>{@link RdfSerializer#RDF_useXmlNamespaces}
 	 * </ul>
 	 * 
-	 * @param value The new value for this property.
+	 * @param value 
+	 * 	The new value for this property.
+	 * 	<br>The default is <jk>true</jk>.
 	 * @return This object (for method chaining).
 	 */
 	public RdfSerializerBuilder useXmlNamespaces(boolean value) {
@@ -405,6 +389,9 @@ public class RdfSerializerBuilder extends SerializerBuilder {
 	}
 
 	/**
+	 * Configuration property:  RDF language.
+	 * 
+	 * <p>
 	 * Shortcut for calling <code>language(<jsf>LANG_RDF_XML</jsf>)</code>
 	 * 
 	 * <h5 class='section'>See Also:</h5>
@@ -419,6 +406,9 @@ public class RdfSerializerBuilder extends SerializerBuilder {
 	}
 
 	/**
+	 * Configuration property:  RDF language.
+	 * 
+	 * <p>
 	 * Shortcut for calling <code>language(<jsf>LANG_RDF_XML_ABBREV</jsf>)</code>
 	 * 
 	 * <h5 class='section'>See Also:</h5>
@@ -439,6 +429,12 @@ public class RdfSerializerBuilder extends SerializerBuilder {
 	}
 
 	@Override /* SerializerBuilder */
+	public RdfSerializerBuilder abridged() {
+		super.abridged();
+		return this;
+	}
+
+	@Override /* SerializerBuilder */
 	public RdfSerializerBuilder addBeanTypeProperties(boolean value) {
 		super.addBeanTypeProperties(value);
 		return this;
@@ -451,12 +447,23 @@ public class RdfSerializerBuilder extends SerializerBuilder {
 	}
 
 	@Override /* SerializerBuilder */
+	public RdfSerializerBuilder detectRecursions() {
+		super.detectRecursions();
+		return this;
+	}
+
+	@Override /* SerializerBuilder */
 	public RdfSerializerBuilder ignoreRecursions(boolean value) {
 		super.ignoreRecursions(value);
 		return this;
 	}
 
 	@Override /* SerializerBuilder */
+	public RdfSerializerBuilder ignoreRecursions() {
+		super.ignoreRecursions();
+		return this;
+	}
+	@Override /* SerializerBuilder */
 	public RdfSerializerBuilder initialDepth(int value) {
 		super.initialDepth(value);
 		return this;
@@ -493,12 +500,24 @@ public class RdfSerializerBuilder extends SerializerBuilder {
 	}
 
 	@Override /* SerializerBuilder */
+	public RdfSerializerBuilder sortCollections() {
+		super.sortCollections();
+		return this;
+	}
+
+	@Override /* SerializerBuilder */
 	public RdfSerializerBuilder sortMaps(boolean value) {
 		super.sortMaps(value);
 		return this;
 	}
 
 	@Override /* SerializerBuilder */
+	public RdfSerializerBuilder sortMaps() {
+		super.sortMaps();
+		return this;
+	}
+
+	@Override /* SerializerBuilder */
 	public RdfSerializerBuilder sq() {
 		super.sq();
 		return this;
@@ -511,12 +530,24 @@ public class RdfSerializerBuilder extends SerializerBuilder {
 	}
 
 	@Override /* SerializerBuilder */
+	public RdfSerializerBuilder trimEmptyCollections() {
+		super.trimEmptyCollections();
+		return this;
+	}
+
+	@Override /* SerializerBuilder */
 	public RdfSerializerBuilder trimEmptyMaps(boolean value) {
 		super.trimEmptyMaps(value);
 		return this;
 	}
 
 	@Override /* SerializerBuilder */
+	public RdfSerializerBuilder trimEmptyMaps() {
+		super.trimEmptyMaps();
+		return this;
+	}
+
+	@Override /* SerializerBuilder */
 	public RdfSerializerBuilder trimNullProperties(boolean value) {
 		super.trimNullProperties(value);
 		return this;
@@ -529,6 +560,12 @@ public class RdfSerializerBuilder extends SerializerBuilder {
 	}
 
 	@Override /* SerializerBuilder */
+	public RdfSerializerBuilder trimStrings() {
+		super.trimStrings();
+		return this;
+	}
+
+	@Override /* SerializerBuilder */
 	public RdfSerializerBuilder uriContext(UriContext value) {
 		super.uriContext(value);
 		return this;
@@ -553,6 +590,12 @@ public class RdfSerializerBuilder extends SerializerBuilder {
 	}
 
 	@Override /* SerializerBuilder */
+	public RdfSerializerBuilder useWhitespace() {
+		super.useWhitespace();
+		return this;
+	}
+
+	@Override /* SerializerBuilder */
 	public RdfSerializerBuilder ws() {
 		super.ws();
 		return this;
@@ -565,18 +608,36 @@ public class RdfSerializerBuilder extends SerializerBuilder {
 	}
 
 	@Override /* BeanContextBuilder */
+	public RdfSerializerBuilder beansRequireDefaultConstructor() {
+		super.beansRequireDefaultConstructor();
+		return this;
+	}
+
+	@Override /* BeanContextBuilder */
 	public RdfSerializerBuilder beansRequireSerializable(boolean value) {
 		super.beansRequireSerializable(value);
 		return this;
 	}
 
 	@Override /* BeanContextBuilder */
+	public RdfSerializerBuilder beansRequireSerializable() {
+		super.beansRequireSerializable();
+		return this;
+	}
+
+	@Override /* BeanContextBuilder */
 	public RdfSerializerBuilder beansRequireSettersForGetters(boolean value) {
 		super.beansRequireSettersForGetters(value);
 		return this;
 	}
 
 	@Override /* BeanContextBuilder */
+	public RdfSerializerBuilder beansRequireSettersForGetters() {
+		super.beansRequireSettersForGetters();
+		return this;
+	}
+
+	@Override /* BeanContextBuilder */
 	public RdfSerializerBuilder beansRequireSomeProperties(boolean value) {
 		super.beansRequireSomeProperties(value);
 		return this;
@@ -589,6 +650,12 @@ public class RdfSerializerBuilder extends SerializerBuilder {
 	}
 
 	@Override /* BeanContextBuilder */
+	public RdfSerializerBuilder beanMapPutReturnsOldValue() {
+		super.beanMapPutReturnsOldValue();
+		return this;
+	}
+
+	@Override /* BeanContextBuilder */
 	public RdfSerializerBuilder beanConstructorVisibility(Visibility value) {
 		super.beanConstructorVisibility(value);
 		return this;
@@ -619,6 +686,12 @@ public class RdfSerializerBuilder extends SerializerBuilder {
 	}
 
 	@Override /* BeanContextBuilder */
+	public RdfSerializerBuilder useJavaBeanIntrospector() {
+		super.useJavaBeanIntrospector();
+		return this;
+	}
+
+	@Override /* BeanContextBuilder */
 	public RdfSerializerBuilder useInterfaceProxies(boolean value) {
 		super.useInterfaceProxies(value);
 		return this;
@@ -631,6 +704,12 @@ public class RdfSerializerBuilder extends SerializerBuilder {
 	}
 
 	@Override /* BeanContextBuilder */
+	public RdfSerializerBuilder ignoreUnknownBeanProperties() {
+		super.ignoreUnknownBeanProperties();
+		return this;
+	}
+
+	@Override /* BeanContextBuilder */
 	public RdfSerializerBuilder ignoreUnknownNullBeanProperties(boolean value) {
 		super.ignoreUnknownNullBeanProperties(value);
 		return this;
@@ -649,18 +728,36 @@ public class RdfSerializerBuilder extends SerializerBuilder {
 	}
 
 	@Override /* BeanContextBuilder */
+	public RdfSerializerBuilder ignoreInvocationExceptionsOnGetters() {
+		super.ignoreInvocationExceptionsOnGetters();
+		return this;
+	}
+
+	@Override /* BeanContextBuilder */
 	public RdfSerializerBuilder ignoreInvocationExceptionsOnSetters(boolean value) {
 		super.ignoreInvocationExceptionsOnSetters(value);
 		return this;
 	}
 
 	@Override /* BeanContextBuilder */
+	public RdfSerializerBuilder ignoreInvocationExceptionsOnSetters() {
+		super.ignoreInvocationExceptionsOnSetters();
+		return this;
+	}
+
+	@Override /* BeanContextBuilder */
 	public RdfSerializerBuilder sortProperties(boolean value) {
 		super.sortProperties(value);
 		return this;
 	}
 
 	@Override /* BeanContextBuilder */
+	public RdfSerializerBuilder sortProperties() {
+		super.sortProperties();
+		return this;
+	}
+
+	@Override /* BeanContextBuilder */
 	public RdfSerializerBuilder notBeanPackages(Object...values) {
 		super.notBeanPackages(values);
 		return this;

http://git-wip-us.apache.org/repos/asf/juneau/blob/c162400e/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanContext.java
----------------------------------------------------------------------
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanContext.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanContext.java
index 7769f1c..026cc2c 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanContext.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanContext.java
@@ -16,7 +16,6 @@ import static org.apache.juneau.Visibility.*;
 import static org.apache.juneau.internal.ClassUtils.*;
 import static org.apache.juneau.internal.StringUtils.*;
 
-import java.beans.*;
 import java.io.*;
 import java.lang.reflect.*;
 import java.util.*;
@@ -138,64 +137,10 @@ import org.apache.juneau.transform.*;
  * 	Person p = m2.getBean();  <jc>// Get the bean instance that was created.</jc>
  * </p>
  *
- * <h5 class='topic'>Bean Annotations</h5>
- *
- * This package contains annotations that can be applied to class definitions to override what properties are detected
- * on a bean.
- *
- * <h5 class='section'>Example:</h5>
- *
- * <p class='bcode'>
- * 	<jc>// Bean class definition where only property 'name' is detected.</jc>
- * 	<ja>&#64;Bean</ja>(properties=<js>"name"</js>)
- * 	<jk>public class</jk> Person {
- * 		<jk>public</jk> String getName();
- * 		<jk>public void</jk> setName(String name);
- * 		<jk>public int</jk> getAge();
- * 		<jk>public void</jk> setAge(<jk>int</jk> age);
- * 	}
- * </p>
- *
- * <p>
- * See {@link Bean @Bean} and {@link BeanProperty @BeanProperty} for more information.
- *
- * <h5 class='topic'>Beans with read-only properties</h5>
- *
- * Bean maps can also be defined on top of beans with read-only properties by adding a
- * {@link BeanConstructor @BeanConstructor} annotation to one of the constructors on the
- * bean class.  This will allow read-only properties to be set through constructor arguments.
- *
- * <p>
- * When the <code>@BeanConstructor</code> annotation is present, bean instantiation is delayed until the call to
- * {@link BeanMap#getBean()}.
- * Until then, bean property values are stored in a local cache until <code>getBean()</code> is called.
- * Because of this additional caching step, parsing into read-only beans tends to be slower and use more memory than
- * parsing into beans with writable properties.
- *
- * <p>
- * Attempting to call {@link BeanMap#put(String,Object)} on a read-only property after calling {@link BeanMap#getBean()}
- * will result in a {@link BeanRuntimeException} being thrown.
- * Multiple calls to {@link BeanMap#getBean()} will return the same bean instance.
- *
- * <p>
- * Beans can be defined with a combination of read-only and read-write properties.
- *
- * <p>
- * See {@link BeanConstructor @BeanConstructor} for more information.
- *
- * <h5 class='topic'>ClassMetas</h5>
- *
- * The {@link ClassMeta} class is a wrapper around {@link Class} object that provides cached information about that
- * class (e.g. whether it's a {@link Map} or {@link Collection} or bean).
- *
- * <p>
- * As a general rule, it's best to reuse bean contexts (and therefore serializers and parsers too) whenever possible
- * since it takes some time to populate the internal {@code ClassMeta} object cache.
- * By reusing bean contexts, the class type metadata only needs to be calculated once which significantly improves
- * performance.
- *
- * <p>
- * See {@link ClassMeta} for more information.
+ * <h6 class='topic'>Documentation</h6>
+ *	<ul>
+ *		<li><a class="doclink" href="../../../overview-summary.html#juneau-marshall.ContextsBuildersSessionsPropertyStores">Overview &gt; Contexts, Builders, Sessions, and PropertyStores</a>
+ *	</ul>
  */
 @SuppressWarnings({"unchecked","rawtypes"})
 public class BeanContext extends Context {
@@ -351,6 +296,12 @@ public class BeanContext extends Context {
 	 * 	<jc>// This applies to all properties on this class and all subclasses.</jc>
 	 * 	<ja>@Bean</ja>(beanDictionary={Foo.<jk>class</jk>,Bar.<jk>class</jk>})
 	 * 	<jk>public class</jk> MyBean {...}
+	 * 
+	 * 	<jc>// Use the predefined HTML5 bean dictionary which is a BeanDictionaryList.</jc>
+	 * 	ReaderParser p = HtmlParser
+	 * 		.<jsm>create</jsm>()
+	 * 		.beanDictionary(HtmlBeanDictionary.<jk>class</jk>)
+	 * 		.build();
 	 * </p>
 	 * 
 	 *	<h5 class='section'>Documentation:</h5>
@@ -464,7 +415,7 @@ public class BeanContext extends Context {
 	 * 		<jc>// Must provide a no-arg constructor!</jc>
 	 * 		<jk>public</jk> MyBeanFilter() {
 	 * 			<jk>super</jk>(MyBean.<jk>class</jk>);  <jc>// The bean class that this filter applies to.</jc>
-	 * 			properties(<js>"foo,bar,baz"</js>);  <jc>// The properties we want exposed.</jc>
+	 * 			includeProperties(<js>"foo,bar,baz"</js>);  <jc>// The properties we want exposed.</jc>
 	 * 		}
 	 * 	}	
 	 * 
@@ -501,8 +452,7 @@ public class BeanContext extends Context {
 	public static final String BEAN_beanFilters_remove = PREFIX + "beanFilters.lc/remove";
 
 	/**
-	 * Configuration property:  {@link BeanMap#put(String,Object) BeanMap.put()} method will return old property
-	 * value.
+	 * Configuration property:  BeanMap.put() returns old property value.
 	 *
 	 *	<h5 class='section'>Property:</h5>
 	 * <ul>
@@ -513,14 +463,16 @@ public class BeanContext extends Context {
 	 * 	<li><b>Methods:</b> 
 	 * 		<ul>
 	 * 			<li class='jm'>{@link BeanContextBuilder#beanMapPutReturnsOldValue(boolean)}
+	 * 			<li class='jm'>{@link BeanContextBuilder#beanMapPutReturnsOldValue()}
 	 * 		</ul>
 	 * </ul>
 	 *
 	 *	<h5 class='section'>Description:</h5>
+	 *
 	 * <p>
 	 * If <jk>true</jk>, then the {@link BeanMap#put(String,Object) BeanMap.put()} method will return old property
 	 * values.
-	 *
+	 * 
 	 * <p>
 	 * Disabled by default because it introduces a slight performance penalty.
 	 */
@@ -579,6 +531,7 @@ public class BeanContext extends Context {
 	 * 	<li><b>Methods:</b> 
 	 * 		<ul>
 	 * 			<li class='jm'>{@link BeanContextBuilder#beansRequireDefaultConstructor(boolean)}
+	 * 			<li class='jm'>{@link BeanContextBuilder#beansRequireDefaultConstructor()}
 	 * 		</ul>
 	 * </ul>
 	 *
@@ -592,7 +545,7 @@ public class BeanContext extends Context {
 	public static final String BEAN_beansRequireDefaultConstructor = PREFIX + "beansRequireDefaultConstructor.b";
 
 	/**
-	 * Configuration property:  Beans require {@link Serializable} interface.
+	 * Configuration property:  Beans require Serializable interface.
 	 *
 	 *	<h5 class='section'>Property:</h5>
 	 * <ul>
@@ -603,6 +556,7 @@ public class BeanContext extends Context {
 	 * 	<li><b>Methods:</b> 
 	 * 		<ul>
 	 * 			<li class='jm'>{@link BeanContextBuilder#beansRequireSerializable(boolean)}
+	 * 			<li class='jm'>{@link BeanContextBuilder#beansRequireSerializable()}
 	 * 		</ul>
 	 * </ul>
 	 *
@@ -627,6 +581,7 @@ public class BeanContext extends Context {
 	 * 	<li><b>Methods:</b> 
 	 * 		<ul>
 	 * 			<li class='jm'>{@link BeanContextBuilder#beansRequireSettersForGetters(boolean)}
+	 * 			<li class='jm'>{@link BeanContextBuilder#beansRequireSettersForGetters()}
 	 * 		</ul>
 	 * </ul>
 	 *
@@ -662,7 +617,7 @@ public class BeanContext extends Context {
 	public static final String BEAN_beansRequireSomeProperties = PREFIX + "beansRequireSomeProperties.b";
 
 	/**
-	 * Configuration property:  Name to use for the bean type properties used to represent a bean type.
+	 * Configuration property:  Bean type property name.
 	 *
 	 *	<h5 class='section'>Property:</h5>
 	 * <ul>
@@ -679,6 +634,15 @@ public class BeanContext extends Context {
 	 * 			<li class='jm'>{@link BeanContextBuilder#beanTypePropertyName(String)}
 	 * 		</ul>
 	 * </ul>
+	 * 
+	 * <p>
+	 * This specifies the name of the bean property used to store the dictionary name of a bean type so that the
+	 * parser knows the data type to reconstruct.
+	 * 
+	 *	<h5 class='section'>Documentation:</h5>
+	 *	<ul>
+	 *		<li><a class="doclink" href="../../../overview-summary.html#juneau-marshall.BeanDictionaries">Overview &gt; Bean Names and Dictionaries</a>
+	 *	</ul>
 	 */
 	public static final String BEAN_beanTypePropertyName = PREFIX + "beanTypePropertyName.s";
 
@@ -719,7 +683,7 @@ public class BeanContext extends Context {
 	public static final String BEAN_debug = PREFIX + "debug.b";
 
 	/**
-	 * Configuration property:  Exclude specified properties from beans.
+	 * Configuration property:  Bean property excludes.
 	 *
 	 *	<h5 class='section'>Property:</h5>
 	 * <ul>
@@ -770,6 +734,7 @@ public class BeanContext extends Context {
 	 * 	<li><b>Methods:</b> 
 	 * 		<ul>
 	 * 			<li class='jm'>{@link BeanContextBuilder#ignoreInvocationExceptionsOnGetters(boolean)}
+	 * 			<li class='jm'>{@link BeanContextBuilder#ignoreInvocationExceptionsOnGetters()}
 	 * 		</ul>
 	 * </ul>
 	 *
@@ -792,6 +757,7 @@ public class BeanContext extends Context {
 	 * 	<li><b>Methods:</b> 
 	 * 		<ul>
 	 * 			<li class='jm'>{@link BeanContextBuilder#ignoreInvocationExceptionsOnSetters(boolean)}
+	 * 			<li class='jm'>{@link BeanContextBuilder#ignoreInvocationExceptionsOnSetters()}
 	 * 		</ul>
 	 * </ul>
 	 *
@@ -836,6 +802,7 @@ public class BeanContext extends Context {
 	 * 	<li><b>Methods:</b> 
 	 * 		<ul>
 	 * 			<li class='jm'>{@link BeanContextBuilder#ignoreUnknownBeanProperties(boolean)}
+	 * 			<li class='jm'>{@link BeanContextBuilder#ignoreUnknownBeanProperties()}
 	 * 		</ul>
 	 * </ul>
 	 *
@@ -869,7 +836,7 @@ public class BeanContext extends Context {
 	public static final String BEAN_ignoreUnknownNullBeanProperties = PREFIX + "ignoreUnknownNullBeanProperties.b";
 
 	/**
-	 * Configuration property:  Implementation classes for interfaces and abstract classes.
+	 * Configuration property:  Implementation classes.
 	 *
 	 *	<h5 class='section'>Property:</h5>
 	 * <ul>
@@ -893,11 +860,11 @@ public class BeanContext extends Context {
 	public static final String BEAN_implClasses = PREFIX + "implClasses.smc";
 
 	/**
-	 * Configuration property:  Explicitly specify visible bean properties.
+	 * Configuration property:  Bean property includes.
 	 *
 	 *	<h5 class='section'>Property:</h5>
 	 * <ul>
-	 * 	<li><b>Name:</b>  <js>"BeanContext.includeProperties.sms"</js>
+	 * 	<li><b>Name:</b>  <js>"BeanContext.properties.sms"</js>
 	 * 	<li><b>Data type:</b>  <code>Map&lt;String,String&gt;</code>
 	 * 	<li><b>Default:</b>  <code>{}</code>
 	 * 	<li><b>Session-overridable:</b>  <jk>false</jk>
@@ -911,13 +878,13 @@ public class BeanContext extends Context {
 	 * 			<li class='jm'>{@link BeanContextBuilder#includeProperties(Class, String)}
 	 * 			<li class='jm'>{@link BeanContextBuilder#includeProperties(String, String)}
 	 * 			<li class='jm'>{@link BeanContextBuilder#includeProperties(Map)}
-	 * 			<li class='jm'>{@link BeanFilterBuilder#properties(String...)}
+	 * 			<li class='jm'>{@link BeanFilterBuilder#includeProperties(String...)}
 	 * 		</ul>
 	 * </ul>
 	 *
 	 *	<h5 class='section'>Description:</h5>
 	 * <p>
-	 * Specifies to only include the specified list of properties for the specified bean classes.
+	 * Specifies the set and order of names of properties associated with the bean class.
 	 *
 	 * <p>
 	 * The keys are either fully-qualified or simple class names, and the values are comma-delimited lists of property
@@ -972,7 +939,7 @@ public class BeanContext extends Context {
 	public static final String BEAN_mediaType = PREFIX + "mediaType.s";
 
 	/**
-	 * Configuration property:  Classes to be excluded from consideration as being beans.
+	 * Configuration property:  Bean class exclusions.
 	 *
 	 *	<h5 class='section'>Property:</h5>
 	 * <ul>
@@ -1011,7 +978,7 @@ public class BeanContext extends Context {
 	public static final String BEAN_notBeanClasses_remove = PREFIX + "notBeanClasses.sc/remove";
 
 	/**
-	 * Configuration property:  Packages whose classes should not be considered beans.
+	 * Configuration property:  Bean package exclusions.
 	 *
 	 *	<h5 class='section'>Property:</h5>
 	 * <ul>
@@ -1175,7 +1142,7 @@ public class BeanContext extends Context {
 	 * 	<li><b>Methods:</b> 
 	 * 		<ul>
 	 * 			<li class='jm'>{@link BeanContextBuilder#propertyNamer(Class)}
-	 * 			<li class='jm'>{@link BeanFilterBuilder#propertyNamer(PropertyNamer)}
+	 * 			<li class='jm'>{@link BeanFilterBuilder#propertyNamer(Class)}
 	 * 		</ul>
 	 * </ul>
 	 * 
@@ -1194,7 +1161,7 @@ public class BeanContext extends Context {
 	public static final String BEAN_propertyNamer = PREFIX + "propertyNamer.c";
 
 	/**
-	 * Configuration property:  Sort bean properties in alphabetical order.
+	 * Configuration property:  Sort bean properties.
 	 *
 	 *	<h5 class='section'>Property:</h5>
 	 * <ul>
@@ -1209,7 +1176,9 @@ public class BeanContext extends Context {
 	 * 	<li><b>Methods:</b> 
 	 * 		<ul>
 	 * 			<li class='jm'>{@link BeanContextBuilder#sortProperties(boolean)}
+	 * 			<li class='jm'>{@link BeanContextBuilder#sortProperties()}
 	 * 			<li class='jm'>{@link BeanFilterBuilder#sortProperties(boolean)}
+	 * 			<li class='jm'>{@link BeanFilterBuilder#sortProperties()}
 	 * 		</ul>
 	 * </ul>
 	 *
@@ -1271,7 +1240,7 @@ public class BeanContext extends Context {
 	public static final String BEAN_useInterfaceProxies = PREFIX + "useInterfaceProxies.b";
 
 	/**
-	 * Configuration property:  Use Java {@link Introspector} for determining bean properties.
+	 * Configuration property:  Use Java Introspector.
 	 *
 	 *	<h5 class='section'>Property:</h5>
 	 * <ul>
@@ -1282,6 +1251,7 @@ public class BeanContext extends Context {
 	 * 	<li><b>Methods:</b> 
 	 * 		<ul>
 	 * 			<li class='jm'>{@link BeanContextBuilder#useJavaBeanIntrospector(boolean)}
+	 * 			<li class='jm'>{@link BeanContextBuilder#useJavaBeanIntrospector()}
 	 * 		</ul>
 	 * </ul>
 	 *
@@ -1334,7 +1304,7 @@ public class BeanContext extends Context {
 	public static final BeanContext DEFAULT = BeanContext.create().build();
 
 	/** Default config.  All default settings except sort bean properties. */
-	public static final BeanContext DEFAULT_SORTED = BeanContext.create().sortProperties(true).build();
+	public static final BeanContext DEFAULT_SORTED = BeanContext.create().sortProperties().build();
 
 	final boolean
 		beansRequireDefaultConstructor,
@@ -2287,7 +2257,7 @@ public class BeanContext extends Context {
 				.append("ignoreUnknownBeanProperties", ignoreUnknownBeanProperties)
 				.append("ignoreUnknownNullBeanProperties", ignoreUnknownNullBeanProperties)
 				.append("implClasses", implClasses)
-				.append("properties", includeProperties)
+				.append("includeProperties", includeProperties)
 				.append("locale", locale)
 				.append("mediaType", mediaType)
 				.append("notBeanClasses", notBeanClasses)

http://git-wip-us.apache.org/repos/asf/juneau/blob/c162400e/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanContextBuilder.java
----------------------------------------------------------------------
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanContextBuilder.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanContextBuilder.java
index 25c496c..93971ce 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanContextBuilder.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanContextBuilder.java
@@ -14,16 +14,13 @@ package org.apache.juneau;
 
 import static org.apache.juneau.BeanContext.*;
 
-import java.beans.*;
 import java.io.*;
 import java.lang.reflect.*;
 import java.util.*;
 
-import org.apache.juneau.Visibility;
 import org.apache.juneau.annotation.*;
 import org.apache.juneau.http.*;
 import org.apache.juneau.serializer.*;
-import org.apache.juneau.transform.*;
 
 /**
  * Builder class for building instances of serializers, parsers, and bean contexts.
@@ -104,7 +101,9 @@ public class BeanContextBuilder extends ContextBuilder {
 	 * 	<li class='jf'>{@link BeanContext#BEAN_beanClassVisibility}
 	 * </ul>
 	 * 
-	 * @param value The new value for this property.
+	 * @param value 
+	 * 	The new value for this property.
+	 * 	<br>The default is {@link Visibility#PUBLIC}.
 	 * @return This object (for method chaining).
 	 */
 	public BeanContextBuilder beanClassVisibility(Visibility value) {
@@ -122,7 +121,9 @@ public class BeanContextBuilder extends ContextBuilder {
 	 * 	<li class='jf'>{@link BeanContext#BEAN_beanConstructorVisibility}
 	 * </ul>
 	 * 
-	 * @param value The new value for this property.
+	 * @param value 
+	 * 	The new value for this property.
+	 * 	<br>The default is {@link Visibility#PUBLIC}.
 	 * @return This object (for method chaining).
 	 */
 	public BeanContextBuilder beanConstructorVisibility(Visibility value) {
@@ -135,31 +136,13 @@ public class BeanContextBuilder extends ContextBuilder {
 	 * <p>
 	 * Adds to the list of classes that make up the bean dictionary in this bean context.
 	 * 
-	 * <p>
-	 * A dictionary is a name/class mapping used to find class types during parsing when they cannot be inferred
-	 * through reflection.
-	 * <br>The names are defined through the {@link Bean#typeName()} annotation defined on the bean class.
-	 * <br>For example, if a class <code>Foo</code> has a type-name of <js>"myfoo"</js>, then it would end up serialized
-	 * as <js>"{_type:'myfoo',...}"</js>.
-	 * 
-	 * <p>
-	 * This setting tells the parsers which classes to look for when resolving <js>"_type"</js> attributes.
-	 * 
-	 * <p>
-	 * Values can consist of any of the following types:
-	 *	<ul>
-	 * 	<li>Any bean class that specifies a value for {@link Bean#typeName() @Bean.typeName()}.
-	 * 	<li>Any subclass of {@link BeanDictionaryList} containing a collection of bean classes with type name annotations.
-	 * 	<li>Any subclass of {@link BeanDictionaryMap} containing a mapping of type names to classes without type name annotations.
-	 * 	<li>Any array or collection of the objects above.
-	 * </ul>
-	 * 
 	 * <h5 class='section'>See Also:</h5>
 	 * <ul>
 	 * 	<li class='jf'>{@link BeanContext#BEAN_beanDictionary}
 	 * </ul>
 	 * 
-	 * @param values The values to add to this property.
+	 * @param values 
+	 * 	The values to add to this property.
 	 * @return This object (for method chaining).
 	 */
 	public BeanContextBuilder beanDictionary(Object...values) {
@@ -177,7 +160,8 @@ public class BeanContextBuilder extends ContextBuilder {
 	 * 	<li class='jf'>{@link BeanContext#BEAN_beanDictionary}
 	 * </ul>
 	 * 
-	 * @param values The values to add to this property.
+	 * @param values 
+	 * 	The values to add to this property.
 	 * @return This object (for method chaining).
 	 */
 	public BeanContextBuilder beanDictionary(Class<?>...values) {
@@ -197,7 +181,8 @@ public class BeanContextBuilder extends ContextBuilder {
 	 * 
 	 * @param append
 	 * 	If <jk>true</jk>, the previous value is appended to.  Otherwise, the previous value is replaced. 
-	 * @param values The new values for this property.
+	 * @param values 
+	 * 	The new values for this property.
 	 * @return This object (for method chaining).
 	 */
 	public BeanContextBuilder beanDictionary(boolean append, Object...values) {
@@ -215,7 +200,8 @@ public class BeanContextBuilder extends ContextBuilder {
 	 * 	<li class='jf'>{@link BeanContext#BEAN_beanDictionary}
 	 * </ul>
 	 * 
-	 * @param values The values to remove from this property.
+	 * @param values 
+	 * 	The values to remove from this property.
 	 * @return This object (for method chaining).
 	 */
 	public BeanContextBuilder beanDictionaryRemove(Object...values) {
@@ -233,7 +219,9 @@ public class BeanContextBuilder extends ContextBuilder {
 	 * 	<li class='jf'>{@link BeanContext#BEAN_beanFieldVisibility}
 	 * </ul>
 	 * 
-	 * @param value The new value for this property.
+	 * @param value 
+	 * 	The new value for this property.
+	 * 	<br>The default is {@link Visibility#PUBLIC}.
 	 * @return This object (for method chaining).
 	 */
 	public BeanContextBuilder beanFieldVisibility(Visibility value) {
@@ -248,24 +236,13 @@ public class BeanContextBuilder extends ContextBuilder {
 	 * <br>It's useful when you want to use the Bean annotation functionality, but you don't have the ability to alter 
 	 * the bean classes.
 	 *
-	 * <p>
-	 * Values can consist of any of the following types:
-	 * <ul class='spaced-list'>
-	 * 	<li>Any subclass of {@link BeanFilterBuilder}.
-	 * 		<br>These must have a public no-arg constructor.
-	 * 	<li>Any bean interfaces.
-	 * 		<br>A shortcut for defining a {@link InterfaceBeanFilterBuilder}.
-	 * 		<br>Any subclasses of an interface class will only have properties defined on the interface.
-	 * 		All other bean properties will be ignored.
-	 * 	<li>Any array or collection of the objects above.
-	 * </ul>
-	 *
 	 * <h5 class='section'>See Also:</h5>
 	 * <ul>
 	 * 	<li class='jf'>{@link BeanContext#BEAN_beanFilters}
 	 * </ul>
 	 * 
-	 * @param values The values to add to this property.
+	 * @param values 
+	 * 	The values to add to this property.
 	 * @return This object (for method chaining).
 	 */
 	public BeanContextBuilder beanFilters(Object...values) {
@@ -283,7 +260,8 @@ public class BeanContextBuilder extends ContextBuilder {
 	 * 	<li class='jf'>{@link BeanContext#BEAN_beanFilters}
 	 * </ul>
 	 * 
-	 * @param values The values to add to this property.
+	 * @param values
+	 * 	The values to add to this property.
 	 * @return This object (for method chaining).
 	 */
 	public BeanContextBuilder beanFilters(Class<?>...values) {
@@ -303,7 +281,8 @@ public class BeanContextBuilder extends ContextBuilder {
 	 * 
 	 * @param append
 	 * 	If <jk>true</jk>, the previous value is appended to.  Otherwise, the previous value is replaced. 
-	 * @param values The new value for this property.
+	 * @param values 
+	 * 	The new values for this property.
 	 * @return This object (for method chaining).
 	 */
 	public BeanContextBuilder beanFilters(boolean append, Object...values) {
@@ -321,7 +300,8 @@ public class BeanContextBuilder extends ContextBuilder {
 	 * 	<li class='jf'>{@link BeanContext#BEAN_beanFilters}
 	 * </ul>
 	 * 
-	 * @param values The values to remove from this property.
+	 * @param values 
+	 * 	The values to remove from this property.
 	 * @return This object (for method chaining).
 	 */
 	public BeanContextBuilder beanFiltersRemove(Object...values) {
@@ -329,8 +309,7 @@ public class BeanContextBuilder extends ContextBuilder {
 	}
 
 	/**
-	 * Configuration property:  {@link BeanMap#put(String,Object) BeanMap.put()} method will return old property
-	 * value.
+	 * Configuration property:  BeanMap.put() returns old property value.
 	 *
 	 * <p>
 	 * If <jk>true</jk>, then the {@link BeanMap#put(String,Object) BeanMap.put()} method will return old property
@@ -345,7 +324,9 @@ public class BeanContextBuilder extends ContextBuilder {
 	 * 	<li class='jf'>{@link BeanContext#BEAN_beanMapPutReturnsOldValue}
 	 * </ul>
 	 * 
-	 * @param value The new value for this property.
+	 * @param value 
+	 * 	The new value for this property.
+	 * 	<br>The default is <jk>false</jk>.
 	 * @return This object (for method chaining).
 	 */
 	public BeanContextBuilder beanMapPutReturnsOldValue(boolean value) {
@@ -353,6 +334,23 @@ public class BeanContextBuilder extends ContextBuilder {
 	}
 
 	/**
+	 * Configuration property:  BeanMap.put() returns old property value.
+	 *
+	 * <p>
+	 * Shortcut for calling <code>beanMapPutReturnsOldValue(<jk>true</jk>)</code>.
+	 *
+	 * <h5 class='section'>See Also:</h5>
+	 * <ul>
+	 * 	<li class='jf'>{@link BeanContext#BEAN_beanMapPutReturnsOldValue}
+	 * </ul>
+	 * 
+	 * @return This object (for method chaining).
+	 */
+	public BeanContextBuilder beanMapPutReturnsOldValue() {
+		return set(BEAN_beanMapPutReturnsOldValue, true);
+	}
+
+	/**
 	 * Configuration property:  Minimum bean method visibility.
 	 *
 	 * <p>
@@ -363,7 +361,9 @@ public class BeanContextBuilder extends ContextBuilder {
 	 * 	<li class='jf'>{@link BeanContext#BEAN_beanMethodVisibility}
 	 * </ul>
 	 * 
-	 * @param value The new value for this property.
+	 * @param value 
+	 * 	The new value for this property.
+	 * 	<br>The default is {@link Visibility#PUBLIC}
 	 * @return This object (for method chaining).
 	 */
 	public BeanContextBuilder beanMethodVisibility(Visibility value) {
@@ -385,7 +385,9 @@ public class BeanContextBuilder extends ContextBuilder {
 	 * 	<li class='jf'>{@link BeanContext#BEAN_beansRequireDefaultConstructor}
 	 * </ul>
 	 * 
-	 * @param value The new value for this property.
+	 * @param value 
+	 * 	The new value for this property.
+	 * 	<br>The default is <jk>false</jk>.
 	 * @return This object (for method chaining).
 	 */
 	public BeanContextBuilder beansRequireDefaultConstructor(boolean value) {
@@ -393,7 +395,24 @@ public class BeanContextBuilder extends ContextBuilder {
 	}
 
 	/**
-	 * Configuration property:  Beans require {@link Serializable} interface.
+	 * Configuration property:  Beans require no-arg constructors.
+	 *
+	 * <p>
+	 * Shortcut for calling <code>beansRequireDefaultConstructor(<jk>true</jk>)</code>.
+	 *
+	 * <h5 class='section'>See Also:</h5>
+	 * <ul>
+	 * 	<li class='jf'>{@link BeanContext#BEAN_beansRequireDefaultConstructor}
+	 * </ul>
+	 * 
+	 * @return This object (for method chaining).
+	 */
+	public BeanContextBuilder beansRequireDefaultConstructor() {
+		return set(BEAN_beansRequireDefaultConstructor, true);
+	}
+
+	/**
+	 * Configuration property:  Beans require Serializable interface.
 	 *
 	 * <p>
 	 * If <jk>true</jk>, a Java class must implement the {@link Serializable} interface to be considered a bean.
@@ -407,7 +426,9 @@ public class BeanContextBuilder extends ContextBuilder {
 	 * 	<li class='jf'>{@link BeanContext#BEAN_beansRequireSerializable}
 	 * </ul>
 	 * 
-	 * @param value The new value for this property.
+	 * @param value 
+	 * 	The new value for this property.
+	 * 	<br>The default is <jk>false</jk>.
 	 * @return This object (for method chaining).
 	 */
 	public BeanContextBuilder beansRequireSerializable(boolean value) {
@@ -415,6 +436,23 @@ public class BeanContextBuilder extends ContextBuilder {
 	}
 
 	/**
+	 * Configuration property:  Beans require Serializable interface.
+	 *
+	 * <p>
+	 * Shortcut for calling <code>beansRequireSerializable(<jk>true</jk>)</code>.
+	 *
+	 * <h5 class='section'>See Also:</h5>
+	 * <ul>
+	 * 	<li class='jf'>{@link BeanContext#BEAN_beansRequireSerializable}
+	 * </ul>
+	 * 
+	 * @return This object (for method chaining).
+	 */
+	public BeanContextBuilder beansRequireSerializable() {
+		return set(BEAN_beansRequireSerializable, true);
+	}
+
+	/**
 	 * Configuration property:  Beans require setters for getters.
 	 *
 	 * <p>
@@ -426,7 +464,9 @@ public class BeanContextBuilder extends ContextBuilder {
 	 * 	<li class='jf'>{@link BeanContext#BEAN_beansRequireSettersForGetters}
 	 * </ul>
 	 * 
-	 * @param value The new value for this property.
+	 * @param value 
+	 * 	The new value for this property.
+	 * 	<br>The default is <jk>false</jk>.
 	 * @return This object (for method chaining).
 	 */
 	public BeanContextBuilder beansRequireSettersForGetters(boolean value) {
@@ -434,6 +474,23 @@ public class BeanContextBuilder extends ContextBuilder {
 	}
 
 	/**
+	 * Configuration property:  Beans require setters for getters.
+	 *
+	 * <p>
+	 * Shortcut for calling <code>beansRequireSettersForGetters(<jk>true</jk>)</code>.
+	 *
+	 * <h5 class='section'>See Also:</h5>
+	 * <ul>
+	 * 	<li class='jf'>{@link BeanContext#BEAN_beansRequireSettersForGetters}
+	 * </ul>
+	 * 
+	 * @return This object (for method chaining).
+	 */
+	public BeanContextBuilder beansRequireSettersForGetters() {
+		return set(BEAN_beansRequireSettersForGetters, true);
+	}
+
+	/**
 	 * Configuration property:  Beans require at least one property.
 	 *
 	 * <p>
@@ -448,7 +505,9 @@ public class BeanContextBuilder extends ContextBuilder {
 	 * 	<li class='jf'>{@link BeanContext#BEAN_beansRequireSomeProperties}
 	 * </ul>
 	 * 
-	 * @param value The new value for this property.
+	 * @param value 
+	 * 	The new value for this property.
+	 * 	<br>The default is <jk>true</jk>.
 	 * @return This object (for method chaining).
 	 */
 	public BeanContextBuilder beansRequireSomeProperties(boolean value) {
@@ -456,14 +515,20 @@ public class BeanContextBuilder extends ContextBuilder {
 	}
 
 	/**
-	 * Configuration property:  Name to use for the bean type properties used to represent a bean type.
+	 * Configuration property:  Bean type property name.
 	 *
+	 * <p>
+	 * This specifies the name of the bean property used to store the dictionary name of a bean type so that the
+	 * parser knows the data type to reconstruct.
+	 * 
 	 * <h5 class='section'>See Also:</h5>
 	 * <ul>
 	 * 	<li class='jf'>{@link BeanContext#BEAN_beanTypePropertyName}
 	 * </ul>
 	 * 
-	 * @param value The new value for this property.
+	 * @param value 
+	 * 	The new value for this property.
+	 * 	<br>The default is <js>"_type"</js>.
 	 * @return This object (for method chaining).
 	 */
 	public BeanContextBuilder beanTypePropertyName(String value) {
@@ -483,13 +548,25 @@ public class BeanContextBuilder extends ContextBuilder {
 	 * 		Enables {@link Serializer#SERIALIZER_detectRecursions}.
 	 * </ul>
 	 *
-	 * <p>
-	 * Enables the following additional information during parsing:
-	 * <ul class='spaced-list'>
-	 * 	<li>
-	 * 		When bean setters throws exceptions, the exception includes the object stack information
-	 * 		in order to determine how that method was invoked.
+	 * <h5 class='section'>See Also:</h5>
+	 * <ul>
+	 * 	<li class='jf'>{@link BeanContext#BEAN_debug}
 	 * </ul>
+	 * 
+	 * @param value 
+	 * 	The new value for this property.
+	 * 	<br>The default is <jk>false</jk>.
+	 * @return This object (for method chaining).
+	 */
+	public BeanContextBuilder debug(boolean value) {
+		return set(BEAN_debug, value);
+	}
+
+	/**
+	 * Configuration property:  Debug mode.
+	 *
+	 * <p>
+	 * Shortcut for calling <code>debug(<jk>true</jk>)</code>.
 	 *
 	 * <h5 class='section'>See Also:</h5>
 	 * <ul>
@@ -503,8 +580,11 @@ public class BeanContextBuilder extends ContextBuilder {
 	}
 
 	/**
-	 * Configuration property:  Exclude specified properties from beans.
+	 * Configuration property:  Bean property excludes.
 	 *
+	 * <p>
+	 * Specifies to exclude the specified list of properties for the specified bean class.
+	 * 
 	 * <h5 class='section'>See Also:</h5>
 	 * <ul>
 	 * 	<li class='jf'>{@link BeanContext#BEAN_excludeProperties}
@@ -519,7 +599,7 @@ public class BeanContextBuilder extends ContextBuilder {
 	}
 
 	/**
-	 * Configuration property:  Exclude specified properties from beans.
+	 * Configuration property:  Bean property excludes.
 	 *
 	 * <p>
 	 * Specifies to exclude the specified list of properties for the specified bean classes.
@@ -529,7 +609,8 @@ public class BeanContextBuilder extends ContextBuilder {
 	 * 	<li class='jf'>{@link BeanContext#BEAN_excludeProperties}
 	 * </ul>
 	 * 
-	 * @param values The new value for this property.
+	 * @param values 
+	 * 	The new value for this property.
 	 * @return This object (for method chaining).
 	 */
 	public BeanContextBuilder excludeProperties(Map<String,String> values) {
@@ -537,7 +618,7 @@ public class BeanContextBuilder extends ContextBuilder {
 	}
 
 	/**
-	 * Configuration property:  Exclude specified properties from beans.
+	 * Configuration property:  Bean property excludes.
 	 *
 	 * <h5 class='section'>See Also:</h5>
 	 * <ul>
@@ -545,11 +626,11 @@ public class BeanContextBuilder extends ContextBuilder {
 	 * </ul>
 	 * 
 	 * @param beanClassName The bean class name.  Can be a simple name, fully-qualified name, or <js>"*"</js>.
-	 * @param properties Comma-delimited list of property names.
+	 * @param value Comma-delimited list of property names.
 	 * @return This object (for method chaining).
 	 */
-	public BeanContextBuilder excludeProperties(String beanClassName, String properties) {
-		return addTo(BEAN_excludeProperties, beanClassName, properties);
+	public BeanContextBuilder excludeProperties(String beanClassName, String value) {
+		return addTo(BEAN_excludeProperties, beanClassName, value);
 	}
 
 	/**
@@ -564,7 +645,9 @@ public class BeanContextBuilder extends ContextBuilder {
 	 * 	<li class='jf'>{@link BeanContext#BEAN_ignoreInvocationExceptionsOnGetters}
 	 * </ul>
 	 * 
-	 * @param value The new value for this property.
+	 * @param value 
+	 * 	The new value for this property.
+	 * 	<br>The default is <jk>false</jk>.
 	 * @return This object (for method chaining).
 	 */
 	public BeanContextBuilder ignoreInvocationExceptionsOnGetters(boolean value) {
@@ -572,6 +655,23 @@ public class BeanContextBuilder extends ContextBuilder {
 	}
 
 	/**
+	 * Configuration property:  Ignore invocation errors on getters.
+	 *
+	 * <p>
+	 * Shortcut for calling <code>ignoreInvocationExceptionsOnGetters(<jk>true</jk>)</code>.
+	 *
+	 * <h5 class='section'>See Also:</h5>
+	 * <ul>
+	 * 	<li class='jf'>{@link BeanContext#BEAN_ignoreInvocationExceptionsOnGetters}
+	 * </ul>
+	 * 
+	 * @return This object (for method chaining).
+	 */
+	public BeanContextBuilder ignoreInvocationExceptionsOnGetters() {
+		return set(BEAN_ignoreInvocationExceptionsOnGetters, true);
+	}
+
+	/**
 	 * Configuration property:  Ignore invocation errors on setters.
 	 *
 	 * <p>
@@ -583,7 +683,9 @@ public class BeanContextBuilder extends ContextBuilder {
 	 * 	<li class='jf'>{@link BeanContext#BEAN_ignoreInvocationExceptionsOnSetters}
 	 * </ul>
 	 * 
-	 * @param value The new value for this property.
+	 * @param value 
+	 * 	The new value for this property.
+	 * 	<br>The default is <jk>false</jk>.
 	 * @return This object (for method chaining).
 	 */
 	public BeanContextBuilder ignoreInvocationExceptionsOnSetters(boolean value) {
@@ -591,6 +693,23 @@ public class BeanContextBuilder extends ContextBuilder {
 	}
 
 	/**
+	 * Configuration property:  Ignore invocation errors on setters.
+	 *
+	 * <p>
+	 * Shortcut for calling <code>ignoreInvocationExceptionsOnSetters(<jk>true</jk>)</code>.
+	 *
+	 * <h5 class='section'>See Also:</h5>
+	 * <ul>
+	 * 	<li class='jf'>{@link BeanContext#BEAN_ignoreInvocationExceptionsOnSetters}
+	 * </ul>
+	 * 
+	 * @return This object (for method chaining).
+	 */
+	public BeanContextBuilder ignoreInvocationExceptionsOnSetters() {
+		return set(BEAN_ignoreInvocationExceptionsOnSetters, true);
+	}
+
+	/**
 	 * Configuration property:  Ignore properties without setters.
 	 *
 	 * <p>
@@ -602,7 +721,9 @@ public class BeanContextBuilder extends ContextBuilder {
 	 * 	<li class='jf'>{@link BeanContext#BEAN_ignorePropertiesWithoutSetters}
 	 * </ul>
 	 * 
-	 * @param value The new value for this property.
+	 * @param value 
+	 * 	The new value for this property.
+	 * 	<br>The default is <jk>true</jk>.
 	 * @return This object (for method chaining).
 	 */
 	public BeanContextBuilder ignorePropertiesWithoutSetters(boolean value) {
@@ -621,7 +742,9 @@ public class BeanContextBuilder extends ContextBuilder {
 	 * 	<li class='jf'>{@link BeanContext#BEAN_ignoreUnknownBeanProperties}
 	 * </ul>
 	 * 
-	 * @param value The new value for this property.
+	 * @param value 
+	 * 	The new value for this property.
+	 * 	<br>The default is <jk>false</jk>.
 	 * @return This object (for method chaining).
 	 */
 	public BeanContextBuilder ignoreUnknownBeanProperties(boolean value) {
@@ -629,6 +752,23 @@ public class BeanContextBuilder extends ContextBuilder {
 	}
 
 	/**
+	 * Configuration property:  Ignore unknown properties.
+	 *
+	 * <p>
+	 * Shortcut for calling <code>ignoreUnknownBeanProperties(<jk>true</jk>)</code>.
+	 *
+	 * <h5 class='section'>See Also:</h5>
+	 * <ul>
+	 * 	<li class='jf'>{@link BeanContext#BEAN_ignoreUnknownBeanProperties}
+	 * </ul>
+	 * 
+	 * @return This object (for method chaining).
+	 */
+	public BeanContextBuilder ignoreUnknownBeanProperties() {
+		return set(BEAN_ignoreUnknownBeanProperties, true);
+	}
+
+	/**
 	 * Configuration property:  Ignore unknown properties with null values.
 	 *
 	 * <p>
@@ -640,7 +780,9 @@ public class BeanContextBuilder extends ContextBuilder {
 	 * 	<li class='jf'>{@link BeanContext#BEAN_ignoreUnknownNullBeanProperties}
 	 * </ul>
 	 * 
-	 * @param value The new value for this property.
+	 * @param value 
+	 * 	The new value for this property.
+	 * 	<br>The default is <jk>true</jk>.
 	 * @return This object (for method chaining).
 	 */
 	public BeanContextBuilder ignoreUnknownNullBeanProperties(boolean value) {
@@ -648,7 +790,7 @@ public class BeanContextBuilder extends ContextBuilder {
 	}
 
 	/**
-	 * Configuration property:  Implementation classes for interfaces and abstract classes.
+	 * Configuration property:  Implementation classes.
 	 *
 	 * <h5 class='section'>See Also:</h5>
 	 * <ul>
@@ -665,7 +807,7 @@ public class BeanContextBuilder extends ContextBuilder {
 	}
 
 	/**
-	 * Configuration property:  Implementation classes for interfaces and abstract classes.
+	 * Configuration property:  Implementation classes.
 	 *
 	 * <p>
 	 * For interfaces and abstract classes this method can be used to specify an implementation class for the
@@ -685,26 +827,29 @@ public class BeanContextBuilder extends ContextBuilder {
 	}
 
 	/**
-	 * Configuration property:  Explicitly specify visible bean properties.
+	 * Configuration property:  Bean property includes.
 	 *
+	 * <p>
+	 * Specifies the set and order of names of properties associated with the bean class.
+	 * 
 	 * <h5 class='section'>See Also:</h5>
 	 * <ul>
 	 * 	<li class='jf'>{@link BeanContext#BEAN_includeProperties}
 	 * </ul>
 	 * 
 	 * @param beanClass The bean class.
-	 * @param properties Comma-delimited list of property names.
+	 * @param value Comma-delimited list of property names.
 	 * @return This object (for method chaining).
 	 */
-	public BeanContextBuilder includeProperties(Class<?> beanClass, String properties) {
-		return addTo(BEAN_includeProperties, beanClass.getName(), properties);
+	public BeanContextBuilder includeProperties(Class<?> beanClass, String value) {
+		return addTo(BEAN_includeProperties, beanClass.getName(), value);
 	}
 
 	/**
-	 * Configuration property:  Explicitly specify visible bean properties.
+	 * Configuration property:  Bean property includes.
 	 *
 	 * <p>
-	 * Specifies to only include the specified list of properties for the specified bean classes.
+	 * Specifies the set and order of names of properties associated with the bean class.
 	 *
 	 * <h5 class='section'>See Also:</h5>
 	 * <ul>
@@ -719,19 +864,22 @@ public class BeanContextBuilder extends ContextBuilder {
 	}
 
 	/**
-	 * Configuration property:  Explicitly specify visible bean properties.
+	 * Configuration property:  Bean property includes.
 	 *
+	 * <p>
+	 * Specifies the set and order of names of properties associated with the bean class.
+	 * 
 	 * <h5 class='section'>See Also:</h5>
 	 * <ul>
 	 * 	<li class='jf'>{@link BeanContext#BEAN_includeProperties}
 	 * </ul>
 	 * 
 	 * @param beanClassName The bean class name.  Can be a simple name, fully-qualified name, or <js>"*"</js>.
-	 * @param properties Comma-delimited list of property names.
+	 * @param value Comma-delimited list of property names.
 	 * @return This object (for method chaining).
 	 */
-	public BeanContextBuilder includeProperties(String beanClassName, String properties) {
-		return addTo(BEAN_includeProperties, beanClassName, properties);
+	public BeanContextBuilder includeProperties(String beanClassName, String value) {
+		return addTo(BEAN_includeProperties, beanClassName, value);
 	}
 
 	/**
@@ -768,7 +916,7 @@ public class BeanContextBuilder extends ContextBuilder {
 	}
 
 	/**
-	 * Configuration property:  Classes to be excluded from consideration as being beans.
+	 * Configuration property:  Bean class exclusions.
 	 *
 	 * <p>
 	 * Not-bean classes are typically converted to <code>Strings</code> during serialization even if they appear to be
@@ -789,7 +937,7 @@ public class BeanContextBuilder extends ContextBuilder {
 	}
 
 	/**
-	 * Configuration property:  Add to classes that should not be considered beans.
+	 * Configuration property:  Bean class exclusions.
 	 *
 	 * <h5 class='section'>See Also:</h5>
 	 * <ul>
@@ -804,7 +952,7 @@ public class BeanContextBuilder extends ContextBuilder {
 	}
 
 	/**
-	 * Configuration property:  Add to classes that should not be considered beans.
+	 * Configuration property:  Bean class exclusions.
 	 *
 	 * <h5 class='section'>See Also:</h5>
 	 * <ul>
@@ -819,7 +967,7 @@ public class BeanContextBuilder extends ContextBuilder {
 	}
 
 	/**
-	 * Configuration property:  Remove from classes that should not be considered beans.
+	 * Configuration property:  Bean class exclusions.
 	 *
 	 * <h5 class='section'>See Also:</h5>
 	 * <ul>
@@ -834,7 +982,7 @@ public class BeanContextBuilder extends ContextBuilder {
 	}
 
 	/**
-	 * Configuration property:  Packages whose classes should not be considered beans.
+	 * Configuration property:  Bean package exclusions.
 	 *
 	 * <p>
 	 * When specified, the current list of ignore packages are appended to.
@@ -854,7 +1002,7 @@ public class BeanContextBuilder extends ContextBuilder {
 	}
 
 	/**
-	 * Configuration property:  Add to packages whose classes should not be considered beans.
+	 * Configuration property:  Bean package exclusions.
 	 *
 	 * <h5 class='section'>See Also:</h5>
 	 * <ul>
@@ -869,7 +1017,7 @@ public class BeanContextBuilder extends ContextBuilder {
 	}
 
 	/**
-	 * Configuration property:  Add to packages whose classes should not be considered beans.
+	 * Configuration property:  Bean package exclusions.
 	 *
 	 * <h5 class='section'>See Also:</h5>
 	 * <ul>
@@ -884,7 +1032,7 @@ public class BeanContextBuilder extends ContextBuilder {
 	}
 
 	/**
-	 * Configuration property:  Remove from packages whose classes should not be considered beans.
+	 * Configuration property:  Bean package exclusions.
 	 *
 	 * <h5 class='section'>See Also:</h5>
 	 * <ul>
@@ -899,14 +1047,14 @@ public class BeanContextBuilder extends ContextBuilder {
 	}
 
 	/**
-	 * Configuration property:  POJO swaps to apply to Java objects.
+	 * Configuration property:  POJO swaps.
 	 *
 	 * <p>
-	 * There are two category of classes that can be passed in through this method:
-	 * <ul>
-	 * 	<li>Subclasses of {@link PojoSwap}.
-	 * 	<li>Implementations of {@link Surrogate}.
-	 * </ul>
+	 * POJO swaps are used to "swap out" non-serializable classes with serializable equivalents during serialization,
+	 * and "swap in" the non-serializable class during parsing.
+	 * 
+	 * <p>
+	 * An example of a POJO swap would be a <code>Calendar</code> object that gets swapped out for an ISO8601 string.
 	 *
 	 * <h5 class='section'>See Also:</h5>
 	 * <ul>
@@ -923,7 +1071,7 @@ public class BeanContextBuilder extends ContextBuilder {
 	}
 
 	/**
-	 * Configuration property:  Add to POJO swaps.
+	 * Configuration property:  POJO swaps.
 	 *
 	 * <h5 class='section'>See Also:</h5>
 	 * <ul>
@@ -938,7 +1086,7 @@ public class BeanContextBuilder extends ContextBuilder {
 	}
 
 	/**
-	 * Configuration property:  Add to POJO swaps.
+	 * Configuration property:  POJO swaps.
 	 *
 	 * <h5 class='section'>See Also:</h5>
 	 * <ul>
@@ -953,7 +1101,7 @@ public class BeanContextBuilder extends ContextBuilder {
 	}
 
 	/**
-	 * Configuration property:  Remove from POJO swaps.
+	 * Configuration property:  POJO swaps.
 	 *
 	 * <h5 class='section'>See Also:</h5>
 	 * <ul>
@@ -978,7 +1126,9 @@ public class BeanContextBuilder extends ContextBuilder {
 	 * 	<li class='jf'>{@link BeanContext#BEAN_propertyNamer}
 	 * </ul>
 	 * 
-	 * @param value The new value for this setting.
+	 * @param value 
+	 * 	The new value for this setting.
+	 * 	<br>The default is {@link PropertyNamerDefault}.
 	 * @return This object (for method chaining).
 	 */
 	public BeanContextBuilder propertyNamer(Class<? extends PropertyNamer> value) {
@@ -986,7 +1136,7 @@ public class BeanContextBuilder extends ContextBuilder {
 	}
 
 	/**
-	 * Configuration property:  Sort bean properties in alphabetical order.
+	 * Configuration property:  Sort bean properties.
 	 *
 	 * <p>
 	 * When <jk>true</jk>, all bean properties will be serialized and access in alphabetical order.
@@ -997,7 +1147,9 @@ public class BeanContextBuilder extends ContextBuilder {
 	 * 	<li class='jf'>{@link BeanContext#BEAN_sortProperties}
 	 * </ul>
 	 * 
-	 * @param value The new value for this property.
+	 * @param value 
+	 * 	The new value for this property.
+	 * 	<br>The default is <jk>false</jk>.
 	 * @return This object (for method chaining).
 	 */
 	public BeanContextBuilder sortProperties(boolean value) {
@@ -1005,6 +1157,23 @@ public class BeanContextBuilder extends ContextBuilder {
 	}
 
 	/**
+	 * Configuration property:  Sort bean properties.
+	 *
+	 * <p>
+	 * Shortcut for calling <code>sortProperties(<jk>true</jk>)</code>.
+	 *
+	 * <h5 class='section'>See Also:</h5>
+	 * <ul>
+	 * 	<li class='jf'>{@link BeanContext#BEAN_sortProperties}
+	 * </ul>
+	 * 
+	 * @return This object (for method chaining).
+	 */
+	public BeanContextBuilder sortProperties() {
+		return set(BEAN_sortProperties, true);
+	}
+
+	/**
 	 * Configuration property:  TimeZone.
 	 *
 	 * <h5 class='section'>See Also:</h5>
@@ -1031,7 +1200,9 @@ public class BeanContextBuilder extends ContextBuilder {
 	 * 	<li class='jf'>{@link BeanContext#BEAN_useInterfaceProxies}
 	 * </ul>
 	 * 
-	 * @param value The new value for this property.
+	 * @param value 
+	 * 	The new value for this property.
+	 * 	<br>The default is <jk>true</jk>.
 	 * @return This object (for method chaining).
 	 */
 	public BeanContextBuilder useInterfaceProxies(boolean value) {
@@ -1039,7 +1210,7 @@ public class BeanContextBuilder extends ContextBuilder {
 	}
 
 	/**
-	 * Configuration property:  Use Java {@link Introspector} for determining bean properties.
+	 * Configuration property:  Use Java Introspector.
 	 *
 	 * <p>
 	 * Using the built-in Java bean introspector will not pick up fields or non-standard getters/setters.
@@ -1054,13 +1225,32 @@ public class BeanContextBuilder extends ContextBuilder {
 	 * 	<li class='jf'>{@link BeanContext#BEAN_useJavaBeanIntrospector}
 	 * </ul>
 	 * 
-	 * @param value The new value for this property.
+	 * @param value 
+	 * 	The new value for this property.
+	 * 	<br>The default is <jk>false</jk>.
 	 * @return This object (for method chaining).
 	 */
 	public BeanContextBuilder useJavaBeanIntrospector(boolean value) {
 		return set(BEAN_useJavaBeanIntrospector, value);
 	}
 
+	/**
+	 * Configuration property:  Use Java Introspector.
+	 *
+	 * <p>
+	 * Shortcut for calling <code>useJavaBeanIntrospector(<jk>true</jk>)</code>.
+	 *
+	 * <h5 class='section'>See Also:</h5>
+	 * <ul>
+	 * 	<li class='jf'>{@link BeanContext#BEAN_useJavaBeanIntrospector}
+	 * </ul>
+	 * 
+	 * @return This object (for method chaining).
+	 */
+	public BeanContextBuilder useJavaBeanIntrospector() {
+		return set(BEAN_useJavaBeanIntrospector, true);
+	}
+
 	@Override /* ContextBuilder */
 	public BeanContextBuilder set(String name, Object value) {
 		super.set(name, value);

http://git-wip-us.apache.org/repos/asf/juneau/blob/c162400e/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanSession.java
----------------------------------------------------------------------
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanSession.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanSession.java
index cd59eaa..d7f4707 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanSession.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanSession.java
@@ -81,7 +81,7 @@ public class BeanSession extends Session {
 	 * The locale is determined in the following order:
 	 * <ol>
 	 * 	<li><code>locale</code> parameter passed in through constructor.
-	 * 	<li>{@link BeanContext#BEAN_locale} entry in <code>properties</code> parameter passed in through constructor.
+	 * 	<li>{@link BeanContext#BEAN_locale} entry in parameter passed in through constructor.
 	 * 	<li>{@link BeanContext#BEAN_locale} setting on bean context.
 	 * 	<li>Locale returned by {@link Locale#getDefault()}.
 	 * </ol>
@@ -99,7 +99,7 @@ public class BeanSession extends Session {
 	 * The timezone is determined in the following order:
 	 * <ol>
 	 * 	<li><code>timeZone</code> parameter passed in through constructor.
-	 * 	<li>{@link BeanContext#BEAN_timeZone} entry in <code>properties</code> parameter passed in through constructor.
+	 * 	<li>{@link BeanContext#BEAN_timeZone} entry in parameter passed in through constructor.
 	 * 	<li>{@link BeanContext#BEAN_timeZone} setting on bean context.
 	 * </ol>
 	 *

http://git-wip-us.apache.org/repos/asf/juneau/blob/c162400e/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/annotation/Bean.java
----------------------------------------------------------------------
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/annotation/Bean.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/annotation/Bean.java
index c550315..9b4660f 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/annotation/Bean.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/annotation/Bean.java
@@ -43,54 +43,16 @@ public @interface Bean {
 	 *
 	 * <p>
 	 * The name is used to identify the class type during parsing when it cannot be inferred through reflection.
-	 * For example, if a bean property is of type <code>Object</code>, then the serializer will add the name to the
+	 * <br>For example, if a bean property is of type <code>Object</code>, then the serializer will add the name to the
 	 * output so that the class can be determined during parsing.
-	 * It is also used to specify element names in XML.
-	 *
-	 * <p>
-	 * The name is used in combination with the bean dictionary defined through {@link BeanProperty#beanDictionary()} or
-	 * {@link BeanContext#BEAN_beanDictionary}.
-	 * Together, they make up a simple name/value mapping of names to classes.
-	 * Names do not need to be universally unique.
-	 * However, they must be unique within a dictionary.
-	 *
-	 * <h5 class='section'>Example:</h5>
-	 * <p class='bcode'>
-	 * 	<ja>@Bean</ja>(typeName=<js>"foo"</js>)
-	 * 	<jk>public class</jk> Foo {
-	 * 		<jc>// A bean property where the object types cannot be inferred since it's an Object[].</jc>
-	 * 		<ja>@BeanProperty</ja>(beanDictionary={Bar.<jk>class</jk>,Baz.<jk>class</jk>})
-	 * 		<jk>public</jk> Object[] x = <jk>new</jk> Object[]{<jk>new</jk> Bar(), <jk>new</jk> Baz()};
-	 * 	}
-	 *
-	 * 	<ja>@Bean</ja>(typeName=<js>"bar"</js>)
-	 * 	<jk>public class</jk> Bar {}
-	 *
-	 * 	<ja>@Bean</ja>(typeName=<js>"baz"</js>)
-	 * 	<jk>public class</jk> Baz {}
-	 * </p>
-	 *
+	 * 
 	 * <p>
-	 * When serialized as XML, the bean is rendered as:
-	 * <p class='bcode'>
-	 * 	<xt>&lt;foo&gt;</xt>
-	 * 		<xt>&lt;x&gt;</xt>
-	 * 			<xt>&lt;bar/&gt;</xt>
-	 * 			<xt>&lt;baz/&gt;</xt>
-	 * 		<xt>&lt;/x&gt;</xt>
-	 * 	<xt>&lt;/foo&gt;</xt>
-	 * </p>
+	 * It is also used to specify element names in XML.
 	 *
-	 * <p>
-	 * When serialized as JSON, <js>'n'</js> attributes would be added when needed to infer the type during parsing:
-	 * <p class='bcode'>
-	 * 	{
-	 * 		x: [
-	 * 			{_type:<js>'bar'</js>},
-	 * 			{_type:<js>'baz'</js>}
-	 * 		]
-	 * 	}
-	 * </p>
+	 * <h5 class='section'>See Also:</h5>
+	 * <ul>
+	 * 	<li class='jf'>{@link BeanContext#BEAN_beanDictionary}
+	 * </ul>
 	 */
 	String typeName() default "";
 
@@ -99,38 +61,21 @@ public @interface Bean {
 	 * The property name to use for representing the type name.
 	 *
 	 * <p>
-	 * This can be used to override the name used for the <js>"_type"</js> property designated above.
-	 * Typically, you'll define this on an interface class so that it can apply to all subclasses.
-	 *
-	 * <p class='bcode'>
-	 * 	<ja>@Bean</ja>(typePropertyName=<js>"mytype"</js>, beanDictionary={MyClass1.<jk>class</jk>,MyClass2.<jk>class</jk>})
-	 * 	<jk>public interface</jk> MyInterface {...}
-	 *
-	 * 	<ja>@Bean</ja>(typeName=<js>"C1"</js>)
-	 * 	<jk>public class</jk> MyClass1 <jk>implements</jk> MyInterface {...}
-	 *
-	 * 	<ja>@Bean</ja>(typeName=<js>"C2"</js>)
-	 * 	<jk>public class</jk> MyClass2 <jk>implements</jk> MyInterface {...}
-	 *
-	 * 	MyInterface[] x = <jk>new</jk> MyInterface[]{ <jk>new</jk> MyClass1(), <jk>new</jk> MyClass2() };
-	 *
-	 *	<jc>// Produces "[{mytype:'C1',...},{mytype:'C2',...}]"</jc>
-	 * 	String json = JsonSerializer.<jsf>DEFAULT_LAX</jsf>.serialize(x);
-	 * </p>
-	 *
-	 * <p>
-	 * This is similar in concept to the {@link BeanContext#BEAN_beanTypePropertyName} setting except this annotation
-	 * applies only to the annotated class and subclasses whereas the bean context property applies globally on
-	 * serializers and parsers.
+	 * This can be used to override the name used for the <js>"_type"</js> property used by the {@link #typeName()} setting.
 	 *
 	 * <ul class='doctree'>
 	 * 	<li class='warn'>
-	 * 		Be careful what value you specify for this.  It should not interfere with bean property names or
-	 * 		common HTML attribute names.
+	 * 		Be careful what value you specify for this.  
+	 * 		<br>It should not interfere with bean property names or common HTML attribute names.
+	 * </ul>
+	 * 
+	 * <p>
+	 * The default value if not specified is <js>"_type"</js> .
+	 * 
+	 * <h5 class='section'>See Also:</h5>
+	 * <ul>
+	 * 	<li class='jf'>{@link BeanContext#BEAN_beanTypePropertyName}
 	 * </ul>
-	 *
-	 * The default value if not specified is <js>"_type"</js> unless overridden by the
-	 * {@link BeanContext#BEAN_beanTypePropertyName} setting.
 	 */
 	String typePropertyName() default "";
 

http://git-wip-us.apache.org/repos/asf/juneau/blob/c162400e/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/annotation/BeanProperty.java
----------------------------------------------------------------------
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/annotation/BeanProperty.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/annotation/BeanProperty.java
index b1567b1..ef24e47 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/annotation/BeanProperty.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/annotation/BeanProperty.java
@@ -219,9 +219,6 @@ public @interface BeanProperty {
 	 * <p>
 	 * The list of classes that make up the bean dictionary this bean property.
 	 * 
-	 * <p>
-	 * Used in cases where a bean property consists of maps or collections of generic objects.
-	 * 
 	 * <h5 class='section'>See Also:</h5>
 	 * <ul>
 	 * 	<li class='jf'>{@link BeanContext#BEAN_beanDictionary}


Mime
View raw message