You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@juneau.apache.org by ja...@apache.org on 2017/09/02 14:10:33 UTC

[11/51] [partial] incubator-juneau git commit: Add project hierarchies, part 1

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/75b0d8ee/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Script.java
----------------------------------------------------------------------
diff --git a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Script.java b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Script.java
new file mode 100644
index 0000000..b59999e
--- /dev/null
+++ b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Script.java
@@ -0,0 +1,160 @@
+// ***************************************************************************************************************************
+// * Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements.  See the NOTICE file *
+// * distributed with this work for additional information regarding copyright ownership.  The ASF licenses this file        *
+// * to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance            *
+// * with the License.  You may obtain a copy of the License at                                                              *
+// *                                                                                                                         *
+// *  http://www.apache.org/licenses/LICENSE-2.0                                                                             *
+// *                                                                                                                         *
+// * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an  *
+// * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the License for the        *
+// * specific language governing permissions and limitations under the License.                                              *
+// ***************************************************************************************************************************
+package org.apache.juneau.dto.html5;
+
+import java.net.*;
+import java.net.URI;
+
+import org.apache.juneau.*;
+import org.apache.juneau.annotation.*;
+
+/**
+ * DTO for an HTML <a class="doclink" href="https://www.w3.org/TR/html5/scripting-1.html#the-script-element">&lt;script&gt;</a>
+ * element.
+ *
+ * <h6 class='topic'>Additional Information</h6>
+ * <ul class='doctree'>
+ * 	<li class='link'>
+ * 		<a class='doclink' href='../../../../../overview-summary.html#DTOs'>Juneau Data Transfer Objects
+ * 		(org.apache.juneau.dto)</a>
+ * 		<ul>
+ * 			<li class='sublink'>
+ * 				<a class='doclink' href='../../../../../overview-summary.html#DTOs.HTML5'>HTML5</a>
+ * 		</ul>
+ *		</li>
+ * </ul>
+ */
+@Bean(typeName="script")
+public class Script extends HtmlElementRawText {
+
+	/**
+	 * <a class="doclink" href="https://www.w3.org/TR/html5/scripting-1.html#attr-script-async">async</a> attribute.
+	 *
+	 * <p>
+	 * Execute script asynchronously.
+	 *
+	 * @param async
+	 * 	The new value for this attribute.
+	 * 	Typically a {@link Boolean} or {@link String}.
+	 * @return This object (for method chaining).
+	 */
+	public final Script async(Object async) {
+		attr("async", async);
+		return this;
+	}
+
+	/**
+	 * <a class="doclink" href="https://www.w3.org/TR/html5/scripting-1.html#attr-script-charset">charset</a> attribute.
+	 *
+	 * <p>
+	 * Character encoding of the external script resource.
+	 *
+	 * @param charset The new value for this attribute.
+	 * @return This object (for method chaining).
+	 */
+	public final Script charset(String charset) {
+		attr("charset", charset);
+		return this;
+	}
+
+	/**
+	 * <a class="doclink" href="https://www.w3.org/TR/html5/scripting-1.html#attr-script-crossorigin">crossorigin</a>
+	 * attribute.
+	 *
+	 * <p>
+	 * How the element handles cross-origin requests.
+	 *
+	 * @param crossorigin The new value for this attribute.
+	 * @return This object (for method chaining).
+	 */
+	public final Script crossorigin(String crossorigin) {
+		attr("crossorigin", crossorigin);
+		return this;
+	}
+
+	/**
+	 * <a class="doclink" href="https://www.w3.org/TR/html5/scripting-1.html#attr-script-defer">defer</a> attribute.
+	 *
+	 * <p>
+	 * Defer script execution.
+	 *
+	 * @param defer
+	 * 	The new value for this attribute.
+	 * 	Typically a {@link Boolean} or {@link String}.
+	 * @return This object (for method chaining).
+	 */
+	public final Script defer(Object defer) {
+		attr("defer", defer);
+		return this;
+	}
+
+	/**
+	 * <a class="doclink" href="https://www.w3.org/TR/html5/scripting-1.html#attr-script-src">src</a> attribute.
+	 *
+	 * <p>
+	 * Address of the resource.
+	 *
+	 * <p>
+	 * The value can be of any of the following types: {@link URI}, {@link URL}, {@link String}.
+	 * Strings must be valid URIs.
+	 *
+	 * <p>
+	 * URIs defined by {@link UriResolver} can be used for values.
+	 *
+	 * @param src
+	 * 	The new value for this attribute.
+	 * 	Typically a {@link URL} or {@link String}.
+	 * @return This object (for method chaining).
+	 */
+	public final Script src(Object src) {
+		attrUri("src", src);
+		return this;
+	}
+
+	/**
+	 * <a class="doclink" href="https://www.w3.org/TR/html5/scripting-1.html#attr-script-type">type</a> attribute.
+	 *
+	 * <p>
+	 * Type of embedded resource.
+	 *
+	 * @param type The new value for this attribute.
+	 * @return This object (for method chaining).
+	 */
+	public final Script type(String type) {
+		attr("type", type);
+		return this;
+	}
+
+
+	//--------------------------------------------------------------------------------
+	// Overridden methods
+	//--------------------------------------------------------------------------------
+
+	@Override /* HtmlElement */
+	public final Script _class(String _class) {
+		super._class(_class);
+		return this;
+	}
+
+	@Override /* HtmlElement */
+	public final Script id(String id) {
+		super.id(id);
+		return this;
+	}
+
+	@Override /* HtmlElementText */
+	public Script text(Object text) {
+		super.text(text);
+		return this;
+	}
+}

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/75b0d8ee/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Section.java
----------------------------------------------------------------------
diff --git a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Section.java b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Section.java
new file mode 100644
index 0000000..38c97ae
--- /dev/null
+++ b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Section.java
@@ -0,0 +1,69 @@
+// ***************************************************************************************************************************
+// * Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements.  See the NOTICE file *
+// * distributed with this work for additional information regarding copyright ownership.  The ASF licenses this file        *
+// * to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance            *
+// * with the License.  You may obtain a copy of the License at                                                              *
+// *                                                                                                                         *
+// *  http://www.apache.org/licenses/LICENSE-2.0                                                                             *
+// *                                                                                                                         *
+// * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an  *
+// * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the License for the        *
+// * specific language governing permissions and limitations under the License.                                              *
+// ***************************************************************************************************************************
+package org.apache.juneau.dto.html5;
+
+import org.apache.juneau.annotation.*;
+
+/**
+ * DTO for an HTML <a class="doclink" href="https://www.w3.org/TR/html5/sections.html#the-section-element">&lt;section&gt;</a>
+ * element.
+ *
+ * <h6 class='topic'>Additional Information</h6>
+ * <ul class='doctree'>
+ * 	<li class='link'>
+ * 		<a class='doclink' href='../../../../../overview-summary.html#DTOs'>Juneau Data Transfer Objects
+ * 		(org.apache.juneau.dto)</a>
+ * 		<ul>
+ * 			<li class='sublink'>
+ * 				<a class='doclink' href='../../../../../overview-summary.html#DTOs.HTML5'>HTML5</a>
+ * 		</ul>
+ *		</li>
+ * </ul>
+ */
+@Bean(typeName="section")
+public class Section extends HtmlElementMixed {
+
+	//--------------------------------------------------------------------------------
+	// Overridden methods
+	//--------------------------------------------------------------------------------
+
+	@Override /* HtmlElement */
+	public final Section _class(String _class) {
+		super._class(_class);
+		return this;
+	}
+
+	@Override /* HtmlElement */
+	public final Section id(String id) {
+		super.id(id);
+		return this;
+	}
+
+	@Override /* HtmlElement */
+	public final Section style(String style) {
+		super.style(style);
+		return this;
+	}
+
+	@Override /* HtmlElementMixed */
+	public Section children(Object...children) {
+		super.children(children);
+		return this;
+	}
+
+	@Override /* HtmlElementMixed */
+	public Section child(Object child) {
+		super.child(child);
+		return this;
+	}
+}

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/75b0d8ee/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Select.java
----------------------------------------------------------------------
diff --git a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Select.java b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Select.java
new file mode 100644
index 0000000..3e0da8e
--- /dev/null
+++ b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Select.java
@@ -0,0 +1,178 @@
+// ***************************************************************************************************************************
+// * Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements.  See the NOTICE file *
+// * distributed with this work for additional information regarding copyright ownership.  The ASF licenses this file        *
+// * to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance            *
+// * with the License.  You may obtain a copy of the License at                                                              *
+// *                                                                                                                         *
+// *  http://www.apache.org/licenses/LICENSE-2.0                                                                             *
+// *                                                                                                                         *
+// * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an  *
+// * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the License for the        *
+// * specific language governing permissions and limitations under the License.                                              *
+// ***************************************************************************************************************************
+package org.apache.juneau.dto.html5;
+
+import org.apache.juneau.annotation.*;
+
+/**
+ * DTO for an HTML <a class="doclink" href="https://www.w3.org/TR/html5/forms.html#the-select-element">&lt;select&gt;</a>
+ * element.
+ *
+ * <h6 class='topic'>Additional Information</h6>
+ * <ul class='doctree'>
+ * 	<li class='link'>
+ * 		<a class='doclink' href='../../../../../overview-summary.html#DTOs'>Juneau Data Transfer Objects
+ * 		(org.apache.juneau.dto)</a>
+ * 		<ul>
+ * 			<li class='sublink'>
+ * 				<a class='doclink' href='../../../../../overview-summary.html#DTOs.HTML5'>HTML5</a>
+ * 		</ul>
+ *		</li>
+ * </ul>
+ */
+@Bean(typeName="select")
+public class Select extends HtmlElementContainer {
+
+	/**
+	 * <a class="doclink" href="https://www.w3.org/TR/html5/forms.html#attr-fe-autofocus">autofocus</a> attribute.
+	 *
+	 * <p>
+	 * Automatically focus the form control when the page is loaded.
+	 *
+	 * @param autofocus
+	 * 	The new value for this attribute.
+	 * 	Typically a {@link Boolean} or {@link String}.
+	 * @return This object (for method chaining).
+	 */
+	public final Select autofocus(Object autofocus) {
+		attr("autofocus", autofocus);
+		return this;
+	}
+
+	/**
+	 * <a class="doclink" href="https://www.w3.org/TR/html5/forms.html#attr-fe-disabled">disabled</a> attribute.
+	 *
+	 * <p>
+	 * Whether the form control is disabled.
+	 *
+	 * @param disabled
+	 * 	The new value for this attribute.
+	 * 	Typically a {@link Boolean} or {@link String}.
+	 * @return This object (for method chaining).
+	 */
+	public final Select disabled(Object disabled) {
+		attr("disabled", disabled);
+		return this;
+	}
+
+	/**
+	 * <a class="doclink" href="https://www.w3.org/TR/html5/forms.html#attr-fae-form">form</a> attribute.
+	 *
+	 * <p>
+	 * Associates the control with a form element.
+	 *
+	 * @param form The new value for this attribute.
+	 * @return This object (for method chaining).
+	 */
+	public final Select form(String form) {
+		attr("form", form);
+		return this;
+	}
+
+	/**
+	 * <a class="doclink" href="https://www.w3.org/TR/html5/forms.html#attr-select-multiple">multiple</a> attribute.
+	 *
+	 * <p>
+	 * Whether to allow multiple values.
+	 *
+	 * @param multiple
+	 * 	The new value for this attribute.
+	 * 	Typically a {@link Boolean} or {@link String}.
+	 * @return This object (for method chaining).
+	 */
+	public final Select multiple(Object multiple) {
+		attr("multiple", multiple);
+		return this;
+	}
+
+	/**
+	 * <a class="doclink" href="https://www.w3.org/TR/html5/forms.html#attr-fe-name">name</a> attribute.
+	 *
+	 * <p>
+	 * Name of form control to use for form submission and in the form.elements API.
+	 *
+	 * @param name The new value for this attribute.
+	 * @return This object (for method chaining).
+	 */
+	public final Select name(String name) {
+		attr("name", name);
+		return this;
+	}
+
+	/**
+	 * <a class="doclink" href="https://www.w3.org/TR/html5/forms.html#attr-select-required">required</a> attribute.
+	 *
+	 * <p>
+	 * Whether the control is required for form submission.
+	 *
+	 * @param required
+	 * 	The new value for this attribute.
+	 * 	Typically a {@link Boolean} or {@link String}.
+	 * @return This object (for method chaining).
+	 */
+	public final Select required(Object required) {
+		attr("required", required);
+		return this;
+	}
+
+	/**
+	 * <a class="doclink" href="https://www.w3.org/TR/html5/forms.html#attr-select-size">size</a> attribute.
+	 *
+	 * <p>
+	 * Size of the control.
+	 *
+	 * @param size
+	 * 	The new value for this attribute.
+	 * 	Typically a {@link Number} or {@link String}.
+	 * @return This object (for method chaining).
+	 */
+	public final Select size(Object size) {
+		attr("size", size);
+		return this;
+	}
+
+
+	//--------------------------------------------------------------------------------
+	// Overridden methods
+	//--------------------------------------------------------------------------------
+
+	@Override /* HtmlElement */
+	public final Select _class(String _class) {
+		super._class(_class);
+		return this;
+	}
+
+	@Override /* HtmlElement */
+	public final Select id(String id) {
+		super.id(id);
+		return this;
+	}
+
+	@Override /* HtmlElement */
+	public final Select style(String style) {
+		super.style(style);
+		return this;
+	}
+
+	@Override /* HtmlElementContainer */
+	public final Select children(Object...children) {
+		super.children(children);
+		return this;
+	}
+
+	@Override /* HtmlElementContainer */
+	public final Select child(Object child) {
+		super.child(child);
+		return this;
+	}
+}

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/75b0d8ee/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Small.java
----------------------------------------------------------------------
diff --git a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Small.java b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Small.java
new file mode 100644
index 0000000..eb40c63
--- /dev/null
+++ b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Small.java
@@ -0,0 +1,69 @@
+// ***************************************************************************************************************************
+// * Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements.  See the NOTICE file *
+// * distributed with this work for additional information regarding copyright ownership.  The ASF licenses this file        *
+// * to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance            *
+// * with the License.  You may obtain a copy of the License at                                                              *
+// *                                                                                                                         *
+// *  http://www.apache.org/licenses/LICENSE-2.0                                                                             *
+// *                                                                                                                         *
+// * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an  *
+// * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the License for the        *
+// * specific language governing permissions and limitations under the License.                                              *
+// ***************************************************************************************************************************
+package org.apache.juneau.dto.html5;
+
+import org.apache.juneau.annotation.*;
+
+/**
+ * DTO for an HTML <a class="doclink" href="https://www.w3.org/TR/html5/text-level-semantics.html#the-small-element">&lt;small&gt;</a>
+ * element.
+ *
+ * <h6 class='topic'>Additional Information</h6>
+ * <ul class='doctree'>
+ * 	<li class='link'>
+ * 		<a class='doclink' href='../../../../../overview-summary.html#DTOs'>Juneau Data Transfer Objects
+ * 		(org.apache.juneau.dto)</a>
+ * 		<ul>
+ * 			<li class='sublink'>
+ * 				<a class='doclink' href='../../../../../overview-summary.html#DTOs.HTML5'>HTML5</a>
+ * 		</ul>
+ *		</li>
+ * </ul>
+ */
+@Bean(typeName="small")
+public class Small extends HtmlElementMixed {
+
+	//--------------------------------------------------------------------------------
+	// Overridden methods
+	//--------------------------------------------------------------------------------
+
+	@Override /* HtmlElement */
+	public final Small _class(String _class) {
+		super._class(_class);
+		return this;
+	}
+
+	@Override /* HtmlElement */
+	public final Small id(String id) {
+		super.id(id);
+		return this;
+	}
+
+	@Override /* HtmlElement */
+	public final Small style(String style) {
+		super.style(style);
+		return this;
+	}
+
+	@Override /* HtmlElementMixed */
+	public Small children(Object...children) {
+		super.children(children);
+		return this;
+	}
+
+	@Override /* HtmlElementMixed */
+	public Small child(Object child) {
+		super.child(child);
+		return this;
+	}
+}

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/75b0d8ee/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Source.java
----------------------------------------------------------------------
diff --git a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Source.java b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Source.java
new file mode 100644
index 0000000..19e42f7
--- /dev/null
+++ b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Source.java
@@ -0,0 +1,93 @@
+// ***************************************************************************************************************************
+// * Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements.  See the NOTICE file *
+// * distributed with this work for additional information regarding copyright ownership.  The ASF licenses this file        *
+// * to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance            *
+// * with the License.  You may obtain a copy of the License at                                                              *
+// *                                                                                                                         *
+// *  http://www.apache.org/licenses/LICENSE-2.0                                                                             *
+// *                                                                                                                         *
+// * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an  *
+// * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the License for the        *
+// * specific language governing permissions and limitations under the License.                                              *
+// ***************************************************************************************************************************
+package org.apache.juneau.dto.html5;
+
+import java.net.*;
+import java.net.URI;
+
+import org.apache.juneau.*;
+import org.apache.juneau.annotation.*;
+
+/**
+ * DTO for an HTML <a class="doclink" href="https://www.w3.org/TR/html5/embedded-content-0.html#the-source-element">&lt;source&gt;</a>
+ * element.
+ *
+ * <h6 class='topic'>Additional Information</h6>
+ * <ul class='doctree'>
+ * 	<li class='link'>
+ * 		<a class='doclink' href='../../../../../overview-summary.html#DTOs'>Juneau Data Transfer Objects
+ * 		(org.apache.juneau.dto)</a>
+ * 		<ul>
+ * 			<li class='sublink'>
+ * 				<a class='doclink' href='../../../../../overview-summary.html#DTOs.HTML5'>HTML5</a>
+ * 		</ul>
+ *		</li>
+ * </ul>
+ */
+@Bean(typeName="source")
+public class Source extends HtmlElementVoid {
+
+	/**
+	 * <a class="doclink" href="https://www.w3.org/TR/html5/embedded-content-0.html#attr-source-src">src</a> attribute.
+	 *
+	 * <p>
+	 * Address of the resource.
+	 *
+	 * <p>
+	 * The value can be of any of the following types: {@link URI}, {@link URL}, {@link String}.
+	 * Strings must be valid URIs.
+	 *
+	 * <p>
+	 * URIs defined by {@link UriResolver} can be used for values.
+	 *
+	 * @param src
+	 * 	The new value for this attribute.
+	 * 	Typically a {@link URL} or {@link String}.
+	 * @return This object (for method chaining).
+	 */
+	public final Source src(Object src) {
+		attrUri("src", src);
+		return this;
+	}
+
+	/**
+	 * <a class="doclink" href="https://www.w3.org/TR/html5/embedded-content-0.html#attr-source-type">type</a> attribute.
+	 *
+	 * <p>
+	 * Type of embedded resource.
+	 *
+	 * @param type The new value for this attribute.
+	 * @return This object (for method chaining).
+	 */
+	public final Source type(String type) {
+		attr("type", type);
+		return this;
+	}
+
+
+	//--------------------------------------------------------------------------------
+	// Overridden methods
+	//--------------------------------------------------------------------------------
+
+	@Override /* HtmlElement */
+	public final Source _class(String _class) {
+		super._class(_class);
+		return this;
+	}
+
+	@Override /* HtmlElement */
+	public final Source id(String id) {
+		super.id(id);
+		return this;
+	}
+}

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/75b0d8ee/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Span.java
----------------------------------------------------------------------
diff --git a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Span.java b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Span.java
new file mode 100644
index 0000000..c8b3a75
--- /dev/null
+++ b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Span.java
@@ -0,0 +1,69 @@
+// ***************************************************************************************************************************
+// * Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements.  See the NOTICE file *
+// * distributed with this work for additional information regarding copyright ownership.  The ASF licenses this file        *
+// * to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance            *
+// * with the License.  You may obtain a copy of the License at                                                              *
+// *                                                                                                                         *
+// *  http://www.apache.org/licenses/LICENSE-2.0                                                                             *
+// *                                                                                                                         *
+// * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an  *
+// * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the License for the        *
+// * specific language governing permissions and limitations under the License.                                              *
+// ***************************************************************************************************************************
+package org.apache.juneau.dto.html5;
+
+import org.apache.juneau.annotation.*;
+
+/**
+ * DTO for an HTML <a class="doclink" href="https://www.w3.org/TR/html5/text-level-semantics.html#the-span-element">&lt;span&gt;</a>
+ * element.
+ *
+ * <h6 class='topic'>Additional Information</h6>
+ * <ul class='doctree'>
+ * 	<li class='link'>
+ * 		<a class='doclink' href='../../../../../overview-summary.html#DTOs'>Juneau Data Transfer Objects
+ * 		(org.apache.juneau.dto)</a>
+ * 		<ul>
+ * 			<li class='sublink'>
+ * 				<a class='doclink' href='../../../../../overview-summary.html#DTOs.HTML5'>HTML5</a>
+ * 		</ul>
+ *		</li>
+ * </ul>
+ */
+@Bean(typeName="span")
+public class Span extends HtmlElementMixed {
+
+	//--------------------------------------------------------------------------------
+	// Overridden methods
+	//--------------------------------------------------------------------------------
+
+	@Override /* HtmlElement */
+	public final Span _class(String _class) {
+		super._class(_class);
+		return this;
+	}
+
+	@Override /* HtmlElement */
+	public final Span id(String id) {
+		super.id(id);
+		return this;
+	}
+
+	@Override /* HtmlElement */
+	public final Span style(String style) {
+		attr("style", style);
+		return this;
+	}
+
+	@Override /* HtmlElementMixed */
+	public Span children(Object...children) {
+		super.children(children);
+		return this;
+	}
+
+	@Override /* HtmlElementMixed */
+	public Span child(Object child) {
+		super.child(child);
+		return this;
+	}
+}

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/75b0d8ee/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Strong.java
----------------------------------------------------------------------
diff --git a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Strong.java b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Strong.java
new file mode 100644
index 0000000..364a90e
--- /dev/null
+++ b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Strong.java
@@ -0,0 +1,69 @@
+// ***************************************************************************************************************************
+// * Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements.  See the NOTICE file *
+// * distributed with this work for additional information regarding copyright ownership.  The ASF licenses this file        *
+// * to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance            *
+// * with the License.  You may obtain a copy of the License at                                                              *
+// *                                                                                                                         *
+// *  http://www.apache.org/licenses/LICENSE-2.0                                                                             *
+// *                                                                                                                         *
+// * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an  *
+// * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the License for the        *
+// * specific language governing permissions and limitations under the License.                                              *
+// ***************************************************************************************************************************
+package org.apache.juneau.dto.html5;
+
+import org.apache.juneau.annotation.*;
+
+/**
+ * DTO for an HTML <a class="doclink" href="https://www.w3.org/TR/html5/text-level-semantics.html#the-strong-element">&lt;strong&gt;</a>
+ * element.
+ *
+ * <h6 class='topic'>Additional Information</h6>
+ * <ul class='doctree'>
+ * 	<li class='link'>
+ * 		<a class='doclink' href='../../../../../overview-summary.html#DTOs'>Juneau Data Transfer Objects
+ * 		(org.apache.juneau.dto)</a>
+ * 		<ul>
+ * 			<li class='sublink'>
+ * 				<a class='doclink' href='../../../../../overview-summary.html#DTOs.HTML5'>HTML5</a>
+ * 		</ul>
+ *		</li>
+ * </ul>
+ */
+@Bean(typeName="strong")
+public class Strong extends HtmlElementMixed {
+
+	//--------------------------------------------------------------------------------
+	// Overridden methods
+	//--------------------------------------------------------------------------------
+
+	@Override /* HtmlElement */
+	public final Strong _class(String _class) {
+		super._class(_class);
+		return this;
+	}
+
+	@Override /* HtmlElement */
+	public final Strong id(String id) {
+		super.id(id);
+		return this;
+	}
+
+	@Override /* HtmlElement */
+	public final Strong style(String style) {
+		super.style(style);
+		return this;
+	}
+
+	@Override /* HtmlElementMixed */
+	public Strong children(Object...children) {
+		super.children(children);
+		return this;
+	}
+
+	@Override /* HtmlElementMixed */
+	public Strong child(Object child) {
+		super.child(child);
+		return this;
+	}
+}

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/75b0d8ee/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Style.java
----------------------------------------------------------------------
diff --git a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Style.java b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Style.java
new file mode 100644
index 0000000..23bddeb
--- /dev/null
+++ b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Style.java
@@ -0,0 +1,92 @@
+// ***************************************************************************************************************************
+// * Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements.  See the NOTICE file *
+// * distributed with this work for additional information regarding copyright ownership.  The ASF licenses this file        *
+// * to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance            *
+// * with the License.  You may obtain a copy of the License at                                                              *
+// *                                                                                                                         *
+// *  http://www.apache.org/licenses/LICENSE-2.0                                                                             *
+// *                                                                                                                         *
+// * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an  *
+// * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the License for the        *
+// * specific language governing permissions and limitations under the License.                                              *
+// ***************************************************************************************************************************
+package org.apache.juneau.dto.html5;
+
+import org.apache.juneau.annotation.*;
+
+/**
+ * DTO for an HTML <a class="doclink" href="https://www.w3.org/TR/html5/document-metadata.html#the-style-element">&lt;style&gt;</a>
+ * element.
+ *
+ * <h6 class='topic'>Additional Information</h6>
+ * <ul class='doctree'>
+ * 	<li class='link'>
+ * 		<a class='doclink' href='../../../../../overview-summary.html#DTOs'>Juneau Data Transfer Objects
+ * 		(org.apache.juneau.dto)</a>
+ * 		<ul>
+ * 			<li class='sublink'>
+ * 				<a class='doclink' href='../../../../../overview-summary.html#DTOs.HTML5'>HTML5</a>
+ * 		</ul>
+ *		</li>
+ * </ul>
+ */
+@Bean(typeName="style")
+public class Style extends HtmlElementRawText {
+
+	/**
+	 * <a class="doclink" href="https://www.w3.org/TR/html5/document-metadata.html#attr-style-media">media</a> attribute.
+	 *
+	 * <p>
+	 * Applicable media.
+	 *
+	 * @param media The new value for this attribute.
+	 * @return This object (for method chaining).
+	 */
+	public final Style media(String media) {
+		attr("media", media);
+		return this;
+	}
+
+	/**
+	 * <a class="doclink" href="https://www.w3.org/TR/html5/document-metadata.html#attr-style-type">type</a> attribute.
+	 *
+	 * <p>
+	 * Type of embedded resource.
+	 *
+	 * @param type The new value for this attribute.
+	 * @return This object (for method chaining).
+	 */
+	public final Style type(String type) {
+		attr("type", type);
+		return this;
+	}
+
+
+	//--------------------------------------------------------------------------------
+	// Overridden methods
+	//--------------------------------------------------------------------------------
+
+	@Override /* HtmlElement */
+	public final Style _class(String _class) {
+		super._class(_class);
+		return this;
+	}
+
+	@Override /* HtmlElement */
+	public final Style style(String style) {
+		super.style(style);
+		return this;
+	}
+
+	@Override /* HtmlElement */
+	public final Style id(String id) {
+		super.id(id);
+		return this;
+	}
+
+	@Override /* HtmlElementText */
+	public final Style text(Object text) {
+		super.text(text);
+		return this;
+	}
+}

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/75b0d8ee/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Sub.java
----------------------------------------------------------------------
diff --git a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Sub.java b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Sub.java
new file mode 100644
index 0000000..1d159d9
--- /dev/null
+++ b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Sub.java
@@ -0,0 +1,69 @@
+// ***************************************************************************************************************************
+// * Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements.  See the NOTICE file *
+// * distributed with this work for additional information regarding copyright ownership.  The ASF licenses this file        *
+// * to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance            *
+// * with the License.  You may obtain a copy of the License at                                                              *
+// *                                                                                                                         *
+// *  http://www.apache.org/licenses/LICENSE-2.0                                                                             *
+// *                                                                                                                         *
+// * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an  *
+// * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the License for the        *
+// * specific language governing permissions and limitations under the License.                                              *
+// ***************************************************************************************************************************
+package org.apache.juneau.dto.html5;
+
+import org.apache.juneau.annotation.*;
+
+/**
+ * DTO for an HTML <a class="doclink" href="https://www.w3.org/TR/html5/text-level-semantics.html#the-sub-and-sup-elements">&lt;sub&gt;</a>
+ * element.
+ *
+ * <h6 class='topic'>Additional Information</h6>
+ * <ul class='doctree'>
+ * 	<li class='link'>
+ * 		<a class='doclink' href='../../../../../overview-summary.html#DTOs'>Juneau Data Transfer Objects
+ * 		(org.apache.juneau.dto)</a>
+ * 		<ul>
+ * 			<li class='sublink'>
+ * 				<a class='doclink' href='../../../../../overview-summary.html#DTOs.HTML5'>HTML5</a>
+ * 		</ul>
+ *		</li>
+ * </ul>
+ */
+@Bean(typeName="sub")
+public class Sub extends HtmlElementMixed {
+
+	//--------------------------------------------------------------------------------
+	// Overridden methods
+	//--------------------------------------------------------------------------------
+
+	@Override /* HtmlElement */
+	public final Sub _class(String _class) {
+		super._class(_class);
+		return this;
+	}
+
+	@Override /* HtmlElement */
+	public final Sub id(String id) {
+		super.id(id);
+		return this;
+	}
+
+	@Override /* HtmlElement */
+	public final Sub style(String style) {
+		super.style(style);
+		return this;
+	}
+
+	@Override /* HtmlElementMixed */
+	public Sub children(Object...children) {
+		super.children(children);
+		return this;
+	}
+
+	@Override /* HtmlElementMixed */
+	public Sub child(Object child) {
+		super.child(child);
+		return this;
+	}
+}

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/75b0d8ee/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Sup.java
----------------------------------------------------------------------
diff --git a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Sup.java b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Sup.java
new file mode 100644
index 0000000..7224be9
--- /dev/null
+++ b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Sup.java
@@ -0,0 +1,69 @@
+// ***************************************************************************************************************************
+// * Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements.  See the NOTICE file *
+// * distributed with this work for additional information regarding copyright ownership.  The ASF licenses this file        *
+// * to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance            *
+// * with the License.  You may obtain a copy of the License at                                                              *
+// *                                                                                                                         *
+// *  http://www.apache.org/licenses/LICENSE-2.0                                                                             *
+// *                                                                                                                         *
+// * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an  *
+// * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the License for the        *
+// * specific language governing permissions and limitations under the License.                                              *
+// ***************************************************************************************************************************
+package org.apache.juneau.dto.html5;
+
+import org.apache.juneau.annotation.*;
+
+/**
+ * DTO for an HTML <a class="doclink" href="https://www.w3.org/TR/html5/text-level-semantics.html#the-sub-and-sup-elements">&lt;sup&gt;</a>
+ * element.
+ *
+ * <h6 class='topic'>Additional Information</h6>
+ * <ul class='doctree'>
+ * 	<li class='link'>
+ * 		<a class='doclink' href='../../../../../overview-summary.html#DTOs'>Juneau Data Transfer Objects
+ * 		(org.apache.juneau.dto)</a>
+ * 		<ul>
+ * 			<li class='sublink'>
+ * 				<a class='doclink' href='../../../../../overview-summary.html#DTOs.HTML5'>HTML5</a>
+ * 		</ul>
+ *		</li>
+ * </ul>
+ */
+@Bean(typeName="sup")
+public class Sup extends HtmlElementMixed {
+
+	//--------------------------------------------------------------------------------
+	// Overridden methods
+	//--------------------------------------------------------------------------------
+
+	@Override /* HtmlElement */
+	public final Sup _class(String _class) {
+		super._class(_class);
+		return this;
+	}
+
+	@Override /* HtmlElement */
+	public final Sup id(String id) {
+		super.id(id);
+		return this;
+	}
+
+	@Override /* HtmlElement */
+	public final Sup style(String style) {
+		super.style(style);
+		return this;
+	}
+
+	@Override /* HtmlElementMixed */
+	public Sup children(Object...children) {
+		super.children(children);
+		return this;
+	}
+
+	@Override /* HtmlElementMixed */
+	public Sup child(Object child) {
+		super.child(child);
+		return this;
+	}
+}

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/75b0d8ee/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Table.java
----------------------------------------------------------------------
diff --git a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Table.java b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Table.java
new file mode 100644
index 0000000..8f3db7e
--- /dev/null
+++ b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Table.java
@@ -0,0 +1,83 @@
+// ***************************************************************************************************************************
+// * Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements.  See the NOTICE file *
+// * distributed with this work for additional information regarding copyright ownership.  The ASF licenses this file        *
+// * to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance            *
+// * with the License.  You may obtain a copy of the License at                                                              *
+// *                                                                                                                         *
+// *  http://www.apache.org/licenses/LICENSE-2.0                                                                             *
+// *                                                                                                                         *
+// * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an  *
+// * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the License for the        *
+// * specific language governing permissions and limitations under the License.                                              *
+// ***************************************************************************************************************************
+package org.apache.juneau.dto.html5;
+
+import org.apache.juneau.annotation.*;
+
+/**
+ * DTO for an HTML <a class="doclink" href="https://www.w3.org/TR/html5/tabular-data.html#the-table-element">&lt;table&gt;</a>
+ * element.
+ *
+ * <h6 class='topic'>Additional Information</h6>
+ * <ul class='doctree'>
+ * 	<li class='link'>
+ * 		<a class='doclink' href='../../../../../overview-summary.html#DTOs'>Juneau Data Transfer Objects
+ * 		(org.apache.juneau.dto)</a>
+ * 		<ul>
+ * 			<li class='sublink'>
+ * 				<a class='doclink' href='../../../../../overview-summary.html#DTOs.HTML5'>HTML5</a>
+ * 		</ul>
+ *		</li>
+ * </ul>
+ */
+@Bean(typeName="table")
+public class Table extends HtmlElementContainer {
+
+	/**
+	 * <a class="doclink" href="https://www.w3.org/TR/html5/tabular-data.html#attr-table-border">border</a> attribute.
+	 *
+	 * @param border
+	 * 	The new value for this attribute.
+	 * 	Typically a {@link Number} or {@link String}.
+	 * @return This object (for method chaining).
+	 */
+	public final Table border(Object border) {
+		attr("border", border);
+		return this;
+	}
+
+
+	//--------------------------------------------------------------------------------
+	// Overridden methods
+	//--------------------------------------------------------------------------------
+
+	@Override /* HtmlElement */
+	public final Table _class(String _class) {
+		super._class(_class);
+		return this;
+	}
+
+	@Override /* HtmlElement */
+	public final Table id(String id) {
+		super.id(id);
+		return this;
+	}
+
+	@Override /* HtmlElement */
+	public final Table style(String style) {
+		super.style(style);
+		return this;
+	}
+
+	@Override /* HtmlElementContainer */
+	public final Table children(Object...children) {
+		super.children(children);
+		return this;
+	}
+
+	@Override /* HtmlElementContainer */
+	public final Table child(Object child) {
+		super.child(child);
+		return this;
+	}
+}

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/75b0d8ee/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Tbody.java
----------------------------------------------------------------------
diff --git a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Tbody.java b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Tbody.java
new file mode 100644
index 0000000..b476ba7
--- /dev/null
+++ b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Tbody.java
@@ -0,0 +1,69 @@
+// ***************************************************************************************************************************
+// * Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements.  See the NOTICE file *
+// * distributed with this work for additional information regarding copyright ownership.  The ASF licenses this file        *
+// * to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance            *
+// * with the License.  You may obtain a copy of the License at                                                              *
+// *                                                                                                                         *
+// *  http://www.apache.org/licenses/LICENSE-2.0                                                                             *
+// *                                                                                                                         *
+// * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an  *
+// * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the License for the        *
+// * specific language governing permissions and limitations under the License.                                              *
+// ***************************************************************************************************************************
+package org.apache.juneau.dto.html5;
+
+import org.apache.juneau.annotation.*;
+
+/**
+ * DTO for an HTML <a class="doclink" href="https://www.w3.org/TR/html5/tabular-data.html#the-tbody-element">&lt;tbody&gt;</a>
+ * element.
+ *
+ * <h6 class='topic'>Additional Information</h6>
+ * <ul class='doctree'>
+ * 	<li class='link'>
+ * 		<a class='doclink' href='../../../../../overview-summary.html#DTOs'>Juneau Data Transfer Objects
+ * 		(org.apache.juneau.dto)</a>
+ * 		<ul>
+ * 			<li class='sublink'>
+ * 				<a class='doclink' href='../../../../../overview-summary.html#DTOs.HTML5'>HTML5</a>
+ * 		</ul>
+ *		</li>
+ * </ul>
+ */
+@Bean(typeName="tbody")
+public class Tbody extends HtmlElementContainer {
+
+	//--------------------------------------------------------------------------------
+	// Overridden methods
+	//--------------------------------------------------------------------------------
+
+	@Override /* HtmlElement */
+	public final Tbody _class(String _class) {
+		super._class(_class);
+		return this;
+	}
+
+	@Override /* HtmlElement */
+	public final Tbody id(String id) {
+		super.id(id);
+		return this;
+	}
+
+	@Override /* HtmlElement */
+	public final Tbody style(String style) {
+		super.style(style);
+		return this;
+	}
+
+	@Override /* HtmlElementContainer */
+	public final Tbody children(Object...children) {
+		super.children(children);
+		return this;
+	}
+
+	@Override /* HtmlElementContainer */
+	public final Tbody child(Object child) {
+		super.child(child);
+		return this;
+	}
+}

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/75b0d8ee/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Td.java
----------------------------------------------------------------------
diff --git a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Td.java b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Td.java
new file mode 100644
index 0000000..32093c4
--- /dev/null
+++ b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Td.java
@@ -0,0 +1,116 @@
+// ***************************************************************************************************************************
+// * Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements.  See the NOTICE file *
+// * distributed with this work for additional information regarding copyright ownership.  The ASF licenses this file        *
+// * to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance            *
+// * with the License.  You may obtain a copy of the License at                                                              *
+// *                                                                                                                         *
+// *  http://www.apache.org/licenses/LICENSE-2.0                                                                             *
+// *                                                                                                                         *
+// * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an  *
+// * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the License for the        *
+// * specific language governing permissions and limitations under the License.                                              *
+// ***************************************************************************************************************************
+package org.apache.juneau.dto.html5;
+
+import org.apache.juneau.annotation.*;
+
+/**
+ * DTO for an HTML <a class="doclink" href="https://www.w3.org/TR/html5/tabular-data.html#the-td-element">&lt;td&gt;</a>
+ * element.
+ *
+ * <h6 class='topic'>Additional Information</h6>
+ * <ul class='doctree'>
+ * 	<li class='link'>
+ * 		<a class='doclink' href='../../../../../overview-summary.html#DTOs'>Juneau Data Transfer Objects
+ * 		(org.apache.juneau.dto)</a>
+ * 		<ul>
+ * 			<li class='sublink'>
+ * 				<a class='doclink' href='../../../../../overview-summary.html#DTOs.HTML5'>HTML5</a>
+ * 		</ul>
+ *		</li>
+ * </ul>
+ */
+@Bean(typeName="td")
+public class Td extends HtmlElementMixed {
+
+	/**
+	 * <a class="doclink" href="https://www.w3.org/TR/html5/tabular-data.html#attr-tdth-colspan">colspan</a> attribute.
+	 *
+	 * <p>
+	 * Number of columns that the cell is to span.
+	 *
+	 * @param colspan
+	 * 	The new value for this attribute.
+	 * 	Typically a {@link Number} or {@link String}.
+	 * @return This object (for method chaining).
+	 */
+	public final Td colspan(Object colspan) {
+		attr("colspan", colspan);
+		return this;
+	}
+
+	/**
+	 * <a class="doclink" href="https://www.w3.org/TR/html5/tabular-data.html#attr-tdth-headers">headers</a> attribute.
+	 *
+	 * <p>
+	 * The header cells for this cell.
+	 *
+	 * @param headers The new value for this attribute.
+	 * @return This object (for method chaining).
+	 */
+	public final Td headers(String headers) {
+		attr("headers", headers);
+		return this;
+	}
+
+	/**
+	 * <a class="doclink" href="https://www.w3.org/TR/html5/tabular-data.html#attr-tdth-rowspan">rowspan</a> attribute.
+	 *
+	 * <p>
+	 * Number of rows that the cell is to span.
+	 *
+	 * @param rowspan
+	 * 	The new value for this attribute.
+	 * 	Typically a {@link Number} or {@link String}.
+	 * @return This object (for method chaining).
+	 */
+	public final Td rowspan(Object rowspan) {
+		attr("rowspan", rowspan);
+		return this;
+	}
+
+
+	//--------------------------------------------------------------------------------
+	// Overridden methods
+	//--------------------------------------------------------------------------------
+
+	@Override /* HtmlElement */
+	public final Td _class(String _class) {
+		super._class(_class);
+		return this;
+	}
+
+	@Override /* HtmlElement */
+	public final Td id(String id) {
+		super.id(id);
+		return this;
+	}
+
+	@Override /* HtmlElement */
+	public final Td style(String style) {
+		super.style(style);
+		return this;
+	}
+
+	@Override /* HtmlElementMixed */
+	public Td children(Object...children) {
+		super.children(children);
+		return this;
+	}
+
+	@Override /* HtmlElementMixed */
+	public Td child(Object child) {
+		super.child(child);
+		return this;
+	}
+}

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/75b0d8ee/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Template.java
----------------------------------------------------------------------
diff --git a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Template.java b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Template.java
new file mode 100644
index 0000000..f9c1a1a
--- /dev/null
+++ b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Template.java
@@ -0,0 +1,69 @@
+// ***************************************************************************************************************************
+// * Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements.  See the NOTICE file *
+// * distributed with this work for additional information regarding copyright ownership.  The ASF licenses this file        *
+// * to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance            *
+// * with the License.  You may obtain a copy of the License at                                                              *
+// *                                                                                                                         *
+// *  http://www.apache.org/licenses/LICENSE-2.0                                                                             *
+// *                                                                                                                         *
+// * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an  *
+// * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the License for the        *
+// * specific language governing permissions and limitations under the License.                                              *
+// ***************************************************************************************************************************
+package org.apache.juneau.dto.html5;
+
+import org.apache.juneau.annotation.*;
+
+/**
+ * DTO for an HTML <a class="doclink" href="https://www.w3.org/TR/html5/scripting-1.html#the-template-element">&lt;template&gt;</a>
+ * element.
+ *
+ * <h6 class='topic'>Additional Information</h6>
+ * <ul class='doctree'>
+ * 	<li class='link'>
+ * 		<a class='doclink' href='../../../../../overview-summary.html#DTOs'>Juneau Data Transfer Objects
+ * 		(org.apache.juneau.dto)</a>
+ * 		<ul>
+ * 			<li class='sublink'>
+ * 				<a class='doclink' href='../../../../../overview-summary.html#DTOs.HTML5'>HTML5</a>
+ * 		</ul>
+ *		</li>
+ * </ul>
+ */
+@Bean(typeName="template")
+public class Template extends HtmlElementMixed {
+
+	//--------------------------------------------------------------------------------
+	// Overridden methods
+	//--------------------------------------------------------------------------------
+
+	@Override /* HtmlElement */
+	public final Template _class(String _class) {
+		super._class(_class);
+		return this;
+	}
+
+	@Override /* HtmlElement */
+	public final Template id(String id) {
+		super.id(id);
+		return this;
+	}
+
+	@Override /* HtmlElement */
+	public final Template style(String style) {
+		super.style(style);
+		return this;
+	}
+
+	@Override /* HtmlElementMixed */
+	public Template children(Object...children) {
+		super.children(children);
+		return this;
+	}
+
+	@Override /* HtmlElementMixed */
+	public Template child(Object child) {
+		super.child(child);
+		return this;
+	}
+}

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/75b0d8ee/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Textarea.java
----------------------------------------------------------------------
diff --git a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Textarea.java b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Textarea.java
new file mode 100644
index 0000000..8f08e65
--- /dev/null
+++ b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Textarea.java
@@ -0,0 +1,291 @@
+// ***************************************************************************************************************************
+// * Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements.  See the NOTICE file *
+// * distributed with this work for additional information regarding copyright ownership.  The ASF licenses this file        *
+// * to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance            *
+// * with the License.  You may obtain a copy of the License at                                                              *
+// *                                                                                                                         *
+// *  http://www.apache.org/licenses/LICENSE-2.0                                                                             *
+// *                                                                                                                         *
+// * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an  *
+// * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the License for the        *
+// * specific language governing permissions and limitations under the License.                                              *
+// ***************************************************************************************************************************
+package org.apache.juneau.dto.html5;
+
+import org.apache.juneau.annotation.*;
+
+/**
+ * DTO for an HTML <a class="doclink" href="https://www.w3.org/TR/html5/forms.html#the-textarea-element">&lt;textarea&gt;</a>
+ * element.
+ *
+ * <h6 class='topic'>Additional Information</h6>
+ * <ul class='doctree'>
+ * 	<li class='link'>
+ * 		<a class='doclink' href='../../../../../overview-summary.html#DTOs'>Juneau Data Transfer Objects
+ * 		(org.apache.juneau.dto)</a>
+ * 		<ul>
+ * 			<li class='sublink'>
+ * 				<a class='doclink' href='../../../../../overview-summary.html#DTOs.HTML5'>HTML5</a>
+ * 		</ul>
+ *		</li>
+ * </ul>
+ */
+@Bean(typeName="textarea")
+public class Textarea extends HtmlElementRawText {
+
+	/**
+	 * <a class="doclink" href="https://www.w3.org/TR/html5/forms.html#attr-fe-autocomplete">autocomplete</a> attribute.
+	 *
+	 * <p>
+	 * Hint for form auto-fill feature.
+	 *
+	 * @param autocomplete The new value for this attribute.
+	 * @return This object (for method chaining).
+	 */
+	public final Textarea autocomplete(String autocomplete) {
+		attr("autocomplete", autocomplete);
+		return this;
+	}
+
+	/**
+	 * <a class="doclink" href="https://www.w3.org/TR/html5/forms.html#attr-fe-autofocus">autofocus</a> attribute.
+	 *
+	 * <p>
+	 * Automatically focus the form control when the page is loaded.
+	 *
+	 * @param autofocus
+	 * 	The new value for this attribute.
+	 * 	Typically a {@link Boolean} or {@link String}.
+	 * @return This object (for method chaining).
+	 */
+	public final Textarea autofocus(Boolean autofocus) {
+		attr("autofocus", autofocus);
+		return this;
+	}
+
+	/**
+	 * <a class="doclink" href="https://www.w3.org/TR/html5/forms.html#attr-textarea-cols">cols</a> attribute.
+	 *
+	 * <p>
+	 * Maximum number of characters per line.
+	 *
+	 * @param cols
+	 * 	The new value for this attribute.
+	 * 	Typically a {@link Number} or {@link String}.
+	 * @return This object (for method chaining).
+	 */
+	public final Textarea cols(Object cols) {
+		attr("cols", cols);
+		return this;
+	}
+
+	/**
+	 * <a class="doclink" href="https://www.w3.org/TR/html5/forms.html#attr-fe-dirname">dirname</a> attribute.
+	 *
+	 * <p>
+	 * Name of form field to use for sending the element's directionality in form submission.
+	 *
+	 * @param dirname The new value for this attribute.
+	 * @return This object (for method chaining).
+	 */
+	public final Textarea dirname(String dirname) {
+		attr("dirname", dirname);
+		return this;
+	}
+
+	/**
+	 * <a class="doclink" href="https://www.w3.org/TR/html5/forms.html#attr-fe-disabled">disabled</a> attribute.
+	 *
+	 * <p>
+	 * Whether the form control is disabled.
+	 *
+	 * @param disabled
+	 * 	The new value for this attribute.
+	 * 	Typically a {@link Boolean} or {@link String}.
+	 * @return This object (for method chaining).
+	 */
+	public final Textarea disabled(Object disabled) {
+		attr("disabled", disabled);
+		return this;
+	}
+
+	/**
+	 * <a class="doclink" href="https://www.w3.org/TR/html5/forms.html#attr-fae-form">form</a> attribute.
+	 *
+	 * <p>
+	 * Associates the control with a form element.
+	 *
+	 * @param form The new value for this attribute.
+	 * @return This object (for method chaining).
+	 */
+	public final Textarea form(String form) {
+		attr("form", form);
+		return this;
+	}
+
+	/**
+	 * <a class="doclink" href="https://www.w3.org/TR/html5/forms.html#inputmode">inputmode</a> attribute.
+	 *
+	 * <p>
+	 * Hint for selecting an input modality.
+	 *
+	 * @param inputmode The new value for this attribute.
+	 * @return This object (for method chaining).
+	 */
+	public final Textarea inputmode(String inputmode) {
+		attr("inputmode", inputmode);
+		return this;
+	}
+
+	/**
+	 * <a class="doclink" href="https://www.w3.org/TR/html5/forms.html#attr-textarea-maxlength">maxlength</a> attribute.
+	 *
+	 * <p>
+	 * Maximum length of value.
+	 *
+	 * @param maxlength
+	 * 	The new value for this attribute.
+	 * 	Typically a {@link Number} or {@link String}.
+	 * @return This object (for method chaining).
+	 */
+	public final Textarea maxlength(Object maxlength) {
+		attr("maxlength", maxlength);
+		return this;
+	}
+
+	/**
+	 * <a class="doclink" href="https://www.w3.org/TR/html5/forms.html#attr-textarea-minlength">minlength</a> attribute.
+	 *
+	 * <p>
+	 * Minimum length of value.
+	 *
+	 * @param minlength
+	 * 	The new value for this attribute.
+	 * 	Typically a {@link Number} or {@link String}.
+	 * @return This object (for method chaining).
+	 */
+	public final Textarea minlength(Object minlength) {
+		attr("minlength", minlength);
+		return this;
+	}
+
+	/**
+	 * <a class="doclink" href="https://www.w3.org/TR/html5/forms.html#attr-fe-name">name</a> attribute.
+	 *
+	 * <p>
+	 * Name of form control to use for form submission and in the form.elements API.
+	 *
+	 * @param name The new value for this attribute.
+	 * @return This object (for method chaining).
+	 */
+	public final Textarea name(String name) {
+		attr("name", name);
+		return this;
+	}
+
+	/**
+	 * <a class="doclink" href="https://www.w3.org/TR/html5/forms.html#attr-textarea-placeholder">placeholder</a>
+	 * attribute.
+	 *
+	 * <p>
+	 * User-visible label to be placed within the form control.
+	 *
+	 * @param placeholder The new value for this attribute.
+	 * @return This object (for method chaining).
+	 */
+	public final Textarea placeholder(String placeholder) {
+		attr("placeholder", placeholder);
+		return this;
+	}
+
+	/**
+	 * <a class="doclink" href="https://www.w3.org/TR/html5/forms.html#attr-textarea-readonly">readonly</a> attribute.
+	 *
+	 * <p>
+	 * Whether to allow the value to be edited by the user.
+	 *
+	 * @param readonly
+	 * 	The new value for this attribute.
+	 * 	Typically a {@link Boolean} or {@link String}.
+	 * @return This object (for method chaining).
+	 */
+	public final Textarea readonly(Object readonly) {
+		attr("readonly", readonly);
+		return this;
+	}
+
+	/**
+	 * <a class="doclink" href="https://www.w3.org/TR/html5/forms.html#attr-textarea-required">required</a> attribute.
+	 *
+	 * <p>
+	 * Whether the control is required for form submission.
+	 *
+	 * @param required
+	 * 	The new value for this attribute.
+	 * 	Typically a {@link Boolean} or {@link String}.
+	 * @return This object (for method chaining).
+	 */
+	public final Textarea required(Object required) {
+		attr("required", required);
+		return this;
+	}
+
+	/**
+	 * <a class="doclink" href="https://www.w3.org/TR/html5/forms.html#attr-textarea-rows">rows</a> attribute.
+	 *
+	 * <p>
+	 * Number of lines to show.
+	 *
+	 * @param rows
+	 * 	The new value for this attribute.
+	 * 	Typically a {@link Number} or {@link String}.
+	 * @return This object (for method chaining).
+	 */
+	public final Textarea rows(Number rows) {
+		attr("rows", rows);
+		return this;
+	}
+
+	/**
+	 * <a class="doclink" href="https://www.w3.org/TR/html5/forms.html#attr-textarea-wrap">wrap</a> attribute.
+	 *
+	 * <p>
+	 * How the value of the form control is to be wrapped for form submission.
+	 *
+	 * @param wrap The new value for this attribute.
+	 * @return This object (for method chaining).
+	 */
+	public final Textarea wrap(String wrap) {
+		attr("wrap", wrap);
+		return this;
+	}
+
+
+	//--------------------------------------------------------------------------------
+	// Overridden methods
+	//--------------------------------------------------------------------------------
+
+	@Override /* HtmlElement */
+	public final Textarea _class(String _class) {
+		super._class(_class);
+		return this;
+	}
+
+	@Override /* HtmlElement */
+	public final Textarea id(String id) {
+		super.id(id);
+		return this;
+	}
+
+	@Override /* HtmlElement */
+	public final Textarea style(String style) {
+		super.style(style);
+		return this;
+	}
+
+	@Override /* HtmlElementText */
+	public Textarea text(Object text) {
+		super.text(text);
+		return this;
+	}
+}

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/75b0d8ee/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Tfoot.java
----------------------------------------------------------------------
diff --git a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Tfoot.java b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Tfoot.java
new file mode 100644
index 0000000..26ab554
--- /dev/null
+++ b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Tfoot.java
@@ -0,0 +1,69 @@
+// ***************************************************************************************************************************
+// * Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements.  See the NOTICE file *
+// * distributed with this work for additional information regarding copyright ownership.  The ASF licenses this file        *
+// * to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance            *
+// * with the License.  You may obtain a copy of the License at                                                              *
+// *                                                                                                                         *
+// *  http://www.apache.org/licenses/LICENSE-2.0                                                                             *
+// *                                                                                                                         *
+// * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an  *
+// * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the License for the        *
+// * specific language governing permissions and limitations under the License.                                              *
+// ***************************************************************************************************************************
+package org.apache.juneau.dto.html5;
+
+import org.apache.juneau.annotation.*;
+
+/**
+ * DTO for an HTML <a class="doclink" href="https://www.w3.org/TR/html5/tabular-data.html#the-tfoot-element">&lt;tfoot&gt;</a>
+ * element.
+ *
+ * <h6 class='topic'>Additional Information</h6>
+ * <ul class='doctree'>
+ * 	<li class='link'>
+ * 		<a class='doclink' href='../../../../../overview-summary.html#DTOs'>Juneau Data Transfer Objects
+ * 		(org.apache.juneau.dto)</a>
+ * 		<ul>
+ * 			<li class='sublink'>
+ * 				<a class='doclink' href='../../../../../overview-summary.html#DTOs.HTML5'>HTML5</a>
+ * 		</ul>
+ *		</li>
+ * </ul>
+ */
+@Bean(typeName="tfoot")
+public class Tfoot extends HtmlElementContainer {
+
+	//--------------------------------------------------------------------------------
+	// Overridden methods
+	//--------------------------------------------------------------------------------
+
+	@Override /* HtmlElement */
+	public final Tfoot _class(String _class) {
+		super._class(_class);
+		return this;
+	}
+
+	@Override /* HtmlElement */
+	public final Tfoot id(String id) {
+		super.id(id);
+		return this;
+	}
+
+	@Override /* HtmlElement */
+	public final Tfoot style(String style) {
+		super.style(style);
+		return this;
+	}
+
+	@Override /* HtmlElementContainer */
+	public final Tfoot children(Object...children) {
+		super.children(children);
+		return this;
+	}
+
+	@Override /* HtmlElementContainer */
+	public final Tfoot child(Object child) {
+		super.child(child);
+		return this;
+	}
+}

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/75b0d8ee/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Th.java
----------------------------------------------------------------------
diff --git a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Th.java b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Th.java
new file mode 100644
index 0000000..9fe7daf
--- /dev/null
+++ b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Th.java
@@ -0,0 +1,158 @@
+// ***************************************************************************************************************************
+// * Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements.  See the NOTICE file *
+// * distributed with this work for additional information regarding copyright ownership.  The ASF licenses this file        *
+// * to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance            *
+// * with the License.  You may obtain a copy of the License at                                                              *
+// *                                                                                                                         *
+// *  http://www.apache.org/licenses/LICENSE-2.0                                                                             *
+// *                                                                                                                         *
+// * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an  *
+// * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the License for the        *
+// * specific language governing permissions and limitations under the License.                                              *
+// ***************************************************************************************************************************
+package org.apache.juneau.dto.html5;
+
+import org.apache.juneau.annotation.*;
+
+/**
+ * DTO for an HTML <a class="doclink" href="https://www.w3.org/TR/html5/tabular-data.html#the-th-element">&lt;th&gt;</a>
+ * element.
+ *
+ * <h6 class='topic'>Additional Information</h6>
+ * <ul class='doctree'>
+ * 	<li class='link'>
+ * 		<a class='doclink' href='../../../../../overview-summary.html#DTOs'>Juneau Data Transfer Objects
+ * 		(org.apache.juneau.dto)</a>
+ * 		<ul>
+ * 			<li class='sublink'>
+ * 				<a class='doclink' href='../../../../../overview-summary.html#DTOs.HTML5'>HTML5</a>
+ * 		</ul>
+ *		</li>
+ * </ul>
+ */
+@Bean(typeName="th")
+public class Th extends HtmlElementMixed {
+
+	/**
+	 * <a class="doclink" href="https://www.w3.org/TR/html5/tabular-data.html#attr-th-abbr">abbr</a> attribute.
+	 *
+	 * <p>
+	 * Alternative label to use for the header cell when referencing the cell in other contexts.
+	 *
+	 * @param abbr The new value for this attribute.
+	 * @return This object (for method chaining).
+	 */
+	public final Th abbr(String abbr) {
+		attr("abbr", abbr);
+		return this;
+	}
+
+	/**
+	 * <a class="doclink" href="https://www.w3.org/TR/html5/tabular-data.html#attr-tdth-colspan">colspan</a> attribute.
+	 *
+	 * <p>
+	 * Number of columns that the cell is to span.
+	 *
+	 * @param colspan
+	 * 	The new value for this attribute.
+	 * 	Typically a {@link Number} or {@link String}.
+	 * @return This object (for method chaining).
+	 */
+	public final Th colspan(Object colspan) {
+		attr("colspan", colspan);
+		return this;
+	}
+
+	/**
+	 * <a class="doclink" href="https://www.w3.org/TR/html5/tabular-data.html#attr-tdth-headers">headers</a> attribute.
+	 *
+	 * <p>
+	 * The headers for this cell.
+	 *
+	 * @param headers The new value for this attribute.
+	 * @return This object (for method chaining).
+	 */
+	public final Th headers(String headers) {
+		attr("headers", headers);
+		return this;
+	}
+
+	/**
+	 * <a class="doclink" href="https://www.w3.org/TR/html5/tabular-data.html#attr-tdth-rowspan">rowspan</a> attribute.
+	 *
+	 * <p>
+	 * Number of rows that the cell is to span.
+	 *
+	 * @param rowspan
+	 * 	The new value for this attribute.
+	 * 	Typically a {@link Number} or {@link String}.
+	 * @return This object (for method chaining).
+	 */
+	public final Th rowspan(Object rowspan) {
+		attr("rowspan", rowspan);
+		return this;
+	}
+
+	/**
+	 * <a class="doclink" href="https://www.w3.org/TR/html5/tabular-data.html#attr-th-scope">scope</a> attribute.
+	 *
+	 * <p>
+	 * Specifies which cells the header cell applies to.
+	 *
+	 * @param scope The new value for this attribute.
+	 * @return This object (for method chaining).
+	 */
+	public final Th scope(String scope) {
+		attr("scope", scope);
+		return this;
+	}
+
+	/**
+	 * <a class="doclink" href="-">sorted</a> attribute.
+	 *
+	 * <p>
+	 * Column sort direction and ordinality.
+	 *
+	 * @param sorted The new value for this attribute.
+	 * @return This object (for method chaining).
+	 */
+	public final Th sorted(String sorted) {
+		attr("sorted", sorted);
+		return this;
+	}
+
+
+	//--------------------------------------------------------------------------------
+	// Overridden methods
+	//--------------------------------------------------------------------------------
+
+	@Override /* HtmlElement */
+	public final Th _class(String _class) {
+		super._class(_class);
+		return this;
+	}
+
+	@Override /* HtmlElement */
+	public final Th id(String id) {
+		super.id(id);
+		return this;
+	}
+
+	@Override /* HtmlElement */
+	public final Th style(String style) {
+		super.style(style);
+		return this;
+	}
+
+	@Override /* HtmlElementMixed */
+	public Th children(Object...children) {
+		super.children(children);
+		return this;
+	}
+
+	@Override /* HtmlElementMixed */
+	public Th child(Object child) {
+		super.child(child);
+		return this;
+	}
+}

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/75b0d8ee/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Thead.java
----------------------------------------------------------------------
diff --git a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Thead.java b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Thead.java
new file mode 100644
index 0000000..6543101
--- /dev/null
+++ b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Thead.java
@@ -0,0 +1,69 @@
+// ***************************************************************************************************************************
+// * Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements.  See the NOTICE file *
+// * distributed with this work for additional information regarding copyright ownership.  The ASF licenses this file        *
+// * to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance            *
+// * with the License.  You may obtain a copy of the License at                                                              *
+// *                                                                                                                         *
+// *  http://www.apache.org/licenses/LICENSE-2.0                                                                             *
+// *                                                                                                                         *
+// * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an  *
+// * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the License for the        *
+// * specific language governing permissions and limitations under the License.                                              *
+// ***************************************************************************************************************************
+package org.apache.juneau.dto.html5;
+
+import org.apache.juneau.annotation.*;
+
+/**
+ * DTO for an HTML <a class="doclink" href="https://www.w3.org/TR/html5/tabular-data.html#the-thead-element">&lt;thead&gt;</a>
+ * element.
+ *
+ * <h6 class='topic'>Additional Information</h6>
+ * <ul class='doctree'>
+ * 	<li class='link'>
+ * 		<a class='doclink' href='../../../../../overview-summary.html#DTOs'>Juneau Data Transfer Objects
+ * 		(org.apache.juneau.dto)</a>
+ * 		<ul>
+ * 			<li class='sublink'>
+ * 				<a class='doclink' href='../../../../../overview-summary.html#DTOs.HTML5'>HTML5</a>
+ * 		</ul>
+ *		</li>
+ * </ul>
+ */
+@Bean(typeName="thead")
+public class Thead extends HtmlElementContainer {
+
+	//--------------------------------------------------------------------------------
+	// Overridden methods
+	//--------------------------------------------------------------------------------
+
+	@Override /* HtmlElement */
+	public final Thead _class(String _class) {
+		super._class(_class);
+		return this;
+	}
+
+	@Override /* HtmlElement */
+	public final Thead id(String id) {
+		super.id(id);
+		return this;
+	}
+
+	@Override /* HtmlElement */
+	public final Thead style(String style) {
+		super.style(style);
+		return this;
+	}
+
+	@Override /* HtmlElementContainer */
+	public final Thead children(Object...children) {
+		super.children(children);
+		return this;
+	}
+
+	@Override /* HtmlElementContainer */
+	public final Thead child(Object child) {
+		super.child(child);
+		return this;
+	}
+}

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/75b0d8ee/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Time.java
----------------------------------------------------------------------
diff --git a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Time.java b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Time.java
new file mode 100644
index 0000000..72715f9
--- /dev/null
+++ b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Time.java
@@ -0,0 +1,85 @@
+// ***************************************************************************************************************************
+// * Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements.  See the NOTICE file *
+// * distributed with this work for additional information regarding copyright ownership.  The ASF licenses this file        *
+// * to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance            *
+// * with the License.  You may obtain a copy of the License at                                                              *
+// *                                                                                                                         *
+// *  http://www.apache.org/licenses/LICENSE-2.0                                                                             *
+// *                                                                                                                         *
+// * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an  *
+// * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the License for the        *
+// * specific language governing permissions and limitations under the License.                                              *
+// ***************************************************************************************************************************
+package org.apache.juneau.dto.html5;
+
+import org.apache.juneau.annotation.*;
+
+/**
+ * DTO for an HTML <a class="doclink" href="https://www.w3.org/TR/html5/text-level-semantics.html#the-time-element">&lt;time&gt;</a>
+ * element.
+ *
+ * <h6 class='topic'>Additional Information</h6>
+ * <ul class='doctree'>
+ * 	<li class='link'>
+ * 		<a class='doclink' href='../../../../../overview-summary.html#DTOs'>Juneau Data Transfer Objects
+ * 		(org.apache.juneau.dto)</a>
+ * 		<ul>
+ * 			<li class='sublink'>
+ * 				<a class='doclink' href='../../../../../overview-summary.html#DTOs.HTML5'>HTML5</a>
+ * 		</ul>
+ *		</li>
+ * </ul>
+ */
+@Bean(typeName="time")
+public class Time extends HtmlElementMixed {
+
+	/**
+	 * <a class="doclink" href="https://www.w3.org/TR/html5/text-level-semantics.html#attr-time-datetime">datetime</a>
+	 * attribute.
+	 *
+	 * <p>
+	 * Machine-readable value.
+	 *
+	 * @param datetime The new value for this attribute.
+	 * @return This object (for method chaining).
+	 */
+	public final Time datetime(String datetime) {
+		attr("datetime", datetime);
+		return this;
+	}
+
+
+	//--------------------------------------------------------------------------------
+	// Overridden methods
+	//--------------------------------------------------------------------------------
+
+	@Override /* HtmlElement */
+	public final Time _class(String _class) {
+		super._class(_class);
+		return this;
+	}
+
+	@Override /* HtmlElement */
+	public final Time id(String id) {
+		super.id(id);
+		return this;
+	}
+
+	@Override /* HtmlElement */
+	public final Time style(String style) {
+		super.style(style);
+		return this;
+	}
+
+	@Override /* HtmlElementMixed */
+	public Time children(Object...children) {
+		super.children(children);
+		return this;
+	}
+
+	@Override /* HtmlElementMixed */
+	public Time child(Object child) {
+		super.child(child);
+		return this;
+	}
+}

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/75b0d8ee/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Title.java
----------------------------------------------------------------------
diff --git a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Title.java b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Title.java
new file mode 100644
index 0000000..2c15355
--- /dev/null
+++ b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Title.java
@@ -0,0 +1,63 @@
+// ***************************************************************************************************************************
+// * Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements.  See the NOTICE file *
+// * distributed with this work for additional information regarding copyright ownership.  The ASF licenses this file        *
+// * to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance            *
+// * with the License.  You may obtain a copy of the License at                                                              *
+// *                                                                                                                         *
+// *  http://www.apache.org/licenses/LICENSE-2.0                                                                             *
+// *                                                                                                                         *
+// * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an  *
+// * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the License for the        *
+// * specific language governing permissions and limitations under the License.                                              *
+// ***************************************************************************************************************************
+package org.apache.juneau.dto.html5;
+
+import org.apache.juneau.annotation.*;
+
+/**
+ * DTO for an HTML <a class="doclink" href="https://www.w3.org/TR/html5/document-metadata.html#the-title-element">&lt;title&gt;</a>
+ * element.
+ *
+ * <h6 class='topic'>Additional Information</h6>
+ * <ul class='doctree'>
+ * 	<li class='link'>
+ * 		<a class='doclink' href='../../../../../overview-summary.html#DTOs'>Juneau Data Transfer Objects
+ * 		(org.apache.juneau.dto)</a>
+ * 		<ul>
+ * 			<li class='sublink'>
+ * 				<a class='doclink' href='../../../../../overview-summary.html#DTOs.HTML5'>HTML5</a>
+ * 		</ul>
+ *		</li>
+ * </ul>
+ */
+@Bean(typeName="title")
+public class Title extends HtmlElementRawText {
+
+	//--------------------------------------------------------------------------------
+	// Overridden methods
+	//--------------------------------------------------------------------------------
+
+	@Override /* HtmlElement */
+	public final Title _class(String _class) {
+		super._class(_class);
+		return this;
+	}
+
+	@Override /* HtmlElement */
+	public final Title id(String id) {
+		super.id(id);
+		return this;
+	}
+
+	@Override /* HtmlElement */
+	public final Title style(String style) {
+		super.style(style);
+		return this;
+	}
+
+	@Override /* HtmlElementText */
+	public Title text(Object text) {
+		super.text(text);
+		return this;
+	}
+}