diff --git a/api-lib-core/src/main/java/de/ozgcloud/apilib/vorgang/OzgCloudVorgangQuery.java b/api-lib-core/src/main/java/de/ozgcloud/apilib/vorgang/OzgCloudVorgangQuery.java
index f4c5552ea7a73593de325fb95a1798c9aa9f6dfe..56135494ebe6adc28d6a6296b5dcb6f1fa6e3eb5 100644
--- a/api-lib-core/src/main/java/de/ozgcloud/apilib/vorgang/OzgCloudVorgangQuery.java
+++ b/api-lib-core/src/main/java/de/ozgcloud/apilib/vorgang/OzgCloudVorgangQuery.java
@@ -31,7 +31,11 @@ public class OzgCloudVorgangQuery {
 		private final Query nestedQuery;
 	}
 
-	public static record FormIdentification(String formId, String formEngineName) {
+	@Builder
+	@Getter
+	public static class FormIdentification {
+		private String formId;
+		private String formEngineName;
 	}
 
 	public enum LogicalOperator {
diff --git a/api-lib-core/src/main/java/de/ozgcloud/apilib/vorgang/grpc/OzgCloudVorgangQueryMapper.java b/api-lib-core/src/main/java/de/ozgcloud/apilib/vorgang/grpc/OzgCloudVorgangQueryMapper.java
index 1d40d47706cb193303cc429ff4202c3c444b29fe..96a696ee9ce7847154863b1c39043a4d5a733440 100644
--- a/api-lib-core/src/main/java/de/ozgcloud/apilib/vorgang/grpc/OzgCloudVorgangQueryMapper.java
+++ b/api-lib-core/src/main/java/de/ozgcloud/apilib/vorgang/grpc/OzgCloudVorgangQueryMapper.java
@@ -1,7 +1,9 @@
 package de.ozgcloud.apilib.vorgang.grpc;
 
-import java.util.ArrayList;
-import java.util.Objects;
+import java.util.Collections;
+import java.util.HashSet;
+import java.util.Optional;
+import java.util.Set;
 
 import org.mapstruct.CollectionMappingStrategy;
 import org.mapstruct.Mapper;
@@ -31,11 +33,11 @@ public interface OzgCloudVorgangQueryMapper {
 		var queryBuilder = mapPropertiesToQuery(ozgCloudVorgangQuery);
 
 		if (queryBuilder.getExpressionsList().isEmpty()) {
-			return ozgCloudVorgangQuery.getQuery().map(this::mapQuery)
+			return ozgCloudVorgangQuery.getQuery().map(this::toQuery)
 					.orElseGet(GrpcQuery::getDefaultInstance);
 		}
 
-		ozgCloudVorgangQuery.getQuery().map(this::mapQuery).ifPresent(queryBuilder::setNestedQuery);
+		ozgCloudVorgangQuery.getQuery().map(this::toQuery).ifPresent(queryBuilder::setNestedQuery);
 		return queryBuilder.build();
 	}
 
@@ -69,29 +71,29 @@ public interface OzgCloudVorgangQueryMapper {
 				.build();
 	}
 
-	default Iterable<GrpcVorgangQueryExpression> toFormExpressions(FormIdentification formIdentification) {
-		var expressions = new ArrayList<GrpcVorgangQueryExpression>(2);
-		if (Objects.nonNull(formIdentification.formEngineName())) {
-			addFormEngineNameExpression(formIdentification, expressions);
-		}
-		if (Objects.nonNull(formIdentification.formId())) {
-			addFormIdExpression(formIdentification, expressions);
-		}
-		return expressions;
+	default Set<GrpcVorgangQueryExpression> toFormExpressions(FormIdentification formIdentification) {
+		var expressions = new HashSet<GrpcVorgangQueryExpression>(2);
+		Optional.ofNullable(formIdentification.getFormEngineName())
+				.map(this::toFormEngineNameExpression)
+				.ifPresent(expressions::add);
+		Optional.ofNullable(formIdentification.getFormId())
+				.map(this::toFormIdExpression)
+				.ifPresent(expressions::add);
+		return Collections.unmodifiableSet(expressions);
 	}
 
-	private void addFormEngineNameExpression(FormIdentification formIdentification, ArrayList<GrpcVorgangQueryExpression> expressions) {
-		expressions.add(getEqualExpressionBuilder()
+	private GrpcVorgangQueryExpression toFormEngineNameExpression(String formEngineName) {
+		return getEqualExpressionBuilder()
 				.setPath(FORM_ENGINE_NAME_PATH)
-				.setOperandStringValue(formIdentification.formEngineName())
-				.build());
+				.setOperandStringValue(formEngineName)
+				.build();
 	}
 
-	private void addFormIdExpression(FormIdentification formIdentification, ArrayList<GrpcVorgangQueryExpression> expressions) {
-		expressions.add(getEqualExpressionBuilder()
+	private GrpcVorgangQueryExpression toFormIdExpression(String formId) {
+		return getEqualExpressionBuilder()
 				.setPath(FORM_ID_PATH)
-				.setOperandStringValue(formIdentification.formId())
-				.build());
+				.setOperandStringValue(formId)
+				.build();
 	}
 
 	private Builder getEqualExpressionBuilder() {
@@ -110,7 +112,9 @@ public interface OzgCloudVorgangQueryMapper {
 	@Mapping(target = "allFields", ignore = true)
 	@Mapping(target = "expressionsBuilderList", ignore = true)
 	@Mapping(target = "expressionsOrBuilderList", ignore = true)
+	@Mapping(target = "nestedQueryOrBuilder", ignore = true)
+	@Mapping(target = "defaultInstanceForType", ignore = true)
 
 	@Mapping(target = "expressionsList", source = "expressions")
-	GrpcQuery mapQuery(Query query);
+	GrpcQuery toQuery(Query query);
 }
diff --git a/api-lib-core/src/test/java/de/ozgcloud/apilib/vorgang/FormIdentificationTestFactory.java b/api-lib-core/src/test/java/de/ozgcloud/apilib/vorgang/FormIdentificationTestFactory.java
index be99e60e68dfeba60afa4503360125ce62592316..d0ae5abb07e28650a02eccb491b703f7903d8758 100644
--- a/api-lib-core/src/test/java/de/ozgcloud/apilib/vorgang/FormIdentificationTestFactory.java
+++ b/api-lib-core/src/test/java/de/ozgcloud/apilib/vorgang/FormIdentificationTestFactory.java
@@ -5,6 +5,7 @@ import java.util.UUID;
 import com.thedeanda.lorem.LoremIpsum;
 
 import de.ozgcloud.apilib.vorgang.OzgCloudVorgangQuery.FormIdentification;
+import de.ozgcloud.apilib.vorgang.OzgCloudVorgangQuery.FormIdentification.FormIdentificationBuilder;
 
 public class FormIdentificationTestFactory {
 
@@ -12,7 +13,13 @@ public class FormIdentificationTestFactory {
 	public static final String FORM_ID = UUID.randomUUID().toString();
 
 	public static FormIdentification create() {
-		return new FormIdentification(FORM_ID, FORM_ENGINE_NAME);
+		return createBuilder().build();
+	}
+
+	public static FormIdentificationBuilder createBuilder() {
+		return FormIdentification.builder()
+				.formId(FORM_ID)
+				.formEngineName(FORM_ENGINE_NAME);
 	}
 
 }
diff --git a/api-lib-core/src/test/java/de/ozgcloud/apilib/vorgang/grpc/OzgCloudVorgangQueryMapperTest.java b/api-lib-core/src/test/java/de/ozgcloud/apilib/vorgang/grpc/OzgCloudVorgangQueryMapperTest.java
index f639b98071d522da640f7ccaf2b6f92e657e4eb7..bcdc22ee4286ea121954f3772080085a2d38279c 100644
--- a/api-lib-core/src/test/java/de/ozgcloud/apilib/vorgang/grpc/OzgCloudVorgangQueryMapperTest.java
+++ b/api-lib-core/src/test/java/de/ozgcloud/apilib/vorgang/grpc/OzgCloudVorgangQueryMapperTest.java
@@ -1,11 +1,12 @@
 package de.ozgcloud.apilib.vorgang.grpc;
 
 import static org.assertj.core.api.Assertions.*;
+import static org.junit.jupiter.api.Assertions.*;
 import static org.mockito.ArgumentMatchers.*;
 import static org.mockito.Mockito.*;
 
-import java.util.List;
 import java.util.Optional;
+import java.util.Set;
 
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Nested;
@@ -15,12 +16,10 @@ import org.mockito.Spy;
 
 import de.ozgcloud.apilib.vorgang.FormIdentificationTestFactory;
 import de.ozgcloud.apilib.vorgang.OzgCloudVorgangQuery;
-import de.ozgcloud.apilib.vorgang.OzgCloudVorgangQuery.FormIdentification;
 import de.ozgcloud.apilib.vorgang.OzgCloudVorgangQuery.Query;
 import de.ozgcloud.apilib.vorgang.OzgCloudVorgangQueryTestFactory;
 import de.ozgcloud.apilib.vorgang.QueryTestFactory;
 import de.ozgcloud.vorgang.common.GrpcQueryOperator;
-import de.ozgcloud.vorgang.vorgang.GrpcLogicalOperator;
 import de.ozgcloud.vorgang.vorgang.GrpcQuery;
 import de.ozgcloud.vorgang.vorgang.GrpcVorgangQueryExpression;
 
@@ -30,7 +29,7 @@ class OzgCloudVorgangQueryMapperTest {
 	private final OzgCloudVorgangQueryMapper mapper = Mappers.getMapper(OzgCloudVorgangQueryMapper.class);
 
 	@Nested
-	class ToGrpc {
+	class TestToGrpc {
 
 		@Test
 		void shouldCallMapProperetiesToQuery() {
@@ -79,13 +78,13 @@ class OzgCloudVorgangQueryMapperTest {
 			void shouldMapQueryToGrpcQuery() {
 				mapper.toGrpc(query);
 
-				verify(mapper).mapQuery(OzgCloudVorgangQueryTestFactory.QUERY);
+				verify(mapper).toQuery(OzgCloudVorgangQueryTestFactory.QUERY);
 			}
 
 			@Test
 			void shouldReturnMappedQuery() {
 				var mappedQuery = GrpcQueryTestFactory.create();
-				doReturn(mappedQuery).when(mapper).mapQuery(OzgCloudVorgangQueryTestFactory.QUERY);
+				doReturn(mappedQuery).when(mapper).toQuery(OzgCloudVorgangQueryTestFactory.QUERY);
 
 				var grpcQuery = mapper.toGrpc(query);
 
@@ -109,7 +108,7 @@ class OzgCloudVorgangQueryMapperTest {
 			void shouldCallMapQuery() {
 				mapper.toGrpc(query);
 
-				verify(mapper).mapQuery(OzgCloudVorgangQueryTestFactory.QUERY);
+				verify(mapper).toQuery(OzgCloudVorgangQueryTestFactory.QUERY);
 			}
 
 			@Test
@@ -118,7 +117,7 @@ class OzgCloudVorgangQueryMapperTest {
 				var expectedQuery = GrpcQueryTestFactory.createBuilder()
 						.setNestedQuery(nestedQuery)
 						.build();
-				doReturn(nestedQuery).when(mapper).mapQuery(OzgCloudVorgangQueryTestFactory.QUERY);
+				doReturn(nestedQuery).when(mapper).toQuery(OzgCloudVorgangQueryTestFactory.QUERY);
 
 				var grpcQuery = mapper.toGrpc(query);
 
@@ -144,232 +143,142 @@ class OzgCloudVorgangQueryMapperTest {
 	@Nested
 	class TestMapPropertiesToQuery {
 
-		private final GrpcVorgangQueryExpression formEngineNameExpression = GrpcVorgangQueryExpressionTestFactory.createBuilder()
-				.setPath(OzgCloudVorgangQueryMapper.FORM_ENGINE_NAME_PATH)
-				.setOperator(GrpcQueryOperator.EQUAL)
-				.setOperandStringValue(FormIdentificationTestFactory.FORM_ENGINE_NAME)
-				.build();
-
-		private final List<GrpcVorgangQueryExpression> formExpressions = List.of(formEngineNameExpression);
-
-		private final GrpcVorgangQueryExpression aktenzeichenExpression = GrpcVorgangQueryExpressionTestFactory.createBuilder()
-				.setPath(OzgCloudVorgangQueryMapper.AKTENZEICHEN_PATH)
-				.setOperator(GrpcQueryOperator.EQUAL)
-				.setOperandStringValue(OzgCloudVorgangQueryTestFactory.AKTENZEICHEN)
-				.build();
-
-		private final GrpcVorgangQueryExpression statusExpression = GrpcVorgangQueryExpressionTestFactory.createBuilder()
-				.setPath(OzgCloudVorgangQueryMapper.STATUS_PATH)
-				.setOperator(GrpcQueryOperator.EQUAL)
-				.setOperandStringValue(OzgCloudVorgangQueryTestFactory.STATUS)
-				.build();
-
-		private final GrpcVorgangQueryExpression organisationsEinheitIdExpression = GrpcVorgangQueryExpressionTestFactory.createBuilder()
-				.setPath(OzgCloudVorgangQueryMapper.ORGANISATIONS_EINHEIT_ID_PATH)
-				.setOperator(GrpcQueryOperator.EQUAL)
-				.setOperandStringValue(OzgCloudVorgangQueryTestFactory.ORGANISATIONS_EINHEIT_ID)
-				.build();
-
 		@Nested
-		class OnAllPropertiesPresent {
+		class TestForAktenzeichen {
 
-			private final OzgCloudVorgangQuery query = OzgCloudVorgangQueryTestFactory.create();
-
-			@BeforeEach
-			void mock() {
-				doReturn(aktenzeichenExpression).when(mapper).toAktenzeichenExpression(OzgCloudVorgangQueryTestFactory.AKTENZEICHEN);
-				doReturn(organisationsEinheitIdExpression).when(mapper)
-						.toOrganisationsEinheitIdExpression(OzgCloudVorgangQueryTestFactory.ORGANISATIONS_EINHEIT_ID);
-				doReturn(statusExpression).when(mapper).toStatusExpression(OzgCloudVorgangQueryTestFactory.STATUS);
-				doReturn(formExpressions).when(mapper).toFormExpressions(OzgCloudVorgangQueryTestFactory.FORM);
-			}
+			private final GrpcVorgangQueryExpression aktenzeichenExpression = GrpcVorgangQueryExpressionTestFactory.createBuilder()
+					.setPath(OzgCloudVorgangQueryMapper.AKTENZEICHEN_PATH)
+					.setOperator(GrpcQueryOperator.EQUAL)
+					.setOperandStringValue(OzgCloudVorgangQueryTestFactory.AKTENZEICHEN)
+					.build();
 
 			@Test
 			void shouldCallToAktenzeichenExpression() {
-				callMapPropertiesToQuery();
+				mapper.mapPropertiesToQuery(OzgCloudVorgangQueryTestFactory.create());
 
 				verify(mapper).toAktenzeichenExpression(OzgCloudVorgangQueryTestFactory.AKTENZEICHEN);
 			}
 
 			@Test
-			void shouldCallToOrganisationsEinheitIdExpression() {
-				callMapPropertiesToQuery();
-
-				verify(mapper).toOrganisationsEinheitIdExpression(OzgCloudVorgangQueryTestFactory.ORGANISATIONS_EINHEIT_ID);
-			}
-
-			@Test
-			void shouldCallToStatusExpression() {
-				callMapPropertiesToQuery();
-
-				verify(mapper).toStatusExpression(OzgCloudVorgangQueryTestFactory.STATUS);
-			}
-
-			@Test
-			void shouldCallToFormExpression() {
-				callMapPropertiesToQuery();
-
-				verify(mapper).toFormExpressions(OzgCloudVorgangQueryTestFactory.FORM);
-			}
+			void shouldSetAktenzeichenExpression() {
+				doReturn(aktenzeichenExpression).when(mapper).toAktenzeichenExpression(OzgCloudVorgangQueryTestFactory.AKTENZEICHEN);
 
-			@Test
-			void shouldReturnQueryBuilderContainingAllExpressions() {
-				var queryBuilder = callMapPropertiesToQuery();
+				var queryBuidler = mapper.mapPropertiesToQuery(OzgCloudVorgangQueryTestFactory.create());
 
-				assertThat(queryBuilder.getExpressionsList()).containsExactlyInAnyOrder(aktenzeichenExpression, statusExpression,
-						formEngineNameExpression, organisationsEinheitIdExpression);
+				assertThat(queryBuidler.getExpressionsList()).contains(aktenzeichenExpression);
 			}
 
 			@Test
-			void shouldReturnQueryBuilderWIthAndOperator() {
-				var queryBuilder = callMapPropertiesToQuery();
-
-				assertThat(queryBuilder.getLogicalOperator()).isEqualTo(GrpcLogicalOperator.AND);
-			}
+			void shouldNotCallToAktenzeichenExpression() {
+				mapper.mapPropertiesToQuery(OzgCloudVorgangQueryTestFactory.createBuilder().aktenzeichen(Optional.empty()).build());
 
-			private GrpcQuery.Builder callMapPropertiesToQuery() {
-				return mapper.mapPropertiesToQuery(query);
+				verify(mapper, never()).toAktenzeichenExpression(any());
 			}
 		}
 
 		@Nested
-		class OnEmptyAktenzeichen {
+		class TestForOrganisationsEinheitId {
 
-			private final OzgCloudVorgangQuery query = OzgCloudVorgangQueryTestFactory.createBuilder()
-					.aktenzeichen(Optional.empty())
+			private final GrpcVorgangQueryExpression organisationsEinheitIdExpression = GrpcVorgangQueryExpressionTestFactory.createBuilder()
+					.setPath(OzgCloudVorgangQueryMapper.ORGANISATIONS_EINHEIT_ID_PATH)
+					.setOperator(GrpcQueryOperator.EQUAL)
+					.setOperandStringValue(OzgCloudVorgangQueryTestFactory.ORGANISATIONS_EINHEIT_ID)
 					.build();
 
-			@BeforeEach
-			void mock() {
-				doReturn(organisationsEinheitIdExpression).when(mapper)
-						.toOrganisationsEinheitIdExpression(OzgCloudVorgangQueryTestFactory.ORGANISATIONS_EINHEIT_ID);
-				doReturn(statusExpression).when(mapper).toStatusExpression(OzgCloudVorgangQueryTestFactory.STATUS);
-				doReturn(formExpressions).when(mapper).toFormExpressions(OzgCloudVorgangQueryTestFactory.FORM);
-			}
-
 			@Test
-			void shouldNotCallToAktenzeichenExpression() {
-				callMapPropertiesToQuery();
+			void shouldCallToOrganisationsEinheitIdExpression() {
+				mapper.mapPropertiesToQuery(OzgCloudVorgangQueryTestFactory.create());
 
-				verify(mapper, never()).toAktenzeichenExpression(any());
+				verify(mapper).toOrganisationsEinheitIdExpression(OzgCloudVorgangQueryTestFactory.ORGANISATIONS_EINHEIT_ID);
 			}
 
 			@Test
-			void shouldReturnQueryBuilderContainingAllOtherExpressions() {
-				var queryBuilder = callMapPropertiesToQuery();
-
-				assertThat(queryBuilder.getExpressionsList()).containsExactlyInAnyOrder(statusExpression, formEngineNameExpression,
-						organisationsEinheitIdExpression);
-			}
-
-			private GrpcQuery.Builder callMapPropertiesToQuery() {
-				return mapper.mapPropertiesToQuery(query);
-			}
-		}
-
-		@Nested
-		class OnEmptyForm {
-
-			private final OzgCloudVorgangQuery query = OzgCloudVorgangQueryTestFactory.createBuilder()
-					.form(Optional.empty())
-					.build();
-
-			@BeforeEach
-			void mock() {
-				doReturn(aktenzeichenExpression).when(mapper).toAktenzeichenExpression(OzgCloudVorgangQueryTestFactory.AKTENZEICHEN);
+			void shouldSetOrganisationsEinheitIdExpression() {
 				doReturn(organisationsEinheitIdExpression).when(mapper)
 						.toOrganisationsEinheitIdExpression(OzgCloudVorgangQueryTestFactory.ORGANISATIONS_EINHEIT_ID);
-				doReturn(statusExpression).when(mapper).toStatusExpression(OzgCloudVorgangQueryTestFactory.STATUS);
-			}
 
-			@Test
-			void shouldNotCallToFormExpression() {
-				callMapPropertiesToQuery();
+				var queryBuidler = mapper.mapPropertiesToQuery(OzgCloudVorgangQueryTestFactory.create());
 
-				verify(mapper, never()).toFormExpressions(any());
+				assertThat(queryBuidler.getExpressionsList()).contains(organisationsEinheitIdExpression);
 			}
 
 			@Test
-			void shouldReturnQueryBuilderContainingAllOtherExpressions() {
-				var queryBuilder = callMapPropertiesToQuery();
-
-				assertThat(queryBuilder.getExpressionsList()).containsExactlyInAnyOrder(aktenzeichenExpression, statusExpression,
-						organisationsEinheitIdExpression);
-			}
+			void shouldNotCallToOrganisationsEinheitIdExpression() {
+				mapper.mapPropertiesToQuery(OzgCloudVorgangQueryTestFactory.createBuilder().organisationsEinheitId(Optional.empty()).build());
 
-			private GrpcQuery.Builder callMapPropertiesToQuery() {
-				return mapper.mapPropertiesToQuery(query);
+				verify(mapper, never()).toOrganisationsEinheitIdExpression(any());
 			}
 		}
 
 		@Nested
-		class OnEmptyStatus {
+		class TestForForm {
 
-			private final OzgCloudVorgangQuery query = OzgCloudVorgangQueryTestFactory.createBuilder()
-					.status(Optional.empty())
+			private final GrpcVorgangQueryExpression formEngineNameExpression = GrpcVorgangQueryExpressionTestFactory.createBuilder()
+					.setPath(OzgCloudVorgangQueryMapper.FORM_ENGINE_NAME_PATH)
+					.setOperator(GrpcQueryOperator.EQUAL)
+					.setOperandStringValue(FormIdentificationTestFactory.FORM_ENGINE_NAME)
 					.build();
 
-			@BeforeEach
-			void mock() {
-				doReturn(aktenzeichenExpression).when(mapper).toAktenzeichenExpression(OzgCloudVorgangQueryTestFactory.AKTENZEICHEN);
-				doReturn(organisationsEinheitIdExpression).when(mapper)
-						.toOrganisationsEinheitIdExpression(OzgCloudVorgangQueryTestFactory.ORGANISATIONS_EINHEIT_ID);
-				doReturn(formExpressions).when(mapper).toFormExpressions(OzgCloudVorgangQueryTestFactory.FORM);
-			}
+			private final Set<GrpcVorgangQueryExpression> formExpressions = Set.of(formEngineNameExpression);
 
 			@Test
-			void shouldNotCallToStatusExpression() {
-				callMapPropertiesToQuery();
+			void shouldCallToFormExpression() {
+				mapper.mapPropertiesToQuery(OzgCloudVorgangQueryTestFactory.create());
 
-				verify(mapper, never()).toStatusExpression(any());
+				verify(mapper).toFormExpressions(OzgCloudVorgangQueryTestFactory.FORM);
 			}
 
 			@Test
-			void shouldReturnQueryBuilderContainingAllOtherExpressions() {
-				var queryBuilder = callMapPropertiesToQuery();
+			void shouldSetFormExpression() {
+				doReturn(formExpressions).when(mapper).toFormExpressions(OzgCloudVorgangQueryTestFactory.FORM);
 
-				assertThat(queryBuilder.getExpressionsList()).containsExactlyInAnyOrder(aktenzeichenExpression, formEngineNameExpression,
-						organisationsEinheitIdExpression);
+				var queryBuidler = mapper.mapPropertiesToQuery(OzgCloudVorgangQueryTestFactory.create());
+
+				assertThat(queryBuidler.getExpressionsList()).containsAll(formExpressions);
 			}
 
-			private GrpcQuery.Builder callMapPropertiesToQuery() {
-				return mapper.mapPropertiesToQuery(query);
+			@Test
+			void shouldNotCallToFormExpression() {
+				mapper.mapPropertiesToQuery(OzgCloudVorgangQueryTestFactory.createBuilder().form(Optional.empty()).build());
+
+				verify(mapper, never()).toFormExpressions(any());
 			}
 		}
 
 		@Nested
-		class OnEmptyOrganisationsEinheitId {
+		class TestForStatus {
 
-			private final OzgCloudVorgangQuery query = OzgCloudVorgangQueryTestFactory.createBuilder()
-					.organisationsEinheitId(Optional.empty())
+			private final GrpcVorgangQueryExpression statusExpression = GrpcVorgangQueryExpressionTestFactory.createBuilder()
+					.setPath(OzgCloudVorgangQueryMapper.STATUS_PATH)
+					.setOperator(GrpcQueryOperator.EQUAL)
+					.setOperandStringValue(OzgCloudVorgangQueryTestFactory.STATUS)
 					.build();
 
-			@BeforeEach
-			void mock() {
-				doReturn(aktenzeichenExpression).when(mapper).toAktenzeichenExpression(OzgCloudVorgangQueryTestFactory.AKTENZEICHEN);
-				doReturn(statusExpression).when(mapper).toStatusExpression(OzgCloudVorgangQueryTestFactory.STATUS);
-				doReturn(formExpressions).when(mapper).toFormExpressions(OzgCloudVorgangQueryTestFactory.FORM);
-			}
-
 			@Test
-			void shouldNotCallToOrganisationsEinheitIdExpression() {
-				callMapPropertiesToQuery();
+			void shouldCallToStatusExpression() {
+				mapper.mapPropertiesToQuery(OzgCloudVorgangQueryTestFactory.create());
 
-				verify(mapper, never()).toOrganisationsEinheitIdExpression(any());
+				verify(mapper).toStatusExpression(OzgCloudVorgangQueryTestFactory.STATUS);
 			}
 
 			@Test
-			void shouldReturnQueryBuilderContainingAllOtherExpressions() {
-				var queryBuilder = callMapPropertiesToQuery();
+			void shouldSetStatusExpression() {
+				doReturn(statusExpression).when(mapper)
+						.toStatusExpression(OzgCloudVorgangQueryTestFactory.STATUS);
 
-				assertThat(queryBuilder.getExpressionsList()).containsExactlyInAnyOrder(aktenzeichenExpression, statusExpression,
-						formEngineNameExpression);
+				var queryBuidler = mapper.mapPropertiesToQuery(OzgCloudVorgangQueryTestFactory.create());
+
+				assertThat(queryBuidler.getExpressionsList()).contains(statusExpression);
 			}
 
-			private GrpcQuery.Builder callMapPropertiesToQuery() {
-				return mapper.mapPropertiesToQuery(query);
+			@Test
+			void shouldNotCallToStatusExpression() {
+				mapper.mapPropertiesToQuery(OzgCloudVorgangQueryTestFactory.createBuilder().status(Optional.empty()).build());
+
+				verify(mapper, never()).toStatusExpression(any());
 			}
 		}
+
 	}
 
 	@Nested
@@ -424,7 +333,7 @@ class OzgCloudVorgangQueryMapperTest {
 	}
 
 	@Nested
-	class TestToFormExpression {
+	class TestToFormExpressions {
 
 		private final GrpcVorgangQueryExpression formEngineNameExpression = GrpcVorgangQueryExpressionTestFactory.createBuilder()
 				.setPath(OzgCloudVorgangQueryMapper.FORM_ENGINE_NAME_PATH)
@@ -440,14 +349,14 @@ class OzgCloudVorgangQueryMapperTest {
 
 		@Test
 		void shouldReturnFormEngineNameExpression() {
-			var expressions = mapper.toFormExpressions(new FormIdentification(null, FormIdentificationTestFactory.FORM_ENGINE_NAME));
+			var expressions = mapper.toFormExpressions(FormIdentificationTestFactory.createBuilder().formId(null).build());
 
 			assertThat(expressions).usingRecursiveFieldByFieldElementComparator().containsExactly(formEngineNameExpression);
 		}
 
 		@Test
 		void shouldReturnFormIdExpression() {
-			var expressions = mapper.toFormExpressions(new FormIdentification(FormIdentificationTestFactory.FORM_ID, null));
+			var expressions = mapper.toFormExpressions(FormIdentificationTestFactory.createBuilder().formEngineName(null).build());
 
 			assertThat(expressions).usingRecursiveFieldByFieldElementComparator().containsExactly(formIdExpression);
 		}
@@ -459,10 +368,19 @@ class OzgCloudVorgangQueryMapperTest {
 			assertThat(expressions).usingRecursiveFieldByFieldElementComparator().containsExactlyInAnyOrder(formEngineNameExpression,
 					formIdExpression);
 		}
+
+		@Test
+		void shouldReturnUnmodifiableSet() {
+			var newExpression = GrpcVorgangQueryExpressionTestFactory.create();
+
+			var expressions = mapper.toFormExpressions(FormIdentificationTestFactory.create());
+
+			assertThrows(UnsupportedOperationException.class, () -> expressions.add(newExpression));
+		}
 	}
 
 	@Nested
-	class TestMapQuery {
+	class TestToQuery {
 
 		private final Query nestedQuery = QueryTestFactory.create();
 		private final Query query = QueryTestFactory.createBuilder().nestedQuery(nestedQuery).build();
@@ -472,7 +390,7 @@ class OzgCloudVorgangQueryMapperTest {
 
 		@Test
 		void shouldMapQuery() {
-			var grpcQuery = mapper.mapQuery(query);
+			var grpcQuery = mapper.toQuery(query);
 
 			assertThat(grpcQuery).usingRecursiveComparison().isEqualTo(expectedGrpcQuery);
 		}