$sessionFilters = array();
    }
    foreach ($filterKeys as $keyPath) {
        Log::debug("* Saving filter: {$keyPath}");
        $sessionFilters["{$keyPath}"] = $filters["{$keyPath}"];
    }
    // save changes to Session
    Session::user("_CONDUIT_FILTERS", $sessionFilters);
    /*
    // Render a new filter to include in response
    */
    // ? Guardian: test for META access
    try {
        $xmlRendering = DraftingDesk::renderFilter("FilterXMLDrafter", $entitySignature, $filterSignature, $params);
        $responseNode->appendChild($dom->createElement("status", "success"));
        $responseNode->appendChild($dom->createELement("message", "Updated filters for {$entitySignature}"));
        $xmlRenderingDom = new DomDocument();
        $xmlRenderingDom->loadXML($xmlRendering);
        $bpXmlDraftRenderingNode = $xmlRenderingDom->getElementsByTagName("bpXmlDraftRendering")->item(0);
        $importNode = $dom->importNode($bpXmlDraftRenderingNode, true);
        $xmlNode = $dom->createElement("xml");
        $responseNode->appendChild($xmlNode);
        $xmlNode->appendChild($importNode);
    } catch (Exception $e) {
        Log::error("* Caught Exception: " . $e->getMessage());
        $xml->addChild("status", "error");
        $xml->addChild("message", "Caught Exception: " . $e->getMessage());
    }
} else {
    // missing renderer or entitySignature arguments
    $xml->addChild("status", "error");