diff --git a/src/LocalData/AbstractLocalDataEventSubscriber.php b/src/LocalData/AbstractLocalDataEventSubscriber.php
index e309f6645730a3e14f69594f3cd2e64405add987..97e971dc4ab2fb069bd84d9073463bc939ce7328 100644
--- a/src/LocalData/AbstractLocalDataEventSubscriber.php
+++ b/src/LocalData/AbstractLocalDataEventSubscriber.php
@@ -109,7 +109,7 @@ abstract class AbstractLocalDataEventSubscriber extends AbstractAuthorizationSer
                     }
                     $sourceAttributeName = $attributeMapEntry[self::SOURCE_ATTRIBUTE_KEY];
                     $localQueryParameters[$sourceAttributeName] = $localDataAttributeValue;
-                    $event->acknowledgeQueryParameter($localDataAttributeName);
+                    $event->tryPopPendingQueryParameter($localDataAttributeName);
                 }
             }
 
@@ -182,7 +182,7 @@ abstract class AbstractLocalDataEventSubscriber extends AbstractAuthorizationSer
         throw new \RuntimeException(sprintf('child classes must implement the \'%s\' method', __METHOD__));
     }
 
-    protected function onPreEvent(LocalDataPreEvent $preEvent, array $localQueryParameters)
+    protected function onPreEvent(LocalDataPreEvent $preEvent, array $mappedQueryParameters)
     {
     }
 
diff --git a/src/LocalData/LocalDataPreEvent.php b/src/LocalData/LocalDataPreEvent.php
index d548930d9ba8f3c219af16d8775b3589fbb01b87..68743c285587105206306b55a894e88f262c12bb 100644
--- a/src/LocalData/LocalDataPreEvent.php
+++ b/src/LocalData/LocalDataPreEvent.php
@@ -30,9 +30,13 @@ class LocalDataPreEvent extends Event
         return $this->queryParametersIn;
     }
 
-    public function acknowledgeQueryParameter(string $queryParameterName): void
+    public function tryPopPendingQueryParameter(string $queryParameterName, &$queryParameterValue = null): bool
     {
-        unset($this->queryParametersIn[$queryParameterName]);
+        if (($queryParameterValue = $this->queryParametersIn[$queryParameterName] ?? null) !== null) {
+            unset($this->queryParametersIn[$queryParameterName]);
+        }
+
+        return $queryParameterValue !== null;
     }
 
     public function getOptions(): array