diff --git a/generate/src/main/resources/html_5.xsd b/generate/src/main/resources/html_5.xsd
index 1940d7a3..fc33a4eb 100644
--- a/generate/src/main/resources/html_5.xsd
+++ b/generate/src/main/resources/html_5.xsd
@@ -239,6 +239,7 @@
+
@@ -901,6 +902,16 @@
+
+
+
+
+
+
+
+
+
+
diff --git a/js/src/main/kotlin/generated/gen-consumer-tags.kt b/js/src/main/kotlin/generated/gen-consumer-tags.kt
index d041ed10..4d04229e 100644
--- a/js/src/main/kotlin/generated/gen-consumer-tags.kt
+++ b/js/src/main/kotlin/generated/gen-consumer-tags.kt
@@ -79,6 +79,8 @@ public fun TagConsumer.embed(classes : String? = null, block : EMBE
public fun TagConsumer.fieldSet(classes : String? = null, block : FIELDSET.() -> Unit = {}) : HTMLFieldSetElement = FIELDSET(attributesMapOf("class", classes), this).visitAndFinalize(this, block) as HTMLFieldSetElement
+public fun TagConsumer.figcaption(classes : String? = null, block : FIGCAPTION.() -> Unit = {}) : HTMLElement = FIGCAPTION(attributesMapOf("class", classes), this).visitAndFinalize(this, block)
+
public fun TagConsumer.figure(classes : String? = null, block : FIGURE.() -> Unit = {}) : HTMLElement = FIGURE(attributesMapOf("class", classes), this).visitAndFinalize(this, block)
public fun TagConsumer.footer(classes : String? = null, block : FOOTER.() -> Unit = {}) : HTMLElement = FOOTER(attributesMapOf("class", classes), this).visitAndFinalize(this, block)
diff --git a/shared/src/main/kotlin/generated/gen-consumer-tags.kt b/shared/src/main/kotlin/generated/gen-consumer-tags.kt
index 070924e7..e78f7a01 100644
--- a/shared/src/main/kotlin/generated/gen-consumer-tags.kt
+++ b/shared/src/main/kotlin/generated/gen-consumer-tags.kt
@@ -78,6 +78,8 @@ fun > C.embed(classes : String? = null, block : EMBED.() -
fun > C.fieldSet(classes : String? = null, block : FIELDSET.() -> Unit = {}) : T = FIELDSET(attributesMapOf("class", classes), this).visitAndFinalize(this, block)
+fun > C.figcaption(classes : String? = null, block : FIGCAPTION.() -> Unit = {}) : T = FIGCAPTION(attributesMapOf("class", classes), this).visitAndFinalize(this, block)
+
fun > C.figure(classes : String? = null, block : FIGURE.() -> Unit = {}) : T = FIGURE(attributesMapOf("class", classes), this).visitAndFinalize(this, block)
fun > C.footer(classes : String? = null, block : FOOTER.() -> Unit = {}) : T = FOOTER(attributesMapOf("class", classes), this).visitAndFinalize(this, block)
diff --git a/shared/src/main/kotlin/generated/gen-tag-groups.kt b/shared/src/main/kotlin/generated/gen-tag-groups.kt
index d193a108..f4c880a1 100644
--- a/shared/src/main/kotlin/generated/gen-tag-groups.kt
+++ b/shared/src/main/kotlin/generated/gen-tag-groups.kt
@@ -95,6 +95,8 @@ fun FlowContent.fieldSet(classes : String? = null, block : FIELDSET.() -> Unit =
fun FlowContent.figure(classes : String? = null, block : FIGURE.() -> Unit = {}) : Unit = FIGURE(attributesMapOf("class", classes), consumer).visit(block)
+fun FlowContent.figcaption(classes : String? = null, block : FIGCAPTION.() -> Unit = {}) : Unit = FIGCAPTION(attributesMapOf("class", classes), consumer).visit(block)
+
fun FlowContent.footer(classes : String? = null, block : FOOTER.() -> Unit = {}) : Unit = FOOTER(attributesMapOf("class", classes), consumer).visit(block)
fun FlowContent.form(action : String? = null, encType : FormEncType? = null, method : FormMethod? = null, classes : String? = null, block : FORM.() -> Unit = {}) : Unit = FORM(attributesMapOf("action", action,"enctype", encType?.enumEncode(),"method", method?.enumEncode(),"class", classes), consumer).visit(block)
diff --git a/shared/src/main/kotlin/generated/gen-tags-f.kt b/shared/src/main/kotlin/generated/gen-tags-f.kt
index 36562b00..78734a03 100644
--- a/shared/src/main/kotlin/generated/gen-tags-f.kt
+++ b/shared/src/main/kotlin/generated/gen-tags-f.kt
@@ -28,12 +28,19 @@ open class FIELDSET(initialAttributes : Map, override val consum
fun FIELDSET.legEnd(classes : String? = null, block : LEGEND.() -> Unit = {}) : Unit = LEGEND(attributesMapOf("class", classes), consumer).visit(block)
+@Suppress("unused")
+open class FIGCAPTION(initialAttributes : Map, override val consumer : TagConsumer<*>) : HTMLTag("figcaption", consumer, initialAttributes, null, false, false), HtmlBlockTag {
+
+}
+
@Suppress("unused")
open class FIGURE(initialAttributes : Map, override val consumer : TagConsumer<*>) : HTMLTag("figure", consumer, initialAttributes, null, false, false), HtmlBlockTag {
}
fun FIGURE.legEnd(classes : String? = null, block : LEGEND.() -> Unit = {}) : Unit = LEGEND(attributesMapOf("class", classes), consumer).visit(block)
+fun FIGURE.figcaption(classes : String? = null, block : FIGCAPTION.() -> Unit = {}) : Unit = FIGCAPTION(attributesMapOf("class", classes), consumer).visit(block)
+
@Suppress("unused")
open class FOOTER(initialAttributes : Map, override val consumer : TagConsumer<*>) : HTMLTag("footer", consumer, initialAttributes, null, false, false), HtmlBlockTag {