You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by hn...@apache.org on 2019/08/26 14:10:13 UTC

[myfaces-tobago] branch master updated: TOBAGO-1912 Removing data-tobago-markup attribute

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

hnoeth pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/myfaces-tobago.git


The following commit(s) were added to refs/heads/master by this push:
     new 84bb5d1  TOBAGO-1912 Removing data-tobago-markup attribute
84bb5d1 is described below

commit 84bb5d13a970abb9e6bd1c3a221615220486903c
Author: Henning Noeth <hn...@apache.org>
AuthorDate: Mon Aug 26 16:09:59 2019 +0200

    TOBAGO-1912 Removing data-tobago-markup attribute
---
 .../internal/renderkit/renderer/BarRenderer.java   |  2 --
 .../internal/renderkit/renderer/BoxRenderer.java   |  1 -
 .../renderkit/renderer/ButtonsRenderer.java        |  1 -
 .../renderkit/renderer/CommandRendererBase.java    |  1 -
 .../internal/renderkit/renderer/DateRenderer.java  |  1 -
 .../internal/renderkit/renderer/FileRenderer.java  |  1 -
 .../renderkit/renderer/FlexLayoutRenderer.java     |  1 -
 .../renderkit/renderer/FlowLayoutRenderer.java     |  1 -
 .../renderkit/renderer/FooterRenderer.java         |  1 -
 .../internal/renderkit/renderer/FormRenderer.java  |  3 --
 .../renderkit/renderer/GridLayoutRenderer.java     |  2 --
 .../renderkit/renderer/HeaderRenderer.java         |  1 -
 .../internal/renderkit/renderer/ImageRenderer.java |  2 --
 .../internal/renderkit/renderer/InRenderer.java    |  4 ---
 .../renderer/LabelLayoutRendererBase.java          |  4 ---
 .../internal/renderkit/renderer/LabelRenderer.java |  3 --
 .../renderer/LinkInsideLinksRenderer.java          |  3 --
 .../internal/renderkit/renderer/LinksRenderer.java |  3 --
 .../renderkit/renderer/MessagesRenderer.java       |  1 -
 .../renderkit/renderer/ObjectRenderer.java         |  1 -
 .../internal/renderkit/renderer/OutRenderer.java   |  1 -
 .../internal/renderkit/renderer/PageRenderer.java  |  1 -
 .../internal/renderkit/renderer/PanelRenderer.java |  1 -
 .../internal/renderkit/renderer/PopupRenderer.java |  1 -
 .../renderkit/renderer/ProgressRenderer.java       |  1 -
 .../renderkit/renderer/SectionRenderer.java        |  3 --
 .../renderkit/renderer/SegmentLayoutRenderer.java  |  3 --
 .../renderer/SelectBooleanCheckboxRenderer.java    |  2 --
 .../renderer/SelectManyCheckboxRenderer.java       |  1 -
 .../renderer/SelectManyShuttleRenderer.java        |  1 -
 .../renderer/SelectOneChoiceRenderer.java          |  2 --
 .../renderkit/renderer/SelectOneRadioRenderer.java |  2 --
 .../renderer/SeparatorInsideCommandRenderer.java   |  3 --
 .../renderkit/renderer/SeparatorRenderer.java      |  2 --
 .../internal/renderkit/renderer/SheetRenderer.java |  1 -
 .../renderkit/renderer/SplitLayoutRenderer.java    |  3 --
 .../renderkit/renderer/TabGroupRenderer.java       |  2 --
 .../renderkit/renderer/TreeIconRenderer.java       |  2 --
 .../renderkit/renderer/TreeIndentRenderer.java     |  2 --
 .../renderkit/renderer/TreeListboxRenderer.java    |  1 -
 .../renderkit/renderer/TreeNodeRenderer.java       |  2 --
 .../internal/renderkit/renderer/TreeRenderer.java  |  1 -
 .../renderkit/renderer/TreeSelectRenderer.java     |  2 --
 .../tobago/renderkit/html/DataAttributes.java      |  5 ---
 .../100-id-markup/Id_Markup.test.js                | 36 ++++++++--------------
 .../src/main/npm/ts/tobago-tab.ts                  |  9 ------
 46 files changed, 12 insertions(+), 115 deletions(-)

diff --git a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/BarRenderer.java b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/BarRenderer.java
index 804e5e0..a7e6a77 100644
--- a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/BarRenderer.java
+++ b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/BarRenderer.java
@@ -26,7 +26,6 @@ import org.apache.myfaces.tobago.internal.component.AbstractUIBar;
 import org.apache.myfaces.tobago.internal.component.AbstractUIForm;
 import org.apache.myfaces.tobago.internal.component.AbstractUILinks;
 import org.apache.myfaces.tobago.internal.util.HtmlRendererUtils;
-import org.apache.myfaces.tobago.internal.util.JsonUtils;
 import org.apache.myfaces.tobago.renderkit.RendererBase;
 import org.apache.myfaces.tobago.renderkit.css.BootstrapClass;
 import org.apache.myfaces.tobago.renderkit.css.TobagoClass;
@@ -57,7 +56,6 @@ public class BarRenderer extends RendererBase {
 
     writer.startElement(HtmlElements.NAV);
     writer.writeIdAttribute(clientId);
-    writer.writeAttribute(DataAttributes.MARKUP, JsonUtils.encode(markup), false);
     writer.writeClassAttribute(
         TobagoClass.BAR,
         TobagoClass.BAR.createMarkup(bar.getMarkup()),
diff --git a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/BoxRenderer.java b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/BoxRenderer.java
index f42f612..1aa0c6b 100644
--- a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/BoxRenderer.java
+++ b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/BoxRenderer.java
@@ -60,7 +60,6 @@ public class BoxRenderer extends PanelRendererBase {
         markup != null && markup.contains(Markup.SPREAD) ? TobagoClass.SPREAD : null);
     final String clientId = box.getClientId(facesContext);
     writer.writeIdAttribute(clientId);
-    writer.writeAttribute(DataAttributes.MARKUP, JsonUtils.encode(markup), false);
     final String title = HtmlRendererUtils.getTitleFromTipAndMessages(facesContext, box);
     if (title != null) {
       writer.writeAttribute(HtmlAttributes.TITLE, title, true);
diff --git a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/ButtonsRenderer.java b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/ButtonsRenderer.java
index 710c494..eae7aed 100644
--- a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/ButtonsRenderer.java
+++ b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/ButtonsRenderer.java
@@ -51,7 +51,6 @@ public class ButtonsRenderer extends RendererBase {
 
     writer.startElement(HtmlElements.DIV);
     writer.writeIdAttribute(buttons.getClientId(facesContext));
-    writer.writeAttribute(DataAttributes.MARKUP, JsonUtils.encode(markup), false);
 
     writer.writeClassAttribute(
         TobagoClass.BUTTONS,
diff --git a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/CommandRendererBase.java b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/CommandRendererBase.java
index a3b1a39..5acd280 100644
--- a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/CommandRendererBase.java
+++ b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/CommandRendererBase.java
@@ -239,7 +239,6 @@ public abstract class CommandRendererBase extends DecodingCommandRendererBase {
     if (parentOfCommands) {
       writer.startElement(HtmlElements.SPAN);
       writer.writeIdAttribute(clientId);
-      writer.writeAttribute(DataAttributes.MARKUP, JsonUtils.encode(command.getMarkup()), false);
 
       writer.writeClassAttribute(
           childOfButtonGroup ? null : dropdownSubmenu ? TobagoClass.DROPDOWN__SUBMENU : BootstrapClass.DROPDOWN,
diff --git a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/DateRenderer.java b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/DateRenderer.java
index d46baba..8df1ca2 100644
--- a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/DateRenderer.java
+++ b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/DateRenderer.java
@@ -71,7 +71,6 @@ public class DateRenderer extends InRenderer {
     writer.startElement(HtmlElements.DIV);
     if (date.isLabelLayoutSkip()) {
       writer.writeIdAttribute(date.getClientId());
-      writer.writeAttribute(DataAttributes.MARKUP, JsonUtils.encode(date.getMarkup()), false);
     }
     writer.writeClassAttribute(TobagoClass.INPUT__GROUP__OUTER);
 
diff --git a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/FileRenderer.java b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/FileRenderer.java
index 085d25b..4a58f30 100644
--- a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/FileRenderer.java
+++ b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/FileRenderer.java
@@ -133,7 +133,6 @@ public class FileRenderer extends MessageLayoutRendererBase implements Component
     writer.startElement(HtmlElements.DIV);
     if (file.isLabelLayoutSkip()) {
       writer.writeIdAttribute(clientId);
-      writer.writeAttribute(DataAttributes.MARKUP, JsonUtils.encode(file.getMarkup()), false);
     }
     writer.writeClassAttribute(
         TobagoClass.FILE,
diff --git a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/FlexLayoutRenderer.java b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/FlexLayoutRenderer.java
index 4fa2e62..a7b0d57 100644
--- a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/FlexLayoutRenderer.java
+++ b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/FlexLayoutRenderer.java
@@ -43,7 +43,6 @@ public class FlexLayoutRenderer extends RendererBase {
 
     writer.startElement(HtmlElements.DIV);
     writer.writeIdAttribute(flexLayout.getClientId());
-    writer.writeAttribute(DataAttributes.MARKUP, JsonUtils.encode(markup), false);
     writer.writeClassAttribute(
         TobagoClass.FLEX_LAYOUT,
         TobagoClass.FLEX_LAYOUT.createMarkup(markup),
diff --git a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/FlowLayoutRenderer.java b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/FlowLayoutRenderer.java
index 1ac1742..619b1a8 100644
--- a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/FlowLayoutRenderer.java
+++ b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/FlowLayoutRenderer.java
@@ -45,7 +45,6 @@ public class FlowLayoutRenderer extends RendererBase {
 
     writer.startElement(HtmlElements.DIV);
     writer.writeIdAttribute(flowLayout.getClientId());
-    writer.writeAttribute(DataAttributes.MARKUP, JsonUtils.encode(markup), false);
     final TextAlign textAlign = flowLayout.getTextAlign();
     writer.writeClassAttribute(
         TobagoClass.FLOW_LAYOUT,
diff --git a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/FooterRenderer.java b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/FooterRenderer.java
index d9adda3..0488f94 100644
--- a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/FooterRenderer.java
+++ b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/FooterRenderer.java
@@ -44,7 +44,6 @@ public class FooterRenderer extends RendererBase {
     final Markup markup = footer.getMarkup();
     writer.startElement(HtmlElements.FOOTER);
     writer.writeIdAttribute(component.getClientId(facesContext));
-    writer.writeAttribute(DataAttributes.MARKUP, JsonUtils.encode(markup), false);
 
     writer.writeClassAttribute(
         TobagoClass.FOOTER,
diff --git a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/FormRenderer.java b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/FormRenderer.java
index 7f5f6b7..c532a48 100644
--- a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/FormRenderer.java
+++ b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/FormRenderer.java
@@ -20,11 +20,9 @@
 package org.apache.myfaces.tobago.internal.renderkit.renderer;
 
 import org.apache.myfaces.tobago.internal.component.AbstractUIForm;
-import org.apache.myfaces.tobago.internal.util.JsonUtils;
 import org.apache.myfaces.tobago.renderkit.RendererBase;
 import org.apache.myfaces.tobago.renderkit.css.BootstrapClass;
 import org.apache.myfaces.tobago.renderkit.css.TobagoClass;
-import org.apache.myfaces.tobago.renderkit.html.DataAttributes;
 import org.apache.myfaces.tobago.renderkit.html.HtmlElements;
 import org.apache.myfaces.tobago.webapp.TobagoResponseWriter;
 
@@ -45,7 +43,6 @@ public class FormRenderer extends RendererBase {
 
       writer.startElement(HtmlElements.DIV);
       writer.writeIdAttribute(clientId);
-      writer.writeAttribute(DataAttributes.MARKUP, JsonUtils.encode(form.getMarkup()), false);
       writer.writeClassAttribute(
           TobagoClass.FORM,
           inline ? BootstrapClass.D_INLINE : null,
diff --git a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/GridLayoutRenderer.java b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/GridLayoutRenderer.java
index f0fc7b0..94258b3 100644
--- a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/GridLayoutRenderer.java
+++ b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/GridLayoutRenderer.java
@@ -29,7 +29,6 @@ import org.apache.myfaces.tobago.layout.Measure;
 import org.apache.myfaces.tobago.layout.MeasureList;
 import org.apache.myfaces.tobago.renderkit.RendererBase;
 import org.apache.myfaces.tobago.renderkit.css.TobagoClass;
-import org.apache.myfaces.tobago.renderkit.html.DataAttributes;
 import org.apache.myfaces.tobago.renderkit.html.HtmlAttributes;
 import org.apache.myfaces.tobago.renderkit.html.HtmlElements;
 import org.apache.myfaces.tobago.renderkit.html.HtmlRoleValues;
@@ -50,7 +49,6 @@ public class GridLayoutRenderer extends RendererBase {
     writer.startElement(HtmlElements.DIV);
     writer.writeAttribute(HtmlAttributes.ROLE, HtmlRoleValues.PRESENTATION.toString(), false);
     writer.writeIdAttribute(gridLayout.getClientId(facesContext));
-    writer.writeAttribute(DataAttributes.MARKUP, JsonUtils.encode(gridLayout.getMarkup()), false);
     writer.writeClassAttribute(
         TobagoClass.GRID_LAYOUT,
         TobagoClass.GRID_LAYOUT.createMarkup(markup),
diff --git a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/HeaderRenderer.java b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/HeaderRenderer.java
index 7c18a53..81c5932 100644
--- a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/HeaderRenderer.java
+++ b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/HeaderRenderer.java
@@ -44,7 +44,6 @@ public class HeaderRenderer extends RendererBase {
     final Markup markup = header.getMarkup();
     writer.startElement(HtmlElements.HEADER);
     writer.writeIdAttribute(component.getClientId(facesContext));
-    writer.writeAttribute(DataAttributes.MARKUP, JsonUtils.encode(markup), false);
     // TBD: NAVBAR_DARK and BG_INVERSE should not be the default
     // TBD: how to configure it when it is needed, with customClass, or with markup?
 
diff --git a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/ImageRenderer.java b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/ImageRenderer.java
index 67f7fe0..e8e67e4 100644
--- a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/ImageRenderer.java
+++ b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/ImageRenderer.java
@@ -55,7 +55,6 @@ public class ImageRenderer extends RendererBase {
     if (fontAwesome) {
       writer.startElement(HtmlElements.I);
       writer.writeIdAttribute(image.getClientId(facesContext));
-      writer.writeAttribute(DataAttributes.MARKUP, JsonUtils.encode(markup), false);
       writer.writeClassAttribute(
           Icons.FA,
           Icons.custom(value),
@@ -67,7 +66,6 @@ public class ImageRenderer extends RendererBase {
       final String alt = image.getAlt();
       writer.startElement(HtmlElements.IMG);
       writer.writeIdAttribute(image.getClientId(facesContext));
-      writer.writeAttribute(DataAttributes.MARKUP, JsonUtils.encode(markup), false);
       HtmlRendererUtils.writeDataAttributes(facesContext, writer, image);
       writer.writeAttribute(HtmlAttributes.SRC, value, true);
       writer.writeAttribute(HtmlAttributes.ALT, alt != null ? alt : "", true);
diff --git a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/InRenderer.java b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/InRenderer.java
index 58b9c53..55a48e5 100644
--- a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/InRenderer.java
+++ b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/InRenderer.java
@@ -34,7 +34,6 @@ import org.apache.myfaces.tobago.internal.util.RenderUtils;
 import org.apache.myfaces.tobago.internal.util.StringUtils;
 import org.apache.myfaces.tobago.renderkit.css.BootstrapClass;
 import org.apache.myfaces.tobago.renderkit.css.TobagoClass;
-import org.apache.myfaces.tobago.renderkit.html.DataAttributes;
 import org.apache.myfaces.tobago.renderkit.html.HtmlAttributes;
 import org.apache.myfaces.tobago.renderkit.html.HtmlElements;
 import org.apache.myfaces.tobago.renderkit.html.HtmlInputTypes;
@@ -103,9 +102,6 @@ public class InRenderer extends MessageLayoutRendererBase {
     writer.writeAttribute(HtmlAttributes.TYPE, type);
     writer.writeNameAttribute(clientId);
     writer.writeIdAttribute(fieldId);
-    if (input.isLabelLayoutSkip()) {
-      writer.writeAttribute(DataAttributes.MARKUP, JsonUtils.encode(markup), false);
-    }
     HtmlRendererUtils.writeDataAttributes(facesContext, writer, input);
     if (currentValue != null && !password) {
       writer.writeAttribute(HtmlAttributes.VALUE, currentValue, true);
diff --git a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/LabelLayoutRendererBase.java b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/LabelLayoutRendererBase.java
index f570e83..f625eb8 100644
--- a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/LabelLayoutRendererBase.java
+++ b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/LabelLayoutRendererBase.java
@@ -26,12 +26,10 @@ import org.apache.myfaces.tobago.component.SupportsLabelLayout;
 import org.apache.myfaces.tobago.context.Markup;
 import org.apache.myfaces.tobago.internal.component.AbstractUIStyle;
 import org.apache.myfaces.tobago.internal.util.HtmlRendererUtils;
-import org.apache.myfaces.tobago.internal.util.JsonUtils;
 import org.apache.myfaces.tobago.internal.util.StringUtils;
 import org.apache.myfaces.tobago.renderkit.LabelWithAccessKey;
 import org.apache.myfaces.tobago.renderkit.css.BootstrapClass;
 import org.apache.myfaces.tobago.renderkit.css.TobagoClass;
-import org.apache.myfaces.tobago.renderkit.html.DataAttributes;
 import org.apache.myfaces.tobago.renderkit.html.HtmlAttributes;
 import org.apache.myfaces.tobago.renderkit.html.HtmlElements;
 import org.apache.myfaces.tobago.util.ComponentUtils;
@@ -136,7 +134,6 @@ public abstract class LabelLayoutRendererBase extends DecodingInputRendererBase
     } else {
       writer.writeIdAttribute(clientId);
     }
-    writer.writeAttribute(DataAttributes.MARKUP, JsonUtils.encode(markup), false);
     writer.writeClassAttribute(
         flex ? TobagoClass.FLEX_LAYOUT : null,
         flex ? BootstrapClass.D_FLEX : null,
@@ -170,7 +167,6 @@ public abstract class LabelLayoutRendererBase extends DecodingInputRendererBase
 
         writer.startElement(HtmlElements.DIV);
         writer.writeIdAttribute(clientId);
-        writer.writeAttribute(DataAttributes.MARKUP, JsonUtils.encode(markup), false);
         writer.writeClassAttribute(
             TobagoClass.LABEL__CONTAINER,
             BootstrapClass.FORM_GROUP,
diff --git a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/LabelRenderer.java b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/LabelRenderer.java
index 5d2d06d..8f04eb8 100644
--- a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/LabelRenderer.java
+++ b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/LabelRenderer.java
@@ -24,12 +24,10 @@ import org.apache.myfaces.tobago.context.Markup;
 import org.apache.myfaces.tobago.internal.component.AbstractUILabel;
 import org.apache.myfaces.tobago.internal.util.AccessKeyLogger;
 import org.apache.myfaces.tobago.internal.util.HtmlRendererUtils;
-import org.apache.myfaces.tobago.internal.util.JsonUtils;
 import org.apache.myfaces.tobago.renderkit.LabelWithAccessKey;
 import org.apache.myfaces.tobago.renderkit.RendererBase;
 import org.apache.myfaces.tobago.renderkit.css.BootstrapClass;
 import org.apache.myfaces.tobago.renderkit.css.TobagoClass;
-import org.apache.myfaces.tobago.renderkit.html.DataAttributes;
 import org.apache.myfaces.tobago.renderkit.html.HtmlAttributes;
 import org.apache.myfaces.tobago.renderkit.html.HtmlElements;
 import org.apache.myfaces.tobago.util.ComponentUtils;
@@ -82,7 +80,6 @@ public class LabelRenderer extends RendererBase implements ComponentSystemEventL
         BootstrapClass.COL_FORM_LABEL,
         label.getCustomClass());
     writer.writeIdAttribute(clientId);
-    writer.writeAttribute(DataAttributes.MARKUP, JsonUtils.encode(markup), false);
     if (forId != null) {
       writer.writeAttribute(HtmlAttributes.FOR, forId, false);
     }
diff --git a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/LinkInsideLinksRenderer.java b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/LinkInsideLinksRenderer.java
index d963e16..7e1d62d 100644
--- a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/LinkInsideLinksRenderer.java
+++ b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/LinkInsideLinksRenderer.java
@@ -20,10 +20,8 @@
 package org.apache.myfaces.tobago.internal.renderkit.renderer;
 
 import org.apache.myfaces.tobago.internal.component.AbstractUICommand;
-import org.apache.myfaces.tobago.internal.util.JsonUtils;
 import org.apache.myfaces.tobago.renderkit.css.BootstrapClass;
 import org.apache.myfaces.tobago.renderkit.css.CssItem;
-import org.apache.myfaces.tobago.renderkit.html.DataAttributes;
 import org.apache.myfaces.tobago.renderkit.html.HtmlElements;
 import org.apache.myfaces.tobago.webapp.TobagoResponseWriter;
 
@@ -42,7 +40,6 @@ public class LinkInsideLinksRenderer extends LinkRenderer {
     writer.startElement(HtmlElements.LI);
     if (parentOfCommands) {
       writer.writeIdAttribute(clientId);
-      writer.writeAttribute(DataAttributes.MARKUP, JsonUtils.encode(command.getMarkup()), false);
     }
 
     writer.writeClassAttribute(
diff --git a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/LinksRenderer.java b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/LinksRenderer.java
index e88690e..9baede8 100644
--- a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/LinksRenderer.java
+++ b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/LinksRenderer.java
@@ -22,13 +22,11 @@ package org.apache.myfaces.tobago.internal.renderkit.renderer;
 import org.apache.myfaces.tobago.component.RendererTypes;
 import org.apache.myfaces.tobago.internal.component.AbstractUILink;
 import org.apache.myfaces.tobago.internal.component.AbstractUILinks;
-import org.apache.myfaces.tobago.internal.util.JsonUtils;
 import org.apache.myfaces.tobago.layout.Orientation;
 import org.apache.myfaces.tobago.renderkit.RendererBase;
 import org.apache.myfaces.tobago.renderkit.css.BootstrapClass;
 import org.apache.myfaces.tobago.renderkit.css.CssItem;
 import org.apache.myfaces.tobago.renderkit.css.TobagoClass;
-import org.apache.myfaces.tobago.renderkit.html.DataAttributes;
 import org.apache.myfaces.tobago.renderkit.html.HtmlElements;
 import org.apache.myfaces.tobago.webapp.TobagoResponseWriter;
 
@@ -45,7 +43,6 @@ public class LinksRenderer extends RendererBase {
     final TobagoResponseWriter writer = getResponseWriter(facesContext);
     writer.startElement(HtmlElements.UL);
     writer.writeIdAttribute(links.getClientId(facesContext));
-    writer.writeAttribute(DataAttributes.MARKUP, JsonUtils.encode(links.getMarkup()), false);
     writer.writeClassAttribute(
         TobagoClass.LINKS,
         getExtraCssItem(),
diff --git a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/MessagesRenderer.java b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/MessagesRenderer.java
index 559cd0e..d9c9727 100644
--- a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/MessagesRenderer.java
+++ b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/MessagesRenderer.java
@@ -79,7 +79,6 @@ public class MessagesRenderer extends RendererBase {
     writer.startElement(HtmlElements.DIV);
     writer.writeIdAttribute(messages.getClientId(facesContext));
     final Markup markup = messages.getMarkup();
-    writer.writeAttribute(DataAttributes.MARKUP, JsonUtils.encode(markup), false);
     writer.writeClassAttribute(
         TobagoClass.MESSAGES,
         TobagoClass.MESSAGES.createMarkup(markup),
diff --git a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/ObjectRenderer.java b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/ObjectRenderer.java
index cf9f1fb..273f40b 100644
--- a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/ObjectRenderer.java
+++ b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/ObjectRenderer.java
@@ -46,7 +46,6 @@ public class ObjectRenderer extends RendererBase {
     writer.writeAttribute(HtmlAttributes.FRAMEBORDER, "0", false);
     final String clientId = object.getClientId(facesContext);
     writer.writeIdAttribute(clientId);
-    writer.writeAttribute(DataAttributes.MARKUP, JsonUtils.encode(markup), false);
     String name = object.getName();
     if (name == null) {
       name = clientId;
diff --git a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/OutRenderer.java b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/OutRenderer.java
index 6eb6304..f6650a1 100644
--- a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/OutRenderer.java
+++ b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/OutRenderer.java
@@ -63,7 +63,6 @@ public class OutRenderer extends MessageLayoutRendererBase {
       writer.startElement(HtmlElements.SPAN);
       if (out.isLabelLayoutSkip()) {
         writer.writeIdAttribute(out.getClientId());
-        writer.writeAttribute(DataAttributes.MARKUP, JsonUtils.encode(markup), false);
       }
       HtmlRendererUtils.writeDataAttributes(facesContext, writer, out);
 
diff --git a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/PageRenderer.java b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/PageRenderer.java
index d8433f2..e586ebf 100644
--- a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/PageRenderer.java
+++ b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/PageRenderer.java
@@ -245,7 +245,6 @@ public class PageRenderer extends RendererBase {
         spread,
         page.getCustomClass());
     writer.writeIdAttribute(clientId);
-    writer.writeAttribute(DataAttributes.MARKUP, JsonUtils.encode(markup), false);
     HtmlRendererUtils.writeDataAttributes(facesContext, writer, page);
 
     writer.writeCommandMapAttribute(JsonUtils.encode(RenderUtils.getBehaviorCommands(facesContext, page)));
diff --git a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/PanelRenderer.java b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/PanelRenderer.java
index f4ad0d5..e20b004 100644
--- a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/PanelRenderer.java
+++ b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/PanelRenderer.java
@@ -51,7 +51,6 @@ public class PanelRenderer extends PanelRendererBase {
 
     writer.startElement(HtmlElements.TOBAGO_PANEL);
     writer.writeIdAttribute(clientId);
-    writer.writeAttribute(DataAttributes.MARKUP, JsonUtils.encode(markup), false);
 
     writer.writeClassAttribute(
         collapsed ? TobagoClass.COLLAPSED : null,
diff --git a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/PopupRenderer.java b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/PopupRenderer.java
index 5075525..a94d679 100644
--- a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/PopupRenderer.java
+++ b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/PopupRenderer.java
@@ -53,7 +53,6 @@ public class PopupRenderer extends PanelRendererBase {
 
     writer.startElement(HtmlElements.DIV);
     writer.writeIdAttribute(clientId);
-    writer.writeAttribute(DataAttributes.MARKUP, JsonUtils.encode(markup), false);
     writer.writeClassAttribute(
         TobagoClass.POPUP,
         TobagoClass.POPUP.createMarkup(markup),
diff --git a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/ProgressRenderer.java b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/ProgressRenderer.java
index 8444eb7..8029e97 100644
--- a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/ProgressRenderer.java
+++ b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/ProgressRenderer.java
@@ -59,7 +59,6 @@ public class ProgressRenderer extends RendererBase {
     writer.startElement(HtmlElements.DIV);
     final String clientId = progress.getClientId(facesContext);
     writer.writeIdAttribute(clientId);
-    writer.writeAttribute(DataAttributes.MARKUP, JsonUtils.encode(markup), false);
     writer.writeClassAttribute(
         TobagoClass.PROGRESS,
         TobagoClass.PROGRESS.createMarkup(markup),
diff --git a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/SectionRenderer.java b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/SectionRenderer.java
index 37cad4e..6adf3be 100644
--- a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/SectionRenderer.java
+++ b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/SectionRenderer.java
@@ -25,11 +25,9 @@ import org.apache.myfaces.tobago.context.Markup;
 import org.apache.myfaces.tobago.internal.component.AbstractUIOut;
 import org.apache.myfaces.tobago.internal.component.AbstractUISection;
 import org.apache.myfaces.tobago.internal.util.HtmlRendererUtils;
-import org.apache.myfaces.tobago.internal.util.JsonUtils;
 import org.apache.myfaces.tobago.internal.util.RenderUtils;
 import org.apache.myfaces.tobago.model.CollapseMode;
 import org.apache.myfaces.tobago.renderkit.css.TobagoClass;
-import org.apache.myfaces.tobago.renderkit.html.DataAttributes;
 import org.apache.myfaces.tobago.renderkit.html.HtmlElements;
 import org.apache.myfaces.tobago.util.ComponentUtils;
 import org.apache.myfaces.tobago.webapp.TobagoResponseWriter;
@@ -51,7 +49,6 @@ public class SectionRenderer extends PanelRendererBase {
 
     writer.startElement(HtmlElements.DIV);
     writer.writeIdAttribute(clientId);
-    writer.writeAttribute(DataAttributes.MARKUP, JsonUtils.encode(markup), false);
     writer.writeClassAttribute(
         TobagoClass.SECTION,
         TobagoClass.SECTION.createMarkup(markup),
diff --git a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/SegmentLayoutRenderer.java b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/SegmentLayoutRenderer.java
index 10f1263..9312459 100644
--- a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/SegmentLayoutRenderer.java
+++ b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/SegmentLayoutRenderer.java
@@ -23,12 +23,10 @@ import org.apache.myfaces.tobago.component.LabelLayout;
 import org.apache.myfaces.tobago.component.SupportsLabelLayout;
 import org.apache.myfaces.tobago.context.Markup;
 import org.apache.myfaces.tobago.internal.component.AbstractUISegmentLayout;
-import org.apache.myfaces.tobago.internal.util.JsonUtils;
 import org.apache.myfaces.tobago.layout.MarginTokens;
 import org.apache.myfaces.tobago.renderkit.RendererBase;
 import org.apache.myfaces.tobago.renderkit.css.BootstrapClass;
 import org.apache.myfaces.tobago.renderkit.css.TobagoClass;
-import org.apache.myfaces.tobago.renderkit.html.DataAttributes;
 import org.apache.myfaces.tobago.renderkit.html.HtmlElements;
 import org.apache.myfaces.tobago.util.ComponentUtils;
 import org.apache.myfaces.tobago.webapp.TobagoResponseWriter;
@@ -57,7 +55,6 @@ public class SegmentLayoutRenderer extends RendererBase {
 
     writer.startElement(HtmlElements.DIV);
     writer.writeIdAttribute(layout.getClientId(facesContext));
-    writer.writeAttribute(DataAttributes.MARKUP, JsonUtils.encode(markup), false);
 //    writer.writeClassAttribute(BootstrapClass.FORM_HORIZONTAL, BootstrapClass.CONTAINER_FLUID);
     writer.writeClassAttribute(
         TobagoClass.SEGMENT_LAYOUT,
diff --git a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/SelectBooleanCheckboxRenderer.java b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/SelectBooleanCheckboxRenderer.java
index 14ffed8..7f542ff 100644
--- a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/SelectBooleanCheckboxRenderer.java
+++ b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/SelectBooleanCheckboxRenderer.java
@@ -29,7 +29,6 @@ import org.apache.myfaces.tobago.renderkit.LabelWithAccessKey;
 import org.apache.myfaces.tobago.renderkit.css.BootstrapClass;
 import org.apache.myfaces.tobago.renderkit.css.CssItem;
 import org.apache.myfaces.tobago.renderkit.css.TobagoClass;
-import org.apache.myfaces.tobago.renderkit.html.DataAttributes;
 import org.apache.myfaces.tobago.renderkit.html.HtmlAttributes;
 import org.apache.myfaces.tobago.renderkit.html.HtmlElements;
 import org.apache.myfaces.tobago.renderkit.html.HtmlInputTypes;
@@ -87,7 +86,6 @@ public class SelectBooleanCheckboxRenderer extends MessageLayoutRendererBase {
     writer.startElement(HtmlElements.DIV);
     if (select.isLabelLayoutSkip()) {
       writer.writeIdAttribute(clientId);
-      writer.writeAttribute(DataAttributes.MARKUP, JsonUtils.encode(markup), false);
     }
 
     writer.writeClassAttribute(
diff --git a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/SelectManyCheckboxRenderer.java b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/SelectManyCheckboxRenderer.java
index c7c4dde..e0b3071 100644
--- a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/SelectManyCheckboxRenderer.java
+++ b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/SelectManyCheckboxRenderer.java
@@ -63,7 +63,6 @@ public class SelectManyCheckboxRenderer extends SelectManyRendererBase {
     writer.startElement(HtmlElements.DIV);
     if (select.isLabelLayoutSkip()) {
       writer.writeIdAttribute(referenceId);
-      writer.writeAttribute(DataAttributes.MARKUP, JsonUtils.encode(markup), false);
     }
 
     writer.writeClassAttribute(
diff --git a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/SelectManyShuttleRenderer.java b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/SelectManyShuttleRenderer.java
index 27d1fdf..210df51 100644
--- a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/SelectManyShuttleRenderer.java
+++ b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/SelectManyShuttleRenderer.java
@@ -54,7 +54,6 @@ public class SelectManyShuttleRenderer extends SelectManyRendererBase {
     writer.startElement(HtmlElements.DIV);
     if (select.isLabelLayoutSkip()) {
       writer.writeIdAttribute(clientId);
-      writer.writeAttribute(DataAttributes.MARKUP, JsonUtils.encode(markup), false);
     }
     writer.writeClassAttribute(
         TobagoClass.SELECT_MANY_SHUTTLE,
diff --git a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/SelectOneChoiceRenderer.java b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/SelectOneChoiceRenderer.java
index 70647ee..1589fc6 100644
--- a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/SelectOneChoiceRenderer.java
+++ b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/SelectOneChoiceRenderer.java
@@ -28,7 +28,6 @@ import org.apache.myfaces.tobago.internal.util.SelectItemUtils;
 import org.apache.myfaces.tobago.renderkit.css.BootstrapClass;
 import org.apache.myfaces.tobago.renderkit.css.CssItem;
 import org.apache.myfaces.tobago.renderkit.css.TobagoClass;
-import org.apache.myfaces.tobago.renderkit.html.DataAttributes;
 import org.apache.myfaces.tobago.renderkit.html.HtmlAttributes;
 import org.apache.myfaces.tobago.renderkit.html.HtmlElements;
 import org.apache.myfaces.tobago.util.ComponentUtils;
@@ -60,7 +59,6 @@ public class SelectOneChoiceRenderer extends SelectOneRendererBase {
 
     writer.startElement(HtmlElements.SELECT);
     writer.writeIdAttribute(fieldId);
-    writer.writeAttribute(DataAttributes.MARKUP, JsonUtils.encode(markup), false);
     writer.writeNameAttribute(clientId);
     HtmlRendererUtils.writeDataAttributes(facesContext, writer, select);
     writer.writeAttribute(HtmlAttributes.DISABLED, disabled);
diff --git a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/SelectOneRadioRenderer.java b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/SelectOneRadioRenderer.java
index ed7ebd3..330f417 100644
--- a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/SelectOneRadioRenderer.java
+++ b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/SelectOneRadioRenderer.java
@@ -32,7 +32,6 @@ import org.apache.myfaces.tobago.internal.util.StringUtils;
 import org.apache.myfaces.tobago.renderkit.css.BootstrapClass;
 import org.apache.myfaces.tobago.renderkit.css.CssItem;
 import org.apache.myfaces.tobago.renderkit.css.TobagoClass;
-import org.apache.myfaces.tobago.renderkit.html.DataAttributes;
 import org.apache.myfaces.tobago.renderkit.html.HtmlAttributes;
 import org.apache.myfaces.tobago.renderkit.html.HtmlElements;
 import org.apache.myfaces.tobago.renderkit.html.HtmlInputTypes;
@@ -65,7 +64,6 @@ public class SelectOneRadioRenderer extends SelectOneRendererBase {
     writer.startElement(HtmlElements.DIV);
     if (select.isLabelLayoutSkip()) {
       writer.writeIdAttribute(referenceId);
-      writer.writeAttribute(DataAttributes.MARKUP, JsonUtils.encode(markup), false);
     }
 
     writer.writeClassAttribute(
diff --git a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/SeparatorInsideCommandRenderer.java b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/SeparatorInsideCommandRenderer.java
index 9a53290..f27e04f 100644
--- a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/SeparatorInsideCommandRenderer.java
+++ b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/SeparatorInsideCommandRenderer.java
@@ -20,10 +20,8 @@
 package org.apache.myfaces.tobago.internal.renderkit.renderer;
 
 import org.apache.myfaces.tobago.internal.component.AbstractUISeparator;
-import org.apache.myfaces.tobago.internal.util.JsonUtils;
 import org.apache.myfaces.tobago.renderkit.css.BootstrapClass;
 import org.apache.myfaces.tobago.renderkit.css.TobagoClass;
-import org.apache.myfaces.tobago.renderkit.html.DataAttributes;
 import org.apache.myfaces.tobago.renderkit.html.HtmlElements;
 import org.apache.myfaces.tobago.webapp.TobagoResponseWriter;
 
@@ -41,7 +39,6 @@ public class SeparatorInsideCommandRenderer extends SeparatorRenderer {
 
     writer.startElement(HtmlElements.DIV);
     writer.writeIdAttribute(clientId);
-    writer.writeAttribute(DataAttributes.MARKUP, JsonUtils.encode(separator.getMarkup()), false);
     writer.writeClassAttribute(
         TobagoClass.SEPARATOR,
         BootstrapClass.DROPDOWN_DIVIDER,
diff --git a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/SeparatorRenderer.java b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/SeparatorRenderer.java
index 234f5ec..7d33281 100644
--- a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/SeparatorRenderer.java
+++ b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/SeparatorRenderer.java
@@ -49,7 +49,6 @@ public class SeparatorRenderer extends RendererBase {
     if (label != null) {
       writer.startElement(HtmlElements.P);
       writer.writeIdAttribute(clientId);
-      writer.writeAttribute(DataAttributes.MARKUP, JsonUtils.encode(markup), false);
       writer.writeClassAttribute(
           TobagoClass.SEPARATOR,
           TobagoClass.SEPARATOR.createMarkup(separator.getMarkup()),
@@ -59,7 +58,6 @@ public class SeparatorRenderer extends RendererBase {
     } else {
       writer.startElement(HtmlElements.HR);
       writer.writeIdAttribute(clientId);
-      writer.writeAttribute(DataAttributes.MARKUP, JsonUtils.encode(markup), false);
       writer.writeClassAttribute(
           TobagoClass.SEPARATOR,
           TobagoClass.SEPARATOR.createMarkup(separator.getMarkup()),
diff --git a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/SheetRenderer.java b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/SheetRenderer.java
index 89088b9..2f973cd 100644
--- a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/SheetRenderer.java
+++ b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/SheetRenderer.java
@@ -265,7 +265,6 @@ public class SheetRenderer extends RendererBase {
     // Outer sheet div
     writer.startElement(HtmlElements.DIV);
     writer.writeIdAttribute(sheetId);
-    writer.writeAttribute(DataAttributes.MARKUP, JsonUtils.encode(markup), false);
     HtmlRendererUtils.writeDataAttributes(facesContext, writer, sheet);
     writer.writeClassAttribute(
         TobagoClass.SHEET,
diff --git a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/SplitLayoutRenderer.java b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/SplitLayoutRenderer.java
index 684a7bc..65ee1cb 100644
--- a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/SplitLayoutRenderer.java
+++ b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/SplitLayoutRenderer.java
@@ -22,13 +22,11 @@ package org.apache.myfaces.tobago.internal.renderkit.renderer;
 import org.apache.myfaces.tobago.apt.annotation.Preliminary;
 import org.apache.myfaces.tobago.context.Markup;
 import org.apache.myfaces.tobago.internal.component.AbstractUISplitLayout;
-import org.apache.myfaces.tobago.internal.util.JsonUtils;
 import org.apache.myfaces.tobago.layout.Orientation;
 import org.apache.myfaces.tobago.renderkit.RendererBase;
 import org.apache.myfaces.tobago.renderkit.css.BootstrapClass;
 import org.apache.myfaces.tobago.renderkit.css.TobagoClass;
 import org.apache.myfaces.tobago.renderkit.html.CustomAttributes;
-import org.apache.myfaces.tobago.renderkit.html.DataAttributes;
 import org.apache.myfaces.tobago.renderkit.html.HtmlAttributes;
 import org.apache.myfaces.tobago.renderkit.html.HtmlElements;
 import org.apache.myfaces.tobago.renderkit.html.HtmlInputTypes;
@@ -76,7 +74,6 @@ public class SplitLayoutRenderer extends RendererBase {
 
     writer.startElement(HtmlElements.TOBAGO_SPLIT_LAYOUT);
     writer.writeIdAttribute(splitLayout.getClientId(facesContext));
-    writer.writeAttribute(DataAttributes.MARKUP, JsonUtils.encode(splitLayout.getMarkup()), false);
     writer.writeClassAttribute(
         BootstrapClass.D_FLEX,
         splitLayout.isHorizontal() ? BootstrapClass.FLEX_ROW : BootstrapClass.FLEX_COLUMN,
diff --git a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/TabGroupRenderer.java b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/TabGroupRenderer.java
index 3cca796..30918b2 100644
--- a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/TabGroupRenderer.java
+++ b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/TabGroupRenderer.java
@@ -151,7 +151,6 @@ public class TabGroupRenderer extends RendererBase implements ComponentSystemEve
 
     writer.startElement(HtmlElements.DIV);
     writer.writeIdAttribute(clientId);
-    writer.writeAttribute(DataAttributes.MARKUP, JsonUtils.encode(markup), false);
     writer.writeClassAttribute(
         TobagoClass.TAB_GROUP,
         TobagoClass.TAB_GROUP.createMarkup(markup),
@@ -252,7 +251,6 @@ public class TabGroupRenderer extends RendererBase implements ComponentSystemEve
 
           writer.startElement(HtmlElements.LI);
           writer.writeIdAttribute(tabId);
-          writer.writeAttribute(DataAttributes.MARKUP, JsonUtils.encode(markup), false);
           writer.writeClassAttribute(
               TobagoClass.TAB,
               TobagoClass.TAB.createMarkup(markup),
diff --git a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/TreeIconRenderer.java b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/TreeIconRenderer.java
index eee42bd..e27b8e7 100644
--- a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/TreeIconRenderer.java
+++ b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/TreeIconRenderer.java
@@ -23,7 +23,6 @@ import org.apache.myfaces.tobago.internal.component.AbstractUIData;
 import org.apache.myfaces.tobago.internal.component.AbstractUITreeIcon;
 import org.apache.myfaces.tobago.internal.component.AbstractUITreeNode;
 import org.apache.myfaces.tobago.internal.util.HtmlRendererUtils;
-import org.apache.myfaces.tobago.internal.util.JsonUtils;
 import org.apache.myfaces.tobago.renderkit.RendererBase;
 import org.apache.myfaces.tobago.renderkit.css.Icons;
 import org.apache.myfaces.tobago.renderkit.css.TobagoClass;
@@ -91,7 +90,6 @@ public class TreeIconRenderer extends RendererBase {
 
     writer.startElement(HtmlElements.SPAN);
     writer.writeIdAttribute(treeIcon.getClientId());
-    writer.writeAttribute(DataAttributes.MARKUP, JsonUtils.encode(treeIcon.getMarkup()), false);
     writer.writeClassAttribute(
         TobagoClass.TREE_NODE__TOGGLE,
         treeIcon.getCustomClass());
diff --git a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/TreeIndentRenderer.java b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/TreeIndentRenderer.java
index 99d6dc0..ce63cae 100644
--- a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/TreeIndentRenderer.java
+++ b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/TreeIndentRenderer.java
@@ -23,7 +23,6 @@ import org.apache.myfaces.tobago.internal.component.AbstractUIData;
 import org.apache.myfaces.tobago.internal.component.AbstractUITreeIndent;
 import org.apache.myfaces.tobago.internal.component.AbstractUITreeNodeBase;
 import org.apache.myfaces.tobago.internal.util.HtmlRendererUtils;
-import org.apache.myfaces.tobago.internal.util.JsonUtils;
 import org.apache.myfaces.tobago.renderkit.RendererBase;
 import org.apache.myfaces.tobago.renderkit.css.BootstrapClass;
 import org.apache.myfaces.tobago.renderkit.css.Icons;
@@ -64,7 +63,6 @@ public class TreeIndentRenderer extends RendererBase {
 
     writer.startElement(HtmlElements.SPAN);
     writer.writeIdAttribute(treeIndent.getClientId(facesContext));
-    writer.writeAttribute(DataAttributes.MARKUP, JsonUtils.encode(treeIndent.getMarkup()), false);
     HtmlRendererUtils.writeDataAttributes(facesContext, writer, treeIndent);
     writer.writeClassAttribute(
         TobagoClass.TREE_NODE__TOGGLE,
diff --git a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/TreeListboxRenderer.java b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/TreeListboxRenderer.java
index c0a7991..8f41dd8 100644
--- a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/TreeListboxRenderer.java
+++ b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/TreeListboxRenderer.java
@@ -69,7 +69,6 @@ public class TreeListboxRenderer extends RendererBase {
 
     writer.startElement(HtmlElements.DIV);
     writer.writeIdAttribute(clientId);
-    writer.writeAttribute(DataAttributes.MARKUP, JsonUtils.encode(markup), false);
     writer.writeClassAttribute(
         TobagoClass.TREE_LISTBOX,
         TobagoClass.TREE_LISTBOX.createMarkup(markup));
diff --git a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/TreeNodeRenderer.java b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/TreeNodeRenderer.java
index 0d03b14..7517df0 100644
--- a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/TreeNodeRenderer.java
+++ b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/TreeNodeRenderer.java
@@ -147,7 +147,6 @@ public class TreeNodeRenderer extends RendererBase {
       //        writer.writeAttribute(HtmlAttributes.value, node.getValue().toString(), true); // XXX converter?
       writer.writeAttribute(HtmlAttributes.VALUE, clientId, true);
       writer.writeIdAttribute(clientId);
-      writer.writeAttribute(DataAttributes.MARKUP, JsonUtils.encode(markup), false);
       writer.writeAttribute(HtmlAttributes.SELECTED, selectedState.isAncestorOfSelected(path));
       writer.writeAttribute(DataAttributes.ROW_INDEX, data.getRowIndex());
     } else {
@@ -155,7 +154,6 @@ public class TreeNodeRenderer extends RendererBase {
 
       // div id
       writer.writeIdAttribute(clientId);
-      writer.writeAttribute(DataAttributes.MARKUP, JsonUtils.encode(markup), false);
 
       // In the case of a sheet, we need not hiding the node, because the whole TR will be hidden.
       final boolean hidden = !dataRendersRowContainer && !visible;
diff --git a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/TreeRenderer.java b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/TreeRenderer.java
index 44818ba..382cfa5 100644
--- a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/TreeRenderer.java
+++ b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/TreeRenderer.java
@@ -97,7 +97,6 @@ public class TreeRenderer extends RendererBase {
 
     writer.startElement(HtmlElements.DIV);
     writer.writeIdAttribute(clientId);
-    writer.writeAttribute(DataAttributes.MARKUP, JsonUtils.encode(markup), false);
     writer.writeClassAttribute(
         TobagoClass.TREE,
         TobagoClass.TREE.createMarkup(markup),
diff --git a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/TreeSelectRenderer.java b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/TreeSelectRenderer.java
index 65e9fe6..1c442cc 100644
--- a/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/TreeSelectRenderer.java
+++ b/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/TreeSelectRenderer.java
@@ -32,7 +32,6 @@ import org.apache.myfaces.tobago.model.Selectable;
 import org.apache.myfaces.tobago.renderkit.RendererBase;
 import org.apache.myfaces.tobago.renderkit.css.BootstrapClass;
 import org.apache.myfaces.tobago.renderkit.css.TobagoClass;
-import org.apache.myfaces.tobago.renderkit.html.DataAttributes;
 import org.apache.myfaces.tobago.renderkit.html.HtmlAttributes;
 import org.apache.myfaces.tobago.renderkit.html.HtmlElements;
 import org.apache.myfaces.tobago.renderkit.html.HtmlInputTypes;
@@ -110,7 +109,6 @@ public class TreeSelectRenderer extends RendererBase {
 
     writer.startElement(HtmlElements.SPAN);
     final Markup markup = treeSelect.getMarkup();
-    writer.writeAttribute(DataAttributes.MARKUP, JsonUtils.encode(markup), false);
     writer.writeClassAttribute(
         TobagoClass.TREE_SELECT,
         TobagoClass.TREE_SELECT.createMarkup(markup),
diff --git a/tobago-core/src/main/java/org/apache/myfaces/tobago/renderkit/html/DataAttributes.java b/tobago-core/src/main/java/org/apache/myfaces/tobago/renderkit/html/DataAttributes.java
index 1c0973f..5a28407 100644
--- a/tobago-core/src/main/java/org/apache/myfaces/tobago/renderkit/html/DataAttributes.java
+++ b/tobago-core/src/main/java/org/apache/myfaces/tobago/renderkit/html/DataAttributes.java
@@ -106,11 +106,6 @@ public enum DataAttributes implements MarkupLanguageAttributes {
   LEVEL("data-tobago-level"),
 
   /**
-   * Defines the markup of the component.
-   */
-  MARKUP("data-tobago-markup"),
-
-  /**
    * Defines a maximum value.
    */
   MAX("data-tobago-max"),
diff --git a/tobago-example/tobago-example-demo/src/main/webapp/content/40-test/4800-labelLayout/100-id-markup/Id_Markup.test.js b/tobago-example/tobago-example-demo/src/main/webapp/content/40-test/4800-labelLayout/100-id-markup/Id_Markup.test.js
index 0fb52a3..d317001 100644
--- a/tobago-example/tobago-example-demo/src/main/webapp/content/40-test/4800-labelLayout/100-id-markup/Id_Markup.test.js
+++ b/tobago-example/tobago-example-demo/src/main/webapp/content/40-test/4800-labelLayout/100-id-markup/Id_Markup.test.js
@@ -29,8 +29,7 @@ QUnit.test("No label set", function (assert) {
   assert.equal(label, null);
   assert.equal(input.id, "page:mainForm:inNoLabel::field");
   assert.equal(input.name, "page:mainForm:inNoLabel");
-
-  assert.equal(JSON.parse(rootDiv.dataset.tobagoMarkup)[0], "testmarkup");
+  assert.ok(input.classList.contains("tobago-in-markup-testmarkup"));
 });
 
 QUnit.test("labelLayout=none", function (assert) {
@@ -45,8 +44,7 @@ QUnit.test("labelLayout=none", function (assert) {
   assert.equal(label, null);
   assert.equal(input.id, "page:mainForm:inNone::field");
   assert.equal(input.name, "page:mainForm:inNone");
-
-  assert.equal(JSON.parse(rootDiv.dataset.tobagoMarkup)[0], "testmarkup");
+  assert.ok(input.classList.contains("tobago-in-markup-testmarkup"));
 });
 
 QUnit.test("labelLayout=skip", function (assert) {
@@ -58,8 +56,7 @@ QUnit.test("labelLayout=skip", function (assert) {
 
   assert.equal(label, null);
   assert.equal(rootInput.id, "page:mainForm:inSkip");
-
-  assert.equal(JSON.parse(rootInput.dataset.tobagoMarkup)[0], "testmarkup");
+  assert.ok(rootInput.classList.contains("tobago-in-markup-testmarkup"));
 });
 
 QUnit.test("labelLayout=top", function (assert) {
@@ -74,8 +71,7 @@ QUnit.test("labelLayout=top", function (assert) {
   assert.equal(label.getAttribute('for'), "page:mainForm:inTop::field");
   assert.equal(input.id, "page:mainForm:inTop::field");
   assert.equal(input.name, "page:mainForm:inTop");
-
-  assert.equal(JSON.parse(rootDiv.dataset.tobagoMarkup)[0], "testmarkup");
+  assert.ok(input.classList.contains("tobago-in-markup-testmarkup"));
 });
 
 QUnit.test("labelLayout=flowLeft", function (assert) {
@@ -90,8 +86,7 @@ QUnit.test("labelLayout=flowLeft", function (assert) {
   assert.equal(label.getAttribute('for'), "page:mainForm:inFlowLeft::field");
   assert.equal(input.id, "page:mainForm:inFlowLeft::field");
   assert.equal(input.name, "page:mainForm:inFlowLeft");
-
-  assert.equal(JSON.parse(rootDiv.dataset.tobagoMarkup)[0], "testmarkup");
+  assert.ok(input.classList.contains("tobago-in-markup-testmarkup"));
 });
 
 QUnit.test("labelLayout=flowRight", function (assert) {
@@ -106,8 +101,7 @@ QUnit.test("labelLayout=flowRight", function (assert) {
   assert.equal(label.getAttribute('for'), "page:mainForm:inFlowRight::field");
   assert.equal(input.id, "page:mainForm:inFlowRight::field");
   assert.equal(input.name, "page:mainForm:inFlowRight");
-
-  assert.equal(JSON.parse(rootDiv.dataset.tobagoMarkup)[0], "testmarkup");
+  assert.ok(input.classList.contains("tobago-in-markup-testmarkup"));
 });
 
 QUnit.test("labelLayout=flexLeft", function (assert) {
@@ -122,8 +116,7 @@ QUnit.test("labelLayout=flexLeft", function (assert) {
   assert.equal(label.getAttribute('for'), "page:mainForm:inFlexLeft::field");
   assert.equal(input.id, "page:mainForm:inFlexLeft::field");
   assert.equal(input.name, "page:mainForm:inFlexLeft");
-
-  assert.equal(JSON.parse(rootDiv.dataset.tobagoMarkup)[0], "testmarkup");
+  assert.ok(input.classList.contains("tobago-in-markup-testmarkup"));
 });
 
 QUnit.test("labelLayout=flexRight", function (assert) {
@@ -138,12 +131,11 @@ QUnit.test("labelLayout=flexRight", function (assert) {
   assert.equal(label.getAttribute('for'), "page:mainForm:inFlexRight::field");
   assert.equal(input.id, "page:mainForm:inFlexRight::field");
   assert.equal(input.name, "page:mainForm:inFlexRight");
-
-  assert.equal(JSON.parse(rootDiv.dataset.tobagoMarkup)[0], "testmarkup");
+  assert.ok(input.classList.contains("tobago-in-markup-testmarkup"));
 });
 
 QUnit.test("labelLayout=segmentLeft", function (assert) {
-  assert.expect(7);
+  assert.expect(6);
 
   let sectionFn = testFrameQuerySelectorFn("#page\\:mainForm\\:sectionSegmentLeft");
   let segmentLayout = sectionFn().querySelector(".tobago-section-content > div");
@@ -157,13 +149,11 @@ QUnit.test("labelLayout=segmentLeft", function (assert) {
   assert.equal(inputSegment.id, "page:mainForm:inSegmentLeft");
   assert.equal(input.id, "page:mainForm:inSegmentLeft::field");
   assert.equal(input.name, "page:mainForm:inSegmentLeft");
-
-  assert.equal(JSON.parse(labelSegment.dataset.tobagoMarkup)[0], "testmarkup");
-  assert.equal(JSON.parse(inputSegment.dataset.tobagoMarkup)[0], "testmarkup");
+  assert.ok(input.classList.contains("tobago-in-markup-testmarkup"));
 });
 
 QUnit.test("labelLayout=segmentRight", function (assert) {
-  assert.expect(7);
+  assert.expect(6);
 
   let sectionFn = testFrameQuerySelectorFn("#page\\:mainForm\\:sectionSegmentRight");
   let segmentLayout = sectionFn().querySelector(".tobago-section-content > div");
@@ -177,7 +167,5 @@ QUnit.test("labelLayout=segmentRight", function (assert) {
   assert.equal(inputSegment.id, "page:mainForm:inSegmentRight");
   assert.equal(input.id, "page:mainForm:inSegmentRight::field");
   assert.equal(input.name, "page:mainForm:inSegmentRight");
-
-  assert.equal(JSON.parse(labelSegment.dataset.tobagoMarkup)[0], "testmarkup");
-  assert.equal(JSON.parse(inputSegment.dataset.tobagoMarkup)[0], "testmarkup");
+  assert.ok(input.classList.contains("tobago-in-markup-testmarkup"));
 });
diff --git a/tobago-theme/tobago-theme-standard/src/main/npm/ts/tobago-tab.ts b/tobago-theme/tobago-theme-standard/src/main/npm/ts/tobago-tab.ts
index cb6518e..a422bae 100644
--- a/tobago-theme/tobago-theme-standard/src/main/npm/ts/tobago-tab.ts
+++ b/tobago-theme/tobago-theme-standard/src/main/npm/ts/tobago-tab.ts
@@ -45,19 +45,10 @@ class TabGroup {
               const activeNavLink: HTMLLinkElement = TabGroup.getActiveNavLink(tabGroup);
               const activeTabContent: HTMLDivElement = TabGroup.getActiveTabContent(tabGroup);
 
-              if (activeTab.dataset.tobagoMarkup !== undefined) {
-                const markups: Set<string> = new Set(JSON.parse(activeTab.dataset.tobagoMarkup));
-                markups.delete(markupString);
-                activeTab.dataset.tobagoMarkup = JSON.stringify(Array.from(markups));
-              }
               activeTab.classList.remove(markupCssClass);
               activeNavLink.classList.remove("active");
               activeTabContent.classList.remove("active");
 
-              const markup: string = tab.dataset.tobagoMarkup;
-              const markups: Set<string> = markup ? new Set(JSON.parse(markup)) : new Set();
-              markups.add(markupString);
-              tab.dataset.tobagoMarkup = JSON.stringify(Array.from(markups));
               tab.classList.add(markupCssClass);
               navLink.classList.add("active");
               TabGroup.getTabContent(tabGroup, tabGroupIndex).classList.add("active");