diff --git a/enterprise-adapter/src/main/java/de/ozgcloud/eingang/enterprise/entry/EntryData.java b/enterprise-adapter/src/main/java/de/ozgcloud/eingang/enterprise/entry/EntryData.java
index 70268f833726fb7fa913872bfbb30d7436341da4..fd0a4ed23de2012b532a795ba688ada1262ecee3 100644
--- a/enterprise-adapter/src/main/java/de/ozgcloud/eingang/enterprise/entry/EntryData.java
+++ b/enterprise-adapter/src/main/java/de/ozgcloud/eingang/enterprise/entry/EntryData.java
@@ -1,5 +1,7 @@
 package de.ozgcloud.eingang.enterprise.entry;
 
+import java.util.Map;
+
 import com.fasterxml.jackson.annotation.JsonProperty;
 
 import lombok.Builder;
@@ -12,6 +14,7 @@ import lombok.extern.jackson.Jacksonized;
 public class EntryData {
 
 	private ControlData control;
+	private Map<String, EntryFormDataItem> formData;
 
 	@Builder
 	@Getter
@@ -32,4 +35,11 @@ public class EntryData {
 			private String address;
 		}
 	}
+
+	@Builder
+	@Getter
+	@Jacksonized
+	public static class EntryFormData {
+
+	}
 }
diff --git a/enterprise-adapter/src/test/java/de/ozgcloud/eingang/enterprise/entry/EntryDataMapper.java b/enterprise-adapter/src/main/java/de/ozgcloud/eingang/enterprise/entry/EntryDataMapper.java
similarity index 100%
rename from enterprise-adapter/src/test/java/de/ozgcloud/eingang/enterprise/entry/EntryDataMapper.java
rename to enterprise-adapter/src/main/java/de/ozgcloud/eingang/enterprise/entry/EntryDataMapper.java
diff --git a/enterprise-adapter/src/main/java/de/ozgcloud/eingang/enterprise/entry/EntryFormDataField.java b/enterprise-adapter/src/main/java/de/ozgcloud/eingang/enterprise/entry/EntryFormDataField.java
new file mode 100644
index 0000000000000000000000000000000000000000..0a748a409ec22fb8a4711365ea5d5472be72aec1
--- /dev/null
+++ b/enterprise-adapter/src/main/java/de/ozgcloud/eingang/enterprise/entry/EntryFormDataField.java
@@ -0,0 +1,30 @@
+package de.ozgcloud.eingang.enterprise.entry;
+
+import java.time.LocalDate;
+
+import lombok.Builder;
+import lombok.Getter;
+import lombok.ToString;
+import lombok.extern.jackson.Jacksonized;
+
+@Builder
+@Getter
+@Jacksonized
+@ToString(onlyExplicitlyIncluded = true)
+public class EntryFormDataField implements EntryFormDataItem {
+
+	private String name;
+	@ToString.Include
+	private String label;
+
+	private String stringValue;
+	private Boolean booleanValue;
+	private Number numberValue;
+	private LocalDate dateValue;
+
+	@Override
+	public boolean isFormField() {
+		return true;
+	}
+
+}
diff --git a/enterprise-adapter/src/main/java/de/ozgcloud/eingang/enterprise/entry/EntryFormDataItem.java b/enterprise-adapter/src/main/java/de/ozgcloud/eingang/enterprise/entry/EntryFormDataItem.java
new file mode 100644
index 0000000000000000000000000000000000000000..c2c318fd80dfa8319fa565c56b7a5ee8a0343bf9
--- /dev/null
+++ b/enterprise-adapter/src/main/java/de/ozgcloud/eingang/enterprise/entry/EntryFormDataItem.java
@@ -0,0 +1,21 @@
+package de.ozgcloud.eingang.enterprise.entry;
+
+import com.fasterxml.jackson.annotation.JsonSubTypes;
+import com.fasterxml.jackson.annotation.JsonSubTypes.Type;
+import com.fasterxml.jackson.annotation.JsonTypeInfo;
+import com.fasterxml.jackson.annotation.JsonTypeInfo.Id;
+
+@JsonTypeInfo(use = Id.DEDUCTION)
+@JsonSubTypes({ @Type(EntryFormDataField.class), @Type(EntryFormDataSubForm.class) })
+public interface EntryFormDataItem {
+	String getName();
+	String getLabel();
+
+	default boolean isSubForm() {
+		return false;
+	}
+
+	default boolean isFormField() {
+		return false;
+	}
+}
diff --git a/enterprise-adapter/src/main/java/de/ozgcloud/eingang/enterprise/entry/EntryFormDataSubForm.java b/enterprise-adapter/src/main/java/de/ozgcloud/eingang/enterprise/entry/EntryFormDataSubForm.java
new file mode 100644
index 0000000000000000000000000000000000000000..650e6221b28bc1c530ee78607a2750aea8eb7ff5
--- /dev/null
+++ b/enterprise-adapter/src/main/java/de/ozgcloud/eingang/enterprise/entry/EntryFormDataSubForm.java
@@ -0,0 +1,28 @@
+package de.ozgcloud.eingang.enterprise.entry;
+
+import java.util.Map;
+
+import lombok.Builder;
+import lombok.Getter;
+import lombok.Singular;
+import lombok.ToString;
+import lombok.extern.jackson.Jacksonized;
+
+@Builder
+@Getter
+@Jacksonized
+@ToString(onlyExplicitlyIncluded = true)
+public class EntryFormDataSubForm implements EntryFormDataItem {
+
+	private String name;
+	@ToString.Include
+	private String label;
+
+	@Singular
+	private Map<String, EntryFormDataItem> formItems;
+
+	@Override
+	public boolean isSubForm() {
+		return true;
+	}
+}
diff --git a/enterprise-adapter/src/test/java/de/ozgcloud/eingang/enterprise/entry/ReadingRequestException.java b/enterprise-adapter/src/main/java/de/ozgcloud/eingang/enterprise/entry/ReadingRequestException.java
similarity index 100%
rename from enterprise-adapter/src/test/java/de/ozgcloud/eingang/enterprise/entry/ReadingRequestException.java
rename to enterprise-adapter/src/main/java/de/ozgcloud/eingang/enterprise/entry/ReadingRequestException.java
diff --git a/enterprise-adapter/src/test/java/de/ozgcloud/eingang/enterprise/entry/EntryDataTestFactory.java b/enterprise-adapter/src/test/java/de/ozgcloud/eingang/enterprise/entry/EntryDataTestFactory.java
index ef11b273345c61a2713add9a7b7d7a9664aee8f7..855fa290a29a92945a32767c9f90452b907a9e4c 100644
--- a/enterprise-adapter/src/test/java/de/ozgcloud/eingang/enterprise/entry/EntryDataTestFactory.java
+++ b/enterprise-adapter/src/test/java/de/ozgcloud/eingang/enterprise/entry/EntryDataTestFactory.java
@@ -8,6 +8,7 @@ public class EntryDataTestFactory {
 
 	public static EntryData.EntryDataBuilder createBuilder() {
 		return EntryData.builder()
-				.control(ControlDataTestFactory.create());
+				.control(ControlDataTestFactory.create())
+				.formData(EntryFormDataTestFactory.create());
 	}
 }
diff --git a/enterprise-adapter/src/test/java/de/ozgcloud/eingang/enterprise/entry/EntryFormDataTestFactory.java b/enterprise-adapter/src/test/java/de/ozgcloud/eingang/enterprise/entry/EntryFormDataTestFactory.java
new file mode 100644
index 0000000000000000000000000000000000000000..301c6387585739c4fb61fa88b5da0e9f9fa90424
--- /dev/null
+++ b/enterprise-adapter/src/test/java/de/ozgcloud/eingang/enterprise/entry/EntryFormDataTestFactory.java
@@ -0,0 +1,22 @@
+package de.ozgcloud.eingang.enterprise.entry;
+
+import java.util.Map;
+
+public class EntryFormDataTestFactory {
+
+	public static Map<String, EntryFormDataItem> create() {
+		return Map.of(
+				"antragsteller", EntryFormDataSubForm.builder().label("Antragstellende Person")
+						.formItem("person_oder_firma", EntryFormDataField.builder().label("Anrede").stringValue("Herr").build())
+						.formItem("vorname", EntryFormDataField.builder().label("Vorname").stringValue("Theo").build())
+						.formItem("nachname", EntryFormDataField.builder().label("Nachname").stringValue("Test").build())
+						.build());
+	}
+
+	public static EntryFormDataSubForm.EntryFormDataSubFormBuilder createBuilder() {
+		return EntryFormDataSubForm.builder()
+				.name("antragsteller")
+				.formItem("person_oder_firma", EntryFormDataField.builder().label("Anrede").stringValue("Herr").build());
+	}
+
+}
diff --git a/enterprise-adapter/src/test/resources/request/simple.json b/enterprise-adapter/src/test/resources/request/simple.json
index aae35e5dff4c81bf23edd6c0c961bcd7bdd59742..bd399f1cbee2c2fa7a4f2e677b19540199d8924b 100644
--- a/enterprise-adapter/src/test/resources/request/simple.json
+++ b/enterprise-adapter/src/test/resources/request/simple.json
@@ -12,21 +12,23 @@
 		"formId": "KFAS_LIVE_KI_10_Haltverbot_befristet",
 		"name": "Anmeldung zur Einrichtung einer zeitlich befristeten Haltverbotszone gem. § 45 Abs. 1 Straßenverkehrsordnung (StVO)"
 	},
-	 "antragsteller": {
-            "label": "Antragstellende Person",
-            "value": {
-                "person_oder_firma": {
-                    "label": "Anrede",
-                    "stringValue": "Herr"
-                },
-                "vorname": {
-                    "label": "Vorname",
-                    "stringValue": "Theo"
-                },
-                "nachname": {
-                    "label": "Nachname",
-                    "stringValue": "Test"
-                }
+	"formData": {
+		"antragsteller": {
+			"label": "Antragstellende Person",
+			"formItems": {
+				"person_oder_firma": {
+					"label": "Anrede",
+					"stringValue": "Herr"
+				},
+				"vorname": {
+					"label": "Vorname",
+					"stringValue": "Theo"
+				},
+				"nachname": {
+					"label": "Nachname",
+					"stringValue": "Test"
+				}
 			}
-        }
+		}
+	}
 }
\ No newline at end of file